Fix PW overriding custom screen width/height #89

This commit is contained in:
daijro 2024-12-03 18:36:22 -06:00
parent d11cbe4dee
commit 5dbecfdf20

View file

@ -1,5 +1,22 @@
diff --git a/dom/base/nsScreen.cpp b/dom/base/nsScreen.cpp
index f9ae3bb56c..3af597c40f 100644
--- a/dom/base/nsScreen.cpp
+++ b/dom/base/nsScreen.cpp
@@ -65,6 +65,12 @@ nsDeviceContext* nsScreen::GetDeviceContext() const {
}
CSSIntRect nsScreen::GetRect() {
+ // Check for height and width overrides
+ if (auto height = MaskConfig::GetInt32("screen.height"),
+ width = MaskConfig::GetInt32("screen.width");
+ height && width) {
+ return {0, 0, width.value(), height.value()};
+ }
// Return window inner rect to prevent fingerprinting.
if (ShouldResistFingerprinting(RFPTarget::ScreenRect)) {
return GetTopWindowInnerRectForRFP();
diff --git a/gfx/src/moz.build b/gfx/src/moz.build
index a2b3e60fe5..56326fc038 100644
index a2b3e60fe5..faa0c113bc 100644
--- a/gfx/src/moz.build
+++ b/gfx/src/moz.build
@@ -95,3 +95,6 @@ FINAL_LIBRARY = "xul"