Commit Graph

22394 Commits

Author SHA1 Message Date
Michael Kaply
a8e8f3d0e3 Bug 1031210 - Don't assume URL format to prevent crash. r=snorp
MozReview-Commit-ID: 23qE4mI5tBU

--HG--
extra : rebase_source : 504a432df377cc520509c830855d9829f1e02063
2017-02-23 11:24:59 -06:00
Jim Chen
78cdb2292f Bug 1257366 - Try setting designMode again; r=gbrown
If the first set designMode call fails, schedule another call for a
later time.
2017-02-22 23:10:18 -05:00
Jim Chen
371103fac0 Bug 1340960 - Correctly invoke print callbacks; r=sebastian
generatePDF returns a Promise. We shouldn't feed the Promise to the
callback, but rather invoke the callbacks when the Promise is
resolved/rejected.
2017-02-22 23:10:17 -05:00
Jim Chen
f85ea35de2 Bug 1337459 - Update to selected tab when ToolbarDisplayLayout is ready; r=sebastian
We don't update ToolbarDisplayLayout when it's not ready (i.e. when it's
not attached to a window yet), but when it does become ready, we should
update it to the selected tab, if any.
2017-02-22 23:10:16 -05:00
John Lin
d3b1eacd8b Bug 1340582 - fix exception logging. r=jchen
MozReview-Commit-ID: 2PnTCeFAW4e
2017-02-23 11:16:28 +08:00
Wes Kocher
29443ed98c Merge m-c to inbound, a=merge
MozReview-Commit-ID: HDHJC8X9xWG
2017-02-22 15:06:46 -08:00
Wes Kocher
b7294d3167 Merge inbound to central, a=merge
MozReview-Commit-ID: 2R3yE5OIznC
2017-02-22 15:01:04 -08:00
Jeff Gilbert
c90805dae5 Bug 1341459 - Remove MOZ_WEBGL_CONFORMANT. - r=jrmuizel
MozReview-Commit-ID: 32wxGM4ZbGA
2017-02-22 14:55:34 -08:00
Eugen Sawin
9bf1487388 Bug 1322576 - [5.3] Make GeckoView settings accessible through nsIAndroidView. r=jchen 2017-02-22 14:57:42 +01:00
Eugen Sawin
8598247dd1 Bug 1322576 - [3.3] Add GeckoView settings module. r=snorp 2017-02-22 14:57:40 +01:00
Eugen Sawin
a1b696f5ae Bug 1322576 - [2.4] Add GeckoView settings management. r=snorp,jchen 2017-02-22 14:57:38 +01:00
Carsten "Tomcat" Book
9d982b9508 merge mozilla-inbound to mozilla-central a=merge 2017-02-22 14:33:38 +01:00
Iris Hsiao
c2bb6f5851 Merge mozilla-central to mozilla-inbound 2017-02-22 16:18:56 +08:00
Iris Hsiao
4b9cf39daa Backed out changeset 0172497c1024 (bug 1337940) 2017-02-22 16:16:10 +08:00
Iris Hsiao
6c63b5ced7 Backed out changeset dd8c7da15822 (bug 1337940) for tc-M(31) perma failure 2017-02-22 16:16:06 +08:00
Iris Hsiao
cac0976ded Backed out changeset 28c5827d707c (bug 1337325) for tc-M(31) perma failure 2017-02-22 16:15:49 +08:00
John Lin
584224e8cd Bug 1340582 - handle shared memory allocation failure. r=jchen
MozReview-Commit-ID: ETk9nHHkyYA
2017-02-22 14:17:26 +08:00
Grigory Kruglov
11a71d0abd Bug 1341125 - Clear accounts in-memory cache when necessary. r=nalexander
MozReview-Commit-ID: sf5WhXxRVg
2017-02-21 11:31:22 -08:00
Wes Kocher
5295bd9f91 Merge m-c to inbound, a=merge
MozReview-Commit-ID: AoD5GpFatBw
2017-02-21 17:41:05 -08:00
Jan Henning
f9c448be82 Bug 1339737 - Don't set the bookmarks panel scroll position again if the same loader has been reloaded. r=ahunt
Changes in the BrowserDB, e.g. because of sync or when opening a link (in a new tab) will trigger the BookmarksLoader's onContentChanged() method, which will trigger a new load reusing the current loader. This means that currently, the code for setting the scroll position in onLoadFinished() gets to run again in that case.

We only want to set the scroll position when the user has navigated to a different folder. Folder navigation will always create a fresh loader, therefore we now keep track whether we've already seen a particular loader in onLoadFinished() and only set the scroll position if we're encountering this particular BookmarksLoader instance for the first time.

MozReview-Commit-ID: Ln8yeUEoEfr

--HG--
extra : rebase_source : a32c33080f56071059898127c19c75e3d32b3a3b
2017-02-15 21:48:29 +01:00
Jan Henning
9c78f37fc6 Bug 1337325 - Remove unused zoom and scroll code from browser.js r=kats
More JPZ leftovers, I presume. In any case what's left doesn't do anything really useful and a DXR search didn't reveal any remaining users, so this can be thrown out.

