Граф коммитов

48 Коммитов

Автор SHA1 Сообщение Дата
Dão Gottwald 65b52f7de5 Bug 1510418 - Use TelemetryStopwatch.running instead of custom _tabSwitchStopWatchRunning flag. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D13126

--HG--
extra : moz-landing-system : lando
2018-11-27 21:53:13 +00:00
Ehsan Akhgari 31a9e2ed4f Bug 1503074 follow-up: Address review comments 2018-11-27 14:48:23 -05:00
Ehsan Akhgari 923b4f06ad Bug 1503074 - Only touch the FX_TAB_SWITCH_COMPOSITE_E10S_MS stopwatch when we have actually started it in the past
Differential Revision: https://phabricator.services.mozilla.com/D12966

--HG--
extra : moz-landing-system : lando
2018-11-26 19:16:09 +00:00
Kris Maglione ade8c9ede8 Bug 1482091: Part 2 - Remove TelemetryStopwatch.jsm in favor of native implementation. r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D9888

--HG--
extra : source : afd0a13bcfff4c92ad2497ec687f466484481667
extra : amend_source : 501bca3f94a0cb0c8bec1f30d0b3f64a50b04e48
extra : intermediate-source : bc03f101937e373fdaca735f3f356960a5239bc0
2018-10-25 19:04:01 -07:00
arthur.iakab 0c81738411 Backed out 2 changesets (bug 1482091) for bc failures on browser_domFullscreen_fullscreenMode.js
Backed out changeset bc03f101937e (bug 1482091)
Backed out changeset 28a19b7290ab (bug 1482091)
2018-11-03 01:08:36 +02:00
Kris Maglione 7fa01216a4 Bug 1482091: Part 2 - Remove TelemetryStopwatch.jsm in favor of native implementation. r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D9888

--HG--
extra : source : afd0a13bcfff4c92ad2497ec687f466484481667
extra : amend_source : bf22d8e9ce5c081902bd5c75b892cc434a167300
2018-10-25 19:04:01 -07:00
arthur.iakab cf2aa54f83 Backed out 2 changesets (bug 1482091)for failing browser chrome failures on browser_panelUINotifications_fullscreen_noAutoHideToolbar.js
Backed out changeset afd0a13bcfff (bug 1482091)
Backed out changeset a19c6b3e0402 (bug 1482091)
2018-11-02 23:01:15 +02:00
Kris Maglione 96f3e16d1a Bug 1482091: Part 2 - Remove TelemetryStopwatch.jsm in favor of native implementation. r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D9888

--HG--
extra : rebase_source : a9daea3a9efea37acdbcaecda8bf0b7f69631de4
extra : histedit_source : bb8b416b1387da9de3bd95c7a171f10426a22602
2018-10-25 19:04:01 -07:00
Jay Lim b232c83d80 Bug 1472212 - Ensure that tab does not show busy or burst status whenever we navigate to about:home, about:newtab, or about:welcome in a new window. r=Gijs
Now that we have moved some about: pages to the privileged content process,
opening these URLs from a non-privileged content process will trigger SessionStore
to restore the tab state due to a process flip. We will set favicons for these
URLs earlier to avoid flickering and improve perceived performance.

