diff src/name/blackcap/exifwasher/HelpDialog.kt @ 52:39895d44a287

Get help working on Linux.
author David Barts <n5jrn@me.com>
date Thu, 07 May 2020 09:59:28 -0700
parents fb407182ba76
children 61a06e050bac
line wrap: on
line diff
--- a/src/name/blackcap/exifwasher/HelpDialog.kt	Thu May 07 08:30:56 2020 -0700
+++ b/src/name/blackcap/exifwasher/HelpDialog.kt	Thu May 07 09:59:28 2020 -0700
@@ -4,7 +4,6 @@
  */
 package name.blackcap.exifwasher
 
-import java.awt.Color
 import java.awt.Dimension
 import java.awt.event.ActionEvent
 import java.awt.event.ActionListener
@@ -16,9 +15,6 @@
 import java.util.logging.Level
 import java.util.logging.Logger
 import javax.swing.*
-import javax.swing.table.DefaultTableModel
-import javax.swing.table.TableColumn
-import javax.swing.table.TableColumnModel
 
 import name.blackcap.exifwasher.exiv2.*
 
@@ -32,9 +28,22 @@
         it.addActionListener(ActionListener { setVisible(false) })
     }
 
-    private val helpPane = JTextPane().also {
+    private val helpPane = JScrollPane(JTextPane().also {
         it.contentType = "text/html";
-        it.text = ::class.java.getResourceAsStream("help.html").bufferedReader().use { it.readText() }
+        it.text = this::class.java.getResourceAsStream("help.html").bufferedReader().use { it.readText() }
+    }).apply {
+        alignmentX = JScrollPane.CENTER_ALIGNMENT
+        border = BorderFactory.createEmptyBorder(BW2, BW2, BW, BW2)
+        verticalScrollBarPolicy = ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
+        horizontalScrollBarPolicy = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
+        preferredSize = Dimension(WIDTH, HEIGHT)
+        background = Application.mainFrame.background
+    }
+
+    override fun setVisible(vis: Boolean) {
+        if (vis)
+            helpPane.verticalScrollBar.run { value = minimum }
+        super.setVisible(vis)
     }
 
     init {
@@ -42,14 +51,7 @@
         title = "Help"
         contentPane.apply {
             layout = BoxLayout(this, BoxLayout.Y_AXIS)
-            add(JScrollPane(helpPane).apply {
-                alignmentX = JScrollPane.CENTER_ALIGNMENT
-                border = BorderFactory.createEmptyBorder(BW2, BW2, BW, BW2)
-                verticalScrollBarPolicy = ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
-                horizontalScrollBarPolicy = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
-                preferredSize = Dimension(WIDTH, HEIGHT)
-                background = Application.mainFrame.background
-            })
+            add(helpPane)
             add(Box(BoxLayout.X_AXIS).apply {
                 alignmentX = Box.CENTER_ALIGNMENT
                 border = BorderFactory.createEmptyBorder(BW, BW2, BW2, BW2)