MozReview-Commit-ID: 9dN6Jifpbvw

--HG--
extra : rebase_source : 04614d729a55e00c5331ecc321ca2ef5b5e73747
2017-02-12 13:33:42 +01:00
Jan Henning
90d62ccde5 Bug 1337940 - Part 2 - Make session store form data test work again. r=ahunt
Collecting data for history changes causes an additional session store data update for that tab when navigating back, which needs to be accounted for in this test. Therefore we now also wait for DOMTitleChanged before assuming that the tab has navigated to its intended location.

MozReview-Commit-ID: FDNQednXPWh

--HG--
extra : rebase_source : c38b4085eac914bb9a3aa4f0e2b1e04eb3cf1ce3
2017-02-13 22:16:36 +01:00
Jan Henning
2e443a5728 Bug 1337940 - Part 1 - Capture session store tab data on history listener notifications. r=ahunt
So far we've simply used DOMTitleChanged as a proxy for navigation, since it's the earliest opportunity at which we have all necessary data for a new history entry (session history itself as well as tab URL and *title*) available.

However it turns out that this is not 100 % reliable, since some pages might e.g. implement their navigation in JS using the history API, which won't necessarily trigger any DOMTitleChanged events. In those case we'd fail to update the tab's session history in the session store unless the user eventually navigated to someplace else that actually triggers a title change event again - if the browser was closed before that, we'd fail to properly restore the user's state.

To fix this, we take a similar approach as the desktop session store and collect a tab's history data again when receiving any history change notification for that tab.

Because the OnHistory... notifications are mostly cancellable, the session history hasn't been actually updated yet at the point the history listener is being called. We therefore can't synchronously call onTabLoad() from within our history change notification handler and have to schedule an async timeout instead so as to give the session history a chance to complete updating its state.

MozReview-Commit-ID: LgHer940QwT

--HG--
extra : rebase_source : a9634be57f3f43e30f42431e8a28846d958534ee
2017-02-11 21:07:29 +01:00
Iris Hsiao
bc5590a600 Merge mozilla-central to autoland 2017-02-22 16:17:36 +08:00
James Cheng
f604ffe72d Bug 1340172 - Disable EME on Fennec(Only pref on for Nightly). r=cpearce
MozReview-Commit-ID: 66YOK9r1yb0

--HG--
extra : rebase_source : d409b097f88279b358ac6f7caf302ea7ad3e2e17
2017-02-17 11:10:05 +08:00
cnevinc
9fd32c8622 Bug 1341276 - Correctly exit full screen. r=jchen
MozReview-Commit-ID: ErPilSXPWFr

--HG--
extra : rebase_source : 383d2a476d462fea34e06fb445de7b6bad428454
2017-02-21 21:47:43 +08:00
Carsten "Tomcat" Book
2ccec565b5 Backed out changeset 952f0a7824ad (bug 1335539) 2017-02-21 10:30:06 +01:00
Andrea Marchesini
d9d218c052 Bug 1335539 - Get rid of nsIDOMWindowUtils.wrapDOMFile, r=smaug, r=Gijs 2017-02-21 07:51:35 +01:00
George Wright
c881027454 Bug 1335145 - Only limit accelerated canvases for mobile r=milan 2017-02-21 13:42:32 -05:00
Sebastian Hengst
346d08ea1b Backed out changeset c32c74847eb6 (bug 1335539) 2017-02-21 17:53:45 +01:00
Andrea Marchesini
0963d18874 Bug 1335539 - Get rid of nsIDOMWindowUtils.wrapDOMFile, r=smaug, r=Gijs 2017-02-21 15:04:47 +01:00
John Lin
c6d5934ada Bug 1340041 - make callbacks no-op for dying CodecProxy. r=jchen
MozReview-Commit-ID: CJPwRNp78HP

--HG--
extra : rebase_source : 33fbd5f8f50ac19827a5adbf22fcdc5129f123d7
2017-02-21 17:17:34 +08:00
Alastor Wu
1cbd80653d Bug 1326114 - only do duration checking for active-media. r=sebastian
Since we don't want to show the media control for the short sound, so we added the duration checking.
And this checking only needs to be run when the media is active, we don't need to check the inactive media.

MozReview-Commit-ID: AaVGi77nXJ1

--HG--
extra : rebase_source : c565fe64ec4030f0519eb0a8cfe493e95bae4fe4
2017-02-23 12:13:49 +08:00
Tom Klein
4f68f40cfe Bug 1339066 - Don't add a private tab opened while viewing the normal-mode tab strip. r=sebastian
MozReview-Commit-ID: AZEZq4boaJW

--HG--
extra : rebase_source : de6fad976ce5227af441a0c6386e36658bfe83c8
2017-02-16 07:25:54 -06:00
Alastor Wu
aae0c127cd Bug 1340191 - reverse the checking condition. r=sebastian
Since BBC website puts their audio in another iframe, we can't get the media
element to check its duration, so we always return false.

