diff options
author | Brian Smith <brian@dbsoft.org> | 2022-04-26 10:13:11 -0500 |
---|---|---|
committer | Brian Smith <brian@dbsoft.org> | 2022-04-26 10:19:04 -0500 |
commit | 3daf711085889bad1bd68651bc4e8790412ae105 (patch) | |
tree | f5b0e4c1befb320cdf158e1839ac5e273373087f /toolkit/modules | |
parent | 7fe702603066e7f122d5dd66a3a1892ac7e06215 (diff) | |
download | uxp-3daf711085889bad1bd68651bc4e8790412ae105.tar.gz |
Issue #1829 - Revert “Issue #1751 -- Remove XP_MACOSX conditionals from the rest of the tree.”
This also removes some PP abuse and takes file entries out of PP when no longer
needed without XP_MACOSX conditionals.
This reverts commit 6f707bde95dab6998ac204f9ee6c925ee230c740.
Diffstat (limited to 'toolkit/modules')
-rw-r--r-- | toolkit/modules/AppConstants.jsm | 2 | ||||
-rw-r--r-- | toolkit/modules/LightweightThemeConsumer.jsm | 23 | ||||
-rw-r--r-- | toolkit/modules/UpdateUtils.jsm | 11 | ||||
-rw-r--r-- | toolkit/modules/WindowDraggingUtils.jsm | 2 | ||||
-rw-r--r-- | toolkit/modules/moz.build | 2 |
5 files changed, 38 insertions, 2 deletions
diff --git a/toolkit/modules/AppConstants.jsm b/toolkit/modules/AppConstants.jsm index 40a630a445..ba94f4a3fc 100644 --- a/toolkit/modules/AppConstants.jsm +++ b/toolkit/modules/AppConstants.jsm @@ -105,6 +105,8 @@ this.AppConstants = Object.freeze({ "linux", #elif XP_WIN "win", +#elif XP_MACOSX + "macosx", #elif XP_LINUX "linux", #else diff --git a/toolkit/modules/LightweightThemeConsumer.jsm b/toolkit/modules/LightweightThemeConsumer.jsm index 9419fdcf23..4010a9ff22 100644 --- a/toolkit/modules/LightweightThemeConsumer.jsm +++ b/toolkit/modules/LightweightThemeConsumer.jsm @@ -147,6 +147,29 @@ LightweightThemeConsumer.prototype = { footer.removeAttribute("lwthemefooter"); } +#if defined(XP_MACOSX) && defined(MOZ_CAN_DRAW_IN_TITLEBAR) + // On OS X, we extend the lightweight theme into the titlebar, which means setting + // the chromemargin attribute. Some XUL applications already draw in the titlebar, + // so we need to save the chromemargin value before we overwrite it with the value + // that lets us draw in the titlebar. We stash this value on the root attribute so + // that XUL applications have the ability to invalidate the saved value. + if (stateChanging) { + if (!root.hasAttribute("chromemargin-nonlwtheme")) { + root.setAttribute("chromemargin-nonlwtheme", root.getAttribute("chromemargin")); + } + + if (active) { + root.setAttribute("chromemargin", "0,-1,-1,-1"); + } else { + let defaultChromemargin = root.getAttribute("chromemargin-nonlwtheme"); + if (defaultChromemargin) { + root.setAttribute("chromemargin", defaultChromemargin); + } else { + root.removeAttribute("chromemargin"); + } + } + } +#endif Services.obs.notifyObservers(this._win, "lightweight-theme-window-updated", JSON.stringify(aData)); } diff --git a/toolkit/modules/UpdateUtils.jsm b/toolkit/modules/UpdateUtils.jsm index 5e3a2e100a..5acf395d3d 100644 --- a/toolkit/modules/UpdateUtils.jsm +++ b/toolkit/modules/UpdateUtils.jsm @@ -168,6 +168,17 @@ XPCOMUtils.defineLazyGetter(UpdateUtils, "ABI", function() { Cu.reportError("XPCOM ABI unknown"); } +#ifdef XP_MACOSX + // Mac universal build should report a different ABI than either macppc + // or mactel. + let macutils = Cc["@mozilla.org/xpcom/mac-utils;1"]. + getService(Ci.nsIMacUtils); + + if (macutils.isUniversalBinary) { + abi += "-u-" + macutils.architecturesInBinary; + } +#endif + return abi; }); diff --git a/toolkit/modules/WindowDraggingUtils.jsm b/toolkit/modules/WindowDraggingUtils.jsm index 5be8814de1..a7986c8b4a 100644 --- a/toolkit/modules/WindowDraggingUtils.jsm +++ b/toolkit/modules/WindowDraggingUtils.jsm @@ -2,7 +2,7 @@ * 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/. */ -#if defined(XP_WIN) +#if defined(XP_WIN) || defined(XP_MACOSX) const HAVE_CSS_WINDOW_DRAG_SUPPORT = true; #else const HAVE_CSS_WINDOW_DRAG_SUPPORT = false; diff --git a/toolkit/modules/moz.build b/toolkit/modules/moz.build index 836fd66b36..8509eb7cd3 100644 --- a/toolkit/modules/moz.build +++ b/toolkit/modules/moz.build @@ -103,7 +103,7 @@ EXTRA_PP_JS_MODULES += [ ] -EXTRA_JS_MODULES += [ +EXTRA_PP_JS_MODULES += [ 'LightweightThemeConsumer.jsm', ] |