In particular, we set the pres context visible area _before_ processing
restyles.
This causes inconsistencies when resolving viewport units. In particular, the
resulting style tree will have some units resolved in terms of the old size, and
some in terms of the new size, depending on whatever is dirty, because we don't
flush the pending media query changes.
Also, some sizes are resolved against the unconstrained size because of the
shrink-to-fit stuff. Fix this by flushing _before_ in this case, instead of
after, since we're going to set the size to an actual value later when reflowing
the root frame.
MozReview-Commit-ID: ExI5yTJCjGp
This patch makes 'Shift', 'Alt', 'Contorl' and 'AltGraph' been suppressed for content
when fingerprinting resistance is enabled. Chrome can still get these events.
The reason behind this is that websites can still observe key combinations to
tell which keyboard layout is using even we spoof the keyboardEvent.code,
keyboardEvent.keyCode and modifier states. For example, the AZERTY France
keyboard, the digit keys of it requires the user press the Shift key. So, it is
easy to differentiate AZERTY and QWERTY keyboard by observing whether a Shift key
generates its own before the digit keys. There are similar issues for 'Alt' and
'AltGraph' as well.
MozReview-Commit-ID: 3CwCgvey4lK
--HG--
extra : rebase_source : 225a34ab188f6cca288a6c0e9874261df7db629f
We don't need to create AnimationEventParams, we can direcly create
AnimationEventInfo array and move it to dispatcher.
MozReview-Commit-ID: BCzKGAV8VTw
--HG--
extra : rebase_source : f668b27bacb0c929de5b997b5428c3c75e5a8474
DispatchEvents() couldn't be moved since the function holds a reference of
nsAnimationManager or nsTransitionManager, but the common template class
is not ref-countable.
MozReview-Commit-ID: FfiJtzSZWn
--HG--
extra : rebase_source : 30d1cdcebf8e06696f28ba5c0968a90797976f06
If we remove the first continuation of the ::after content before the last,
before this patch unbind the generated content ASAP. Part of the generated
content (the second counter) in the test-case ends up in a continuation of that
frame.
That text node would already be unbound from the tree when destroying its
frame.
MozReview-Commit-ID: 4VtVRSoGxCT
--HG--
extra : rebase_source : e14b9660adf27c906ec7e89f27693b462ab5bde2
To prevent the crash when content-select is enabled, I disable this
assertion that don't allow to call ShowDropDown() in the content
process.
MozReview-Commit-ID: F3BelChp1AK
--HG--
extra : rebase_source : 2bbec4dceffb7698804609010127b37442a907a7
After landing bug 1375910, input.value = "" doesn't remove inter text node.
When value is empty, SelectAllOrCollapseToEndOfText will set selection to
end of text. But since empty text node is still exist, it select all nodes,
instead of collapsed. So if text node is empty, we should collapse selection.
MozReview-Commit-ID: Gm0AP6YSJIg
--HG--
extra : rebase_source : fa7ecda9761f1e202b0a4600968c2e1151220fc3
Servo tries to keep this invariant that stuff under a display: none element
subtree doesn't get styled.
This invariant isn't checked in StyleNewChildRange, but we can fix this by just
doing the work after finding an insertion point, which guarantees that.
Do the same for listboxes, since we also style early for them without knowing
whether they actually have a listbox parent frame.
MozReview-Commit-ID: Glyx24wQ6qY
--HG--
extra : rebase_source : 18535795e5a29080f6f0ecc620ee8601faf4826f