The ideal way to fix it is to get every iframe and check its element, but I think
it's not very easy to do considering the flexibility of using iframe and the cost time.

First, if we want to get the information inside iframe, we need to listen the
onload event, but it's async operation. If there are lots iframe, we need to spend
lots time to wait every iframe. The worst situation is we got the nested iframe,
it would need lots time and effect to wait every iframe loaded and get the element we want.

Therefore, I would prefer the workaround which is to reverse the checking condition,
that is we only check duration for the main window.

MozReview-Commit-ID: F93BjbzRMXO

--HG--
extra : rebase_source : 9409649db241b466967ab1e7f467e177c06c728f
2017-02-22 15:51:08 +08:00
Wes Kocher
72ecfb5fd6 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 7gVISUXnm2Q
2017-02-22 15:07:12 -08:00
Jan Henning
2d64aff307 Bug 1340875 - Send the URL and title of the history entry that was actually open when the tab was closed. r=sebastian
Currently, Recently Closed is displaying the last available history entry for each closed tab instead of the history entry that was actually being shown at the time the tab was closed.

The Java session parser that is responsible for displaying the last session's tabs when not automatically restoring is already doing the correct thing and therefore doesn't need changing.

MozReview-Commit-ID: DGaD52SzdpP

--HG--
extra : rebase_source : 0f11b32d3d8f1061681706272b62dfb090e8e598
2017-02-19 15:05:39 +01:00
Grigory Kruglov
6aca49eb8a Bug 1336001 - Refactor BatchingUploader's state-holder objects to fix threading problems r=rnewman
Previous state:
- Two threads were racing to get to batchMeta - one to reset its state, and the other to
read its internal state to construct a network request, and then to update its internal state.
- This resulted in data corruption when payloads had to be split into multiple batches.

A core problem was that there is a lot of state shared across thread boundaries. Specifically,
BatchMeta is being written and read both by record consumer threads running off of a thread pool,
and by the network worker thread(s).

This patch refactors BatchMeta and scheduling of network runnables to ensure that cross-thread access
is minimized, and "who owns/accesses what" is explicit.

- PayloadDispatcher owns scheduling payload runnables and any data they need to share between each other.
- UploaderMeta owns information that's necessary to process incoming records.


MozReview-Commit-ID: 9hFs3fXGaGM

--HG--
rename : mobile/android/services/src/main/java/org/mozilla/gecko/sync/repositories/uploaders/BatchMeta.java => mobile/android/services/src/main/java/org/mozilla/gecko/sync/repositories/uploaders/UploaderMeta.java
rename : mobile/android/tests/background/junit4/src/org/mozilla/gecko/sync/repositories/uploaders/BatchMetaTest.java => mobile/android/tests/background/junit4/src/org/mozilla/gecko/sync/repositories/uploaders/UploaderMetaTest.java
extra : rebase_source : f0f1a05f19f40a6514d4f0dac9d531b086c3f3ed
2017-02-22 11:26:35 -08:00
Himanshi Jain
a67ba0a237 Bug 1289785 - Remove entry.owner_b64 from SessionStore.js and SessionHistory.jsm. r=ckerschb, r=mdeboer 2016-10-17 14:38:13 +05:30
Carsten "Tomcat" Book
9857d2af8e merge mozilla-inbound to mozilla-central a=merge 2017-02-20 14:05:25 +01:00
Xidorn Quan
3e72a08b95 Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam,jaws
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : rebase_source : 3b927d3c056b66e98f457de1726cf9d459eb8708
2017-02-16 10:26:13 +11:00
Ting-Yu Lin
1578a6f939 Bug 1338445 - Restrict whitespace match in phone number regex for AccessibleCaret. r=mtseng
In phoneRegex, replace '\\s ' (matching a whitespace character) with ' '
since phone number won't contain something like new line or tab.

Also, consider it done if selected text is not changed after calling
Modify().

MozReview-Commit-ID: 2lB9w2gYCOD

--HG--
extra : rebase_source : f2ea498bbd17c1876a9b7f769cbe93cef84520bb
2017-02-17 22:38:08 +08:00
Jan Henning
9d27e01ba2 Bug 1339519 - Set "pending" attribute on browser when creating a new delay-loaded tab. r=sebastian
I don't think we ever check this attribute in our code and rely on the presence of "__SS_restore" instead, but we should fix this for consistency and any add-ons or future code that might depend on this.

MozReview-Commit-ID: JwB6kpiKsaR

