Commit Graph

105 Commits

Author SHA1 Message Date
Dão Gottwald
4b170423dd Bug 1809465 - Replace _hoveredTab with a private tab property. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D166441
2023-01-10 17:10:30 +00:00
Oriol Brufau
e2f23612d8 Bug 1808965 - Stop calling _mouseleave and _mouseenter from _setPositionalAttributes. r=dao
Calling _mouseleave and _mouseenter from _setPositionalAttributes used
to be needed to update the beforehovered and afterhovered attributes,
as the tabs these attributes were set on might have changed.

However, bug 1808661 removed these attributes, so mouseenter/mouseleave
events should be sufficient for updating _hoveredTab itself.

_setPositionalAttributes is a hot code-path, so avoiding the expensive
querySelector("tab:hover") will improve performance when having lots of
tabs.

Depends on D166094

Differential Revision: https://phabricator.services.mozilla.com/D166225
2023-01-09 18:29:38 +00:00
Oriol Brufau
efa6c3a035 Bug 1808661 - Remove beforehovered and afterhovered. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D166094
2023-01-06 21:48:02 +00:00
Oriol Brufau
81252a2a9f Bug 1808661 - Remove before-multiselected and beforeMultiselected. r=Gijs,dao
Depends on D166026

Differential Revision: https://phabricator.services.mozilla.com/D166027
2023-01-06 21:48:01 +00:00
Oriol Brufau
6236b11f12 Bug 1808661 - Remove last-visible-tab and _lastTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166026
2023-01-06 21:48:01 +00:00
Oriol Brufau
90c202dccb Bug 1808661 - Remove first-visible-tab and _firstTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166025
2023-01-06 21:48:01 +00:00
Oriol Brufau
e7d4635b5f Bug 1808661 - Remove beforeselected-visible and _beforeSelectedTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166024
2023-01-06 21:48:00 +00:00
Sandor Molnar
8df493554b Backed out 5 changesets (bug 1808661) for causing bc failures in browser/base/content/test/tabs/browser_positional_attributes.js CLOSED TREE
Backed out changeset 16871d37b859 (bug 1808661)
Backed out changeset 607a282e25f5 (bug 1808661)
Backed out changeset c2ad604be361 (bug 1808661)
Backed out changeset b22c7589a7bb (bug 1808661)
Backed out changeset b0c1ee751b7a (bug 1808661)
2023-01-06 22:21:10 +02:00
Oriol Brufau
ae8fa22d48 Bug 1808661 - Remove beforehovered and afterhovered. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D166094
2023-01-06 19:38:54 +00:00
Oriol Brufau
a4c57bb663 Bug 1808661 - Remove before-multiselected and beforeMultiselected. r=Gijs,dao
Depends on D166026

Differential Revision: https://phabricator.services.mozilla.com/D166027
2023-01-06 19:38:54 +00:00
Oriol Brufau
836df6345f Bug 1808661 - Remove last-visible-tab and _lastTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166026
2023-01-06 19:38:53 +00:00
Oriol Brufau
1d06d77e22 Bug 1808661 - Remove first-visible-tab and _firstTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166025
2023-01-06 19:38:53 +00:00
Oriol Brufau
d21435446d Bug 1808661 - Remove beforeselected-visible and _beforeSelectedTab. r=Gijs,dao
Differential Revision: https://phabricator.services.mozilla.com/D166024
2023-01-06 19:38:53 +00:00
Oriol Brufau
86e125812f Bug 1760460 - Turn gBrowser._removingTabs into a Set. r=Gijs
Thus avoiding ugly things like:
this._removingTabs.splice(this._removingTabs.indexOf(aTab), 1);

Differential Revision: https://phabricator.services.mozilla.com/D165736
2023-01-01 18:09:28 +00:00
Mark Banner
34d6fb8d94 Bug 1806503 - Automatically replace Cu.reportError with console.error (browser/actors, browser/base). r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D165068
2022-12-27 10:08:58 +00:00
Eemeli Aro
c33e8c501f Bug 1760029 - Migrate tabbrowser.properties strings used by tabbrowser-tabs.js to Fluent. r=gregtatum,dao,fluent-reviewers,flod
This removes the `intl:app-locales-changed` event listener that was added in bug 1760825, as it's not longer required.

Depends on D159017

Differential Revision: https://phabricator.services.mozilla.com/D159018
2022-11-22 17:12:22 +00:00
Simon Friedberger
6b0a251a63 Bug 1549057 - Rename (Gg)etCSP to (Gg)etCsp - r=freddyb
Differential Revision: https://phabricator.services.mozilla.com/D159268
2022-10-24 20:38:11 +00:00
Katherine Patenio
08a422ffa7 Bug 1789978: fix drop indicator position for RTL builds after opening Firefox View. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D157851
2022-10-11 18:30:59 +00:00
James Picone
e437470a8b Bug 1625945: Intercept wheel events in tabbrowser-tabs if switchByScrolling is true so tabs also switch when it's overflown, r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D158077
2022-10-09 08:32:16 +00:00
Emilio Cobos Álvarez
0b76fc94ec Bug 1775998 - Update close buttons as a result of overflow/underflow. r=Gijs
The close buttons look at the overflow attribute but are not guaranteed
to update when it changes otherwise.

