From eca0af025e3400c7d91c08223088ac83b2c00e9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20T=C3=A2che?= Date: Wed, 3 Jun 2020 15:36:53 +0200 Subject: [PATCH] GH-46 Lets user set username --- .../org/icepdf/ri/common/SwingController.java | 34 ++++++++++++++----- .../ri/resources/MessageBundle.properties | 10 +++--- 2 files changed, 31 insertions(+), 13 deletions(-) diff --git a/viewer/viewer-awt/src/main/java/org/icepdf/ri/common/SwingController.java b/viewer/viewer-awt/src/main/java/org/icepdf/ri/common/SwingController.java index 3d64cb607..c990c4540 100644 --- a/viewer/viewer-awt/src/main/java/org/icepdf/ri/common/SwingController.java +++ b/viewer/viewer-awt/src/main/java/org/icepdf/ri/common/SwingController.java @@ -2749,19 +2749,35 @@ public void openDocument(final DavFileClient pdfDavClient) { if (pdfClient.getUsername() == null || pdfClient.getUsername().isEmpty()) { pdfClient.setUsername(System.getProperty("user.name")); } - JPanel panel = new JPanel(); if (pdfClient.getPassword() == null) { - panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); - JLabel label = new JLabel(MessageFormat.format(messageBundle.getString("viewer.dialog.dav.password.label"), pdfClient.getName())); - JPasswordField field = new JPasswordField(); - panel.add(label); - panel.add(field); - String[] options = {messageBundle.getString("viewer.dialog.dav.password.button.ok"), messageBundle.getString("viewer.dialog.dav.password.button.cancel")}; - int option = JOptionPane.showOptionDialog(getViewerFrame(), panel, messageBundle.getString("viewer.dialog.dav.password.title"), + JPanel panel = new JPanel(); + panel.setLayout(new GridBagLayout()); + GridBagConstraints constraints = new GridBagConstraints(0, 0, 2, 1, 1, 1, + GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0); + JLabel mainLabel = new JLabel(MessageFormat.format(messageBundle.getString("viewer.dialog.dav.credentials.label"), pdfClient.getName())); + JLabel userLabel = new JLabel(messageBundle.getString("viewer.dialog.dav.user.label")); + JTextField userField = new JTextField(pdfClient.getUsername()); + JLabel passwordLabel = new JLabel(messageBundle.getString("viewer.dialog.dav.password.label")); + JPasswordField passwordField = new JPasswordField(); + panel.add(mainLabel, constraints); + constraints.gridy = 1; + constraints.gridwidth = 1; + panel.add(userLabel, constraints); + constraints.gridx = 1; + panel.add(userField, constraints); + constraints.gridx = 0; + constraints.gridy = 2; + panel.add(passwordLabel, constraints); + constraints.gridx = 1; + panel.add(passwordField, constraints); + String[] options = {messageBundle.getString("viewer.dialog.dav.credentials.button.ok"), + messageBundle.getString("viewer.dialog.dav.credentials.button.cancel")}; + int option = JOptionPane.showOptionDialog(getViewerFrame(), panel, messageBundle.getString("viewer.dialog.dav.credentials.title"), JOptionPane.YES_NO_OPTION, JOptionPane.PLAIN_MESSAGE, null, options, options[0]); if (option == JOptionPane.OK_OPTION) { - pdfClient.setPassword(new String(field.getPassword())); + pdfClient.setUsername(userField.getText()); + pdfClient.setPassword(new String(passwordField.getPassword())); } else if (option == JOptionPane.NO_OPTION) { return; } diff --git a/viewer/viewer-awt/src/main/resources/org/icepdf/ri/resources/MessageBundle.properties b/viewer/viewer-awt/src/main/resources/org/icepdf/ri/resources/MessageBundle.properties index b3a89c3e6..b2da8381b 100644 --- a/viewer/viewer-awt/src/main/resources/org/icepdf/ri/resources/MessageBundle.properties +++ b/viewer/viewer-awt/src/main/resources/org/icepdf/ri/resources/MessageBundle.properties @@ -388,10 +388,12 @@ viewer.dialog.security.cancelButton.mnemonic=C ## Open URL Dialog viewer.dialog.openURL.title=Open URL ## Open Webdav Dialog -viewer.dialog.dav.password.title=Enter your password -viewer.dialog.dav.password.label=Enter your password to open {0} -viewer.dialog.dav.password.button.ok=Ok -viewer.dialog.dav.password.button.cancel=Cancel +viewer.dialog.dav.credentials.title=Enter your credentials +viewer.dialog.dav.credentials.label=Enter your credentials to open {0} +viewer.dialog.dav.user.label=Username +viewer.dialog.dav.password.label=Password +viewer.dialog.dav.credentials.button.ok=Ok +viewer.dialog.dav.credentials.button.cancel=Cancel viewer.dialog.sardine.exception.title=Communication error viewer.dialog.sardine.exception.msg=Couldn't open document due to {0} viewer.dialog.dav.exception.title=Webdav error