--HG--
extra : rebase_source : a3c98f4c76a67a8c1a42e1740cf09ab121f8f5b5
2017-02-17 18:43:52 +01:00
Carsten "Tomcat" Book
2b24bba0a1 Merge mozilla-central to autoland 2017-02-17 13:28:16 +01:00
Carsten "Tomcat" Book
afe4d4b240 merge mozilla-inbound to mozilla-central a=merge 2017-02-17 13:24:55 +01:00
Dale Harvey
8ad9541ad3 Bug 1321320 - Track installed manifests. r=marcos, r=s.kaspari 2017-02-17 08:24:06 +00:00
Andrzej Hunt
89530eaabc Bug 1339520 - Keep existing TopPanel when cursor is swapped r=sebastian
By default RecyclerView assumes any item change *might* need animation. It then
creates a new copy of the item that has changed, and interpolates between the two
to "animate" the change. We don't need that for topsites (the RecyclerView's we use
inside each TopSitePanel already animate changes, the overall size doesn't change -
moreover ViewPager state gets lost if you create a new panel), so we override
this behaviour to retain the existing panel. This stops the previously visible
horrible flickering.

(Every time history changes, which can happen if sync is working, or even if a page
finishes loading in the background, the DB is changed, and a reload is triggered.
Prior to this commit, topsites would flicker horribly, and would reset back to the first
topsites page. After this commit the page is retained, and the visible topsites
are rearranged by the inner RecyclerView's animations. You can test this by pinning a
site on the first page, the pinned site will shift to the front, the other sites smoothly
move to the right.)

MozReview-Commit-ID: CnocNfdQ2FS

--HG--
extra : rebase_source : 3a4e1d86c786126aee1e08ab020b855056e4f921
2017-02-16 18:42:46 -08:00
Andrzej Hunt
9915444198 Bug 1339520 - Don't refresh topsites pages, only modify if needed r=sebastian
If we clear and recreate pages every time the cursor changes, we'll (A) lose
the current page position and (B) create a new RecyclerView per page, resulting
in flickering. We also need to make sure positioning is correctly handled (i.e. pages
never move, they only get added or removed).

We also switch to an ArrayList: the number of pages will be fixed for most users,
and searching an ArrayList could potentially be slightly faster than with the LinkedList.
There's little advantage to a LinkedList here.

MozReview-Commit-ID: 6NIfc2otQMV

--HG--
extra : rebase_source : 86b51be92c18e791f8049b5c90441370c6bace9a
2017-02-16 18:39:08 -08:00
Jean-Yves Avenard
b1c337cb35 Bug 1340096: Remove MediaCodecDataDecoder. r=bwu,jolin
We prefer the RemoteDataDecoder instead.

MozReview-Commit-ID: SK0D3hycRh

--HG--
extra : rebase_source : 97899154bf5fcbcd2feb44ac82879a79eabb44f7
2017-02-16 12:26:53 +01:00
Xidorn Quan
6ce3f471d0 Backed out changeset 107fdc32d411 (bug 1339394) for potential failures on merge 2017-02-17 10:23:26 +11:00
Xidorn Quan
8beb97c7da Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam,jaws
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : source : d4ae926f5c056e734f4ecc035fab25f5ea7b6ac1
2017-02-17 10:12:34 +11:00
Carsten "Tomcat" Book
b218b4c6ae merge mozilla-inbound to mozilla-central a=merge 2017-02-16 13:15:55 +01:00
Wes Kocher
3e3d368d3b Backed out changeset 4ea36a9c2dfd (bug 1339394) for browser_selectpopup.js failures a=backout
MozReview-Commit-ID: JEy6J1AFgpj
2017-02-15 18:59:15 -08:00
Jim Chen
fee3eb484b Bug 1339160 - 5. Follow-up to fix errors; r=me
Fix the geckoview_example bustage from previous patches. Also fix the
extra errors in the build log due to non-ASCII characters in
GeckoProfile.
2017-02-15 20:22:12 -05:00
Wes Kocher
3797956aa6 Merge m-c to inbound a=merge
MozReview-Commit-ID: BemR756HJnR
2017-02-15 16:33:03 -08:00
Xidorn Quan
27c6b9b2bf Bug 1339394 - Don't serialize transparent color to transparent keyword when not necessary. r=heycam
MozReview-Commit-ID: 59cmaCoFJMR