Differential Revision: https://phabricator.services.mozilla.com/D158622
2022-10-08 00:17:24 +00:00
Emilio Cobos Álvarez
de0702b818 Bug 1786513 - Don't use ResizeObserver to deal with window resizes in tabbrowser. r=Gijs
This was introduced alongside the MutationObserver[1], according to the commit
message to "improve performance through coalesence of 'resize' events."

However, that's false, before this bug, resizes on the top level window would
flush layout and resize the document element instantly so there should be the
exact same amount of resize events as of ResizeObserver notifications. I'm not
sure what coalesence would this achieve.

This is causing the previous patch to get backed out, due to a failure on macOS
that I haven't been able to reproduce.

It's likely because on chrome windows some document element resizes can trigger
window resizes due to the size constraint propagation we have, so nothing
super-concerning or new all-in-all, my patch just changed the timing of how
this happened.

[1]: https://hg.mozilla.org/mozilla-central/rev/ad71dde9ed5e28957b124001a78c88fc1d94426a

Differential Revision: https://phabricator.services.mozilla.com/D155986
2022-09-01 10:54:13 +00:00
Tooru Fujisawa
ca98419193 Bug 1771831 - Make it possible to reorder tabs in "List all tabs" list by drag-and-drop. r=NeilDeakin
Also the tab list item can be dragged to the tab bar to reorder, or moved to
other window, or detached.

Differential Revision: https://phabricator.services.mozilla.com/D147709
2022-08-31 13:22:53 +00:00
Butkovits Atila
3f8c432241 Backed out changeset f47d9c27992d (bug 1771831) for causing failures at browser_tabdetach.js. CLOSED TREE 2022-08-31 03:54:04 +03:00
Tooru Fujisawa
2736be1ef4 Bug 1771831 - Make it possible to reorder tabs in "List all tabs" list by drag-and-drop. r=NeilDeakin
Also the tab list item can be dragged to the tab bar to reorder, or moved to
other window, or detached.

Differential Revision: https://phabricator.services.mozilla.com/D147709
2022-08-30 22:49:43 +00:00
Kagami Sascha Rosylight
a37cf7833d Bug 1695435 - Part 2: Add more words to the chrome script heuristic in use-isInstance r=preferences-reviewers,Gijs,webdriver-reviewers,whimboo,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D110932
2022-08-24 22:47:42 +00:00
Paul Zuehlcke
b97f30fef1 Bug 1779055 - Change private browsing new tab title to "New Private Tab". r=timhuang
Differential Revision: https://phabricator.services.mozilla.com/D151534
2022-07-14 18:45:43 +00:00
Dão Gottwald
6687e2c9f8 Bug 1767802 - Add another tab stop to the tabs toolbar. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D149277
2022-06-15 11:13:36 +00:00
Dão Gottwald
f15ef2f501 Bug 1770808 - Preserve space around the Fx View button / tabstrip separator when there are pinned tabs and tabs overflow. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D147101
2022-05-24 17:05:28 +00:00
Cosmin Sabou
2f10d45a0f Backed out changeset 9e4593ef59f1 (bug 1770808) for causing Bug 1770968. a=backout 2022-05-24 19:17:00 +03:00
Dão Gottwald
29ec43c605 Bug 1770808 - Preserve space around the Fx View button / tabstrip separator when there are pinned tabs and tabs overflow. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D147101
2022-05-23 23:55:21 +00:00
Oriol Brufau
e153ffb636 Bug 1763712 - Prevent getRelatedElement() from passing empty string to getElementById(). r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D143234
2022-04-07 23:44:49 +00:00
Greg Tatum
3703685bab Bug 1760825 - Fix New Tab text to change on a live language reload; r=amy
This text is cached, and so needs invalidating when the app locale is
changed.

Differential Revision: https://phabricator.services.mozilla.com/D142256
2022-03-30 20:12:10 +00:00
Oriol Brufau
c962237b9a Bug 1759858 - Make gBrowser.tabContainer.on_drop handle adoptTab failures. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D141237
2022-03-28 08:56:23 +00:00
Oriol Brufau
3e9ad04ca7 Bug 1758295 - Preserve tab laziness when dragging into another window. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D140456
2022-03-10 09:28:02 +00:00
Emilio Cobos Álvarez
0b88ac572e Bug 1756241 - Improve tab dragging calculations to work correctly between mixed-dpi screens. r=dao
The root cause of the bug is fixed by the previous patch. This patch improves
the calculations to work properly across mixed dpi displays (which doesn't work
on release either by any stretch).

Hopefully it's somewhat straight-forward to follow.

Depends on D139243

