From 347bfc5741b774d307e6e532e9a67f5a254c10a6 Mon Sep 17 00:00:00 2001 From: Moonchild Date: Sat, 5 Sep 2020 11:27:23 +0000 Subject: [PATCH 1/2] [Pale-Moon] Issue MoonchildProductions/UXP#1644 - Remove plugin check leftovers (front-end) Includes appropriate platform pointer update. --- application/palemoon/app/profile/palemoon.js | 3 --- .../palemoon/base/content/browser-plugins.js | 11 +---------- .../palemoon/components/nsBrowserGlue.js | 18 ------------------ 3 files changed, 1 insertion(+), 31 deletions(-) diff --git a/application/palemoon/app/profile/palemoon.js b/application/palemoon/app/profile/palemoon.js index 3b048030b6..ab5dcda855 100644 --- a/application/palemoon/app/profile/palemoon.js +++ b/application/palemoon/app/profile/palemoon.js @@ -683,9 +683,6 @@ pref("plugins.hide_infobar_for_outdated_plugin", false); // Pale Moon:pref to always show the plugin indicator or not (default=false) pref("plugins.always_show_indicator", false); -pref("plugins.update.url", "https://aus.palemoon.org/plugincheck/"); -pref("plugins.update.notifyUser", false); - //Enable tri-state option (Always/Never/Ask) pref("plugins.click_to_play", true); diff --git a/application/palemoon/base/content/browser-plugins.js b/application/palemoon/base/content/browser-plugins.js index 914f9528b2..9e44981bb2 100644 --- a/application/palemoon/base/content/browser-plugins.js +++ b/application/palemoon/base/content/browser-plugins.js @@ -332,12 +332,6 @@ var gPluginHandler = { BrowserOpenAddonsMgr("addons://list/plugin"); }, - // Callback for user clicking on the link in a click-to-play plugin - // (where the plugin has an update) - openPluginUpdatePage: function(aEvent) { - openURL(Services.urlFormatter.formatURLPref("plugins.update.url")); - }, - // Callback for user clicking a "reload page" link reloadPage: function(browser) { browser.reload(); @@ -524,10 +518,7 @@ var gPluginHandler = { } let url; - // TODO: allow the blocklist to specify a better link, bug 873093 - if (pluginInfo.blocklistState == Ci.nsIBlocklistService.STATE_VULNERABLE_UPDATE_AVAILABLE) { - url = Services.urlFormatter.formatURLPref("plugins.update.url"); - } else if (pluginInfo.blocklistState != Ci.nsIBlocklistService.STATE_NOT_BLOCKED) { + if (pluginInfo.blocklistState != Ci.nsIBlocklistService.STATE_NOT_BLOCKED) { url = Services.blocklist.getPluginBlocklistURL(pluginInfo.pluginTag); } pluginInfo.detailsLink = url; diff --git a/application/palemoon/components/nsBrowserGlue.js b/application/palemoon/components/nsBrowserGlue.js index 18f43c0293..e9bd019236 100644 --- a/application/palemoon/components/nsBrowserGlue.js +++ b/application/palemoon/components/nsBrowserGlue.js @@ -54,9 +54,6 @@ XPCOMUtils.defineLazyGetter(this, "gBrowserBundle", function() { return Services.strings.createBundle('chrome://browser/locale/browser.properties'); }); -const PREF_PLUGINS_NOTIFYUSER = "plugins.update.notifyUser"; -const PREF_PLUGINS_UPDATEURL = "plugins.update.url"; - // We try to backup bookmarks at idle times, to avoid doing that at shutdown. // Number of idle seconds before trying to backup bookmarks. 15 minutes. const BOOKMARKS_BACKUP_IDLE_TIME = 15 * 60; @@ -977,21 +974,6 @@ BrowserGlue.prototype = { } }, - _showPluginUpdatePage: function() { - // Pale Moon: disable this functionality from BrowserGlue, people are - // already notified if they visit a page with an outdated plugin, and - // they can check properly from the plugins page as well. - -// Services.prefs.setBoolPref(PREF_PLUGINS_NOTIFYUSER, false); -// -// var formatter = Cc["@mozilla.org/toolkit/URLFormatterService;1"]. -// getService(Ci.nsIURLFormatter); -// var updateUrl = formatter.formatURLPref(PREF_PLUGINS_UPDATEURL); -// -// var win = this.getMostRecentBrowserWindow(); -// win.openUILinkIn(updateUrl, "tab"); - }, - /** * Initialize Places * - imports the bookmarks html file if bookmarks database is empty, try to From 08809c7f128411cabf10a53d48df927bf05d1899 Mon Sep 17 00:00:00 2001 From: Moonchild Date: Thu, 10 Sep 2020 21:29:39 +0000 Subject: [PATCH 2/2] [Pale-Moon] Issue #1717 - Add distinct mixed-mode indicator and logic for display. --- application/palemoon/base/content/browser.js | 1 + application/palemoon/base/content/padlock.css | 48 +++++++++++++----- application/palemoon/base/content/padlock.js | 16 ++++-- .../base/content/padlock_classic_mixed.png | Bin 0 -> 324 bytes .../base/content/padlock_mod_mixed.png | Bin 0 -> 318 bytes application/palemoon/base/jar.mn | 2 + .../en-US/chrome/browser/browser.properties | 1 + application/palemoon/themes/linux/browser.css | 9 ++++ application/palemoon/themes/osx/browser.css | 11 ++++ .../palemoon/themes/windows/browser.css | 18 +++++++ 10 files changed, 91 insertions(+), 15 deletions(-) create mode 100644 application/palemoon/base/content/padlock_classic_mixed.png create mode 100644 application/palemoon/base/content/padlock_mod_mixed.png diff --git a/application/palemoon/base/content/browser.js b/application/palemoon/base/content/browser.js index bb5801f894..d62228a8b3 100644 --- a/application/palemoon/base/content/browser.js +++ b/application/palemoon/base/content/browser.js @@ -6832,6 +6832,7 @@ var gIdentityHandler = { let punyID = gPrefService.getIntPref("browser.identity.display_punycode", 1); switch (newMode) { + case this.IDENTITY_MODE_MIXED_CONTENT: case this.IDENTITY_MODE_DOMAIN_VERIFIED: { let iData = this.getIdentityData(); diff --git a/application/palemoon/base/content/padlock.css b/application/palemoon/base/content/padlock.css index 649cb2777f..7503790a32 100644 --- a/application/palemoon/base/content/padlock.css +++ b/application/palemoon/base/content/padlock.css @@ -20,12 +20,16 @@ background-color: transparent; } -#padlock-ib[padshow="ib-trans-bg"][level="low"], -#padlock-ib[padshow="ib-trans-bg"][level="mixed"] { +#padlock-ib[padshow="ib-trans-bg"][level="low"] { list-style-image: url("chrome://browser/content/padlock_mod_low.png"); background-color: transparent; } +#padlock-ib[padshow="ib-trans-bg"][level="mixed"] { + list-style-image: url("chrome://browser/content/padlock_mod_mixed.png"); + background-color: transparent; +} + #padlock-ib[padshow="ib-trans-bg"][level="broken"] { list-style-image: url("chrome://browser/content/padlock_mod_broken.png"); background-color: transparent; @@ -55,13 +59,18 @@ background-color: transparent; } -#padlock-ib-left[padshow="ib-left"][level="low"], -#padlock-ib-left[padshow="ib-left"][level="mixed"] { +#padlock-ib-left[padshow="ib-left"][level="low"] { list-style-image: url("chrome://browser/content/padlock_mod_low.png"); padding: 2px; background-color: transparent; } +#padlock-ib-left[padshow="ib-left"][level="mixed"] { + list-style-image: url("chrome://browser/content/padlock_mod_mixed.png"); + padding: 2px; + background-color: transparent; +} + #padlock-ib-left[padshow="ib-left"][level="broken"] { list-style-image: url("chrome://browser/content/padlock_mod_broken.png"); padding: 2px; @@ -90,12 +99,16 @@ background-color: transparent; } -#padlock-ub-right[padshow="ub-right"][level="low"], -#padlock-ub-right[padshow="ub-right"][level="mixed"] { +#padlock-ub-right[padshow="ub-right"][level="low"] { list-style-image: url("chrome://browser/content/padlock_mod_low.png"); background-color: transparent; } +#padlock-ub-right[padshow="ub-right"][level="mixed"] { + list-style-image: url("chrome://browser/content/padlock_mod_mixed.png"); + background-color: transparent; +} + #padlock-ub-right[padshow="ub-right"][level="broken"] { list-style-image: url("chrome://browser/content/padlock_mod_broken.png"); background-color: transparent; @@ -117,12 +130,16 @@ background-color: transparent; } -#padlock-sb[padshow="statbar"][level="low"], -#padlock-sb[padshow="statbar"][level="mixed"] { +#padlock-sb[padshow="statbar"][level="low"] { list-style-image: url("chrome://browser/content/padlock_mod_low.png"); background-color: transparent; } +#padlock-sb[padshow="statbar"][level="mixed"] { + list-style-image: url("chrome://browser/content/padlock_mod_mixed.png"); + background-color: transparent; +} + #padlock-sb[padshow="statbar"][level="broken"] { list-style-image: url("chrome://browser/content/padlock_mod_broken.png"); background-color: transparent; @@ -144,12 +161,16 @@ background-color: transparent; } -#padlock-tab[padshow="tabs-bar"][level="low"], -#padlock-tab[padshow="tabs-bar"][level="mixed"] { +#padlock-tab[padshow="tabs-bar"][level="low"] { list-style-image: url("chrome://browser/content/padlock_mod_low.png"); background-color: transparent; } +#padlock-tab[padshow="tabs-bar"][level="mixed"] { + list-style-image: url("chrome://browser/content/padlock_mod_mixed.png"); + background-color: transparent; +} + #padlock-tab[padshow="tabs-bar"][level="broken"] { list-style-image: url("chrome://browser/content/padlock_mod_broken.png"); background-color: transparent; @@ -176,13 +197,16 @@ #padlock-ib-left[padshow="ib-left"][padstyle="classic"][level="low"], #padlock-ub-right[padshow="ub-right"][padstyle="classic"][level="low"], #padlock-sb[padshow="statbar"][padstyle="classic"][level="low"], -#padlock-tab[padshow="tabs-bar"][padstyle="classic"][level="low"], +#padlock-tab[padshow="tabs-bar"][padstyle="classic"][level="low"] { + list-style-image: url("chrome://browser/content/padlock_classic_low.png"); +} + #padlock-ib[padshow="ib-trans-bg"][padstyle="classic"][level="mixed"], #padlock-ib-left[padshow="ib-left"][padstyle="classic"][level="mixed"], #padlock-ub-right[padshow="ub-right"][padstyle="classic"][level="mixed"], #padlock-sb[padshow="statbar"][padstyle="classic"][level="mixed"], #padlock-tab[padshow="tabs-bar"][padstyle="classic"][level="mixed"] { - list-style-image: url("chrome://browser/content/padlock_classic_low.png"); + list-style-image: url("chrome://browser/content/padlock_classic_mixed.png"); } #padlock-ib[padshow="ib-trans-bg"][padstyle="classic"][level="broken"], diff --git a/application/palemoon/base/content/padlock.js b/application/palemoon/base/content/padlock.js index 74b1bdfc6b..f57f5075ea 100644 --- a/application/palemoon/base/content/padlock.js +++ b/application/palemoon/base/content/padlock.js @@ -38,10 +38,13 @@ var padlock_PadLock = level = "ev"; } else { // Step 1 FALSE: Domain Validation - // Normal "high" - // Mixed Active Content "low" + // Normal "high" + // Mixed Passive Content "mixed" + // Mixed Active Content "broken" if (aState & wpl.STATE_LOADED_MIXED_ACTIVE_CONTENT) - level = "low"; + level = "broken"; + else if (aState & wpl.STATE_LOADED_MIXED_DISPLAY_CONTENT) + level = "mixed"; else level = "high"; } @@ -125,6 +128,7 @@ var padlock_PadLock = let s_ev = "Extended Validated"; let s_hi = "Secure"; + let s_mx = "Mixed content"; let s_lo = "Weak security"; let s_no = "Not secure"; let gLocale = document.getElementById("bundle_browser"); @@ -135,6 +139,9 @@ var padlock_PadLock = let n_hi = gLocale.getString("identity.padlock.high"); if(n_hi != null) s_hi = n_hi; + let n_mx = gLocale.getString("identity.padlock.mixed"); + if(n_mx != null) + s_mx = n_mx; let n_lo = gLocale.getString("identity.padlock.low"); if(n_lo != null) s_lo = n_lo; @@ -152,6 +159,9 @@ var padlock_PadLock = case "low": sectooltip = s_lo; break; + case "mixed": + sectooltip = s_mx; + break; case "broken": sectooltip = s_no; break; diff --git a/application/palemoon/base/content/padlock_classic_mixed.png b/application/palemoon/base/content/padlock_classic_mixed.png new file mode 100644 index 0000000000000000000000000000000000000000..a8be5d4fe7e37d8c72bc27b61dc906f0e48305fd GIT binary patch literal 324 zcmV-K0lWT*P)4_);(m+c*gdn4AQ?u8H@E#)X1K>7 z%fQI+kKrf7HHL78vf#9Tnr*%=~$!hZtL!r=-~?|%kfpc&TK14 literal 0 HcmV?d00001 diff --git a/application/palemoon/base/content/padlock_mod_mixed.png b/application/palemoon/base/content/padlock_mod_mixed.png new file mode 100644 index 0000000000000000000000000000000000000000..137c338b4b48ce3796c13accc80127b970517094 GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6*h@TpUD=;-a&hr#Witz`2MTc( zctjR6FmQbUVMeDlCNqG7cRgJkLn>}1CoB*#P@0h+!e44rkeCo~BRO2LNZR>e_E%T+ zecTQ==Ey(NamjbO;bXx1`_?`VjlA=dPfZTG^UpOQT)Hh*S3diH{S=msc3#*1t^dy> z+&=q5?|Xgb|HT5`|1FJ~rTKm4usZo#*T{QJ`^RqCHQRCS!O0I#K76^&gDda$fjc?} z1P&}Xb>Pf`tmdRc`73G{@tot4;<0bwiU?f$gL#@5yO%d}WDWl>^EH6=f1?$%gvEhN|0Vtz)wr5FzUr8AHgifrWx #identity-box.mixedContent { + color: rgb(79,79,0); + margin-inline-end: 4px; + background-image: linear-gradient(rgba(245,245,220,1), + rgba(242,242,207,1)); + background-position: right; + background-repeat: no-repeat; +} + #identity-box.verifiedIdentity:-moz-locale-dir(rtl) { background-position: left; } diff --git a/application/palemoon/themes/osx/browser.css b/application/palemoon/themes/osx/browser.css index d1b231a3a0..49c210df44 100644 --- a/application/palemoon/themes/osx/browser.css +++ b/application/palemoon/themes/osx/browser.css @@ -1073,6 +1073,17 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder, background-repeat: no-repeat; } +#urlbar[pageproxystate="valid"] > #identity-box.mixedContent { + color: rgb(79,79,0); + margin-inline-end: 4px; + background-image: -moz-linear-gradient(rgba(79,79,0,0), + rgba(79,79,0,.08) 25%, + rgba(79,79,0,.08) 75%, + rgba(79,79,0,0)); + background-position: right; + background-repeat: no-repeat; +} + #identity-box.verifiedIdentity:-moz-locale-dir(rtl) { background-position: left; } diff --git a/application/palemoon/themes/windows/browser.css b/application/palemoon/themes/windows/browser.css index f41a583e41..6bfb7b9c8d 100644 --- a/application/palemoon/themes/windows/browser.css +++ b/application/palemoon/themes/windows/browser.css @@ -1486,6 +1486,18 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder, border-right: 1px solid rgba(0,79,168,0.5); } +#urlbar[pageproxystate="valid"] > #identity-box.mixedContent { + color: rgb(79,79,0); + margin-inline-end: 4px; + background-image: -moz-linear-gradient(rgba(79,79,0,0), + rgba(79,79,0,.08) 25%, + rgba(79,79,0,.08) 75%, + rgba(79,79,0,0)); + background-position: right; + background-repeat: no-repeat; + border-right: 1px solid rgba(79,79,0,0.5); +} + #identity-box.verifiedIdentity:-moz-locale-dir(rtl) { background-position: left; border-right: none; @@ -1498,6 +1510,12 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder, border-left: 1px solid rgba(0,79,168,0.5); } +#identity-box.mixedContent:-moz-locale-dir(rtl) { + background-position: left; + border-right: none; + border-left: 1px solid rgba(79,79,0,0.5); +} + #identity-box:-moz-focusring { outline: 1px dotted #000; outline-offset: -3px;