Commit Graph

384 Commits

Author SHA1 Message Date
Gijs Kruitbosch
a242ba95b3 Bug 1441039 - same-document changes should cause empty URL bar to fill back up for current tab, r=mak
Make URLBarSetURI more explicit about what it's looking for in `value`,
and ensure the tabbrowser's progress listeners reset the userTypeValue if it's
empty already and there's a same-site document change.

Differential Revision: https://phabricator.services.mozilla.com/D2181
2018-07-19 10:47:23 +00:00
Mark Striemer
56ddddc716 Bug 1470947 - Part 2: Call _tabAttrModified on busy and progress changes r=dao
This fixes the tab throbbers not showing sometimes and not showing
the progress state in the all tabs menu.

MozReview-Commit-ID: FintGto9e9g
2018-06-25 11:30:44 -04:00
Abdoulaye O. Ly
d14ca2e47b Bug 1458049 - Implement ability to move a selection of tabs into a new window through tab context menu. r=jaws
MozReview-Commit-ID: KrjavwyoF4s
2018-07-13 19:30:58 +00:00
Mike Conley
62c485471d Bug 1362569 - Don't flush layout when locking the tab size during tab close. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D2140
2018-07-18 09:27:49 +00:00
Dão Gottwald
fb1fe9161c Bug 1475537 - Clean up addTab parameter handling. r=mikedeboer
MozReview-Commit-ID: JF9hNLmd3bF
2018-07-17 13:54:23 +02:00
Coroiu Cristina
ce0d8732f7 Backed out changeset 1d9cd6db7f77 (bug 1475537) for devtools failures at devtools/client/netmonitor/test/browser_net_open_request_in_tab.js on a CLOSED TREE 2018-07-17 14:20:12 +03:00
Abdoulaye O. Ly
6290b52439 Bug 1458067 - Implement ability to bookmark a selection of tabs. r=Gijs
MozReview-Commit-ID: 4KE3qSf3j0y
2018-07-12 00:25:35 +00:00
Dão Gottwald
d1f5457e9a Bug 1475537 - Clean up addTab parameter handling. r=mikedeboer
MozReview-Commit-ID: FuTHVHN43XA
2018-07-13 15:24:09 +02:00
Abdoulaye O. Ly
130bffd719 Bug 1472910 - Close all unselected tabs except those pinned with gBrowser.removeAllTabsBut(aTab) when aTab is multi-selected. r=jaws
MozReview-Commit-ID: 9gqSJmiBbCs
2018-07-12 06:49:04 +00:00
Ehsan Akhgari
938cd178bb Bug 1474384 - Memoize the nsIURI object returned from the currentURI getter for lazy <xul:browser> objects; r=dao 2018-07-12 13:11:00 +03:00
Manish Kumar
5a5638eecc Bug 1473253 - Stop setting onerror attribute on tabs. r=dao 2018-07-09 20:03:57 +02:00
Dão Gottwald
1406fa5eda Bug 1473309 - Move TabContextMenu and stray usercontext-related functions from browser.js to tabbrowser.js. r=bgrins
MozReview-Commit-ID: CA3F65x08Kg
2018-07-04 16:24:37 +02:00
Abdoulaye O. Ly
c6bbc3c21d Bug 1472074 - Fix behavior for multiselection using shift key to match other popular apps such as Chrome or Windows Explorer. r=Gijs
MozReview-Commit-ID: 8vWJJcGMOwA
2018-06-30 03:11:31 +00:00
arthur.iakab
2476395d52 Merge inbound to mozilla-central a=merge 2018-07-03 11:55:46 +03:00
Abdoulaye O. Ly
975b317b22 Bug 1458061 - Implement ability to reload a selection of tabs. r=Gijs
MozReview-Commit-ID: CyJLk7pxGRr
2018-06-29 02:39:18 +00:00
Oriol Brufau
465fc7fb37 Bug 1472305 - browser.tabs.highlight() with single tab should not set multiselected=true r=Gijs,mixedpuppy
MozReview-Commit-ID: 8cvtMkHoRxD
2018-06-30 17:27:12 +02:00
Dave Townsend
e0d7c25a1e Bug 1472475: Properly clear the current favicon when navigating to a new URL. r=mak
In practice this is an easy fix, just clear the icon when the page first changes
to a new URL. In practice that breaks our hack for setting an early favicon for
certain in-content pages so we have to workaround that somewhat.

