The rest of the menulist bindings have this, and is used to properly size
the menupopup when the menulist is opened. Without it, for long menulists
with a scrollbar, and short labels, the labels will get squeezed out during
layout and not be visible.
--HG--
extra : rebase_source : dea73f0b955cc72a0eb3f3e9e4df01187579ec83
extra : histedit_source : 5bb432c6afa96cfb73ca1535724a1d630ea1d5ca
The adjusted margin-end needs to be applied to the volume controls when the fullscreen button is hidden due to fullscreen being unavailable, such as within an iframe that is lacking the allowfullscreen attribute. Previously the margin-end was only applied when the video was determined to be audio-only.
The fix has two aspects:
- for onblur we need to complete to the actual suggestion not to leave addresses uncapitalized or having " >> " as value
- once we have a valid selection that should not be changed to default because EnterMatch is called again (which it is with blur if the value was confirmed by enter, or mouse selection already)
It's possible for docShell.printPreview.printPreview to throw (if we're attempting to print preview a
XUL document, for example). If it throws, this can put printUtils.js in a funny state, since it's waiting
to hear that print preview was successfully entered.
This patch makes it possible for browser-content.js to inform the parent that printPreview failed, and for
the parent to react appropriately.
--HG--
extra : amend_source : cd6d89feb1b7e95a2a02452412580a4d00d52ad1
In some cases removing an element from a document doesn't call its XBL
constructor. tabbrowser knows this and so calls a destroy method on browser
elements when removing them.
When remote-browser was added we forgot to add a specific destroy method so the
base browser binding's would be used. This would mean remote-browsers aren't
being destroyed correctly.
Also when we switch from remote to non-remote browsers or vice versa we don't
call the destroy method at all so sometimes the browser isn't destroyed properly
and observer notifications get fired on dead browser elements.
--HG--
extra : rebase_source : d54ca85d912fdd736495c500910ff51fb5e15b6a
test_popupreflows.xul currently expects to get 1 reflow when a popup is opened.
This is triggered by JS code. An incremental layout may be triggered by native
code but the test ignores that for unclear reasons ("Because we've simply
cargo-culted this test from browser_tabopen_reflows.js!").
In part 16 on this patch series, we force interruptible reflows to become
full reflows when we have pending animations which can cause this test to
fail since it will see 2 reflows.
The above quoted browser_tabopen_reflows.js specifically ignores reflows
triggered by native code so we adjust this test to do likewise.