--HG--
extra : source : 134b15d99876fbd9b9f7022de20e3d215dc2c753
extra : amend_source : 94ba498834fae87577905fa473479a3d155e607d
2017-02-16 10:27:19 +11:00
Jim Chen
60a646160e Bug 1339160 - 4. Use GeckoService to extract libs on update; r=esawin
Use the GeckoService load-libs action to load and extract new libraries
when we receive the update broadcast. This makes us not block the UI
thread to extract libs, and lets Fennec run normally if the user
launches Fennec right after updating.
2017-02-15 17:13:05 -05:00
Jim Chen
8cfe793985 Bug 1339160 - 3. Use GeckoService to warm up Gecko from custom tabs service; r=snorp
Use the GeckoService load-gecko action to warm up Gecko instead of using
a separate method.
2017-02-15 17:12:59 -05:00
Jim Chen
1637b923ef Bug 1339160 - 2. Add GeckoService actions for loading libs and starting Gecko; r=snorp
Add two actions to GeckoService to load libs only, and to load libs plus
start Gecko, respectively.
2017-02-15 17:12:56 -05:00
Jim Chen
94bd2e7d8e Bug 1339160 - 1. Allow GeckoThread to launch without being initialized; r=snorp
When GeckoThread is launched without being initialized, it will load all
Gecko libs and then wait until it is initialized, before calling the
Gecko entry point. This allows us to preload Gecko libs without actually
running Gecko.
2017-02-15 17:12:56 -05:00
Jim Chen
e9e3761a4a Bug 1337290 - 2. Clear cache dir if loading libs failed; r=snorp
If Gecko libs failed to load the first time, clear the cache dir and try
again. Only crash if we fail to load the libs a second time.
2017-02-15 17:12:56 -05:00
Jim Chen
9a1866c95c Bug 1337290 - 1. Detect ARM emulation for some x86 devices; r=snorp
Some x86 devices set the CPU ABI to ARM (and even change /proc/cpuinfo)
as part of emulating ARM. In that case, we check the kernel release
string find out whether it's really x86 or not.
2017-02-15 17:12:56 -05:00
John Lin
246b2132bb Bug 1338975 - Don't leak MediaCodec exceptions to CodecProxy. r=jchen
MozReview-Commit-ID: AaouG5McGNb

--HG--
extra : rebase_source : 8544874ff2e3de067da7ada130afd0de74911fb9
2017-02-14 13:43:35 +08:00
Andrzej Hunt
3302ca3ac8 Bug 1335814 - Add topsites page swipe telemetry r=Grisha
MozReview-Commit-ID: EN00Lh2I7V5

--HG--
extra : rebase_source : 84bbbffa312d860fdbfc1bdbef39442951de51a8
2017-02-14 10:42:00 -08:00
Andrzej Hunt
01132453b1 Bug 1325931 - Use compound drawable text centering hack for AS Topsites r=sebastian
MozReview-Commit-ID: 4reNZTHHZNw

--HG--
extra : rebase_source : 77b4a1d49a74dd0ee19ee1610214033e138cc359
2017-02-09 13:27:20 -08:00
Andrzej Hunt
4f70fd93a3 Bug 1325931 - Implement ViewUtil.setCenteredText() for TextViews with compound drawables r=sebastian
Compound drawables shift the point where text is "centered". This hack dynamically adds
equivalent padding on the opposite side from a compound drawable, to force the text
to be centered again. (We can't set this padding under all circumstances, it's unneeded
when the text is longer than the available space, i.e. when we wrap text we might
as well use the full width without fake padding.)

MozReview-Commit-ID: 8WDXCNOs2DX

--HG--
extra : rebase_source : d844e71587a7bd78233d88ea209b157a43004e09
2017-02-09 13:26:43 -08:00
Andrzej Hunt
5b0bb612da Bug 1325931 - Pre: add drawable padding to pin r=sebastian
Text is currently pushed directly against the pin in those cases
where the entire width is filled with text - this spacing
is needed to separate the pin, and text.

MozReview-Commit-ID: HOVH1SgcrLY

--HG--
extra : rebase_source : cfa33274601c419a39622c081c3e19298d5ff44f
2017-02-09 13:24:24 -08:00
Sebastian Hengst
54dd8e6804 Backed out changeset 76f34a9578d2 (bug 1335814) on request of developer. r=backout 2017-02-14 20:28:01 +01:00
Andrzej Hunt
e95f7d6ea3 Bug 1335814 - Add topsites page swipe telemetry r=Grisha
MozReview-Commit-ID: EN00Lh2I7V5

--HG--
extra : rebase_source : 038628fad16a25ff8b815c59ec601d6598d56e0c
2017-02-14 10:42:00 -08:00
Jean-Yves Avenard
df5f6701cd Bug 1336358: P1. Revert "Bug 1319987: P12. Disable RemoteDataDecoder.". r=jolin
This reverts commit ff9f57defc040b9a41a7b96361b5b286d2acff90

MozReview-Commit-ID: 1ta2wmzwcNo

--HG--
extra : rebase_source : 242a34c1d6ed95dc14dcd3ca0a80fdc5ffcb6b86
2017-02-07 21:31:49 +01:00
Aki Sasaki
6ea7c08a3a bug 1339087 - adjust android merge day configs for tc builds. r=rail
MozReview-Commit-ID: 7l7w2KEUtbe

--HG--
extra : rebase_source : 219e22ccb08e11a2aff944bb0fdf3cb4d3b42636
2017-02-13 13:34:26 -08:00
Jan Henning
927128811e Bug 1269210 - Part 2 - Notify the UI to update the button state on subframe navigation. r=ahunt
Even if we do the rest of our location change processing only for top level location changes, we still need to update the state of the back and forward buttons even on subframe navigation, so they can become enabled/disabled as necessary.

MozReview-Commit-ID: 2wuFZMKtTfj