This patch also prevents the spinner whenever a page with a local about: URI
(about:blank and about: pages that resolve to jar:// or file:// URIs) is
loaded from a process that the URI cannot load in (e.g. loading about:newtab
in the web content process), as well as during tab duplication or session
restoration for such local about: URIs.

Before this patch, there were additional frames when opening a new window, causing
browser/base/content/test/performance/browser_windowopen.js to fail. This patch
will reduce the number of frames when opening a new window.

MozReview-Commit-ID: yjj2964KSz

--HG--
extra : source : cecc2d52e72e7c6e61137a9147735cb07a079d51
extra : intermediate-source : 21a6f1a83c73ce4fff654d4b2118e98375f0a528
extra : histedit_source : e8b8132856b7ee27b530798c2721b76118de655e
2018-07-20 16:43:12 -04:00
Ciure Andrei 60ea98ca60 Backed out 10 changesets (bug 1501044, bug 1472212) for fetch-destination.https.html perma failure CLOSED TREE
Backed out changeset aa35078cabaa (bug 1472212)
Backed out changeset bf02793f802d (bug 1472212)
Backed out changeset 95a7ef6102a6 (bug 1472212)
Backed out changeset 7b7fa6ab2229 (bug 1472212)
Backed out changeset 4fe4ec18f2f3 (bug 1472212)
Backed out changeset 18f824674b76 (bug 1472212)
Backed out changeset 1978a7837502 (bug 1472212)
Backed out changeset 21a6f1a83c73 (bug 1472212)
Backed out changeset 48242d39d532 (bug 1472212)
Backed out changeset 0b5cf2f4305a (bug 1501044)
2018-10-30 23:31:10 +02:00
Jay Lim 6fe4aee23e Bug 1472212 - Ensure that tab does not show busy or burst status whenever we navigate to about:home, about:newtab, or about:welcome in a new window. r=Gijs
Now that we have moved some about: pages to the privileged content process,
opening these URLs from a non-privileged content process will trigger SessionStore
to restore the tab state due to a process flip. We will set favicons for these
URLs earlier to avoid flickering and improve perceived performance.

This patch also prevents the spinner whenever a page with a local about: URI
(about:blank and about: pages that resolve to jar:// or file:// URIs) is
loaded from a process that the URI cannot load in (e.g. loading about:newtab
in the web content process), as well as during tab duplication or session
restoration for such local about: URIs.

Before this patch, there were additional frames when opening a new window, causing
browser/base/content/test/performance/browser_windowopen.js to fail. This patch
will reduce the number of frames when opening a new window.

MozReview-Commit-ID: yjj2964KSz

--HG--
extra : rebase_source : a5588b5b6496c983350f591602d0959f906235d5
extra : intermediate-source : 176f3ee14e67f493bafefbd599fbf0fe194a25a6
extra : source : cecc2d52e72e7c6e61137a9147735cb07a079d51
2018-07-20 16:43:12 -04:00
Csoregi Natalia cc313f779c Backed out 9 changesets (bug 1472212) for browser-chrome tests run issues on Linux x64 asan and failures on browser_ext_windows_create_tabId.js. CLOSED TREE
Backed out changeset 18e46df44cd1 (bug 1472212)
Backed out changeset 2e5de66c1f60 (bug 1472212)
Backed out changeset b94f9883aef0 (bug 1472212)
Backed out changeset ebdca743668c (bug 1472212)
Backed out changeset f8a06d01437e (bug 1472212)
Backed out changeset b6996abc7d90 (bug 1472212)
Backed out changeset 24c257cd18c3 (bug 1472212)
Backed out changeset 176f3ee14e67 (bug 1472212)
Backed out changeset b4baa63e5b1b (bug 1472212)
2018-10-30 01:58:21 +02:00
Jay Lim 6687faac63 Bug 1472212 - Ensure that tab does not show busy or burst status whenever we navigate to about:home, about:newtab, or about:welcome in a new window. r=Gijs
Now that we have moved some about: pages to the privileged content process,
opening these URLs from a non-privileged content process will trigger SessionStore
to restore the tab state due to a process flip. We will set favicons for these
URLs earlier to avoid flickering and improve perceived performance.

This patch also prevents the spinner whenever a page with a local about: URI
(about:blank and about: pages that resolve to jar:// or file:// URIs) is
loaded from a process that the URI cannot load in (e.g. loading about:newtab
in the web content process), as well as during tab duplication or session
restoration for such local about: URIs.

Before this patch, there were additional frames when opening a new window, causing
browser/base/content/test/performance/browser_windowopen.js to fail. This patch
will reduce the number of frames when opening a new window.

MozReview-Commit-ID: yjj2964KSz

--HG--
extra : rebase_source : b5087686ad3e1c3eb16d0be9a8031b01d14cb6ab
extra : source : cecc2d52e72e7c6e61137a9147735cb07a079d51
2018-07-20 16:43:12 -04:00
Doug Thayer 351745db30 Bug 1495032 - Proactively adjust tab priority on switch r=mconley
Our current prioritization mechanism doesn't account for tab
warming, or for the fact that the current tab should be
deprioritized. This corrects that.

Differential Revision: https://phabricator.services.mozilla.com/D7205

--HG--
extra : moz-landing-system : lando
2018-10-01 17:05:32 +00:00
Coroiu Cristina 83cdfe7284 Merge mozilla-central to inbound a=merge on a CLOSED TREE 2018-08-31 19:35:06 +03:00
Mark Banner 691543ee89 Bug 1486739 - Add missing dangling commas in browser/, services/, taskcluster/ and toolkit/. r=mossop
Automatic changes by ESLint, except for manual corrections for .xml files.

Differential Revision: https://phabricator.services.mozilla.com/D4439

--HG--
extra : moz-landing-system : lando
2018-08-31 05:59:17 +00:00
Dave Townsend e1f6637191 Bug 1487246: Remove uses of comma sequences in linted code. r=Standard8
Two cases were hiding permanently failing tests. I've commented those out and
filed bug 1487431.

Differential Revision: https://phabricator.services.mozilla.com/D4680

--HG--
extra : rebase_source : 232fa6173de8844a9c47d59926ec8e39d0640ecd
2018-08-29 16:12:55 -07:00
Mike Conley bda8a0dccd Bug 1478112 - Get rid of preselect tabbox workaround, and adjust focus after changing visible tab right away. r=dao
The "select" event handler workaround was originally added in bug 1379270 to make it
possible to focus and select the URL bar a little bit later. This ugly hack was to
workaround an issue with WebExtensions that override about:newtab with the
chrome_url_overrides property (the issue would be that the URL bar would not be
properly focused and selected if about:newtab was overridden).

Back in the day, this was necessary because the overriding URL was fully displayed
in the URL bar (moz-webextension://...). These days, when about:newtab is overridden,
the URL bar is still empty - we just end up showing the information about the
WebExtension overriding about:newtab to the left of the URL bar.

So I think we can remove the old workaround.

Differential Revision: https://phabricator.services.mozilla.com/D3447

--HG--
extra : moz-landing-system : lando
2018-08-21 06:55:47 +00:00
Matt Woodrow 88a85cf5c7 Bug 1481704 - Add missing hunk that got lost during rebasing. 2018-08-15 12:08:39 +12:00
Matt Woodrow 268f257529 Bug 1481704 - Add FX_TAB_SWITCH_COMPOSITE_E10S_MS to measure total time it takes to present a tab during tab-switch. r=mconley, data-review=francois 2018-08-11 22:07:14 +12:00
Brian Grinstead abf1620630 Bug 1479125 - Migrate calls that expect an element to be returned to use element variation firstChild etc to firstElementChild etc;r=Paolo
This allows the JS to work in HTML documents, where whitespace is preserved. In XUL
documents, whitespace is ignored when parsing so text nodes are generally not returned.

The following changes were made, with manual cleanups as necessary (i.e. when firstChild actually
refers to a text node, or when firstChild is used in a loop to empty out an element):

  firstChild->firstElementChild
  lastChild->lastElementChild
  nextSibling->nextElementSibling
  previousSibling->previousElementSibling
  childNodes->children

MozReview-Commit-ID: 95NQ8syBhYw

--HG--
extra : rebase_source : 186d805f7a2a56694dda9032aceac2dfe5424753
2018-08-08 15:22:53 -07:00
Doug Thayer 5247357739 Bug 1176019 - Don't let cache interfere with tab warming r=mconley
While working to reproduce the stale content bug with tab warming
I realized that my work here had inadvertently clobbered tab
warming by immediately calling the tab unload code. This wasn't
necessary, and I didn't need to put the cached tab deactivation
code in the unload method, it just seemed initially convenient.
This should make more sense overall.

MozReview-Commit-ID: 9v9dYZTa1Dv

--HG--
extra : rebase_source : fe1d6f4f87df11d5ed495e309a4a0f144bfc2143
2018-05-15 09:31:13 -07:00
Doug Thayer fc77954257 Bug 1176019 - Force a paint when switching to a loaded tab r=mconley
This is fairly straightforward, other than the fact that the
nomenclature gets a bit awkward with the aForce parameter on
the ForcePaint methods. I'm not sure which direction to go with
this - "aForce" seems a fairly intuitive name for what we want,
and I'm kind of inclined to say the existing ForcePaint mechanic
should be renamed to something like PaintWithInterrupt, or
PaintWithPriority.

MozReview-Commit-ID: Bj9DROug1pC

--HG--
extra : rebase_source : a3d91fec940d83325d36bafb13fe892e9c9530e8
2018-05-14 23:45:00 -07:00
Doug Thayer 6572652a7d Bug 1176019 - Cache layers of background tabs r=mconley
We maintain a simple LRU cache of tab layers by setting their
docShellIsActive = false with preserveLayers(true). Once they
are pushed out of the cache by more recently used tabs, their
layers are discarded.

Luckily most of the complexity of this could be contained in
the AsyncTabSwitcher - the one change that had to sit outside of
that was moving the aTab.closing = true earlier in the removeTab
call, so that we could use that information to eagerly evict tabs
from the cache. This was to address a leak in a few tests on try.

MozReview-Commit-ID: 2E3uU8LEYkD

--HG--
extra : rebase_source : d2865fd1ee10db17d9f41cca059a5cee697f259d
2018-04-16 15:35:41 -07:00
Bogdan Tara babf96cf0c Backed out 3 changesets (bug 1176019) for frequently failing /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/Maybe.h a=backout
Backed out changeset 2dd8b719d645 (bug 1176019)
Backed out changeset 9c6b0eb062ca (bug 1176019)
Backed out changeset 2d0dfc54128e (bug 1176019)
2018-05-11 17:07:19 +03:00
Doug Thayer bbadb1c753 Bug 1176019 - Cache layers of background tabs r=mconley
We maintain a simple LRU cache of tab layers by setting their
docShellIsActive = false with preserveLayers(true). Once they
are pushed out of the cache by more recently used tabs, their
layers are discarded.

Luckily most of the complexity of this could be contained in
the AsyncTabSwitcher - the one change that had to sit outside of
that was moving the aTab.closing = true earlier in the removeTab
call, so that we could use that information to eagerly evict tabs
from the cache. This was to address a leak in a few tests on try.

MozReview-Commit-ID: 2E3uU8LEYkD

--HG--
extra : rebase_source : b7e7bb3fcf1ed59e79a7c9fb9d3e6ce735ab54e9
2018-04-16 15:35:41 -07:00
Dorel Luca e2b88544d0 Backed out 3 changesets (bug 1176019) for Browser-chrome failures on dom/plugins/test/mochitest/browser_tabswitchbetweenplugins.js. CLOSED TREE
Backed out changeset 31b295f557db (bug 1176019)
Backed out changeset 6c591b484a11 (bug 1176019)
Backed out changeset 3e7dbe6b5122 (bug 1176019)
2018-05-11 02:03:20 +03:00
Doug Thayer 2b3e7dfef6 Bug 1176019 - Cache layers of background tabs r=mconley
We maintain a simple LRU cache of tab layers by setting their
docShellIsActive = false with preserveLayers(true). Once they
are pushed out of the cache by more recently used tabs, their
layers are discarded.

Luckily most of the complexity of this could be contained in
the AsyncTabSwitcher - the one change that had to sit outside of
that was moving the aTab.closing = true earlier in the removeTab
call, so that we could use that information to eagerly evict tabs
from the cache. This was to address a leak in a few tests on try.

MozReview-Commit-ID: 2E3uU8LEYkD

--HG--
extra : rebase_source : b7e7bb3fcf1ed59e79a7c9fb9d3e6ce735ab54e9
2018-04-16 15:35:41 -07:00
Dorel Luca 54c649077a Backed out changeset 998791c75fbc (bug 1176019) for Browser-chrome failures on dom/plugins/test/mochitest/browser_bug1196539.js. CLOSED TREE 2018-05-08 10:55:32 +03:00
Doug Thayer 00e503831d Bug 1176019 - Cache layers of background tabs r=mconley
We maintain a simple LRU cache of tab layers by setting their
docShellIsActive = false with preserveLayers(true). Once they
are pushed out of the cache by more recently used tabs, their
layers are discarded.

Luckily most of the complexity of this could be contained in
the AsyncTabSwitcher - the one change that had to sit outside of
that was moving the aTab.closing = true earlier in the removeTab
call, so that we could use that information to eagerly evict tabs
from the cache. This was to address a leak in a few tests on try.

MozReview-Commit-ID: 2E3uU8LEYkD

--HG--
extra : rebase_source : 1de7c196b14b2f3a368bfbae970808cbf49e6e36
2018-04-16 15:35:41 -07:00
Dão Gottwald 51eab9cbe5 Bug 1183135 - Update tab position attributes when a tab becomes visually selected rather than synchronously when switching tabs. r=mconley
MozReview-Commit-ID: Lvf0edXlwTu

--HG--
extra : rebase_source : ca5899905428ce3d295eeb0211f02b5799c908f2
2018-05-03 13:32:28 +02:00
arthur.iakab 9befdc9927 Backed out changeset ee1e498e3c43 (bug 1183135) for failing browser chrome tests on browser/base/content/test/performance/browser_tabclose.js a=backout 2018-05-03 13:45:10 +03:00
Dão Gottwald 891e47b838 Bug 1183135 - Update tab position attributes when a tab becomes visually selected rather than synchronously when switching tabs. r=mconley
MozReview-Commit-ID: LGOk50fNaXe

--HG--
extra : rebase_source : 835411c7e88a48506a2652581443d15122025c52
2018-04-28 19:19:59 +02:00
Mike Conley 4e10ada3b9 Bug 1447193 - Remove all displayport suppression logic from AsyncTabSwitcher. r=dthayer
It looks like TabChild::RenderLayers already does the work of suppressing the displayport,
so all of the suppression and bookkeeping that AsyncTabSwitcher is doing is superfluous
and probably opening us up to weird graphical glitches (like the one associated with this
bug).

MozReview-Commit-ID: 5qIVguSMsnr

--HG--
extra : rebase_source : 59e72715791cb8aa25310e48b5a02e1b86762543
2018-03-23 16:10:17 -04:00
Mike Conley fc0c43807a Bug 1450170 - Add Nightly-only observer notification that fires anytime a tab switch spinner is displayed. r=dthayer
MozReview-Commit-ID: 3S34IVb9BEf

--HG--
extra : rebase_source : 084a98ece1ffa0d32109811d700f80e3e2b1eaf0
2018-03-29 22:37:07 -04:00
Gurzau Raul b85716429c Backed out changeset e3613e0e4fe2 (bug 1447193) for failing on tests/mochitest/test_mousecapture.xhtml on a CLOSED TREE 2018-03-29 04:51:04 +03:00
Mike Conley 6424c99346 Bug 1447193 - Remove all displayport suppression logic from AsyncTabSwitcher. r=dthayer
It looks like TabChild::RenderLayers already does the work of suppressing the displayport,
so all of the suppression and bookkeeping that AsyncTabSwitcher is doing is superfluous
and probably opening us up to weird graphical glitches (like the one associated with this
bug).

MozReview-Commit-ID: 5qIVguSMsnr

--HG--
extra : rebase_source : 35f944a324415401c4a28ed0006baf9361ef73c8
2018-03-23 16:10:17 -04:00
Csoregi Natalia 3854319e77 Backed out changeset de19108477c7 (bug 1447193) for not fixing the issue- requested. CLOSED TREE 2018-03-28 21:16:32 +03:00
Mike Conley f0500e5bda Bug 1447193 - Unsuppress display ports immediately after the tab switch has completed. r=dthayer
We suppress the displayport when requesting a tab or warming it, in order to reduce
the amount of work that the content process needs to do to paint it (we paint just
the displayport area and nothing around it). Afterwards, we unsuppress the displayport
so that we can paint the surrounding areas when scrolling. We normally do this
unsuppression in destroy(), but with tab warming, that unsuppression can happen
after a few seconds (after the tab warming eviction timeout).

This results in users seeing checkerboarding sometimes, where the tab they're looking
at is still suppressing its displayport and waiting for the timeout to complete.

This patch updates the AsyncTabSwitcher to unsuppress the displayport for a tab as
soon as the tab has been switched to, instead of waiting for the timeout.

Out of an abundance of caution, we still unsuppress displayports for tabs that
never get to enter the STATE_LOADED state, although that really should never
happen.

MozReview-Commit-ID: 5qIVguSMsnr

--HG--
extra : rebase_source : 90c0d617ac3d43a8d4513e864ba2f0a3228a5582
2018-03-23 16:10:17 -04:00
Kiran 78451d10e0 Bug 1447956 - Use this.tabbrowser.tabContainer instead of this.tabbrowser.tabbox.tabs. r=dao 2018-03-25 19:49:00 +02:00
Daniel Almeida 673edf8ee3 Bug 1447950 - use a switch statement in place of chained if-else in AsyncTabSwitcher.handleEvent. r=dao 2018-03-23 19:00:01 +01:00
Dão Gottwald 1b366a1008 Bug 1448102 - Move tabWarmingEnabled, tabWarmingMax, tabWarmingUnloadDelay properties from gBrowser to AsyncTabSwitcher.jsm. r=mconley
MozReview-Commit-ID: 2pI1aDUxWFw

--HG--
extra : rebase_source : ed6f75031f47456e91ed419c939b2e29ecc58526
2018-03-22 19:36:00 +01:00
Mike Conley 8f3cddc6cf Bug 1447326 - Fix tab warming state probe. r=dthayer
Since bug 1432509, the warmingTabs WeakSet has had warmed tabs
cleared from it once they have entered STATE_LOADED. This allowed
us to make decisions on tab switch operations based on whether or
not a tab was still being warmed.

This broke our Telemetry, which assumed that warming tabs would
still be in the warmingTabs WeakSet until either requested or
evicted. Now, instead, we look to see whether or not tab warming
is enabled, and whether tabs _could_ have been warmed in order to
add entries to the right buckets.

MozReview-Commit-ID: 94oiKYzf4au

--HG--
extra : rebase_source : 0b6be98ff93d9753fcdacbec15a2a7b08232bb3a
2018-03-21 14:01:18 -04:00
Mike Conley 1bb8e62185 Bug 1423220 - Don't delay activating the DocShell for tabs that we're rendering by switching and not warming. r=dthayer
MozReview-Commit-ID: 3UmocajaSWJ

--HG--
extra : rebase_source : f79b07bd5620312b959503aeee5410c2e205a471
2018-03-16 11:39:22 -04:00
Vivek Dhingra 7b323d8758 Bug 1446060 - Rename mPanelContainer to tabpanels r=dao
MozReview-Commit-ID: 85PNkl3OeBE

--HG--
extra : rebase_source : d7bfb49a8736b8319f6d1ca45f39fe001d4214d8
2018-03-16 10:23:00 -04:00
Doug Thayer c8a5a6165c Bug 1442068 - Record last probable cause of tab switch spinner r=mconley
MozReview-Commit-ID: mQnySbkQyH

--HG--
extra : rebase_source : dfad446ff95e364e822d1ae2ea8ecbf84bd9662f
2018-03-12 15:16:26 -07:00
Dão Gottwald 732eeec0ab Bug 1442651 - Remove the tabbrowser element and binding. r=bgrins
MozReview-Commit-ID: 2IXukkFq5C2

--HG--
extra : rebase_source : 4fd817951e19b39b5b06e75614031302177e86b2
2018-03-05 20:33:36 +01:00
Dão Gottwald 5d11b950a7 Bug 1436361 - Extract the async tab switcher from tabbrowser.js into its own JSM. r=mconley
MozReview-Commit-ID: AQaVOmQ548v

--HG--
rename : browser/base/content/tabbrowser.js => browser/modules/AsyncTabSwitcher.jsm
extra : rebase_source : 2ca6b3e21aead7de333ffec9bcbfc3f2b8bebdcb
2018-03-02 12:51:15 +01:00