/hg/icedtea-web: Remember panel extracted so it can be reused
jvanek at icedtea.classpath.org
jvanek at icedtea.classpath.org
Mon Jun 1 12:44:30 UTC 2015
changeset 39e9fe259ce7 in /hg/icedtea-web
details: http://icedtea.classpath.org/hg/icedtea-web?cmd=changeset;node=39e9fe259ce7
author: Jiri Vanek <jvanek at redhat.com>
date: Mon Jun 01 14:43:43 2015 +0200
Remember panel extracted so it can be reused
*/netx/net/sourceforge/jnlp/security/SecurityDialogs.java: now correctly behaves on Xtrustall
*/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java:result is using diamond
*/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java:Simplified constructors, getting dialogue and jnlpfile is all they need
*/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java:extracted remember panel and related stuff. Made to use extracted one
*/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java:same
*/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java:same
*/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java:same
*/netx/net/sourceforge/jnlp/security/dialogs/remember/ActionChoiceListener.java:new class. Extracted stuff from AppTrustWarningPanel
*/netx/net/sourceforge/jnlp/security/dialogs/remember/AppSigningWarningAction.java:new class. Extracted stuff from AppTrustWarningPanel
*/netx/net/sourceforge/jnlp/security/dialogs/remember/RememberPanel.java:new class. Extracted stuff from AppTrustWarningPanel
*/tests/netx/unit/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanelTest.java:minor, adapted to match current codebase
diffstat:
ChangeLog | 25 +
netx/net/sourceforge/jnlp/security/SecurityDialogs.java | 8 +-
netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java | 4 +-
netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java | 26 +-
netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java | 125 +------
netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java | 17 +-
netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java | 18 +-
netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java | 13 +-
netx/net/sourceforge/jnlp/security/dialogs/remember/ActionChoiceListener.java | 47 ++
netx/net/sourceforge/jnlp/security/dialogs/remember/AppSigningWarningAction.java | 61 +++
netx/net/sourceforge/jnlp/security/dialogs/remember/RememberPanel.java | 171 ++++++++++
tests/netx/unit/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanelTest.java | 7 +-
12 files changed, 351 insertions(+), 171 deletions(-)
diffs (truncated from 852 to 500 lines):
diff -r fa266de1b2e7 -r 39e9fe259ce7 ChangeLog
--- a/ChangeLog Wed May 27 16:56:40 2015 +0200
+++ b/ChangeLog Mon Jun 01 14:43:43 2015 +0200
@@ -1,3 +1,28 @@
+2015-06-01 Jiri Vanek <jvanek at redhat.com>
+
+ Remember panel extracted so it can be reused
+ */netx/net/sourceforge/jnlp/security/SecurityDialogs.java: now correctly behaves on Xtrustall
+ */netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java:
+ result is using diamond
+ */netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java:
+ Simplified constructors, getting dialogue and jnlpfile is all they need
+ */netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java:
+ extracted remember panel and related stuff. Made to use extracted one
+ */netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java:
+ same
+ */netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java:
+ same
+ */netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java:
+ same
+ */netx/net/sourceforge/jnlp/security/dialogs/remember/ActionChoiceListener.java:
+ new class. Extracted stuff from AppTrustWarningPanel
+ */netx/net/sourceforge/jnlp/security/dialogs/remember/AppSigningWarningAction.java:
+ new class. Extracted stuff from AppTrustWarningPanel
+ */netx/net/sourceforge/jnlp/security/dialogs/remember/RememberPanel.java:
+ new class. Extracted stuff from AppTrustWarningPanel
+ */tests/netx/unit/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanelTest.java:
+ minor, adapted to match current codebase
+
2015-05-27 Jiri Vanek <jvanek at redhat.com>
Improved caching of files obtained via query
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/SecurityDialogs.java
--- a/netx/net/sourceforge/jnlp/security/SecurityDialogs.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/SecurityDialogs.java Mon Jun 01 14:43:43 2015 +0200
@@ -59,7 +59,7 @@
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation;
import static net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation.getStoredAction;
import net.sourceforge.jnlp.security.dialogs.AccessWarningPaneComplexReturn;
-import net.sourceforge.jnlp.security.dialogs.apptrustwarningpanel.AppTrustWarningPanel.AppSigningWarningAction;
+import net.sourceforge.jnlp.security.dialogs.remember.AppSigningWarningAction;
import net.sourceforge.jnlp.util.UrlUtils;
import net.sourceforge.jnlp.util.logging.OutputController;
@@ -234,7 +234,11 @@
public static AppSigningWarningAction showUnsignedWarningDialog(JNLPFile file) {
if (!shouldPromptUser()) {
- return new AppSigningWarningAction(ExecuteAppletAction.NO, false);
+ if (JNLPRuntime.isTrustAll()) {
+ return new AppSigningWarningAction(ExecuteAppletAction.YES, false);
+ } else {
+ return new AppSigningWarningAction(ExecuteAppletAction.NO, false);
+ }
}
final SecurityDialogMessage message = new SecurityDialogMessage();
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java
--- a/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmation.java Mon Jun 01 14:43:43 2015 +0200
@@ -50,9 +50,9 @@
import net.sourceforge.jnlp.PluginBridge;
import net.sourceforge.jnlp.runtime.JNLPRuntime;
import net.sourceforge.jnlp.runtime.JNLPClassLoader.SecurityDelegate;
-import net.sourceforge.jnlp.security.dialogs.apptrustwarningpanel.AppTrustWarningPanel.AppSigningWarningAction;
import net.sourceforge.jnlp.security.CertVerifier;
import net.sourceforge.jnlp.security.SecurityDialogs;
+import net.sourceforge.jnlp.security.dialogs.remember.AppSigningWarningAction;
import net.sourceforge.jnlp.util.UrlUtils;
import net.sourceforge.jnlp.util.logging.OutputController;
@@ -177,7 +177,7 @@
return ((PluginBridge) file).getArchiveJars();
List<JARDesc> jars = Arrays.asList(file.getResources().getJARs());
- List<String> result = new ArrayList<String>();
+ List<String> result = new ArrayList<>();
for (JARDesc jar : jars) {
result.add(jar.getLocation().toString());
}
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java
--- a/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningDialog.java Mon Jun 01 14:43:43 2015 +0200
@@ -40,14 +40,11 @@
import net.sourceforge.jnlp.runtime.JNLPClassLoader.SecurityDelegate;
import net.sourceforge.jnlp.security.SecurityDialog;
import net.sourceforge.jnlp.security.dialogs.SecurityDialogPanel;
-import net.sourceforge.jnlp.security.dialogs.apptrustwarningpanel.AppTrustWarningPanel.ActionChoiceListener;
-import net.sourceforge.jnlp.security.dialogs.apptrustwarningpanel.AppTrustWarningPanel.AppSigningWarningAction;
/**
* A panel that confirms that the user is OK with unsigned code running.
*/
public class AppTrustWarningDialog extends SecurityDialogPanel {
- private ActionChoiceListener listener;
private AppTrustWarningDialog(final SecurityDialog dialog) {
super(dialog);
@@ -55,37 +52,20 @@
public static AppTrustWarningDialog unsigned(final SecurityDialog dialog, final JNLPFile file) {
final AppTrustWarningDialog warningDialog = new AppTrustWarningDialog(dialog);
- warningDialog.add(new UnsignedAppletTrustWarningPanel(dialog, file, warningDialog.getActionChoiceListener()));
+ warningDialog.add(new UnsignedAppletTrustWarningPanel(dialog, file));
return warningDialog;
}
public static AppTrustWarningDialog partiallySigned(final SecurityDialog dialog, final JNLPFile file, final SecurityDelegate securityDelegate) {
final AppTrustWarningDialog warningDialog = new AppTrustWarningDialog(dialog);
- warningDialog.add(new PartiallySignedAppTrustWarningPanel(file, warningDialog.getActionChoiceListener(), dialog, securityDelegate));
+ warningDialog.add(new PartiallySignedAppTrustWarningPanel(file, dialog, securityDelegate));
return warningDialog;
}
public static AppTrustWarningDialog matchingAlaca(SecurityDialog x, JNLPFile file, String codebase, String remoteUrls) {
final AppTrustWarningDialog warningDialog = new AppTrustWarningDialog(x);
- warningDialog.add(new MatchingALACAttributePanel(x, file, codebase, remoteUrls, warningDialog.getActionChoiceListener()));
+ warningDialog.add(new MatchingALACAttributePanel(x, file, codebase, remoteUrls));
return warningDialog;
}
- private ActionChoiceListener getActionChoiceListener() {
- if (listener == null) {
- listener = createActionChoiceListener();
- }
- return listener;
- }
-
- private ActionChoiceListener createActionChoiceListener() {
- return new ActionChoiceListener() {
- @Override
- public void actionChosen(final AppSigningWarningAction action) {
- parent.setValue(action);
- parent.dispose();
- }
- };
- }
-
}
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java
--- a/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/AppTrustWarningPanel.java Mon Jun 01 14:43:43 2015 +0200
@@ -36,7 +36,6 @@
package net.sourceforge.jnlp.security.dialogs.apptrustwarningpanel;
-import static net.sourceforge.jnlp.runtime.Translator.R;
import java.awt.BorderLayout;
import java.awt.Color;
@@ -44,7 +43,6 @@
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
-import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
@@ -54,15 +52,12 @@
import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
-import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
import javax.swing.JButton;
-import javax.swing.JCheckBox;
import javax.swing.JDialog;
import javax.swing.JEditorPane;
import javax.swing.JLabel;
import javax.swing.JPanel;
-import javax.swing.JRadioButton;
import javax.swing.SwingConstants;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;
@@ -72,6 +67,7 @@
import static net.sourceforge.jnlp.runtime.Translator.R;
import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteAppletAction;
import net.sourceforge.jnlp.security.appletextendedsecurity.ExtendedAppletSecurityHelp;
+import net.sourceforge.jnlp.security.dialogs.remember.RememberPanel;
import net.sourceforge.jnlp.util.ScreenFinder;
import net.sourceforge.jnlp.util.logging.OutputController;
@@ -85,35 +81,6 @@
*/
public abstract class AppTrustWarningPanel extends JPanel {
- /*
- * Details of decided action.
- */
- public static class AppSigningWarningAction {
- private ExecuteAppletAction action;
- private boolean applyToCodeBase;
-
- public AppSigningWarningAction(ExecuteAppletAction action,
- boolean applyToCodeBase) {
- this.action = action;
- this.applyToCodeBase = applyToCodeBase;
- }
-
- public ExecuteAppletAction getAction() {
- return action;
- }
-
- public boolean rememberForCodeBase() {
- return applyToCodeBase;
- }
- }
-
- /*
- * Callback for when action is decided.
- */
- public static interface ActionChoiceListener {
- void actionChosen(AppSigningWarningAction action);
- }
-
protected int PANE_WIDTH = 500;
protected int TOP_PANEL_HEIGHT = 60;
@@ -125,28 +92,27 @@
protected JButton allowButton;
protected JButton rejectButton;
protected JButton helpButton;
- protected JCheckBox permanencyCheckBox;
- protected JRadioButton applyToAppletButton;
- protected JRadioButton applyToCodeBaseButton;
+ protected RememberPanel rememberPanel;
+
protected JNLPFile file;
- protected ActionChoiceListener actionChoiceListener;
+
/*
* Subclasses should call addComponents() IMMEDIATELY after calling the super() constructor!
*/
- public AppTrustWarningPanel(JNLPFile file, ActionChoiceListener actionChoiceListener) {
+ public AppTrustWarningPanel(JNLPFile file) {
this.file = file;
- this.actionChoiceListener = actionChoiceListener;
- this.buttons = new ArrayList<JButton>();
+ rememberPanel = new RememberPanel(file.getCodeBase());
+ this.buttons = new ArrayList<>();
allowButton = new JButton(R("ButProceed"));
rejectButton = new JButton(R("ButCancel"));
helpButton = new JButton(R("APPEXTSECguiPanelHelpButton"));
- allowButton.addActionListener(chosenActionSetter(ExecuteAppletAction.YES));
- rejectButton.addActionListener(chosenActionSetter(ExecuteAppletAction.NO));
+ allowButton.addActionListener(rememberPanel.chosenActionSetter(ExecuteAppletAction.YES));
+ rejectButton.addActionListener(rememberPanel.chosenActionSetter(ExecuteAppletAction.NO));
helpButton.addActionListener(getHelpButtonAction());
@@ -196,9 +162,7 @@
};
}
- protected static String htmlWrap(String text) {
- return "<html>" + text + "</html>";
- }
+
private void setupTopPanel() {
final String topLabelText = getTopPanelText();
@@ -237,7 +201,7 @@
titleLabel.setFont(new Font(titleLabel.getFont().getName(), Font.BOLD, 18));
String infoLabelText = getInfoPanelText();
- JEditorPane infoLabel = new JEditorPane("text/html", htmlWrap(infoLabelText));
+ JEditorPane infoLabel = new JEditorPane("text/html", RememberPanel.htmlWrap(infoLabelText));
infoLabel.setBackground(infoPanel.getBackground());
infoLabel.setEditable(false);
infoLabel.addHyperlinkListener(new HyperlinkListener() {
@@ -276,37 +240,7 @@
add(questionPanel);
}
- private JPanel createMatchOptionsPanel() {
- JPanel matchOptionsPanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
-
- ButtonGroup group = new ButtonGroup();
- applyToAppletButton = new JRadioButton(R("SRememberAppletOnly"));
- applyToAppletButton.setSelected(true);
- applyToAppletButton.setEnabled(false); // Start disabled until 'Remember this option' is selected
-
- applyToCodeBaseButton = new JRadioButton(htmlWrap(R("SRememberCodebase", file.getCodeBase())));
- applyToCodeBaseButton.setEnabled(false);
-
- group.add(applyToAppletButton);
- group.add(applyToCodeBaseButton);
-
- matchOptionsPanel.add(applyToAppletButton);
- matchOptionsPanel.add(applyToCodeBaseButton);
-
- return matchOptionsPanel;
- }
-
- private JPanel createCheckBoxPanel() {
- JPanel checkBoxPanel = new JPanel(new BorderLayout());
-
- permanencyCheckBox = new JCheckBox(htmlWrap(R("SRememberOption")));
- permanencyCheckBox.addActionListener(permanencyListener());
- checkBoxPanel.setBorder(BorderFactory.createEmptyBorder(0, 15, 0, 0));
- checkBoxPanel.add(permanencyCheckBox, BorderLayout.SOUTH);
-
- return checkBoxPanel;
- }
-
+
private JPanel createButtonPanel() {
JPanel buttonPanel = new JPanel(new FlowLayout(FlowLayout.RIGHT));
@@ -322,11 +256,6 @@
// Set up 'Remember Option' checkbox & Proceed/Cancel buttons
private void setupButtonAndCheckBoxPanel() {
JPanel outerPanel = new JPanel(new BorderLayout());
- JPanel rememberPanel = new JPanel(new GridLayout(2 /*rows*/, 1 /*column*/));
- rememberPanel.add(createMatchOptionsPanel());
- rememberPanel.setBorder(BorderFactory.createEmptyBorder(0, 10, 0, 10));
-
- outerPanel.add(createCheckBoxPanel(), BorderLayout.WEST);
outerPanel.add(rememberPanel, BorderLayout.SOUTH);
outerPanel.add(createButtonPanel(), BorderLayout.EAST);
@@ -346,34 +275,4 @@
setupButtonAndCheckBoxPanel();
}
- // Toggles whether 'match applet' or 'match codebase' options are greyed out
- protected ActionListener permanencyListener() {
- return new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- applyToAppletButton.setEnabled(permanencyCheckBox.isSelected());
- applyToCodeBaseButton.setEnabled(permanencyCheckBox.isSelected());
- }
- };
- }
-
- protected ActionListener chosenActionSetter(final ExecuteAppletAction action) {
- return new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- ExecuteAppletAction realAction;
-
- if (action == ExecuteAppletAction.YES) {
- realAction = permanencyCheckBox.isSelected() ? ExecuteAppletAction.ALWAYS : ExecuteAppletAction.YES;
- } else if (action == ExecuteAppletAction.NO) {
- realAction = permanencyCheckBox.isSelected() ? ExecuteAppletAction.NEVER : ExecuteAppletAction.NO;
- } else {
- realAction = action;
- }
-
- boolean applyToCodeBase = applyToCodeBaseButton.isSelected();
- actionChoiceListener.actionChosen(new AppSigningWarningAction(realAction, applyToCodeBase));
- }
- };
- }
}
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java
--- a/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/MatchingALACAttributePanel.java Mon Jun 01 14:43:43 2015 +0200
@@ -54,6 +54,7 @@
import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteAppletAction;
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletActionEntry;
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation;
+import net.sourceforge.jnlp.security.dialogs.remember.RememberPanel;
import net.sourceforge.jnlp.util.UrlUtils;
/**
@@ -65,8 +66,8 @@
private final String codebase;
private final String remoteUrls;
- public MatchingALACAttributePanel(SecurityDialog x, JNLPFile file, String codebase, String remoteUrls, ActionChoiceListener actionChoiceListener) {
- super(file, actionChoiceListener);
+ public MatchingALACAttributePanel(SecurityDialog x, JNLPFile file, String codebase, String remoteUrls) {
+ super(file);
this.title = super.getAppletTitle();
this.codebase = codebase;
this.remoteUrls = remoteUrls;
@@ -85,7 +86,7 @@
@Override
protected String getTopPanelText() {
- return htmlWrap(Translator.R("ALACAMatchingMainTitle", title, codebase, remoteUrls));
+ return RememberPanel.htmlWrap(Translator.R("ALACAMatchingMainTitle", title, codebase, remoteUrls));
}
@Override
@@ -114,16 +115,10 @@
}
public static void main(String[] args) throws MalformedURLException, IOException, ParseException {
- Set<URL> s = new HashSet<URL>();
+ Set<URL> s = new HashSet<>();
s.add(new URL("http:/blah.com/blah"));
s.add(new URL("http:/blah.com/blah/blah"));
- MatchingALACAttributePanel w = new MatchingALACAttributePanel(null, new JNLPFile(new URL("http://www.geogebra.org/webstart/geogebra.jnlp")), "http://nbblah.url", UrlUtils.setOfUrlsToHtmlList(s), new ActionChoiceListener() {
-
- @Override
- public void actionChosen(AppSigningWarningAction action) {
-
- }
- });
+ MatchingALACAttributePanel w = new MatchingALACAttributePanel(null, new JNLPFile(new URL("http://www.geogebra.org/webstart/geogebra.jnlp")), "http://nbblah.url", UrlUtils.setOfUrlsToHtmlList(s));
JFrame f = new JFrame();
f.setSize(600, 400);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java
--- a/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/PartiallySignedAppTrustWarningPanel.java Mon Jun 01 14:43:43 2015 +0200
@@ -55,6 +55,7 @@
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletActionEntry;
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation;
import net.sourceforge.jnlp.security.dialogs.TemporaryPermissionsButton;
+import net.sourceforge.jnlp.security.dialogs.remember.RememberPanel;
import net.sourceforge.jnlp.tools.CertInformation;
import net.sourceforge.jnlp.tools.JarCertVerifier;
@@ -64,15 +65,14 @@
private final JButton sandboxButton;
private final JButton advancedOptionsButton;
- public PartiallySignedAppTrustWarningPanel(JNLPFile file, ActionChoiceListener actionChoiceListener,
- SecurityDialog securityDialog, SecurityDelegate securityDelegate) {
- super(file, actionChoiceListener);
+ public PartiallySignedAppTrustWarningPanel(JNLPFile file, SecurityDialog securityDialog, SecurityDelegate securityDelegate) {
+ super(file);
this.jcv = (JarCertVerifier) securityDialog.getCertVerifier();
this.INFO_PANEL_HEIGHT = 250;
sandboxButton = new JButton();
sandboxButton.setText(R("ButSandbox"));
- sandboxButton.addActionListener(chosenActionSetter(ExecuteAppletAction.SANDBOX));
+ sandboxButton.addActionListener(rememberPanel.chosenActionSetter(ExecuteAppletAction.SANDBOX));
advancedOptionsButton = new TemporaryPermissionsButton(file, securityDelegate, sandboxButton);
@@ -80,9 +80,7 @@
buttons.add(2, advancedOptionsButton);
addComponents();
- if (securityDialog != null) {
- securityDialog.setMinimumSize(new Dimension(600, 400));
- }
+ securityDialog.setMinimumSize(new Dimension(600, 400));
}
private String getAppletInfo() {
@@ -142,7 +140,7 @@
@Override
protected String getTopPanelText() {
- return htmlWrap(R(getTopPanelTextKey()));
+ return RememberPanel.htmlWrap(R(getTopPanelTextKey()));
}
@Override
@@ -159,12 +157,12 @@
text += "<br>" + R("SUnsignedRejectedBefore", rememberedEntry.getLocalisedTimeStamp());
}
}
- return htmlWrap(text);
+ return RememberPanel.htmlWrap(text);
}
@Override
protected String getQuestionPanelText() {
- return htmlWrap(R(getQuestionPanelTextKey()));
+ return RememberPanel.htmlWrap(R(getQuestionPanelTextKey()));
}
}
diff -r fa266de1b2e7 -r 39e9fe259ce7 netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java
--- a/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java Wed May 27 16:56:40 2015 +0200
+++ b/netx/net/sourceforge/jnlp/security/dialogs/apptrustwarningpanel/UnsignedAppletTrustWarningPanel.java Mon Jun 01 14:43:43 2015 +0200
@@ -49,12 +49,13 @@
import net.sourceforge.jnlp.security.appletextendedsecurity.ExecuteAppletAction;
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletActionEntry;
import net.sourceforge.jnlp.security.appletextendedsecurity.UnsignedAppletTrustConfirmation;
+import net.sourceforge.jnlp.security.dialogs.remember.RememberPanel;
public class UnsignedAppletTrustWarningPanel extends AppTrustWarningPanel {
- public UnsignedAppletTrustWarningPanel(SecurityDialog securityDialog, final JNLPFile file, final ActionChoiceListener listener) {
- super(file, listener);
+ public UnsignedAppletTrustWarningPanel(SecurityDialog securityDialog, final JNLPFile file) {
+ super(file);
this.INFO_PANEL_HEIGHT = 250;
addComponents();
if (securityDialog != null) {
@@ -82,7 +83,7 @@
@Override
protected String getTopPanelText() {
- return htmlWrap(R(getTopPanelTextKey()));
More information about the distro-pkg-dev
mailing list