Differential Revision: https://phabricator.services.mozilla.com/D1909
2018-07-02 16:42:43 +00:00
Coroiu Cristina
72b3df5f72 Merge mozilla-central to autoland a=merge on a CLOSED TREE 2018-06-30 01:00:54 +03:00
Dave Townsend
0f2c3bd648 Bug 1453751: Load favicons in the content process. r=mak, r=gijs, r=aswan, r=mixedpuppy
Summary:
This moves the load of favicons into the content process. We use the same logic
for finding favicons (based on waiting until none have shown up for a short
time) but then load the favicon and convert it to a data uri which we then
dispatch to the parent process. Along the way this fixes asssociating the load
with the tab for WebExtension and devtools, fixes CSP usage for the load, fixes
expiry detection of the favicon and stops us from loading the same resource
twice.

This change also merges the prefs browser.chrome.site_icons and
browser.chrome.favicons leaving just the former controlling favicon loading. It
adds the pref browser.chrome.guess_favicon to allow disabling guessing where
a favicon might be located for a site (at <hostname>/favicon.ico). This is
mainly to allow disabling this in tests where those additional yet automatic
requests are uninteresting for the test.

There are multiple clean-ups that can follow this but this is a first step along
that path.

MozReview-Commit-ID: E0Cs59UnxaF

Reviewers: mak

Tags: #secure-revision

Bug #: 1453751

Differential Revision: https://phabricator.services.mozilla.com/D1672
Differential Revision: https://phabricator.services.mozilla.com/D1673
Differential Revision: https://phabricator.services.mozilla.com/D1674
Differential Revision: https://phabricator.services.mozilla.com/D1850
Differential Revision: https://phabricator.services.mozilla.com/D1869
2018-06-28 16:06:09 -07:00
Abdoulaye O. Ly
7c49799423 Bug 1458060 - Implement ability to pin/unpin a selection of tabs. r=jaws
MozReview-Commit-ID: Hqt8QrqQ62V
2018-06-23 18:07:48 +00:00
Brindusan Cristian
d94fd86e60 Backed out changeset b11aa832c41a (bug 1453751) for Mochitest-15 failures in toolkit/components/extensions/test/mochitest/test_ext_webrequest_filter.html. CLOSED TREE 2018-06-28 23:15:49 +03:00
Dave Townsend
ebc2c6ff75 Bug 1453751: Load favicons in the content process. r=mak, r=gijs, r=aswan
Summary:
This moves the load of favicons into the content process. We use the same logic
for finding favicons (based on waiting until none have shown up for a short
time) but then load the favicon and convert it to a data uri which we then
dispatch to the parent process. Along the way this fixes asssociating the load
with the tab for WebExtension and devtools, fixes CSP usage for the load, fixes
expiry detection of the favicon and stops us from loading the same resource
twice.

This change also merges the prefs browser.chrome.site_icons and
browser.chrome.favicons leaving just the former controlling favicon loading. It
adds the pref browser.chrome.guess_favicon to allow disabling guessing where
a favicon might be located for a site (at <hostname>/favicon.ico). This is
mainly to allow disabling this in tests where those additional yet automatic
requests are uninteresting for the test.

There are multiple clean-ups that can follow this but this is a first step along
that path.

MozReview-Commit-ID: E0Cs59UnxaF

Reviewers: mak

Tags: #secure-revision

Bug #: 1453751

Differential Revision: https://phabricator.services.mozilla.com/D1672
Differential Revision: https://phabricator.services.mozilla.com/D1673
Differential Revision: https://phabricator.services.mozilla.com/D1674
Differential Revision: https://phabricator.services.mozilla.com/D1850
2018-06-04 12:53:55 -07:00
Oriol Brufau
498a7b8c8c Bug 1465170 - Implement support for the 'highlighted' API for multiselect tabs with tabs.query r=jaws,mixedpuppy
MozReview-Commit-ID: 6eFnxrXJXXB
2018-06-03 02:53:59 +02:00
Gijs Kruitbosch
4fc43fb0a7 Bug 1438499 - show 'close multiple tabs' warning dialog when quitting, r=jaws,whimboo
MozReview-Commit-ID: J2gi9do8HK9
2018-06-13 09:34:52 -07:00
layely
8f86b7bb1c Bug 1458039 - Implement ability to mute/unmute a selection of tabs. r=jaws
MozReview-Commit-ID: 7aw08gxOOtk
2018-05-31 03:26:25 +00:00
layely
84900bd57e Bug 1467340 - Ctrl+w and Ctrl+f4 shortcuts close all selected tabs in multi-select context. r=jaws
MozReview-Commit-ID: AfrpuOKBfas
2018-06-07 13:36:17 +00:00
Bianca Danforth
43c4ff2368 Bug 1465694 - Add tab event telemetry for Savant Shield study; r=dao
These probes will register and record (for the duration of the study only):
* When a tab opens.
* When a tab closes.
* When a tab is selected.

