mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 07:48:38 +09:00
[PALEMOON] Update UA Compatibility modes in a backwards compatible way
This commit is contained in:
parent
de0621cc7e
commit
8bc4f6c65f
4 changed files with 54 additions and 0 deletions
45
application/palemoon/base/content/browser-uacompat.js
Normal file
45
application/palemoon/base/content/browser-uacompat.js
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
var UserAgentCompatibility = {
|
||||
PREF_UA_COMPAT: "general.useragent.compatMode",
|
||||
PREF_UA_COMPAT_GECKO: "general.useragent.compatMode.gecko",
|
||||
PREF_UA_COMPAT_FIREFOX: "general.useragent.compatMode.firefox",
|
||||
|
||||
init: function() {
|
||||
this.checkPreferences();
|
||||
Services.prefs.addObserver(this.PREF_UA_COMPAT, this, false);
|
||||
Services.prefs.addObserver(this.PREF_UA_COMPAT_GECKO, this, false);
|
||||
Services.prefs.addObserver(this.PREF_UA_COMPAT_FIREFOX, this, false);
|
||||
},
|
||||
|
||||
uninit: function() {
|
||||
Services.prefs.removeObserver(this.PREF_UA_COMPAT, this, false);
|
||||
Services.prefs.removeObserver(this.PREF_UA_COMPAT_GECKO, this, false);
|
||||
Services.prefs.removeObserver(this.PREF_UA_COMPAT_FIREFOX, this, false);
|
||||
},
|
||||
|
||||
observe: function() {
|
||||
this.checkPreferences();
|
||||
},
|
||||
|
||||
checkPreferences: function() {
|
||||
var compatMode = Services.prefs.getIntPref(this.PREF_UA_COMPAT);
|
||||
|
||||
switch(compatMode) {
|
||||
case 0:
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_GECKO, false);
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_FIREFOX, false);
|
||||
break;
|
||||
case 1:
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_GECKO, true);
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_FIREFOX, false);
|
||||
break;
|
||||
case 2:
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_GECKO, true);
|
||||
Services.prefs.setBoolPref(this.PREF_UA_COMPAT_FIREFOX, true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -7,6 +7,7 @@ var Ci = Components.interfaces;
|
|||
var Cu = Components.utils;
|
||||
|
||||
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource:///modules/RecentWindow.jsm");
|
||||
|
||||
XPCOMUtils.defineLazyModuleGetter(this, "CharsetMenu",
|
||||
|
|
@ -141,6 +142,7 @@ let gInitialPages = [
|
|||
#include browser-plugins.js
|
||||
#include browser-tabPreviews.js
|
||||
#include browser-thumbnails.js
|
||||
#include browser-uacompat.js
|
||||
|
||||
#ifdef MOZ_WEBRTC
|
||||
#include browser-webrtcUI.js
|
||||
|
|
@ -917,6 +919,7 @@ var gBrowserInit = {
|
|||
TabsInTitlebar.init();
|
||||
retrieveToolbarIconsizesFromTheme();
|
||||
ToolbarIconColor.init();
|
||||
UserAgentCompatibility.init();
|
||||
|
||||
#ifdef XP_WIN
|
||||
if (window.matchMedia("(-moz-os-version: windows-win8)").matches &&
|
||||
|
|
@ -1293,6 +1296,8 @@ var gBrowserInit = {
|
|||
DevToolsTheme.uninit();
|
||||
#endif
|
||||
|
||||
UserAgentCompatibility.uninit();
|
||||
|
||||
var enumerator = Services.wm.getEnumerator(null);
|
||||
enumerator.getNext();
|
||||
if (!enumerator.hasMoreElements()) {
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ pref("app.releaseNotesURL", "http://www.palemoon.org/releasenotes.shtml");
|
|||
|
||||
// Enable Firefox compatmode by default.
|
||||
pref("general.useragent.compatMode", 2);
|
||||
pref("general.useragent.compatMode.gecko", true);
|
||||
pref("general.useragent.compatMode.firefox", true);
|
||||
|
||||
// ========================= updates ========================
|
||||
#if defined(XP_WIN)
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ pref("app.releaseNotesURL", "http://www.palemoon.org/unstable/releasenotes.shtml
|
|||
|
||||
// Enable Firefox compatmode by default.
|
||||
pref("general.useragent.compatMode", 2);
|
||||
pref("general.useragent.compatMode.gecko", true);
|
||||
pref("general.useragent.compatMode.firefox", true);
|
||||
|
||||
// ========================= updates ========================
|
||||
#if defined(XP_WIN)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue