Bug 1676301. Only set mResolutionUpdated if we are changing the resolution. r=kats

We incorrectly set it when going from the mResolution.isNothing() to the *mResolution == 1.f case.

Differential Revision: https://phabricator.services.mozilla.com/D97385
This commit is contained in:
Timothy Nikkel 2020-11-19 01:01:02 +00:00
Родитель 27f8cfde78
Коммит c9931b44d2
3 изменённых файлов: 23 добавлений и 1 удалений

Просмотреть файл

@ -5385,6 +5385,11 @@ nsresult PresShell::SetResolutionAndScaleTo(float aResolution,
MOZ_ASSERT(mResolution.isSome());
return NS_OK;
}
// GetResolution handles mResolution being nothing by returning 1 so this
// is checking that the resolution is actually changing.
bool resolutionUpdated = (aResolution != GetResolution());
RenderingState state(this);
state.mResolution = Some(aResolution);
SetRenderingState(state);
@ -5393,7 +5398,7 @@ nsresult PresShell::SetResolutionAndScaleTo(float aResolution,
}
if (aOrigin == ResolutionChangeOrigin::Apz) {
mResolutionUpdatedByApz = true;
} else {
} else if (resolutionUpdated) {
mResolutionUpdated = true;
}

Просмотреть файл

@ -0,0 +1,16 @@
<style>
#a { max-width: 1 }
</style>
<script>
function go() {
a.value = ">"
a.selectionDirection = "foo"
b.requestFullscreen()
document.createElement("body").onresize = () => { a.selectionEnd = 0 }
setTimeout(window.close, 100)
}
</script>
<body onload=go()>
<textarea id="a"></textarea>
<ol id="b">
<div>

Просмотреть файл

@ -554,3 +554,4 @@ load 1586600.html
load 1599518.html
load 1599532.html
pref(layout.accessiblecaret.enabled,true) load 1606492.html
load 1676301-1.html