MozReview-Commit-ID: BvknEH0ofS0
2018-06-06 03:44:48 -07:00
layely
5578b347e9 Bug 1458018 - Add style for multiselected tabs. r=jaws
MozReview-Commit-ID: Ead7pIfHBJP
2018-06-03 05:04:48 +00:00
Oriol Brufau
b818f7e84a Bug 1466678 - Store multiple selected tabs in a WeakSet instead of a WeakMap r=jaws
MozReview-Commit-ID: 3sfRtQruInF
2018-06-04 23:20:46 +02:00
Dão Gottwald
9296af7edb Bug 1465401 - setTabTitle shouldn't wrap data URI shortening in try/catch. r=jfkthame
MozReview-Commit-ID: Cgh1iahbpWQ
2018-05-30 13:44:31 +02:00
layely
3b701cd4b2 Bug 1458022 - Implement ability to close a selection of tabs. r=jaws
MozReview-Commit-ID: 4yjajKnONuK
2018-05-21 04:16:01 +00:00
Doug Thayer
e02569821b Bug 1176019 - Clear cached layers on location change r=mconley
To avoid a flash of stale content in the event of a slow tab
switch, we need to make sure we remove a tab from the cache if
its location changes while it's in the background.

MozReview-Commit-ID: ElpoWhhjb0n
2018-05-15 09:29:16 -07:00
Doug Thayer
db8bf8252e 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
2018-04-16 15:35:41 -07:00
layely
374bd9bd10 Bug 1458013 - Add ability to select a range of tabs using Shift. r=jaws
MozReview-Commit-ID: DQxhkTEyRyq
2018-05-17 02:38:14 +00:00
Constantine Filin
08fe1f4879 Bug 1446721: replacing parent.removeChild(child) with simpler child.remove; r=dao
MozReview-Commit-ID: 3QUuiu3CVo5
2018-05-17 00:10:28 -07:00
Shane Caraveo
5186696d00 Bug 1458866 - Ensure sharingState is reset when the browser is discarded, r=Gijs
MozReview-Commit-ID: EgA66KNqzKY
2018-05-16 10:24:52 -05:00
Chris Pearce
35c33d46de Bug 1458383 - Don't session restore browser.mediaBlocked. r=mikedeboer
This is a backout of Bug 1347791 part 4; 49b533231388.

49b533231388 took the mediaBlocked attribute and stored it in session store,
and caused us to call browser.resumeMedia() or blockMedia() as appropriate
upon restore. We don't want to session restore whether tabs have had delay
playback start unblocked anymore, so remove the code that session stores
that attribute.

MozReview-Commit-ID: AkRVlufrUAK
2018-05-04 16:22:16 +12:00
Erica Wright
d248a1d666 Bug 1448918 - Create about:welcome page in preparation for firstrun migration. r=dmose
MozReview-Commit-ID: L34uRsOeziS
2018-04-23 15:47:57 -04:00
Bogdan Tara
1a216b271d 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
77552fc063 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
2018-04-16 15:35:41 -07:00
Dorel Luca
f72cffac0b 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
fa09cd91e4 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
2018-04-16 15:35:41 -07:00
Shane Caraveo
e91b0c63fb Bug 1460221 - fix newtab placement when opened from pinned tab, r=Gijs
MozReview-Commit-ID: CwoFsFo0ThE
2018-05-10 10:44:55 -05:00
layely
acc93fcc34 Bug 1458010 - Add ability to select multiple tabs using Ctrl/Cmd. r=jaws
MozReview-Commit-ID: BHelQhtv7Gk
2018-05-05 03:56:23 +00:00
Stephen A Pohl
1630ce50b3 Bug 1366808: Properly detect buildID mismatches between parent and child processes and display about:restartrequired to prompt the user to restart Firefox before proceeding. r=jimm,felipe,bz 2018-05-08 10:31:44 -04:00
Dorel Luca
c2d279f618 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
4ca2bbcfe4 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
2018-04-16 15:35:41 -07:00
Shane Caraveo
a2bd2efef7 Bug 1449700 refactor addTab/moveTabTo patterns, r=aswan,dao
Calculate all positioning of the tab during addTab to avoid extraneous events and to provide an accurate tab id during TabOpen.

MozReview-Commit-ID: AgcrAJ9hotF
2018-04-26 10:38:18 -05:00
vidit23
e620a45303 Bug 1453957 - Stop setting the "unread" attribute on tabs. r=dao 2018-05-04 19:46:17 +02:00
Dão Gottwald
d7e7a34bc3 Bug 1183135 - Update tab position attributes when a tab becomes visually selected rather than synchronously when switching tabs. r=mconley
MozReview-Commit-ID: Lvf0edXlwTu
2018-05-03 13:32:28 +02:00