--HG--
extra : rebase_source : 6085fee3818b0ce610f2ddca3f8be0657f355916
2017-02-11 20:32:32 +01:00
Jan Henning
01929d06f7 Bug 1269210 - Part 1 - Remove unused variables from location change message and Java tab object. r=ahunt
We used to need these for the back button long press history menu, but now we no longer do.

MozReview-Commit-ID: LAZYffLODN3

--HG--
extra : rebase_source : b6c10e3dc785230d247587b1a34c3b819424db9c
2017-02-11 20:13:00 +01:00
Jan Henning
cc94d60ffc Bug 1338899 - Part 1 - Use getter/setter for accessing/modifying a tab's parent ID in Gecko. r=sebastian
This should be more foolproof than having to remember to use the dedicated setParentId() function when writing to that variable from outside of the tab constructor.

MozReview-Commit-ID: 1KlXf60VsoF

--HG--
extra : rebase_source : 3ae5234a0113b6077a91e873c7a5e5919b162af3
2017-02-12 15:34:00 +01:00
Jan Henning
c298244987 Bug 1338899 - Part 0 - Fix test title. r=sebastian
Fix copy & paste error made when creating the new test file.

MozReview-Commit-ID: F0NbwipkX9P

--HG--
extra : rebase_source : 877c2c867235750972ee7865d52376636b0448f6
2017-02-12 15:25:42 +01:00
Jan Henning
55ecb8b313 Bug 1338893 - Don't use the window on application-foreground if it doesn't yet exist. r=sebastian
During a cold startup, depending how this exactly plays out we might receive an application-foreground notification before the browser window is ready. Since the code to restore the selected tab if it has been left zombified while in background is only relevant if Gecko was already running and backgrounded, we can simply add a null check for the window before accessing it.

MozReview-Commit-ID: Ahp5NAODKRF

--HG--
extra : rebase_source : bede266e13f48fbc2f7efd40bb9277be6d2bd3bf
2017-02-12 15:09:32 +01:00
Jan Henning
287248920a Bug 1337264 - Don't depend on page title changes for updating the displayed URL. r=sebastian
We've been displaying the URL in place of the page title in the toolbar for quite some time now, but still had the old logic in place whereby only title changes would trigger an update of the displayed text. Most of the time this works fine, because
- page navigation usually goes hand in hand with a DOMTitleChanged event, and
- when our loading progress bar stops, we update the displayed text anyway

however a page doing its navigation in-place using some fancy JS logic and the corresponding history APIs etc. can bypass both of these provisions, since it might trigger neither a title change nor a full browser-side page load.

MozReview-Commit-ID: KRrTSmz1xxi

--HG--
extra : rebase_source : ef3c96334ebb44320ffc7f77db0754f78ce0625a
2017-02-11 17:12:48 +01:00
Kartikaya Gupta
4c3b2842d6 Bug 1339831 - Disable scrollbar-dragging in Fennec. r=botond
MozReview-Commit-ID: BCm9dMr1Zdu

--HG--
extra : rebase_source : 2f8dfa92975553cebf77209d7ec41881d29056ca
2017-02-15 10:51:22 -05:00
Kartikaya Gupta
5241eb9523 Bug 1339831 - Alphabetically sort APZ prefs in mobile.js. r=botond
MozReview-Commit-ID: 1lICBEAgYrn

--HG--
extra : rebase_source : 361f56bc67a5b2c22284f648906a29702ca1bf82
2017-02-15 10:50:34 -05:00
brainbreaker
a8343a4b4b Bug 1312686 - Link "default browser" setting to app info screen on Android 7+; r=sebastian
Added support for changing default browser by opening settings screen in API Levels >=24.

MozReview-Commit-ID: 5rxJm6hQQ4A

--HG--
extra : rebase_source : e8fc23bc658e216c04c27e10067c16abf2b0cd5c
2017-02-15 02:27:26 +05:30
Edouard Oger
44146ebe96 Bug 1339681 - PushServiceAndroidGCM: Send strings instead of json in event callbacks. r=Grisha
MozReview-Commit-ID: 29BEjnh1TpT

--HG--
extra : rebase_source : 91c36139fdb614b30900aeb36456981fe2961162
2017-02-15 18:47:30 +01:00
Andrzej Hunt
11a122fac4 Bug 1320775 - Add tests for SuggestedSiteLoader/Preparer r=sebastian
MozReview-Commit-ID: GXB4Ott4MAi

--HG--
extra : rebase_source : e08796dd385fa821d35f8de5e0abfd1bbdb55646
2017-02-08 16:37:30 -08:00
Andrzej Hunt
e50e97366d Bug 1320775 - Use bundled touch-tiles as favicons for suggested sites r=sebastian
There are a number of ways in which we could supply favicons for the default suggested
sites. Reusing the touch tiles has the advantage that it works for both our own suggested
sites, and also distribution-supplied suggested sites. If we were to add yet another
icon source, distribution supplied sites would end up having no nice icon in AS topsites.