Differential Revision: https://phabricator.services.mozilla.com/D139244
2022-02-22 19:06:59 +00:00
Emilio Cobos Álvarez
08a3c18595 Bug 1755315 - Add more convenient accessors for widget screen to chrome code. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D138662
2022-02-17 16:22:58 +00:00
Emilio Cobos Álvarez
2b4bcbce12 Bug 1753836 - Fix callers of screenForRect to pass desktop pixels. r=jfkthame,Gijs
Device pixels and desktop pixels are not the same on macOS and Win7.
Expose the desktop-to-device scale to JS and use it appropriately.

Depends on D138038

Differential Revision: https://phabricator.services.mozilla.com/D138039
2022-02-16 12:18:12 +00:00
smolnar
ac36389b37 Backed out 6 changesets (bug 1753836) for causing mochitest failures in test_event_screenXY_with_zoom. CLOSED TREE
Backed out changeset a572cbc0fac2 (bug 1753836)
Backed out changeset 371a495ff728 (bug 1753836)
Backed out changeset 774af76be463 (bug 1753836)
Backed out changeset faa8a8f2d40f (bug 1753836)
Backed out changeset 9209832ecffe (bug 1753836)
Backed out changeset db443ce0406d (bug 1753836)
2022-02-16 01:47:51 +02:00
Emilio Cobos Álvarez
1f6fc3a3d9 Bug 1753836 - Fix callers of screenForRect to pass desktop pixels. r=jfkthame,Gijs
Device pixels and desktop pixels are not the same on macOS and Win7.
Expose the desktop-to-device scale to JS and use it appropriately.

Depends on D138038

Differential Revision: https://phabricator.services.mozilla.com/D138039
2022-02-15 22:25:04 +00:00
Sarah Clements
ac27d9d5d6 Bug 1747430 - remove tabIndicatorReplacesIcon in browser tabs css file r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D137775
2022-02-11 16:19:52 +00:00
Emilio Cobos Álvarez
e26835e39d Bug 1753995 - Remove non-test usage of WindowUtils.screenPixelsPerCSSPixel. r=mconley
It does the same as window.devicePixelRatio. However a bunch of this
code is copy-pasted code trying to scale a canvas, but not messing with
full zoom is the right thing to do.

The full zoom value in the top level browser.xhtml page is always 1
anyways, and WindowsPreviewPerTab looking at the current browser tab's
full zoom is just bizarre...

Differential Revision: https://phabricator.services.mozilla.com/D138020
2022-02-07 18:23:35 +00:00
Emilio Cobos Álvarez
09d941de74 Bug 1741830 - Fix front-end callers of screenForRect in HiDPI environments. r=Gijs
screenForRect takes screen coordinates (device pixels, for our purpose here).

However screenX / screenY are in CSS pixels, so we need to convert them to the
right coordinate space before looking up the screen.

Differential Revision: https://phabricator.services.mozilla.com/D137895
2022-02-05 15:44:43 +00:00
Gijs Kruitbosch
a7eac8347b Bug 1749134 - fix error message when toggling containers caused by not removing from gClickAndHoldListenersOnElement, r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D135948
2022-01-17 13:49:05 +00:00
Kagami Sascha Rosylight
40b97ae847 Bug 1635018 - Part 2: Replace dragexit with dragleave in browser/ r=Gijs,mak
Differential Revision: https://phabricator.services.mozilla.com/D121190
2021-08-05 14:33:39 +00:00
Jared Wein
12189462cb Bug 1695472 - Add a mutation observer for fullscreen changes so we don't have to rely on timing of resize events. r=Gijs
A resize observer was also introduced to improve performance through coalesence of 'resize' events.

Differential Revision: https://phabricator.services.mozilla.com/D116522
2021-06-08 05:11:13 +00:00
Alexandru Michis
0625bff24a Backed out changeset 7fa771d9f62d (bug 1695472) for causing bc failures in browser_bug1620341.js (Bug 1714691) 2021-06-05 11:03:34 +03:00
Jared Wein
01cfd4f129 Bug 1695472 - Add a mutation observer for fullscreen changes so we don't have to rely on timing of resize events. r=Gijs
A resize observer was also introduced to improve performance through coalesence of 'resize' events.

Differential Revision: https://phabricator.services.mozilla.com/D116522
2021-06-04 20:47:44 +00:00
James Teh
663f429946 Bug 1700708: Don't insert the browser for unselected browser tabs when calling getRelatedElement. r=Gijs,dao
Otherwise, callers might end up unintentionally binding the browser for lazy background tabs.
This was happening when a11y queried the LABEL_FOR relation while building the a11y tree, causing all lazy tabs to be loaded.
All callers of this method only need it to insert a browser when the tab is selected anyway.

Differential Revision: https://phabricator.services.mozilla.com/D114566
2021-05-21 05:17:56 +00:00
Daisuke Akatsuka
5de8384d78 Bug 1710289: Avoid pasting the content of clipboard to urlbar upon clicking on new tab button and tab bar. r=masayuki,adw
Differential Revision: https://phabricator.services.mozilla.com/D114700
2021-05-11 04:58:40 +00:00
Jared Wein
a1bcf3c0d4 Bug 1696360 - Disable tab sliding animation if prefers-reduced-motion is set. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D110983
2021-04-13 13:51:19 +00:00