Index: trunk/src/org/openstreetmap/josm/Main.java
===================================================================
--- trunk/src/org/openstreetmap/josm/Main.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/Main.java	(revision 6920)
@@ -112,5 +112,5 @@
      * @since 6897 (was public from 6143 to 6896)
      */
-    private static final String JOSM_WEBSITE = "http://josm.openstreetmap.de";
+    private static final String JOSM_WEBSITE = "https://josm.openstreetmap.de";
 
     /**
@@ -118,5 +118,5 @@
      * @since 6897 (was public from 6453 to 6896)
      */
-    private static final String OSM_WEBSITE = "http://www.openstreetmap.org";
+    private static final String OSM_WEBSITE = "https://www.openstreetmap.org";
 
     /**
@@ -987,5 +987,5 @@
      */
     private static DownloadParamType paramType(String s) {
-        if(s.startsWith("http:")) return DownloadParamType.httpUrl;
+        if(s.startsWith("http:") || s.startsWith("https:")) return DownloadParamType.httpUrl;
         if(s.startsWith("file:")) return DownloadParamType.fileUrl;
         String coorPattern = "\\s*[+-]?[0-9]+(\\.[0-9]+)?\\s*";
@@ -1491,5 +1491,5 @@
      */
     public static String getJOSMWebsite() {
-        if(Main.pref != null)
+        if (Main.pref != null)
             return Main.pref.get("josm.url", JOSM_WEBSITE);
         return JOSM_WEBSITE;
@@ -1502,4 +1502,5 @@
      */
     public static String getXMLBase() {
+        // Always return HTTP (issues reported with HTTPS)
         return "http://josm.openstreetmap.de";
     }
@@ -1511,5 +1512,5 @@
      */
     public static String getOSMWebsite() {
-        if(Main.pref != null)
+        if (Main.pref != null)
             return Main.pref.get("osm.url", OSM_WEBSITE);
         return OSM_WEBSITE;
Index: trunk/src/org/openstreetmap/josm/actions/AbstractInfoAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AbstractInfoAction.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/AbstractInfoAction.java	(revision 6920)
@@ -35,18 +35,20 @@
 
     /**
-     * replies the base URL for browsing information about about a primitive
+     * Replies the base URL for browsing information about about a primitive.
      *
-     * @return the base URL, i.e. http://api.openstreetmap.org/browse
+     * @return the base URL, i.e. https://www.openstreetmap.org
      */
     public static String getBaseBrowseUrl() {
         String baseUrl = Main.pref.get("osm-server.url", OsmApi.DEFAULT_API_URL);
         Pattern pattern = Pattern.compile("/api/?$");
-        String ret =  pattern.matcher(baseUrl).replaceAll("/browse");
+        String ret = pattern.matcher(baseUrl).replaceAll("");
         if (ret.equals(baseUrl)) {
             Main.warn(tr("Unexpected format of API base URL. Redirection to info or history page for OSM object will probably fail. API base URL is: ''{0}''",baseUrl));
         }
-        if (ret.startsWith("http://api.openstreetmap.org/")) {
-            ret = ret.substring("http://api.openstreetmap.org/".length());
-            ret = Main.getOSMWebsite() + "/" + ret;
+        for (String prefix : new String[]{"http://api.openstreetmap.org/", "https://api.openstreetmap.org/"}) {
+            if (ret.startsWith(prefix)) {
+                ret = Main.getOSMWebsite() + "/" + ret.substring(prefix.length());
+                break;
+            }
         }
         return ret;
@@ -54,7 +56,7 @@
 
     /**
-     * replies the base URL for browsing information about a user
+     * Replies the base URL for browsing information about a user.
      *
-     * @return the base URL, i.e. http://www.openstreetmap.org/user
+     * @return the base URL, i.e. https://www.openstreetmap.org/user
      */
     public static String getBaseUserUrl() {
@@ -65,7 +67,9 @@
             Main.warn(tr("Unexpected format of API base URL. Redirection to user page for OSM user will probably fail. API base URL is: ''{0}''",baseUrl));
         }
-        if (ret.startsWith("http://api.openstreetmap.org/")) {
-            ret = ret.substring("http://api.openstreetmap.org/".length());
-            ret = Main.getOSMWebsite() + "/" + ret;
+        for (String prefix : new String[]{"http://api.openstreetmap.org/", "https://api.openstreetmap.org/"}) {
+            if (ret.startsWith(prefix)) {
+                ret = Main.getOSMWebsite() + "/" + ret.substring(prefix.length());
+                break;
+            }
         }
         return ret;
Index: trunk/src/org/openstreetmap/josm/actions/CopyAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/CopyAction.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/CopyAction.java	(revision 6920)
@@ -24,5 +24,5 @@
  */
 public final class CopyAction extends JosmAction {
-    
+
     // regular expression that matches text clipboard contents after copying
     public static final String CLIPBOARD_REGEXP = "((node|way|relation)\\s\\d+,)*(node|way|relation)\\s\\d+";
@@ -36,5 +36,5 @@
                 Shortcut.registerShortcut("system:copy", tr("Edit: {0}", tr("Copy")), KeyEvent.VK_C, Shortcut.CTRL), true);
         putValue("help", ht("/Action/Copy"));
-        // CUA shortcut for copy (http://en.wikipedia.org/wiki/IBM_Common_User_Access#Description)
+        // CUA shortcut for copy (https://en.wikipedia.org/wiki/IBM_Common_User_Access#Description)
         Main.registerActionShortcut(this,
                 Shortcut.registerShortcut("system:copy:cua", tr("Edit: {0}", tr("Copy")), KeyEvent.VK_INSERT, Shortcut.CTRL));
Index: trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java	(revision 6920)
@@ -295,5 +295,5 @@
                         String line;
                         while ((line = reader.readLine()) != null) {
-                            Matcher m = Pattern.compile(".*(http://.*)").matcher(line);
+                            Matcher m = Pattern.compile(".*(https?://.*)").matcher(line);
                             if (m.matches()) {
                                 String url = m.group(1);
Index: trunk/src/org/openstreetmap/josm/actions/PasteAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/PasteAction.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/PasteAction.java	(revision 6920)
@@ -43,5 +43,5 @@
                 Shortcut.registerShortcut("system:paste", tr("Edit: {0}", tr("Paste")), KeyEvent.VK_V, Shortcut.CTRL), true);
         putValue("help", ht("/Action/Paste"));
-        // CUA shortcut for paste (http://en.wikipedia.org/wiki/IBM_Common_User_Access#Description)
+        // CUA shortcut for paste (https://en.wikipedia.org/wiki/IBM_Common_User_Access#Description)
         Main.registerActionShortcut(this,
                 Shortcut.registerShortcut("system:paste:cua", tr("Edit: {0}", tr("Paste")), KeyEvent.VK_INSERT, Shortcut.SHIFT));
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGpsTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGpsTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGpsTask.java	(revision 6920)
@@ -37,7 +37,7 @@
     private DownloadTask downloadTask;
 
-    private static final String PATTERN_TRACE_ID = "http://.*(osm|openstreetmap).org/trace/\\p{Digit}+/data";
-
-    private static final String PATTERN_TRACKPOINTS_BBOX = "http://.*/api/0.6/trackpoints\\?bbox=.*,.*,.*,.*";
+    private static final String PATTERN_TRACE_ID = "https?://.*(osm|openstreetmap).org/trace/\\p{Digit}+/data";
+
+    private static final String PATTERN_TRACKPOINTS_BBOX = "https?://.*/api/0.6/trackpoints\\?bbox=.*,.*,.*,.*";
 
     private static final String PATTERN_EXTERNAL_GPX_SCRIPT = "https?://.*exportgpx.*";
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmChangeTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmChangeTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmChangeTask.java	(revision 6920)
@@ -44,5 +44,5 @@
     @Override
     public String[] getPatterns() {
-        return new String[]{"http://.*/api/0.6/changeset/\\p{Digit}+/download", // OSM API 0.6 changesets
+        return new String[]{"https?://.*/api/0.6/changeset/\\p{Digit}+/download", // OSM API 0.6 changesets
             "https?://.*/.*\\.osc" // Remote .osc files
         };
@@ -53,5 +53,5 @@
         return tr("Download OSM Change");
     }
-        
+
     /* (non-Javadoc)
      * @see org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask#download(boolean, org.openstreetmap.josm.data.Bounds, org.openstreetmap.josm.gui.progress.ProgressMonitor)
@@ -125,5 +125,5 @@
         }
     }
-    
+
     /**
      * Loads history and updates incomplete primitives.
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTask.java	(revision 6920)
@@ -37,5 +37,5 @@
 public class DownloadOsmTask extends AbstractDownloadTask {
 
-    protected static final String PATTERN_OSM_API_URL           = "http://.*/api/0.6/(map|nodes?|ways?|relations?|\\*).*";
+    protected static final String PATTERN_OSM_API_URL           = "https?://.*/api/0.6/(map|nodes?|ways?|relations?|\\*).*";
     protected static final String PATTERN_OVERPASS_API_URL      = "http://.*/interpreter\\?data=.*";
     protected static final String PATTERN_OVERPASS_API_XAPI_URL = "http://.*/xapi(\\?.*\\[@meta\\]|_meta\\?).*";
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java	(revision 6920)
@@ -2,7 +2,7 @@
 package org.openstreetmap.josm.actions.downloadtasks;
 
+import static org.openstreetmap.josm.tools.I18n.tr;
+
 import java.util.concurrent.Future;
-
-import static org.openstreetmap.josm.tools.I18n.tr;
 
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
@@ -19,10 +19,10 @@
         return download(newLayer, OsmUrlToBounds.parse(url), null);
     }
-    
+
     @Override
     public String[] getPatterns() {
         return new String[]{
-                "http://www\\.(osm|openstreetmap)\\.org/\\?lat=.*&lon=.*",
-                "http://www\\.(osm|openstreetmap)\\.org/#map=\\p{Digit}+/.*/.*"};
+                "https?://www\\.(osm|openstreetmap)\\.org/\\?lat=.*&lon=.*",
+                "https?://www\\.(osm|openstreetmap)\\.org/#map=\\p{Digit}+/.*/.*"};
     }
 
Index: trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java	(revision 6920)
@@ -306,5 +306,4 @@
 
     // events for crossplatform key holding processing
-    // thanks to http://www.arco.in-berlin.de/keyevent.html
     private final Set<Integer> set = new TreeSet<Integer>();
     private KeyEvent releaseEvent;
Index: trunk/src/org/openstreetmap/josm/data/coor/LatLon.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/coor/LatLon.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/coor/LatLon.java	(revision 6920)
@@ -284,9 +284,8 @@
 
     /**
-     * Returns the heading, in radians, that you have to use to get from
-     * this lat/lon to another.
+     * Returns the heading, in radians, that you have to use to get from this lat/lon to another.
      *
      * (I don't know the original source of this formula, but see
-     * http://math.stackexchange.com/questions/720/how-to-calculate-a-heading-on-the-earths-surface
+     * <a href="https://math.stackexchange.com/questions/720/how-to-calculate-a-heading-on-the-earths-surface">this question</a>
      * for some hints how it is derived.)
      *
Index: trunk/src/org/openstreetmap/josm/data/osm/DataSet.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/DataSet.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/osm/DataSet.java	(revision 6920)
@@ -801,6 +801,6 @@
         if (result == null) {
             Main.warn(tr("JOSM expected to find primitive [{0} {1}] in dataset but it is not there. Please report this "
-                    + "at http://josm.openstreetmap.de/. This is not a critical error, it should be safe to continue in your work.",
-                    primitiveId.getType(), Long.toString(primitiveId.getUniqueId())));
+                    + "at {2}. This is not a critical error, it should be safe to continue in your work.",
+                    primitiveId.getType(), Long.toString(primitiveId.getUniqueId()), Main.getJOSMWebsite()));
             Main.error(new Exception());
         }
Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/PrimitiveVisitor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/PrimitiveVisitor.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/PrimitiveVisitor.java	(revision 6920)
@@ -7,5 +7,5 @@
 
 /**
- * OSM primitives interfaces visitor, following conventional <a href="http://en.wikipedia.org/wiki/Visitor_pattern">visitor design pattern</a>.
+ * OSM primitives interfaces visitor, following conventional <a href="https://en.wikipedia.org/wiki/Visitor_pattern">visitor design pattern</a>.
  * @since 4100
  */
Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/LineClip.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/LineClip.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/LineClip.java	(revision 6920)
@@ -2,8 +2,9 @@
 package org.openstreetmap.josm.data.osm.visitor.paint;
 
+import static java.awt.geom.Rectangle2D.OUT_BOTTOM;
 import static java.awt.geom.Rectangle2D.OUT_LEFT;
 import static java.awt.geom.Rectangle2D.OUT_RIGHT;
 import static java.awt.geom.Rectangle2D.OUT_TOP;
-import static java.awt.geom.Rectangle2D.OUT_BOTTOM;
+
 import java.awt.Point;
 import java.awt.Rectangle;
@@ -42,15 +43,14 @@
      * @return end point of the clipped line
      */
-    public Point getP2()
-    {
+    public Point getP2() {
         return p2;
     }
 
     /**
-     * see http://en.wikipedia.org/wiki/Cohen-Sutherland
+     * Cohen–Sutherland algorithm.
+     * See <a href="https://en.wikipedia.org/wiki/Cohen%E2%80%93Sutherland_algorithm">Wikipedia article</a>
      * @return true, if line is visible in the given clip region
      */
-    private boolean cohenSutherland( long x1, long y1, long x2, long y2, long xmin, long ymin, long xmax, long ymax)
-    {
+    private boolean cohenSutherland( long x1, long y1, long x2, long y2, long xmin, long ymin, long xmax, long ymax) {
         int outcode0, outcode1, outcodeOut;
         boolean accept = false;
Index: trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/projection/Ellipsoid.java	(revision 6920)
@@ -1,5 +1,5 @@
 /*
  * Import from fr.geo.convert package, a geographic coordinates converter.
- * (http://www.i3s.unice.fr/~johan/gps/)
+ * (https://www.i3s.unice.fr/~johan/gps/)
  * License: GPL. For details, see LICENSE file.
  * Copyright (C) 2002 Johan Montagnat (johan@creatis.insa-lyon.fr)
Index: trunk/src/org/openstreetmap/josm/data/projection/proj/SwissObliqueMercator.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/proj/SwissObliqueMercator.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/projection/proj/SwissObliqueMercator.java	(revision 6920)
@@ -21,11 +21,11 @@
 
 /**
- * Projection for the SwissGrid CH1903 / L03, see http://en.wikipedia.org/wiki/Swiss_coordinate_system.
+ * Projection for the SwissGrid CH1903 / L03, see <a href="https://en.wikipedia.org/wiki/Swiss_coordinate_system">Wikipedia article</a>.<br>
  *
- * Calculations were originally based on simple formula from
- * http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.12749.DownloadFile.tmp/ch1903wgs84en.pdf
+ * Calculations were originally based on <a href="http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.12749.DownloadFile.tmp/ch1903wgs84en.pdf">
+ * simple formula</a>.<br>
  *
- * August 2010 update to this formula (rigorous formulas)
- * http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.97912.DownloadFile.tmp/swissprojectionen.pdf
+ * August 2010 update to <a href="http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.97912.DownloadFile.tmp/swissprojectionen.pdf">
+ * this formula (rigorous formulas)</a>.
  */
 public class SwissObliqueMercator implements Proj {
@@ -109,4 +109,3 @@
         return new double[] { phi, lambda };
     }
-
 }
Index: trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java	(revision 6920)
@@ -7,5 +7,5 @@
  * the License.  You may obtain a copy of the License at
  *
- *      http://www.apache.org/licenses/LICENSE-2.0
+ *      https://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
@@ -26,5 +26,4 @@
  * Provides HTML and XML entity utilities.
  * </p>
- * @see <a href="http://hotwired.lycos.com/webmonkey/reference/special_characters/">ISO Entities</a>
  * @see <a href="http://www.w3.org/TR/REC-html32#latin1">HTML 3.2 Character Entities for ISO Latin-1</a>
  * @see <a href="http://www.w3.org/TR/REC-html40/sgml/entities.html">HTML 4.0 Character entity references</a>
Index: trunk/src/org/openstreetmap/josm/gui/ExceptionDialogUtil.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/ExceptionDialogUtil.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/ExceptionDialogUtil.java	(revision 6920)
@@ -279,5 +279,5 @@
         String msg;
         String url = e.getAccessedUrl();
-        Pattern p = Pattern.compile("http://.*/api/0.6/(node|way|relation)/(\\d+)/(\\d+)");
+        Pattern p = Pattern.compile("https?://.*/api/0.6/(node|way|relation)/(\\d+)/(\\d+)");
 
         // Special case for individual access to redacted versions
Index: trunk/src/org/openstreetmap/josm/gui/HelpAwareOptionPane.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/HelpAwareOptionPane.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/HelpAwareOptionPane.java	(revision 6920)
@@ -39,5 +39,5 @@
         // Hide default constructor for utils classes
     }
-    
+
     public static class ButtonSpec {
         public final String text;
@@ -190,5 +190,5 @@
      *
      * <code>helpTopic</code> is the trailing part of a JOSM online help URL, i.e. the part after the leading
-     * <code>http://josm.openstreetmap.de/wiki/Help</code>. It should start with a leading '/' and it
+     * <code>https://josm.openstreetmap.de/wiki/Help</code>. It should start with a leading '/' and it
      * may include an anchor after a '#'.
      *
Index: trunk/src/org/openstreetmap/josm/gui/MainApplication.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 6920)
@@ -143,5 +143,5 @@
     /**
      * JOSM command line options.
-     * @see <a href="http://josm.openstreetmap.de/wiki/Help/CommandLineOptions">Help/CommandLineOptions</a>
+     * @see <a href="https://josm.openstreetmap.de/wiki/Help/CommandLineOptions">Help/CommandLineOptions</a>
      * @since 5279
      */
@@ -304,5 +304,5 @@
 
         Thread.setDefaultUncaughtExceptionHandler(new BugReportExceptionHandler());
-        // http://stackoverflow.com/q/75218/2257172
+        // https://stackoverflow.com/q/75218/2257172
         // To be replaced with official API when switching to Java 7: https://bugs.openjdk.java.net/browse/JDK-4714232
         Preferences.updateSystemProperty("sun.awt.exception.handler", BugReportExceptionHandler.class.getName());
Index: trunk/src/org/openstreetmap/josm/gui/MenuScroller.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MenuScroller.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/MenuScroller.java	(revision 6920)
@@ -1,5 +1,5 @@
 /**
  * MenuScroller.java    1.5.0 04/02/12
- * License: use / modify without restrictions (see http://tips4java.wordpress.com/about/)
+ * License: use / modify without restrictions (see https://tips4java.wordpress.com/about/)
  */
 package org.openstreetmap.josm.gui;
@@ -34,5 +34,5 @@
  * at a time is 15, and the default scrolling interval is 125 milliseconds.
  * <P>
- * @author Darryl, http://tips4java.wordpress.com/2009/02/01/menu-scroller/
+ * @author Darryl, https://tips4java.wordpress.com/2009/02/01/menu-scroller/
  */
 public class MenuScroller {
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 6920)
@@ -627,5 +627,5 @@
             StringBuilder text = new StringBuilder("<table cellpadding=3>");
             text.append(tableRow(tr("Title:"), s.getDisplayString()));
-            if (s.url.startsWith("http://")) {
+            if (s.url.startsWith("http://") || s.url.startsWith("https://")) {
                 text.append(tableRow(tr("URL:"), s.url));
             } else if (s.url.startsWith("resource://")) {
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/UrlBasedQueryPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/UrlBasedQueryPanel.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/UrlBasedQueryPanel.java	(revision 6920)
@@ -66,4 +66,5 @@
 
     protected JPanel buildHelpPanel() {
+        String apiUrl = OsmApi.getOsmApi().getBaseUrl();
         HtmlPanel pnl = new HtmlPanel();
         pnl.setText(
@@ -72,9 +73,9 @@
                 + "<p><strong>" + tr("Examples") + "</strong></p>"
                 + "<ul>"
-                + "<li><a href=\""+Main.getOSMWebsite()+"/browse/changesets?open=true\">"+Main.getOSMWebsite()+"/browse/changesets?open=true</a></li>"
-                + "<li><a href=\"http://api.openstreetmap.org/api/0.6/changesets?open=true\">http://api.openstreetmap.org/api/0.6/changesets?open=true</a></li>"
+                + "<li><a href=\""+Main.getOSMWebsite()+"/history?open=true\">"+Main.getOSMWebsite()+"/history?open=true</a></li>"
+                + "<li><a href=\""+apiUrl+"/changesets?open=true\">"+apiUrl+"/changesets?open=true</a></li>"
                 + "</ul>"
                 + tr("Note that changeset queries are currently always submitted to ''{0}'', regardless of the "
-                        + "host, port and path of the URL entered below.", OsmApi.getOsmApi().getBaseUrl())
+                        + "host, port and path of the URL entered below.", apiUrl)
                         + "</body></html>"
         );
Index: trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java	(revision 6920)
@@ -71,5 +71,5 @@
     private DownloadDialog parent;
     private static final Server[] SERVERS = new Server[] {
-        new Server("Nominatim","http://nominatim.openstreetmap.org/search?format=xml&q=",tr("Class Type"),tr("Bounds"))
+        new Server("Nominatim","https://nominatim.openstreetmap.org/search?format=xml&q=",tr("Class Type"),tr("Bounds"))
     };
     private final JosmComboBox server = new JosmComboBox(SERVERS);
Index: trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/help/HelpContentReader.java	(revision 6920)
@@ -25,7 +25,7 @@
 
     /**
-     * constructor
+     * Constructs a new {@code HelpContentReader}.
      *
-     * @param baseUrl the base url of the JOSM help wiki, i.e. http://josm.openstreetmap.org
+     * @param baseUrl the base url of the JOSM help wiki, i.e. https://josm.openstreetmap.org
      */
     public HelpContentReader(String baseUrl) {
Index: trunk/src/org/openstreetmap/josm/gui/preferences/SourceEntry.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/SourceEntry.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/SourceEntry.java	(revision 6920)
@@ -143,5 +143,5 @@
 
     public boolean isLocal() {
-        if (url.startsWith("http://") || url.startsWith("resource://"))
+        if (url.startsWith("http://") || url.startsWith("https://") || url.startsWith("resource://"))
             return false;
         return true;
Index: trunk/src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/display/LanguagePreference.java	(revision 6920)
@@ -50,5 +50,5 @@
         LanguageComboBoxModel model = new LanguageComboBoxModel();
         // Selecting the language BEFORE the JComboBox listens to model changes speed up initialization by ~35ms (see #7386)
-        // See http://stackoverflow.com/questions/3194958/fast-replacement-for-jcombobox-basiccomboboxui
+        // See https://stackoverflow.com/questions/3194958/fast-replacement-for-jcombobox-basiccomboboxui
         model.selectLanguage(Main.pref.get("language"));
         langCombo = new JosmComboBox(model);
Index: trunk/src/org/openstreetmap/josm/gui/preferences/projection/ProjectionPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/projection/ProjectionPreference.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/projection/ProjectionPreference.java	(revision 6920)
@@ -90,7 +90,7 @@
          *
          * See also USGS Bulletin 1532
-         * (http://egsc.usgs.gov/isb/pubs/factsheets/fs08799.html)
+         * (http://pubs.usgs.gov/bul/1532/report.pdf)
          * initially EPSG used 3785 but that has been superseded by 3857,
-         * see http://www.epsg-registry.org/
+         * see https://www.epsg-registry.org/
          */
         mercator = registerProjectionChoice(tr("Mercator"), "core:mercator", 3857);
@@ -114,4 +114,5 @@
          */
         registerProjectionChoice(tr("Belgian Lambert 1972"), "core:belgianLambert1972", 31370);     // BE
+
         /**
          * Belgian Lambert 2008 projection.
@@ -125,5 +126,5 @@
 
         /**
-         * SwissGrid CH1903 / L03, see http://de.wikipedia.org/wiki/Swiss_Grid.
+         * SwissGrid CH1903 / L03, see https://en.wikipedia.org/wiki/Swiss_coordinate_system.
          *
          * Actually, what we have here, is CH1903+ (EPSG:2056), but without
@@ -141,5 +142,5 @@
          *
          * Thanks to Johan Montagnat and its geoconv java converter application
-         * (http://www.i3s.unice.fr/~johan/gps/ , published under GPL license)
+         * (https://www.i3s.unice.fr/~johan/gps/ , published under GPL license)
          * from which some code and constants have been reused here.
          */
@@ -152,24 +153,27 @@
          * (RGF93 is the French geodetic system similar to WGS84 but not mathematically equal)
          *
-         * Source: http://professionnels.ign.fr/DISPLAY/000/526/700/5267002/transformation.pdf
+         * Source: http://geodesie.ign.fr/contenu/fichiers/Changement_systeme_geodesique.pdf
          * @author Pieren
          */
         registerProjectionChoice(lambert = new LambertProjectionChoice());                          // FR
+
         /**
          * Lambert 93 projection.
          *
          * As specified by the IGN in this document
-         * http://professionnels.ign.fr/DISPLAY/000/526/702/5267026/NTG_87.pdf
+         * http://geodesie.ign.fr/contenu/fichiers/documentation/rgf93/Lambert-93.pdf
          * @author Don-vip
          */
         registerProjectionChoice(tr("Lambert 93 (France)"), "core:lambert93", 2154);                // FR
+
         /**
          * Lambert Conic Conform 9 Zones projection.
          *
          * As specified by the IGN in this document
-         * http://professionnels.ign.fr/DISPLAY/000/526/700/5267002/transformation.pdf
+         * http://geodesie.ign.fr/contenu/fichiers/documentation/rgf93/cc9zones.pdf
          * @author Pieren
          */
-        registerProjectionChoice(lambert_cc9 = new LambertCC9ZonesProjectionChoice());                            // FR
+        registerProjectionChoice(lambert_cc9 = new LambertCC9ZonesProjectionChoice());              // FR
+
         /**
          * French departements in the Caribbean Sea and Indian Ocean.
@@ -177,5 +181,5 @@
          * Using the UTM transvers Mercator projection and specific geodesic settings.
          */
-        registerProjectionChoice(utm_france_dom = new UTMFranceDOMProjectionChoice());                            // FR
+        registerProjectionChoice(utm_france_dom = new UTMFranceDOMProjectionChoice());              // FR
 
         /**
Index: trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/server/ApiUrlTestTask.java	(revision 6920)
@@ -29,6 +29,6 @@
  *
  * Note: it fetches a list of changesets instead of the much smaller capabilities because - strangely enough -
- * an OSM server "http://x.y.y/api/0.6" not only responds to  "http://x.y.y/api/0.6/capabilities" but also
- * to "http://x.y.y/api/0/capabilities" or "http://x.y.y/a/capabilities" with valid capabilities. If we get
+ * an OSM server "https://x.y.y/api/0.6" not only responds to  "https://x.y.y/api/0.6/capabilities" but also
+ * to "https://x.y.y/api/0/capabilities" or "https://x.y.y/a/capabilities" with valid capabilities. If we get
  * valid capabilities with an URL we therefore can't be sure that the base URL is valid API URL.
  *
Index: trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java	(revision 6920)
@@ -235,5 +235,5 @@
         List<String> fonts = Arrays.asList(GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames());
         // Helvetica is the preferred choice but is not available by default on Windows
-        // (http://www.microsoft.com/typography/fonts/product.aspx?pid=161)
+        // (https://www.microsoft.com/typography/fonts/product.aspx?pid=161)
         if (fonts.contains("Helvetica")) {
             return new Font("Helvetica", Font.BOLD, 20);
Index: trunk/src/org/openstreetmap/josm/gui/util/StayOpenCheckBoxMenuItem.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/util/StayOpenCheckBoxMenuItem.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/util/StayOpenCheckBoxMenuItem.java	(revision 6920)
@@ -14,5 +14,5 @@
  * An extension of JCheckBoxMenuItem that doesn't close the menu when selected.
  *
- * @author Darryl http://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
+ * @author Darryl https://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
  */
 public class StayOpenCheckBoxMenuItem extends JCheckBoxMenuItem {
Index: trunk/src/org/openstreetmap/josm/gui/util/StayOpenMenuItem.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/util/StayOpenMenuItem.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/util/StayOpenMenuItem.java	(revision 6920)
@@ -13,5 +13,5 @@
  * An extension of JMenuItem that doesn't close the menu when selected.
  *
- * @author Darryl http://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
+ * @author Darryl https://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
  */
 public class StayOpenMenuItem extends JMenuItem {
Index: trunk/src/org/openstreetmap/josm/gui/util/StayOpenRadioButtonMenuItem.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/util/StayOpenRadioButtonMenuItem.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/util/StayOpenRadioButtonMenuItem.java	(revision 6920)
@@ -13,5 +13,5 @@
  * An extension of JRadioButtonMenuItem that doesn't close the menu when selected.
  *
- * @author Darryl http://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
+ * @author Darryl https://tips4java.wordpress.com/2010/09/12/keeping-menus-open/
  */
 public class StayOpenRadioButtonMenuItem extends JRadioButtonMenuItem {
Index: trunk/src/org/openstreetmap/josm/gui/widgets/JosmPasswordField.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/widgets/JosmPasswordField.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/gui/widgets/JosmPasswordField.java	(revision 6920)
@@ -19,6 +19,6 @@
  *
  * @since 5752
- * @see <a href="http://josm.openstreetmap.de/ticket/8404">http://josm.openstreetmap.de/ticket/8404</a>
- * @see <a href="http://hg.netbeans.org/main/rev/33cb2e81b640">http://hg.netbeans.org/main/rev/33cb2e81b640</a>
+ * @see <a href="https://josm.openstreetmap.de/ticket/8404">https://josm.openstreetmap.de/ticket/8404</a>
+ * @see <a href="https://hg.netbeans.org/main/rev/33cb2e81b640">https://hg.netbeans.org/main/rev/33cb2e81b640</a>
  */
 public class JosmPasswordField extends JPasswordField {
Index: trunk/src/org/openstreetmap/josm/io/GpxExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GpxExporter.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/io/GpxExporter.java	(revision 6920)
@@ -211,5 +211,5 @@
                 String sCopyright = (String) data.attr.get(META_COPYRIGHT_LICENSE);
                 if (sCopyright == null) {
-                    sCopyright = Main.pref.get("lastCopyright", "http://creativecommons.org/licenses/by-sa/2.5");
+                    sCopyright = Main.pref.get("lastCopyright", "https://creativecommons.org/licenses/by-sa/2.5");
                 }
                 copyright.setText(sCopyright);
@@ -303,8 +303,8 @@
                     return;
                 final String[] urls = {
-                        "http://creativecommons.org/licenses/by-sa/2.5",
+                        "https://creativecommons.org/licenses/by-sa/2.5",
                         "http://opendatacommons.org/licenses/odbl/1.0",
                         "public domain",
-                        "http://www.gnu.org/copyleft/lesser.html",
+                        "https://www.gnu.org/copyleft/lesser.html",
                         "http://www.opensource.org/licenses/bsd-license.php"};
                 String license = "";
Index: trunk/src/org/openstreetmap/josm/io/OsmApi.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/OsmApi.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/io/OsmApi.java	(revision 6920)
@@ -74,5 +74,5 @@
      * @since 5422
      */
-    public static final String DEFAULT_API_URL = "http://api.openstreetmap.org/api";
+    public static final String DEFAULT_API_URL = "https://api.openstreetmap.org/api";
 
     // The collection of instantiated OSM APIs
Index: trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 6920)
@@ -110,5 +110,5 @@
         //          E.g. [1] lists lat as first coordinate axis and lot as second, so it is switched for EPSG:4326.
         //          For most other EPSG code there seems to be no difference.
-        // [1] http://www.epsg-registry.org/report.htm?type=selection&entity=urn:ogc:def:crs:EPSG::4326&reportDetail=short&style=urn:uuid:report-style:default-with-code&style_name=OGP%20Default%20With%20Code&title=EPSG:4326
+        // [1] https://www.epsg-registry.org/report.htm?type=selection&entity=urn:ogc:def:crs:EPSG::4326&reportDetail=short&style=urn:uuid:report-style:default-with-code&style_name=OGP%20Default%20With%20Code&title=EPSG:4326
         boolean switchLatLon = false;
         if (baseURL.toLowerCase().contains("crs=epsg:4326")) {
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImageryHandler.java	(revision 6920)
@@ -35,5 +35,5 @@
         return new String[]{"url"};
     }
-    
+
     @Override
     public String[] getOptionalParams() {
@@ -112,5 +112,5 @@
         this.args = args;
     }
-    
+
     @Override
     protected void validateRequest() throws RequestHandlerBadRequestException {
@@ -137,5 +137,5 @@
             }
         }));
-        return new String[] { "/imagery?title=osm&type=tms&url=http://tile.openstreetmap.org/%7Bzoom%7D/%7Bx%7D/%7By%7D.png",
+        return new String[] { "/imagery?title=osm&type=tms&url=https://a.tile.openstreetmap.org/%7Bzoom%7D/%7Bx%7D/%7By%7D.png",
             "/imagery?title=landsat&type=wms&url=http://irs.gis-lab.info/?layers=landsat&SRS=%7Bproj%7D&WIDTH=%7Bwidth%7D&HEIGHT=%7Bheight%7D&BBOX=%7Bbbox%7D",
             "/imagery?title=...&type={"+types+"}&url=....[&cookies=...][&min_zoom=...][&max_zoom=...]"};
Index: trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/plugins/PluginListParser.java	(revision 6920)
@@ -18,5 +18,5 @@
  * A parser for the plugin list provided by a JOSM Plugin Download Site.
  *
- * See <a href="http://josm.openstreetmap.de/plugin">http://josm.openstreetmap.de/plugin</a>
+ * See <a href="https://josm.openstreetmap.de/plugin">https://josm.openstreetmap.de/plugin</a>
  * for a sample of the document. The format is a custom format, kind of mix of CSV and RFC822 style
  * name/value-pairs.
@@ -49,5 +49,5 @@
      * Parses a plugin information document and replies a list of plugin information objects.
      *
-     * See <a href="http://josm.openstreetmap.de/plugin">http://josm.openstreetmap.de/plugin</a>
+     * See <a href="https://josm.openstreetmap.de/plugin">https://josm.openstreetmap.de/plugin</a>
      * for a sample of the document. The format is a custom format, kind of mix of CSV and RFC822 style
      * name/value-pairs.
Index: trunk/src/org/openstreetmap/josm/plugins/ReadLocalPluginInformationTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/ReadLocalPluginInformationTask.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/plugins/ReadLocalPluginInformationTask.java	(revision 6920)
@@ -32,5 +32,5 @@
  *   <li>.jar.new files, assuming that these are downloaded but not yet installed plugins</li>
  *   <li>cached lists of available plugins, downloaded for instance from
- *   <a href="http://josm.openstreetmap.de/plugins">http://josm.openstreetmap.de/plugins</a></li>
+ *   <a href="https://josm.openstreetmap.de/plugin">https://josm.openstreetmap.de/plugin</a></li>
  * </ul>
  *
Index: trunk/src/org/openstreetmap/josm/tools/Geometry.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Geometry.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/tools/Geometry.java	(revision 6920)
@@ -695,5 +695,5 @@
         BigDecimal east = BigDecimal.ZERO;
 
-        // See http://en.wikipedia.org/w/index.php?title=Centroid&oldid=294224857#Centroid_of_polygon for the equation used here
+        // See https://en.wikipedia.org/wiki/Centroid#Centroid_of_polygon for the equation used here
         for (int i = 0; i < nodes.size(); i++) {
             EastNorth n0 = nodes.get(i).getEastNorth();
Index: trunk/src/org/openstreetmap/josm/tools/ImageProvider.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 6920)
@@ -417,5 +417,5 @@
             ImageType type = name.toLowerCase().endsWith(".svg") ? ImageType.SVG : ImageType.OTHER;
 
-            if (name.startsWith("http://")) {
+            if (name.startsWith("http://") || name.startsWith("https://")) {
                 String url = name;
                 ImageResource ir = cache.get(url);
Index: trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java	(revision 6920)
@@ -85,5 +85,5 @@
      * Openstreetmap.org changed it's URL scheme in August 2013, which breaks the URL parsing.
      * The following function, called by the old parse function if necessary, provides parsing new URLs
-     * the new URLs follow the scheme http://www.openstreetmap.org/#map=18/51.71873/8.76164&amp;layers=CN
+     * the new URLs follow the scheme https://www.openstreetmap.org/#map=18/51.71873/8.76164&amp;layers=CN
      * @param url string for parsing
      * @return Bounds if hashurl, {@code null} otherwise
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6919)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookUnixoid.java	(revision 6920)
@@ -72,5 +72,5 @@
         Shortcut.registerSystemShortcut("system:resetX", tr("reserved"), KeyEvent.VK_BACK_SPACE, KeyEvent.CTRL_DOWN_MASK | KeyEvent.ALT_DOWN_MASK).setAutomatic();
     }
-    
+
     /**
      * This should work for all platforms. Yeah, should.
@@ -122,5 +122,5 @@
         }
     }
-    
+
     /**
      * Get the package name including detailed version.
@@ -137,5 +137,5 @@
         }
     }
-    
+
     /**
      * Get the Java package name including detailed version.
@@ -166,14 +166,14 @@
         return null;
     }
-    
+
     /**
      * Get the Web Start package name including detailed version.
      *
-     * Debian and Ubuntu OpenJDK packages are shipped with icedtea-web package, 
+     * Debian and Ubuntu OpenJDK packages are shipped with icedtea-web package,
      * but its version does not match main java package version.
-     * 
+     *
      * Only Debian based distributions are covered at the moment.
      * This can be extended to other distributions if needed.
-     * 
+     *
      * Simply return {@code null} if there's no separate package for Java WebStart.
      *
@@ -323,5 +323,5 @@
         }
     }
-    
+
     protected void askUpdateJava(String version) {
         try {
@@ -339,7 +339,7 @@
                         "<b>"+tr("JOSM will soon stop working with this version; we highly recommend you to update to Java {0}.", "7")+"</b><br><br>"+
                         tr("Would you like to update now ?"));
-   
+
                 if (ed.showDialog().getValue() == 1) {
-                    openUrl("http://www.java.com/download");
+                    openUrl("https://www.java.com/download");
                 }
             }