The priority ordering of the SuggestedSitePreparer means icons will be overriden as soon
as a site-supplied favicon is available - these icons will only be used up until the point
where a site has been visited.

MozReview-Commit-ID: CHsinHHpfnw

--HG--
extra : rebase_source : a162f5b15e968f382b43505290b0633cbe6e2c7a
2017-02-08 15:15:12 -08:00
Andrzej Hunt
7411323bbc Bug 1320775 - Pre: move favicon colour fading to color generator r=sebastian
In order to allow for a background which merges into a favicon, we
need to allow for solid (non faded) colours. It is simplest to do this
by letting the colour generator (i.e. either the colour extractor,
or the favicon generator) fade the dominant colour as it wishes.
That also means the colour generator can in future choose to
not fade the colour if appropriate.

MozReview-Commit-ID: LsI8PlZsaGn

--HG--
extra : rebase_source : 757f10613a201475edb81afc094f32d5a714ade2
2017-02-08 10:12:24 -08:00
Phil Ringnalda
ea85356f95 Merge m-c to m-i 2017-02-12 15:33:29 -08:00
Christoph Kerschbaumer
1cc7d653f7 Bug 1338009 - Utils#deserializePrincipal should return NullPrincipal if deserialization fails. r=mikedeboer 2017-02-12 11:50:25 +01:00
Phil Ringnalda
215ca1024e Merge m-i to m-c, a=merge 2017-02-11 17:42:19 -08:00
Kris Maglione
1187110bd9 Bug 1338409: Part 2 - Lazily parse the schema data for each namespace property, as it is needed. r=aswan
MozReview-Commit-ID: FNQJdt6BnjI

--HG--
extra : rebase_source : c7e937b9e487c40d0167b51f949140eb96dc06e1
2017-02-09 18:59:49 -08:00
Phil Ringnalda
6239412998 Merge m-c to autoland 2017-02-11 18:16:26 -08:00
Jan Henning
f9183caf54 Bug 1338088 - Capture the scroll position for DOMTitleChanged events after the initial page load sequence. r=ahunt
onTabLoad() means we've potentially navigated to a new page, in which case any auxiliary tab data we keep around for the currently loaded page only (form input data, scroll position) would be invalidated and shouldn't be preserved.

Since onTabLoad() can however also be triggered if e.g. just the tab title changed (an additional DOMTitleChanged event), we shouldn't throw away the old data without replacing it with the current state, though. We already do this for the form input data - we need to do it for the scroll position as well.

MozReview-Commit-ID: HG7g6L7htDG

--HG--
extra : rebase_source : 1f7aab26002ee71237dd0a48b872298b39ca7f13
2017-02-11 15:36:17 +01:00
Jan Henning
f7fa5a95ae Bug 1336734 - Part 2 - Don't stop the GeckoNetworkManager unless we're really backgrounded. r=sebastian
Launching a new activity within our app triggers both onActivityPause() (the current activity) and onActivityResume() (the new activity) in GeckoApplication. The most prominent example at the moment are probably our preferences - entering/exiting/navigating within them always triggers a pause/resume combo. This means that currently each time this happens, the network manager is stopped only to be immediately restarted.

To prevent this, we now stop the network manager only when Gecko is actually being paused. In order to avoid unmatched start/stop calls, we need to treat the calls to start() similarly and provide an additional code path for the initial call to start() immediately after startup.

Since the BatteryManager is only started and currently never stopped, we can use this for its startup, too, so as to avoid duplicated calls to its start() method.

MozReview-Commit-ID: 6NdScT5cLYL

--HG--
extra : rebase_source : 758a5948e0852bfa29c78d2d364cd5ac88e9103d
2017-02-05 15:47:51 +01:00
Jan Henning
8a305537b1 Bug 1336734 - Part 1 - Have GeckoPreferences properly support GeckoActivityStatus. r=sebastian
Currently, GeckoPreferences always returns "false" for isGeckoActivityOpened(), which means that when we're e.g. opening a new settings screen, GeckoApplication's onActivityPause() code assumes that Firefox is being backgrounded for real, calling GeckoThread.onPause(). This is then immediately followed by a call to onActivityResume() which unpauses Gecko again.

To avoid this, GeckoPreferences needs to properly implement support for GeckoActivityStatus and check the target of outgoing intents along the lines of the implementation in GeckoActivity.

Since checkIfGeckoActivity() is now used outside GeckoActivity as well, we refactor it into our IntentUtils.

MozReview-Commit-ID: UfPNAic5os

--HG--
extra : rebase_source : d8e900140f55f9a363b86064eb1ad8f8ee4c5c48
2017-02-05 15:35:00 +01:00
Wes Kocher
836bb052d3 Backed out 3 changesets (bug 1336734) for android build bustage a=backout
Backed out changeset a7f9815aeec1 (bug 1336734)
Backed out changeset fa9cca3e321c (bug 1336734)
Backed out changeset a2b69382c9ad (bug 1336734)

