When adjustArrowPosition sets the "side" attribute, it causes a reflow that triggers a XUL layout bug. By setting the attribute in advance, we avoid the reflow.
--HG--
extra : amend_source : f622db0a26966c80eaaaa154ef991caeae06ff6d
This also fixes unintended behavior for which clicking the selected item in the sidebar selector would hide the sidebar.
Differential Revision: https://phabricator.services.mozilla.com/D3145
--HG--
extra : rebase_source : 891c99ab68f4689513801a1957a3d3846b7ffe58
The immediate goal is only to remove the broadcasters, so we still require the labels to be set manually on the "toolbarbutton" and "menuitem" elements. Generating these elements programmatically from the new SidebarUI.sidebars object, both for built-in sidebars and extensions, can be a future improvement.
The autoCheck attribute is also unnecessary since it is only intended for the menu items, and they are already properly updated after their command is invoked. Since the attribute was written with the wrong capitalization, it already had no effect.
The persistence of the label of the sidebar selector is also unnecessary since it is already set on startup. Removing this does not seem to cause any additional flickering.
Differential Revision: https://phabricator.services.mozilla.com/D3143
--HG--
extra : rebase_source : a5712b8e9bbdea29ab9e9a1bbd93217b24c354b4
Adds a new environment variable MOZ_BROWSER_XHTML to change Firefox to load
a modified version of browser.xul as browser.xhtml. Adds the xhtml
namespace to the script tags to make them work.
MozReview-Commit-ID: 2adtOVzXHKd
This also fixes unintended behavior for which clicking the selected item in the sidebar selector would hide the sidebar.
Differential Revision: https://phabricator.services.mozilla.com/D3145
--HG--
extra : source : 1070e943ab79f6c46fd6518bc3695b1bee3dfd48
The immediate goal is only to remove the broadcasters, so we still require the labels to be set manually on the "toolbarbutton" and "menuitem" elements. Generating these elements programmatically from the new SidebarUI.sidebars object, both for built-in sidebars and extensions, can be a future improvement.
The autoCheck attribute is also unnecessary since it is only intended for the menu items, and they are already properly updated after their command is invoked. Since the attribute was written with the wrong capitalization, it already had no effect.
The persistence of the label of the sidebar selector is also unnecessary since it is already set on startup. Removing this does not seem to cause any additional flickering.
Differential Revision: https://phabricator.services.mozilla.com/D3143
--HG--
extra : source : ef15c7fe957fd48be8a963ab16ddd5a172fe987d
The PageActions API is now used to assign a title to the bookmark action.
This also prevents some tooltips from being set unnecessarily on menu items.
Differential Revision: https://phabricator.services.mozilla.com/D3010
--HG--
extra : source : 9222f57d2c20b59b878660b0b998646101d70022
extra : amend_source : a160298483258a7bbd9920dd4eba9dcc43cfb4f3
Adds a new environment variable MOZ_BROWSER_XHTML to change Firefox to load
a modified version of browser.xul as browser.xhtml. Adds the xhtml
namespace to the script tags to make them work.
MozReview-Commit-ID: 2adtOVzXHKd
This goes back to relying on rows being the same height.
Places where we replace the popup will likely not use the richlistbox,
and we no longer have code that changes the height or exceeds the maximum
number of visible children with a scrollbar, so we should be OK.
To determine the padding on the richlistbox and the height of the initial
row, I've used a promiseDocumentFlushed callback. It's possible this causes
flicker the first time the popup opens. I can't see any, but it's quite
possible I'm missing something.
Differential Revision: https://phabricator.services.mozilla.com/D2242
--HG--
extra : moz-landing-system : lando
This goes back to relying on rows being the same height.
Places where we replace the popup will likely not use the richlistbox,
and we no longer have code that changes the height or exceeds the maximum
number of visible children with a scrollbar, so we should be OK.
To determine the padding on the richlistbox and the height of the initial
row, I've used a promiseDocumentFlushed callback. It's possible this causes
flicker the first time the popup opens. I can't see any, but it's quite
possible I'm missing something.
Differential Revision: https://phabricator.services.mozilla.com/D2242
--HG--
extra : moz-landing-system : lando
Also changes the tooltip on the home button to be independent of the URLs
it opens, per dolske.
Some tests explicitly set browser.startup.homepage, but only through
SpecialPowers.putPrefEnv. That's a good compromise, given the extra
functionality there.
MozReview-Commit-ID: FPLxzi3jQAP
--HG--
extra : rebase_source : c2b014f2fb1c78ce04859344bd1803ef48d5d68d
This prevents a specific failure in the "browser_startup_flicker.js" test on Windows 10 only, surfaced by bug 1421433. The compact theme stylesheet is kept separate because it can be disabled independently.
MozReview-Commit-ID: 3WDkrYqZtqN
--HG--
extra : rebase_source : d4c98fb5c5f2f5ce7170ddf0592b99ca18254058
The key used to be removed from the markup. This changes it to include
the <key> but instead disable it through the related command, which fits
the pattern used with other commands.
MozReview-Commit-ID: LPuwULDt22W
--HG--
extra : rebase_source : f463e41602b6c34c4cfcc2254d78647724117318
This allows queries to be stable across devices, and requires less work to obtain the ids.
MozReview-Commit-ID: 5KAKKags7o9
--HG--
extra : rebase_source : 22c01cf5b24468dd76dabe63fa9d1033d4138e54
This is how we load styles for other components like downloads, and
lets us remove the dependancy on XBL <resources>.
MozReview-Commit-ID: DWIyUhx9Nkh
--HG--
extra : rebase_source : ca0dc1a799b0c133fb33cac675e4a8772b3e8df5
By setting flex=10000 on the siblings of the toolbox and flex=1 on the toolbox iframe
we ensure that free space gets allocated to the browser contents and that the devtools
toolbox can shrink when the window needs to resize.
MozReview-Commit-ID: oel3kRw9m6
--HG--
extra : rebase_source : b87d6c024d8e57085115550bdc1b9169d3d70983
Move all of the overlay pieces into an include file except for the
DTD's that could not be put there. Inline the DTD's into the files
where they were used. Update comments in macWindow.inc.xul and browser.xul
to more accurately reflect the current state.
MozReview-Commit-ID: HZIeSf29Yl
--HG--
rename : browser/base/content/macBrowserOverlay.xul => browser/base/content/macWindow.inc.xul
extra : rebase_source : 5772943e01b4c6de7526ab829c6ea5b6960016e5
Move the main contents of editBookmarkOverlay.xul into an include file and
inline the DTD and CSS files where used. Convert several chrome tests to
browser tests since the preprocessor is hard to use within the testing
framework.
MozReview-Commit-ID: DpPBOpZSuBN
--HG--
rename : browser/components/places/content/editBookmarkOverlay.js => browser/components/places/content/editBookmark.js
rename : browser/components/places/content/editBookmarkOverlay.xul => browser/components/places/content/editBookmarkPanel.inc.xul
rename : browser/components/places/tests/chrome/test_bug427633_no_newfolder_if_noip.xul => browser/components/places/tests/browser/browser_bug427633_no_newfolder_if_noip.js
rename : browser/components/places/tests/chrome/test_bug485100-change-case-loses-tag.xul => browser/components/places/tests/browser/browser_bug485100-change-case-loses-tag.js
rename : browser/components/places/tests/chrome/test_bug631374_tags_selector_scroll.xul => browser/components/places/tests/browser/browser_bug631374_tags_selector_scroll.js
rename : browser/components/places/tests/chrome/test_editBookmarkOverlay_keywords.xul => browser/components/places/tests/browser/browser_editBookmark_keywords.js
rename : browser/components/places/tests/chrome/test_editBookmarkOverlay_tags_liveUpdate.xul => browser/components/places/tests/browser/browser_editBookmark_tags_liveUpdate.js
rename : browser/themes/linux/places/editBookmarkOverlay.css => browser/themes/linux/places/editBookmark.css
rename : browser/themes/osx/places/editBookmarkOverlay.css => browser/themes/osx/places/editBookmark.css
rename : browser/themes/windows/places/editBookmarkOverlay.css => browser/themes/windows/places/editBookmark.css
extra : rebase_source : aca072691251c1a44e82ab8091796abd2b140e22
The overlay was responsible for script loading and defining three elements
(bhTooltip, placesCommands, placesContext). In the majority of places where
the overlay was included only part of it was used. To remove the overlay, the
elements were each split into include files and moved into where they
were used. For the scripts, a JS file was added that defines all the lazy
modules and then this script, globalOverlay.js and utilityOverlay.js were
inlined to everywhere that would have included them from the overlay.
MozReview-Commit-ID: 8T5D46oYWLn
--HG--
rename : browser/components/places/content/placesOverlay.xul => browser/components/places/content/placesCommands.inc.xul
rename : browser/components/places/content/placesOverlay.xul => browser/components/places/content/placesContextMenu.inc.xul
extra : rebase_source : c1071af4ea264a95183cbc65caae98feb23d58e5
The overlay defined two elements (helpMenu, menu_ToolsPopup) for all
platforms and three others (windowMenu, baseMenuCommandSet, baseMenuKeyset)
that were MacOS only. The two all platform elements and windowMenu were only
used once and inlined into browser-menubar.inc. The rest of the MacOS only
elements were conditionally inlined into browser-sets.inc.
MozReview-Commit-ID: D2uyCrnepuH
--HG--
extra : rebase_source : a3f7ecaf70c55574ee87091027a651ce429c6876
The overlay elements with children of editMenuOverlay.xul are moved into
include files (editMenuCommands.inc.xul and editMenuKeys.inc.xul). For
the other single elements in the overlay, the attributes are inlined
wherever they are used.
MozReview-Commit-ID: 792cuzUvQxT
--HG--
extra : rebase_source : 58e4c05bde16cee873d37c6198de102d048499c2
We keep the XBL binding around for <content>, <constructor>, and <destructor>. This can
eventually be migrated to a Custom Element once we have platform support, but in the meantime
this is a way to get the many thousands of LOC into a JS class.
MozReview-Commit-ID: 1dCQp527yF9
--HG--
extra : rebase_source : 26b833413bab71168aa15e03f0f3803884be3f6b
extra : amend_source : 150cef6748ca8a9e819de0c674fac5966dd574cf
The XULStore is keyed on URL first, then element ID second. Having an empty ID
leads to bad data in xulstore.json.
MozReview-Commit-ID: CfkLvMsSvVA
--HG--
extra : rebase_source : a3b164d91d32f13a8cc81621eab412cc236d8469
This is part of the work to remove XUL overlays. The overlay was originally
created to help startup performance, but inlining the overlay seems to
no longer have detrimental effects to performance and is more straightforward.
MozReview-Commit-ID: 7sfVel6qvgv
--HG--
extra : rebase_source : b6311cf1fb98851b4f4203c314ae9ecc8160d766
This is part of the work to remove XUL overlays. The overlay was originally
created to help startup performance, but using a hidden panel instead seems to
have no detrimental effects to performance and is more straightforward.
MozReview-Commit-ID: JlWcZEhPXyH
--HG--
rename : browser/components/downloads/content/downloadsOverlay.xul => browser/components/downloads/content/downloadsPanel.inc.xul
extra : rebase_source : 60a9fec344b1e346594015cd36947fe1779257a7
Screen readers, especially on Windows, react very sensitively to a menu and expect certain children. Some, for example, only accept menu items, menu checkboxes or menu radio items, but no full-blown widgets like a rich listbox. So, this patch changes the role for the panels that pop up with search results or auto complete entries, to be like a normal grouping panel.
MozReview-Commit-ID: GCVXAPttV1M
--HG--
extra : rebase_source : 8d0559af13e52921dbdd0eeeafd16bb9f771d534
Since the sidebar menu is the only element using the small checkbox style, this is re-implemented placing the styles closer to the existing ones that are required for the checkbox to work. Some descendant selectors can be removed in the process.
MozReview-Commit-ID: vcVvvkvNeA
--HG--
extra : rebase_source : 6ff608c31c311688ea7caf37976bb38d977b7875
Since gBrowser is going to become a plain JS object instead of a DOM node,
we don't want any callers directly referring to the DOM node to get ahold of it.
MozReview-Commit-ID: KbE5dlTWmS
--HG--
extra : rebase_source : ef4caea778db406205b58b9f007846dabb062978
Just relanding the parts of the patch that were accidentally left out during a merge. These changes were all r=mikedeboer
MozReview-Commit-ID: 7yFZ4WIR8y7
This adds an end margin to the location bar search results that matches the end of the input field, unless doing this would be unbalanced with the start margin, in which case a symmetrical margin is chosen. This allows the location bar to be moved to the start of the navigation toolbar to reclaim space for results. This also handles gracefully other customization scenarios like having many icons on the right side of the location bar.
MozReview-Commit-ID: 9TwieL0lqHB
--HG--
extra : rebase_source : d838cbb12f5bffac321609fd8ea456be4328f59d
The only thing that I didn't remove was the process ID on the tab tooltip, which I find to be super helpful. For that, I changed the check from E10S_TESTING_ONLY to NIGHTLY_BUILD.
MozReview-Commit-ID: 8wbjdYIC3gb
--HG--
extra : rebase_source : 2ea1b77d4a9fd9c3eb17853c8ec655b309a3fa8c