MozReview-Commit-ID: FMKZ88jlEZ0
2017-02-10 12:52:33 -08:00
Jan Henning
34297373d9 Bug 1336734 - Part 3 - Don't stop the GeckoNetworkManager unless we're really backgrounded. r=sebastian
Launching a new activity within our app triggers both onActivityPause() (the current activity) and onActivityResume() (the new activity) in GeckoApplication. The most prominent example at the moment are probably our preferences - entering/exiting/navigating within them always triggers a pause/resume combo. This means that currently each time this happens, the network manager is stopped only to be immediately restarted.

To prevent this, we now stop the network manager only when Gecko is actually being paused. In order to avoid unmatched start/stop calls, we need to treat the calls to start() similarly and provide an additional code path for the initial call to start() immediately after startup.

Since the BatteryManager is only started and currently never stopped, we can use this for its startup, too, so as to avoid duplicated calls to its start() method.

MozReview-Commit-ID: 6NdScT5cLYL

--HG--
extra : rebase_source : 629d9a252125cfe4db1c30d6fcbe6607ac81ab33
2017-02-05 15:47:51 +01:00
Jan Henning
4fe7cf54b6 Bug 1336734 - Part 2 - Implement GeckoActivityStatus for the FxAccountStatusActivity. r=sebastian
Since we're no longer pausing Gecko when entering this activity, it must implement this interface so we can still properly pause Gecko if we get backgrounded while on the Sync preferences screen.

Most actions here are actually done via the application context (i.e. GeckoApplication), so overriding startActivity et al. and using mGeckoActivityOpened doesn't achieve all that much for most cases, but since we currently at most exit the screen (activity is finishing, so won't trigger a GeckoThread.onPause() call) and stay within our application (open a new tab in Firefox), we're still fine for now.

MozReview-Commit-ID: 3760hXMjckX

--HG--
extra : rebase_source : 026654ca101082140f9fbbc922562f9890daab50
2017-02-06 20:30:20 +01:00
Jan Henning
e2bd26424d Bug 1336734 - Part 1 - Have GeckoPreferences properly support GeckoActivityStatus. r=sebastian
Currently, GeckoPreferences always returns "false" for isGeckoActivityOpened(), which means that when we're e.g. opening a new settings screen, GeckoApplication's onActivityPause() code assumes that Firefox is being backgrounded for real, calling GeckoThread.onPause(). This is then immediately followed by a call to onActivityResume() which unpauses Gecko again.

To avoid this, GeckoPreferences needs to properly implement support for GeckoActivityStatus and check the target of outgoing intents along the lines of the implementation in GeckoActivity.

Since checkIfGeckoActivity() is now used outside GeckoActivity as well, we refactor it into our IntentUtils.

MozReview-Commit-ID: UfPNAic5os

--HG--
extra : rebase_source : 6167836e9a20763724c62aade1d2f0a5e976a890
2017-02-05 15:35:00 +01:00
Ralph Giles
35ff9b03f3 Bug 1338311 - Update builders to rust 1.15.1. r=mshal
Update to the point release. These are repacks of the
upstream builds for 1.15.1 stable with appropriate
libstd builds for each target.

This incorporates the -fPIC fix for linux32 so we can
use upstream builds instead of our patched toolchain.
It also corrects the signature of vec::IntoIter::as_mut_slice
which was incorrect in 1.15.0.

MozReview-Commit-ID: JvEdGPwgS03

--HG--
extra : rebase_source : 9edd9970d8328274311493c2c3c4fffa97b258a9
2017-02-09 14:43:26 -08:00
Tom Klein
eb6efc1e99 Bug 1337897 - RTL the padding between the close button and title in tab grid layouts. r=sebastian
There's apparently a bug which causes *both* paddingRight and paddingEnd to be
applied (in my case on an API 23 emulator); the workaround, in this case, is to
also specify paddingLeft and paddingStart (with values "0dp").

MozReview-Commit-ID: 98hm1GcSPxi

--HG--
extra : rebase_source : 90b63521b410836615134eb7310ac0c2fb15081b
2017-02-08 16:50:22 -06:00
Julian_Chu
ea2e6be7cb Bug 1337771 - Let ActionButton works in some apps r=sebastian
If the intent from 3rd-party app doesn't have data url, directly call
PendingIntent.send() will perform nothing. To use current url as
polyfill to fix it.

MozReview-Commit-ID: IIP7hGd1cBH

--HG--
extra : rebase_source : 14010c9f0b566e1320598a2edc0a6538d9c6150e
2017-02-10 15:47:56 +08:00
Nevin Chen
6c1328a7f4 Bug 1319366 - When fullscreen, defer new tab selection until exiting fullscreen completed. r=jchen,sebastian
MozReview-Commit-ID: 2vAkpp7M7Cv

--HG--
extra : rebase_source : f6444974a190e8f0992bb7af6446739c14821a11
2017-02-03 18:00:27 +08:00