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

23090 Коммитов

Автор SHA1 Сообщение Дата
Jan Henning eaf04b0fea Bug 1352997 - Part 7 - Don't switch activities if we're closing a tab while exiting the activity. r=sebastian,walkingice
Closing the currently selected tab will select another tab, which can trigger an activity switch if the tab types differ. We don't want that if we're about to close the activity, as that'll bring that activity into the foreground instead of simply walking back along the activity history stack.

To give an example: Without this patch, closing the last custom tab will select a normal browsing tab, which will trigger an activity switch, so instead of returning to the user's previous activity, pressing back will send us to BrowserApp.

There's one additional catch:
If we change our onDone() behaviour and no longer finish() the SingleTabActivity when exiting (in order to avoid a costly restart of Gecko should the user return to us soon), this means that the activity that has just been exited could be brought back into the foreground via the onResume() codepath.

In that case the mLastActiveGeckoApp-check won't be triggered if no other GeckoApp-based activity was active in the meantime, so we wouldn't reselect/reopen the activity's desired tab, but instead display the tab that was selected when closing the previous tab. Therefore, we track this via an additional flag that is set for this case.

MozReview-Commit-ID: 3jOvBXQUrfo

--HG--
extra : rebase_source : a535fff92c02ef9d711faf6083e9146ed992fc03
2017-04-14 19:58:09 +02:00
Jan Henning 612ab15860 Bug 1352997 - Part 6 - Switch over web apps and implement additional startup logic for them. r=sebastian,walkingice
Web Apps are single task activities, but Android's task switcher will only ever return the intent that originally created the activity and will never ever update its stored intent for subsequent launches via onNewIntent, so we have to do this ourselves.

Additionally, web apps have some additional logic when being launched via a new intent that checks whether the currently loaded page matches the scope of the web app intent and then resets it if necessary. We now hook up this logic to the new SingleTabActivity wiring.

MozReview-Commit-ID: 9bo4gXbfPNg

--HG--
extra : rebase_source : 3f8cf1e2e96889313ef83ad9ba92b7a36985b82a
2017-04-04 21:50:33 +02:00
Jan Henning a31794fbba Bug 1352997 - Part 5 - Implement common behaviour for custom tabs/web apps and switch over the former. r=sebastian,walkingice
This implements the common behaviour for restoring the correct tab when switching to/from custom tab and web app activities. Unlike our normal UI, those activities are basically single tab activities, that is each activity is linked to a certain Gecko tab, with no facilities (bugs aside) for the user to directly load/select a different tab within that activity.

Therefore, here we basically update the selected tab only when the activity is starting up and initially creating its new (or, especially once tab type switching will be implemented, taking over an existing) content tab.

When subsequently restoring, we then check whether the tab is still available. If it is, we select it, if not, we fall back to opening a new tab based on the available intent data.

This also means that we no longer have to finish() the activity on closing so the activity state (finished) matches the tab (closed), which means that we no longer have to prematurely kill Gecko as a side effect of that.

MozReview-Commit-ID: KjFz1qrqWLy

--HG--
extra : rebase_source : 188fd2275083ddb982af806d4660c02caab85bee
2017-04-08 19:19:32 +02:00
Jan Henning 6dcea3ee36 Bug 1352997 - Part 4 - Remember the tab selected by session restoring if somebody other than BrowserApp is starting up first. r=sebastian,walkingice
The first activity to run triggers Gecko startup and therefore session restore. Since the selected tab stored in the session file is only of interest for BrowserApp, we need to store it somewhere safe if some other activity (e.g. custom tab/web app) starts up first.

This is because currently everything needs to share the same Gecko browser window, so those other activities selecting a tab of their own when starting up will necessarily override session restore's tab selection.


MozReview-Commit-ID: 9GwTDbzgWF9

--HG--
extra : rebase_source : 6ff06fb1e1405201908ade4b04eba54a1a5aa7d5
2017-04-08 19:15:19 +02:00
Jan Henning abba7e0388 Bug 1352997 - Part 3 - Re-implement tracking of last selected tab for BrowserApp. r=sebastian,walkingice
Currently, we basically take a snapshot of the currently selected tab when pausing an activity and then later re-select that tab ID when switching back from another activity within our application. In practice, this doesn't seem entirely fool-proof, so when switching between our normal UI (BrowserApp) and custom tabs or web apps we can eventually end up with the wrong tab being selected in the wrong activity.

In this part, we'll rip out the current code and replace it by a new implementation for BrowserApp - following parts will then cover custom tabs and web apps.

As BrowserApp is our normal tabbed browsing interface, we can simply track all tab switches for BROWSING-type tabs as they happen, which ensures that our data is always up-to-date.

Because tab IDs remain unique only within the same application session and are reused if we're terminated and then later restart, we need to take additional precautions to make sure we're really selecting the correct tab object - the savedInstanceState can carry even across (OOM-)kills. Therefore we now additionally also store and compare the current per-session UUID to make sure that the tab we're trying to select is really the same one it was when the activity was last running.

For BrowserApp caring about this is less important because on a full startup, the selection behaviour will be overridden by session restore anyway (although we can still hit it if only BrowserApp gets destroyed while Gecko keeps running, or if BrowserApp is launched after some other activity has already loaded Gecko), but it'll be quite relevant for web apps and custom tabs which don't have that benefit.

As it stands, this patch temporarily breaks behaviour around activity restoring for custom tabs/web apps, but tearing the old implementation out in one go was easier and the patch needs to be split somewhere.

MozReview-Commit-ID: I0Tq9XZGvpV

--HG--
extra : rebase_source : a7409f58b8df1f32f74b137513ece1e162605280
2017-04-08 22:55:10 +02:00
Jan Henning 639bd9d811 Bug 1352997 - Part 2 - Provide dedicated methods for typical homepage operations. r=sebastian,walkingice
That is figuring out whether a homepage has been set (but not caring about the specific page), or else getting the homepage URL with an automatic fallback (to about:home) if no homepage has been set.

MozReview-Commit-ID: D6Uy3A4P4Qc

--HG--
extra : rebase_source : 184240fc79678a2e78d7052635acc4b836fce400
2017-04-09 19:30:21 +02:00
Jan Henning 8467f9e026 Bug 1352997 - Part 1 - Register GeckoApp's onTabsChangedListener earlier. r=sebastian,walkingice
For BrowserApp we want to switch the last selected tab tracking to use tab selection events instead, so we need to register the listener earlier in order to catch the initial selection of the startup tab as well.

MozReview-Commit-ID: F7luIE6oNK

--HG--
extra : rebase_source : d08216a7a73b2f372b2357326e5c9d6de622c4d9
2017-04-08 11:16:13 +02:00
Jan Henning 0fcae12707 Bug 1351739 - Part 6 - Finish the WebAppActivity when closing via onDone. r=sebastian,walkingice
Custom and web app tabs behave as any other externally launched URLs, that is pressing the back button closes not only the activity, but the tab as well when reaching the beginning of session history. Therefore, we should finish the activity in this case (just as the CustomTabsActivity already does), so the next launch runs through the onCreate code path and opens a new tab again.

MozReview-Commit-ID: 14AhWkmb5O7

--HG--
extra : rebase_source : cfed1b6069409efe2444131c41db1ae2e828c43a
2017-04-02 15:43:31 +02:00
Jan Henning 7568f47029 Bug 1351739 - Part 5 - Implement activity switching for web apps. r=sebastian,walkingice
Differences to custom tabs:
- We don't have to store the full intent, just storing the manifest path is enough.
- Akin to the LauncherActivity we have to route the request to the correct WebAppActivity instance depending on the manifest path.

We also have to modify the intent handling when GeckoApp is starting up - the intent handling of the GeckoApp + BrowserApp combo requires "nulling" out (by setting it to ACTION_MAIN) the current intent if it's not a fresh intent (e.g. the activity is recreated after having been destroyed or relaunched from the task switcher).

For web apps on the other hand we want to keep the intent around even in those cases, as it contains state we need even later on. Additionally, we want to make use of GeckoApp's startup code for either selecting the tab from the intent or loading a new tab. Therefore we save the launch intent and restore it once GeckoApp's onCreate() has run.

Note that this solution is not entirely correct either, because with this each onCreate() call will open a new tab, even when this is not necessary when only the activity (but not Firefox and Gecko as a whole) had been destroyed. This behaviour will be fixed as part of bug 1352997.

This approach is also a bit different than the one chosen in bug 1351605 for custom tabs, which was independently developed in parallel. Bug 1352997 will unify this, too.

MozReview-Commit-ID: 94uZ3c8CUVD

--HG--
extra : rebase_source : 4997207d048924518870852d40cfc1fed233fab1
2017-04-02 18:26:45 +02:00
Jan Henning 4cc5180850 Bug 1351739 - Part 4 - Handle selected tab temporarily being undefined. r=sebastian,walkingice
This can happen if closing a tab (via the back button) simultaneously also triggered an activity switch (by selecting the parent tab). In that case the tab is closed, but formal selection of the new tab only completes after we've switched activities. At the moment activity switching might trigger an application-background/foreground cycle, which means we could hit the selected tab temporarily being undefined in Gecko.

MozReview-Commit-ID: 6p4cOqj29HX

--HG--
extra : rebase_source : 81db83e79d31cf6398f449bba14a4fb1bdc97810
2017-04-09 19:49:02 +02:00
Jan Henning 65014acc8c Bug 1351739 - Part 3 - Switch activities when a custom tab is selected/unselected. r=sebastian,walkingice
On tab selection, the Tabs instance now checks whether the type of the tab to be selected matches the currently running activity. If it doesn't, the tab switching is aborted and instead, an intent for the correct activity is sent. When the new activity launches, it finds that the intent also includes a tab ID, which means that instead of opening a new tab we retry the tab selection, which will then succeed now that we're in the correct activity.

Because for custom tabs the launch intent can contain all sorts of customisations, we now have to save the intent when a custom tab is opened for the first time, so that later on, when switching e.g. from BrowserApp back to a custom tab we can use the correct intent to launch the custom tab activity.

MozReview-Commit-ID: KWdkweKBocz

--HG--
extra : rebase_source : 6487f39a697a500d3a3eda505345f72f755bcbb7
2017-04-08 23:10:51 +02:00
Jan Henning 446b2c2ab7 Bug 1351739 - Part 2 - Convert CustomTabsActivity to SafeIntents. r=sebastian,walkingice
These are potentially untrusted external intents, so we should use SafeIntents for interacting with them.

MozReview-Commit-ID: 3nmjg85wbr1

--HG--
extra : rebase_source : 97c54e1dee8fc132aa3bb1d9c42051a4eb330018
2017-04-02 14:09:36 +02:00
Jan Henning 9fcd07adad Bug 1351739 - Part 1 - Track the currently active activity. r=sebastian,walkingice
Required because later on, we'll need to know if we're in the correct activity for a tab or need to switch activities.

As a follow-up, we can later also hook up our current manual activity tracking from GeckoApplication to this (we most probably won't be able to get rid of the GeckoActivityStatus shenanigans, though).

MozReview-Commit-ID: 5lZrAMsB9Gy

--HG--
extra : rebase_source : 5a8fec92cad15db05063dbb940874615c317c768
2017-04-02 11:22:12 +02:00
Jan Henning 1c3e4ca69b Bug 1351739 - Part 0 - Use INVALID_TAB_ID more. r=sebastian,walkingice
-1 is probably not all that mysterious as far as magic numbers go, but still...

MozReview-Commit-ID: zK3P6HeWzK

--HG--
extra : rebase_source : 59530eafb11f68fddb29a53775a394fcd1a08d69
2017-04-06 21:30:55 +02:00
Jan Henning c768aca43c Bug 1351739 - Part -1 - Housekeeping. r=sebastian,walkingice
MozReview-Commit-ID: Ev6jl4N3K0g

--HG--
extra : rebase_source : b62fda2b9c1c1a7e233c2245cedc5b61b2fcc930
2017-04-07 20:51:41 +02:00
Sebastian Hengst e1f043f96f Backed out changeset f349db3287ad (bug 1351808) for bustage on Android in GeckoApp.java. r=backout 2017-04-27 20:33:40 +02:00
Sebastian Hengst b53ff60076 Backed out changeset 4aa74fee0d37 (bug 1351808) 2017-04-27 20:33:03 +02:00
Wes Kocher 19e79c95be Backed out changeset 9ce0883ffd62 (bug 1353857) because a dependent bug failed to land a=backout
MozReview-Commit-ID: GuGF9G3KmS6

--HG--
extra : rebase_source : baf19a05b9fd3dd291623a8102406721f8b4a88e
2017-04-27 11:25:22 -07:00
Michael Kaply ae592e21d4 Bug 1360267 - Fix link in about:healthreport. r=snorp
MozReview-Commit-ID: Ea32Zp4HG63

--HG--
extra : rebase_source : 49cb98279b16fede560700a478e0b1b263c0f234
2017-04-27 12:20:00 -05:00
Jan Henning 3325142356 Bug 1353857 - Include the tab ID when notifying about leaving/entering a web app's scope. r=daleharvey,walkingice
We only want to process the AppEntered/Left message if it actually concerns our currently displayed tab.

MozReview-Commit-ID: EJ8RzRzDNAz

--HG--
extra : rebase_source : 2d05c8131a3b25968b36704647a9041b15599668
2017-04-17 16:37:58 +02:00
Jan Henning bc56a16f39 Bug 1351808 - Part 2 - Exclude non-standard tab types from session store. r=sebastian
Restoring anything other than normal browsing tabs (e.g. custom tabs, web apps) is more involved because those tabs
- don't appear in our normal tabs UI
- are opened in separate activities
- when we're starting up, Android's task switcher might or might not still have available task entries corresponding to such tabs from the last session

Therefore, for now, the session store will simply exclude those kinds of tabs from being saved in the session store data.

Instead of a real restore, if the corresponding tab has been closed or Gecko stopped running, we just recreate the custom tab/web app based on the stored Activity intent data we have available (bug 1352997).
Tab zombification while Gecko is running however remains fully supported, as we continue collecting session history data for all tab types, even if we don't necessarily save it to disk.

Because custom tabs/web apps currently still share a common Gecko browser window with normal tabs, we also have to modify our selected tab tracking logic accordingly, so that selecting one of these special tab types doesn't overwrite the last selected normal browsing tab.

To that effect, we now track the selected tab *ID* in memory and only convert that to a tab index when writing the data to disk. As the ID remains stable while Gecko is running, this makes tracking changes for a sub-group of tabs only easier, as we don't have to watch out for closing tabs of *any* kind affecting the tab index of everything behind them.

Bug 1346008#c3 has some preliminary ideas on how session restoring for custom tabs/web apps could be made to work.

MozReview-Commit-ID: 1q5Jtv0DKrE

--HG--
extra : rebase_source : 150e61f2a205e6bc6ea6cf346de0ba42b1935d13
2017-04-08 13:43:09 +02:00
Jan Henning 1e1372dff5 Bug 1351808 - Part 1 - Replace some magic numbers in session store. r=sebastian
MozReview-Commit-ID: BzqieZVi7h4

--HG--
extra : rebase_source : 019d80844d65d075314ab57197793decca0853c5
2017-04-08 14:18:23 +02:00
Alexandre Poirot c90bccb53a Bug 1356231 - Use toolkit EventEmitter.jsm instead of devtools module. r=mossop
MozReview-Commit-ID: 49JI7NtLwKK

--HG--
extra : rebase_source : 7fb015f56be94c4bbe2d56506653f069c9ad8dd3
2017-04-27 17:58:09 +02:00
Edouard Oger 45eeac5526 Bug 1360047 - Generate random GUIDs more reliably in TestFxAccountDeviceListUpdater. r=eoger
MozReview-Commit-ID: 9Ak99iIxOzY

--HG--
extra : rebase_source : 784fe09fadff525affb81563deb3044b5d8ca859
2017-04-27 09:50:24 -07:00
Nevin Chen c530f92f50 Bug 1329156 - Add telemetry for customtab customization usage. r=walkingice
MozReview-Commit-ID: EJrFzvHOqOU

--HG--
extra : rebase_source : b23aed0f61d120af3f99a842f54a1848415f26e2
2017-04-26 13:37:38 +08:00
Andrzej Hunt d8e202e0c6 Bug 1356693 - infer: fix RESOURCE_LEAK's in geckoview r=walkingice
Similar to some previous commits, we prefer non-throwing constructors
in order to ensure we never lose a reference to an unclosed stream.
InpuStreamReader(..., Charset) is preferred over InputStreamReader(..., String)
since the latter can throw when the String is not a valid Charset.
(In reality we know that our Charset Strings are correct, but the compiler
 isn't able to determine that for itself. Moreover, using the preparsed
 Charset is more efficient.)

MozReview-Commit-ID: 9z07G3hqPI3

--HG--
extra : rebase_source : 6ed740bf5a1e5296bd2afe5c58b19a43acab0647
2017-04-26 17:22:30 +08:00
Andrzej Hunt 1f9929fe75 Bug 1356693 - infer: fix RESOURCE_LEAK's in stumbler r=walkingice
MozReview-Commit-ID: 8bMGr6v9DKn

--HG--
extra : rebase_source : e8c1f7cbbd598ac5765ef10b84ee993bba42f858
2017-04-17 16:33:57 -07:00
Andrzej Hunt 1c5d02830f Bug 1356693 - infer: fix RESOURCE_LEAK's in services r=Grisha
The primary issue is that we use a throwing InputStreamReader
constructor. If it throws, then any nested streams will be lost.
We can fix that by using the non-throwing InputStreamReader
constructor (which uses a Charset as the second parameter,
instead of a String which causes an Exception to be thrown
if it can't be parsed)

We also simplify some nested Stream's a little: most of the
Stream constructors don't throw, so there's no harm in not keeping
individual references to those that don't throw - and that
results in less Stream references for us to handle.

MozReview-Commit-ID: 2hyRFGVmGnU

--HG--
extra : rebase_source : 15dd97d28012a017326b01ae8ddc370c7f1ec484
2017-04-14 20:58:59 -07:00
Andrzej Hunt 9614743c8f Bug 1356693 - infer: fix RESOURCE_LEAK's in base r=walkingice
MozReview-Commit-ID: Gm9GqOk37UZ

--HG--
extra : rebase_source : 762eac583f5d017aa0ccfa96a669d72c57f6f5bd
2017-04-19 08:26:38 -07:00
Andrzej Hunt 5108247dc0 Bug 1356693 - Pre: MergeCursor can handle null cursors r=Grisha
MergeCursor can handle null cursors (and is lightweight), we
don't need to specifically handle each case - which results in simpler
code.

MozReview-Commit-ID: CGwMi9LKYTj

--HG--
extra : rebase_source : 74c0c83ba4e8ea6ca036c24372ee7ff07a1cbc78
2017-04-27 11:57:41 +08:00
Andrzej Hunt 5341e86001 Bug 1356693 - Pre: use IOUtils.safeStreamClose() in IOUtils r=walkingice
MozReview-Commit-ID: 3dikakcAKqI

--HG--
extra : rebase_source : 05dd41ed123cdd9400da84fbcc03caef03624578
2017-04-14 15:24:45 -07:00
Wes Kocher 226702fd85 Merge m-c to autoland a=merge
MozReview-Commit-ID: LOGgOErcV9L
2017-04-26 17:43:38 -07:00
Wes Kocher c90904f9bf Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: 9HQViJrDT6S
2017-04-26 17:30:31 -07:00
Nick Alexander 9c8fde7730 Bug 1254355 - Follow-up: Use #ifdef, not #if, for MOZ_CRASHREPORTER. r=gps
On a CLOSED TREE

Style varies across the tree, and this matters as we transition to
Python and moz.build.  AppConstants.jsm already uses #ifdef, so this
is consistent with that.

MozReview-Commit-ID: Bal37lqlvjq

--HG--
extra : source : 41d155de1019c0c6c693e2bf46bd1dd7b91d244a
extra : amend_source : 989f6ba2447a2b40d4bc6604241d7986c0d5dd00
2017-04-18 17:26:15 -07:00
Nick Alexander 2bb32a2659 Bug 1254355 - Part 2: Generate AndroidManifest.xml using GENERATED_FILES. r=gps,mshal
MozReview-Commit-ID: BVYylS4qsP1

--HG--
extra : rebase_source : 6a9307175a8e876562571e0e5f276fff59c601db
extra : source : 6a0e9a3f26735b442f289c65c231986e1f829f9e
2017-04-25 13:42:19 -07:00
Andrea Marchesini 8beb8af7d4 Bug 1357846 - Introducing nsIFilePicker.displaySpecialDirectory, r=smaug
nsIFilePicker.displaySpecialDirectory is a string that can be set to TmpD,
Desk, or any other special directory value. The real value of this directory
will be read in the parent process.
2017-04-26 18:20:19 +02:00
James Willcox b69c4e2972 Bug 1359420 - Send correct status code in GeckoView security change listener r=esawin
MozReview-Commit-ID: 3B3PNxCNnm3
2017-04-26 10:11:35 -05:00
James Willcox 820edda4fd Bug 1359419 - Add GeckoView.preload() r=esawin
MozReview-Commit-ID: 6DYq2oiz1Ug
2017-04-26 10:11:28 -05:00
James Willcox 96b2d70241 Bug 1359422 - Add GeckoView constructor that allows both xml attribs and settings r=esawin
MozReview-Commit-ID: 8U1ojpLSSiK
2017-04-26 10:11:13 -05:00
Carsten "Tomcat" Book 68e9a2dfd5 Merge mozilla-central to mozilla-inbound 2017-04-26 09:04:59 +02:00
Carsten "Tomcat" Book 8f4e4ca99b merge mozilla-inbound to mozilla-central a=merge 2017-04-26 08:41:31 +02:00
Carsten "Tomcat" Book d9cce3c040 merge autoland to mozilla-central a=merge 2017-04-26 08:40:02 +02:00
Randall Barker fdcdbcefb5 Bug 1359659 - Ensure the complete pinned state is sent from the UI thread to the compositor r=jchen
MozReview-Commit-ID: GXRtfDZ8R17
2017-04-25 22:20:38 -07:00
Wes Kocher 5e8bdb175d Merge inbound to m-c a=merge
MozReview-Commit-ID: A85cs7Yriqj
2017-04-25 13:53:00 -07:00
Dale Harvey 7311d5038a Bug 1355676 - Check for nulls when decoding icons. r=sebastian 2017-04-25 16:53:29 +01:00
Mike Conley 47d93efc2d Bug 1357169 - Don't apply some unnecessary style rules to checkboxes or radio inputs on Android. r=mats
MozReview-Commit-ID: GGLkTmnBtxa

--HG--
extra : rebase_source : 1efc907e4203946bec2fd187c2fe12e7ea9be536
2017-04-20 16:15:07 -04:00
Randall Barker c82d528d56 Bug 1358805 - part 5: Update the dynamic toolbar animator to gracefully handle toolbar snapshot generation failure r=kats
MozReview-Commit-ID: B3t6l5ZqhC5
2017-04-25 15:14:00 -07:00
Randall Barker b1e89ec4b1 Bug 1358805 - part 4: Allow custom tabs to pin the dynamic toolbar r=droeh
MozReview-Commit-ID: BXoLU0BGrZq
2017-04-25 15:13:59 -07:00
Randall Barker 01ebd7c57f Bug 1358805 - part 3: Keep the toolbar state between UI thread and compositor thread consistent once IPC is open r=kats
MozReview-Commit-ID: H7qrShryomi
2017-04-25 15:13:59 -07:00
Randall Barker 7752cdc25d Bug 1358805 - part 2: Allow DynamicToolbarAnimator to query if the UiCompositorController is open in the case it missed the open message r=kats
MozReview-Commit-ID: 8wdMpQh44Zc
2017-04-25 15:13:58 -07:00
Randall Barker fc2f1cfb8d Bug 1358805 - part 1: Add new UiCompositorController message types TOOLBAR_SNAPSHOT_FAILED and IS_COMPOSITOR_CONTROLLER_OPEN r=kats
MozReview-Commit-ID: Ezd8Ng7Zsxm
2017-04-25 15:13:58 -07:00
Randall Barker b81353aaae Bug 1358554 - On Android devices that use static action bar prevent content from sliding down after a long press r=jchen
Only show real toolbar chrome for fixed action bar. Showing the static
snapshot causes the content to shift.

MozReview-Commit-ID: D4EN8qbe8Fu
2017-04-25 09:54:28 -07:00
Mike Conley 622087afdf Bug 1357169 - Backed out changeset 61f417a156ac (Bug 418833). r=mats
MozReview-Commit-ID: 4R6PYCBDQXy

--HG--
extra : rebase_source : f666d43fa15c0e4b66ac1aa9e9c198f1bc3b4758
extra : source : 1f94cae5a27284c114b1f568a14c372345fd60d2
2017-03-31 09:38:56 -04:00
Edouard Oger 027e105cad Bug 1351805 part 3 - Refresh the remote devices list on Married/Engaged states. r=Grisha
MozReview-Commit-ID: 1Ktbtlzc1fI

--HG--
extra : rebase_source : 0d17b41e17b01f65d38be93b7b01be056c75f652
2017-04-19 17:45:49 -04:00
Edouard Oger f86ddc39d6 Bug 1351805 part 2 - Add remote devices to the Browser Provider. r=Grisha
MozReview-Commit-ID: 9yGU2Gy6mX1

--HG--
extra : rebase_source : f7c3bdd1ea703f5726c6c650736211625b4af8b3
2017-04-07 12:24:46 -04:00
Edouard Oger 61034e9bd7 Bug 1351805 part 1 - Create a org.mozilla.gecko.fxa.devices package. r=Grisha,nalexander
MozReview-Commit-ID: FjJmRiHlqEg

--HG--
extra : rebase_source : 0342756d408c89c82e2afbf3c561fd2efad9cb4f
2017-04-07 11:56:38 -04:00
Wes Kocher c9b3f40856 Backed out 3 changesets (bug 1351805) for android Test failures a=backout
Backed out changeset da34da5f310a (bug 1351805)
Backed out changeset 430b56176e04 (bug 1351805)
Backed out changeset a3dfb4b9dc66 (bug 1351805)

MozReview-Commit-ID: AE4RcKV3akz
2017-04-25 12:47:59 -07:00
Edouard Oger dd3f4bde18 Bug 1351805 part 3 - Refresh the remote devices list on Married/Engaged states. r=Grisha
MozReview-Commit-ID: 1Ktbtlzc1fI

--HG--
extra : rebase_source : 2d52926ee1ba8511a32b5a9cfdc13cd04ef4bbb8
2017-04-19 17:45:49 -04:00
Edouard Oger c48ef3d269 Bug 1351805 part 2 - Add remote devices to the Browser Provider. r=Grisha
MozReview-Commit-ID: 9yGU2Gy6mX1

--HG--
extra : rebase_source : 43557fec627f45e4a5e381233c5a5d3115246153
2017-04-07 12:24:46 -04:00
Edouard Oger 96c75ddc3d Bug 1351805 part 1 - Create a org.mozilla.gecko.fxa.devices package. r=Grisha,nalexander
MozReview-Commit-ID: FjJmRiHlqEg

--HG--
extra : rebase_source : 0342756d408c89c82e2afbf3c561fd2efad9cb4f
2017-04-07 11:56:38 -04:00
Carsten "Tomcat" Book aac521e681 Merge mozilla-central to mozilla-inbound 2017-04-25 11:52:19 +02:00
Chris Peterson 7b85322694 Bug 1358949 - Lower eslint cyclomatic complexity threshold in some directories. r=standard8
We can lower the eslint cyclomatic complexity threshold in some directories without adding eslint suppression comments in any .js source files. We need to specify the complexity rule in accessible/.eslintrc because it doesn't inherit the mozilla/recommended rules. eslint's default complexity threshold is 20.

Also bump the eslint-plugin-mozilla version because we modified the mozilla/recommended rules.

MozReview-Commit-ID: 57T4gAjPH7z

--HG--
extra : rebase_source : 4565abfa722b9459cfb4e006e843da13ed7cffd4
extra : intermediate-source : 658588564c08c9fd5e60633d1457f24087de8570
extra : source : 7e0526e3b943419a80c0cd2fa462cabbf8925eb1
2017-04-23 19:23:18 -07:00
Iris Hsiao 1548482ea5 merge mozilla-inbound to mozilla-central a=merge 2017-04-25 11:21:30 +08:00
Julian_Chu 2ec693fe0e Bug 1359098 - fix getDrawable method missing problem in CustomTabs r=nechen
The method Context.getDrawable was introduced in API 21. To be
compatible with Kitkat, should use Resources.getDrawable instead.

MozReview-Commit-ID: 1ZajYWPTVj0

--HG--
extra : rebase_source : d9aa89d3cae5040b861cc6c07f2a2461fab4ce82
2017-04-25 10:06:15 +08:00
Iris Hsiao 3b17383f8d Merge mozilla-central to autoland 2017-04-25 11:28:40 +08:00
Ehsan Akhgari 6399dc4d9a Bug 1356922 - Part 1: Replace the next TabParent global pointer with per-window/tab next TabParent ID; r=billm,mconley
This patch replaces the usage of sNextTabParent pointer to store the next
PBrowser parent actor to be used by the next frame loader with the
following information:

  * In the case where the content JS has requested a new tab, the ID of the
    next TabParent will be stored on the <xul:browser> element.
  * In the case where the content JS has requested a new window, the ID of
    the next TabParent will be stored on the created nsXULWindow.
2017-04-24 14:18:29 -04:00
Carsten "Tomcat" Book 0068d23bc3 Merge mozilla-central to autoland 2017-04-24 12:43:55 +02:00
Carsten "Tomcat" Book fbf32f4dad Backed out changeset 32ab1a3d736f (bug 1331742) for causing Bug 1358888 and help fixing a topcrash 2017-04-24 12:28:24 +02:00
Carsten "Tomcat" Book 4b8d8ef79f Backed out changeset c91b14d9ad2a (bug 1331742) 2017-04-24 12:27:55 +02:00
Carsten "Tomcat" Book 174c21f39f Backed out changeset 31f4919d1f6c (bug 1331742) 2017-04-24 12:27:51 +02:00
Carsten "Tomcat" Book 56de74382f Backed out changeset 753e71053540 (bug 1331742) 2017-04-24 12:27:49 +02:00
Carsten "Tomcat" Book 850b8f9b6d Backed out changeset 79579aab8851 (bug 1331742) 2017-04-24 12:27:45 +02:00
Sebastian Hengst 8f6b13e209 Backed out changeset 41d155de1019 (bug 1254355) on suspicion of breaking Android L10n nightlies. r=backout a=backout
MozReview-Commit-ID: 4VnZVlHUYUA
2017-04-23 10:41:09 +02:00
Sebastian Hengst eaf61dee27 Backed out changeset 6a0e9a3f2673 (bug 1254355)
MozReview-Commit-ID: 4Xr3OibxQMU
2017-04-23 10:40:28 +02:00
Sebastian Hengst 72222922b8 Backed out changeset 33d4c8885613 (bug 1254355)
MozReview-Commit-ID: HleVV7ZhIuj
2017-04-23 10:40:27 +02:00
Sebastian Hengst 473a1509ea merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 289I7nCINwK
2017-04-22 10:48:16 +02:00
Randall Barker af484e7317 Bug 1358592 - Dynamic Toolbar v3 breaks back button rendering on android tablets r=esawin
Now that ShapedButton uses Mode.DST_OUT, the path needs to be inverted
so the back button is rendered correctly.

MozReview-Commit-ID: 8shpFf49zRG
2017-04-21 15:28:50 -07:00
Eugen Sawin 1b914c5725 Bug 1323296 - [1.0] Move Gecko initialization into the GeckoView initialization. r=jchen 2017-04-21 23:45:46 +02:00
Carsten "Tomcat" Book 975e251aff merge mozilla-inbound to mozilla-central a=merge 2017-04-21 10:57:02 +02:00
brainbreaker bed092fb4a Bug 1351667 - UI test that traverses settings screens; r=sebastian
This commit adds a robocop test that traverses all the settings
 screens except the 'Make default browser' one.

MozReview-Commit-ID: LqWrFL9v877

--HG--
extra : rebase_source : 2e7f5e1887ace438f948b49f6515e1d732ad8aa2
2017-04-18 19:40:11 +05:30
Nick Alexander c0bab36955 Bug 1254355 - Follow-up: Use full paths to match GENERATED_FILES targets. r=mshal
This was just an error that's not obvious on try builds.  We were
using local paths ($(DEPTH) expands to ../../../ in
mobile/android/base) and GENERATED_FILES produces targets with
absolute paths.

MozReview-Commit-ID: LDhh6mcgSD6

--HG--
extra : rebase_source : be0cf0c41873871082c640d051ead748746eb78c
2017-04-21 14:10:05 -07:00
Jan Henning f5375aad23 Bug 1352108 - Add missing attributes to custom tab activity declaration. r=sebastian
Not handling the appropriate configuration changes means that e.g. each rotation destroys and recreates the CustomTabActivity, which'll introduce a slight delay until we eventually repaint the web content.

As for the soft input mode, if we don't specify adjustResize, then the IME might actually simply overlap our window and obscure the end of content if the user has already scrolled down as far as possible.

MozReview-Commit-ID: BzBmIoGbhca

--HG--
extra : rebase_source : 8746621d8fec712e37aac4efdd76da6b0c3b396f
2017-04-24 21:05:39 +02:00
Iris Hsiao 7e2d844c6e Merge mozilla-central to autoland 2017-04-24 14:28:11 +08:00
Andrzej Hunt 29689d9c31 Bug 1358338 - findbugs: Ignore generated R.*/Manifest* r=sebastian
MozReview-Commit-ID: AwBdVmK6Hc

--HG--
extra : rebase_source : b081f15df43c0051dff5ae5209b53ad06cf7928e
2017-04-20 19:46:15 -07:00
Jing-wei Wu f6298f0174 Bug 1232439 - Part 4: Adjust bookmark list UI layout. r=ahunt
MozReview-Commit-ID: 5s74hg5daC5

--HG--
extra : rebase_source : 53b1e0d84f3cdbabbe82a1e7aea6caf2b7f6bc9c
2017-04-06 11:44:20 +08:00
Jing-wei Wu d6a7a9c21f Bug 1232439 - Part 3: Implement full-page bookmark edit dialog. r=ahunt,Grisha
MozReview-Commit-ID: 8wB9CEptVeu

--HG--
extra : rebase_source : 05e9007f52c0a5428b5c316e64b6ead09c11c931
2017-04-20 09:04:28 +08:00
Jing-wei Wu 54d4446fc0 Bug 1232439 - Part 2: Support get/update/remove bookmark record by ID in BrowserDB. r=Grisha
MozReview-Commit-ID: 6RNKCUiZE8K

--HG--
extra : rebase_source : e8f46fed85f484d423feedd1d5b7e8314346080f
2017-04-05 14:03:16 +08:00
Ralph Giles a256407bbf Bug 1359499 - Update builders to a cargo version with RUSTC_WRAPPER. r=mshal
Update tooltool manifests to reference rustc 1.16.0 stable repacks
which include cargo 1.19.0 nightly builds from 2017-04-19 which
support the RUSTC_WRAPPER environment override.

We're shipping with an unstable cargo while this feature makes its
way to release because it is necessary for deploying sccache support
for rust language code in our build and test automation.

MozReview-Commit-ID: Iow2894OPq7

--HG--
extra : rebase_source : f1a8e6cab612714f7b73ca8a14d14cabe9f4aef7
2017-04-25 12:15:52 -07:00
Jing-wei Wu 35b968a344 Bug 1232439 - Part 1: Setup A/B experiment for enabling full bookmark management in Nightly. r=Grisha
The experiment in Switchboard is "full-bookmark-management", and it's enabled for 100% of the Nightly audience.

MozReview-Commit-ID: EhA0BcouPPn

--HG--
extra : rebase_source : beeddc921a089606d8a752b75c3a0280a1803972
2017-03-23 14:14:24 +08:00
Andrzej Hunt f1be49c357 Bug 1357630 - infer: (NULL_DEREFERENCE) add null-check to getAppEventDispatcher r=nalexander
Every single caller of getAppEventDispatcher() and getEventDispatcher()
assumes a non-null return value, so let's make sure we're actually returning
a non-null value. This commit doesn't effectively change runtime behaviour
(any previously NPE crashes will now result in a crash due to IllegalStateException),
however we now at least have an obvious error message in that situation.

In reality, no code should run before onCreate(), so this should realistically
never happen - but we should still check to ensure that is the case.

(This removes 28 infer NULL_DEREFERENCE warnings.)

MozReview-Commit-ID: GhzwKWfkAbD

--HG--
extra : rebase_source : f6b13f590b437ebb63e502f774a70164054ecf7e
2017-04-18 20:10:44 -07:00
Wes Kocher 4f3c2d9829 Merge m-c to autoland, a=merge
MozReview-Commit-ID: DPzfAm14Tdx
2017-04-20 15:52:28 -07:00
Wes Kocher 5ce5528fb1 Merge inbound to m-c a=merge
MozReview-Commit-ID: DQDuEiYLWCO
2017-04-20 15:30:43 -07:00
James Willcox bbde9021e6 Bug 1358155 - Bump core ping version and docs r=frank
MozReview-Commit-ID: 1h417verpc2

--HG--
extra : rebase_source : 293cbbf4c01c5535579ab5d3862a01ef4de50234
2017-04-20 09:43:51 -05:00
Munro Mengjue Chiang c805ded682 Bug 1353313 - Add synchronization mechanism to CodecProxy. r=jolin
MozReview-Commit-ID: 3sqW06nIkoJ
2017-04-14 10:04:24 +08:00
Nick Alexander d1d66db6c9 Bug 1254355 - Part 2: Generate AndroidManifest.xml using GENERATED_FILES. r=gps
MozReview-Commit-ID: 8McGHkPYyhI

--HG--
extra : rebase_source : 7e2e6f9f901956c34089335157ce4fe754cf2472
2017-04-17 13:47:41 -07:00
Nick Alexander 45d40668a3 Bug 1254355 - Pre: Use #ifdef, not #if, for MOZ_CRASHREPORTER. r=gps
Style varies across the tree, and this matters as we transition to
Python and moz.build.  AppConstants.jsm already uses #ifdef, so this
is consistent with that.

MozReview-Commit-ID: Bal37lqlvjq

--HG--
extra : rebase_source : 8e4e459a9bdbc3a2cacde728f45e6edecc272e24
2017-04-18 17:26:15 -07:00
Wes Kocher ca3a99fc7e Merge m-c to inbound, a=merge 2017-04-19 17:15:26 -07:00
Tom Klein cd1f0d6b9b Bug 1354440 - Make the fade at the end of the tab strip work with RTL. r=maliu
MozReview-Commit-ID: AVjtekO4eli

--HG--
extra : rebase_source : 15962eb23b722be3de6625494aafd28c97c19bd9
2017-04-20 01:26:10 -05:00
Jan Henning 0340ccd2e1 Bug 1357091 - Provide a default value when reading "manifest.install.enabled". r=daleharvey,walkingice
That pref isn't set by default, so trying to access it in that case throws a JS error.

MozReview-Commit-ID: 2KIUSztvoXS

--HG--
extra : rebase_source : b2769ba16247db9373c004f152c0e2233fb0652d
2017-04-17 16:39:32 +02:00
Carsten "Tomcat" Book 87edaf78ee Merge mozilla-central to autoland
--HG--
extra : rebase_source : 46bdde97ce6567ce8a06b1609de547ef11b24c2a
2017-04-20 13:06:52 +02:00
Matthew Wein 09d1616dc7 Bug 1331742 - Part 5 - Add unit tests for browserAction.onClicked r=mixedpuppy
MozReview-Commit-ID: Ko8eQYfIM0H

--HG--
extra : rebase_source : 0774a850694d8ea52d7c39872e5ac02f4acec4c5
2017-04-10 16:15:54 -04:00
Matthew Wein 549d74a605 Bug 1331742 - Part 4 - Add a position property to keep track of the menu item's position instead of using the ID r=sebastian
MozReview-Commit-ID: 7ZtfaVQFhKX

--HG--
extra : rebase_source : b1d9a62ca8c272eb4ff631d4331129c97153cb31
2017-03-25 22:35:54 -07:00
Matthew Wein 0bb36b786b Bug 1331742 - Part 3 - Create and register ext-browserAction.js r=mixedpuppy
MozReview-Commit-ID: CGR4689b6oo

--HG--
extra : rebase_source : 912519c647c2051d03307f52ca778efb1f9e7480
2017-04-19 21:44:41 -04:00
Matthew Wein 35c2d73d83 Bug 1331742 - Part 2 - Create a module for managing browser actions similar to PageActions.jsm r=sebastian
MozReview-Commit-ID: 2epdMD75e84

--HG--
extra : rebase_source : a542b3ca2e673e4fcfdebab56108c2df66239630
2017-03-25 22:36:05 -07:00
James Willcox dc970b5ee0 Bug 1357786 - Use device CPU architecture in Fennec core ping r=sebastian
MozReview-Commit-ID: HXjaNdQzNGF

--HG--
extra : rebase_source : 86398402078b9212078639d1393d8fc845fcc7f6
2017-04-19 10:25:01 -05:00
Jan Henning 659bac6328 Bug 1357505 - Check tab queue array length before parsing to avoid unnecessary exceptions. r=sebastian
MozReview-Commit-ID: LrlegpviPZk

--HG--
extra : rebase_source : 357d8c879ce3f8c1eac8446b76394c64d0d8c9f6
2017-04-18 21:19:17 +02:00
Sylvestre Ledru 392d4c4a1a Bug 1354821 - Generate fennec nightly apk with org.mozilla.fennec_aurora as id r=rail
* nightly-aurora-id is a copy of nightly
* mobile/android/branding/aurora/ is a copy of nightly with the id and package name changed

MozReview-Commit-ID: 2VT0dHDXEMg

--HG--
extra : rebase_source : 7396a1a7eabb4037fb6936bfc1af10666a677e14
2017-04-18 11:59:55 +02:00
Julian_Chu c5f0b243ca Bug 1353019: update menu icon of CustomTabsActivity as per page loading r=sebastian
There is a control in menu for reloading or stop-page-loading. Its icon
should be updated per page loading progress.

MozReview-Commit-ID: BNanAQj3xS4

--HG--
extra : rebase_source : 9964c320f3e430583fcdd79034c834af0c115fbc
2017-04-19 11:49:11 +08:00
Julian_Chu d486a74857 Bug 1353019: fix icon creation issue in GeckoMenuItem r=sebastian
If change icon via resource id, we should create mIcon as well. And
method `getIcon` should return the drawable which be used currently, but
not generating a new drawable via resource id.

Without this patch, we cannot change icon of a GeckoMenuItem until we
set the icon back. ie.

    Drawable icon = menuItem.getIcon();
    icon.setLevel(42); // does not work, cause the icon is new instance.

MozReview-Commit-ID: KxW66OgI9po

--HG--
extra : rebase_source : 7b9c1dc13d9b3b214e5dcb3ee366dca7e60f3fe7
2017-04-19 15:39:14 +08:00
John Lin 9fa31b9fb4 Bug 1343541 - restore signal actions changed by Android debugger. r=glandium
Android shows a dialog box when it detects app crashing. OOP decoder needs to hide that from user to resume playback gracefully.

MozReview-Commit-ID: 3cE3GiHAuQk

--HG--
extra : rebase_source : 67bec5dfda1e878fa7dea877ef58d485b4e17944
2017-04-12 17:34:17 +08:00
Carsten "Tomcat" Book 7bcdfe36bc Merge mozilla-central to autoland 2017-04-19 10:57:24 +02:00
Carsten "Tomcat" Book 44e9c21039 merge mozilla-inbound to mozilla-central a=merge 2017-04-19 10:32:48 +02:00
Jim Chen c9d615b096 Bug 1322581 - 5. Add PromptDelegate implementation to GeckoView example; r=snorp
Add a sample implementation of PromptDelegate to GeckoView example.
2017-04-18 17:45:02 -04:00
Jim Chen 0bb39e6f5f Bug 1322581 - 4. Add JS GeckoView prompt implementation; r=snorp
Add the necessary XPCOM components to handle prompts for GeckoView. The
JS code mostly package the prompts into GeckoView:Prompt events, and send
them to the Java side if in parent process, or to the parent process if
in child process.
2017-04-18 17:45:02 -04:00
Jim Chen 8503fd2101 Bug 1322581 - 3. Add event listener for GeckoView:Prompt event; r=snorp
Add an event listener for the GeckoView:Prompt event, which JS code will
use to sent over prompt requests and to receive prompt results. Both
global and per-GeckoView listeners are required because we may not know
the origin GeckoView for certain prompts, so some prompts will not have
an associated GeckoView. This is also the reason for having a static
default PromptDelegate in additional to an instance per-GeckoView
PromptDelegate. All prompts without associated GeckoViews are sent
directly to the default PromptDelegate.
2017-04-18 17:45:01 -04:00
Jim Chen e2f7e4a529 Bug 1322581 - 2. Add PromptDelegate interface; r=snorp
Add a PromptDelegate interface that implements possible prompts shown by
a GeckoView application. All prompt methods include a callback parameter
for the implementation to call back to GeckoView with results from the
prompt.
2017-04-18 17:44:57 -04:00
Jim Chen f15b130cbb Bug 1322581 - 1. Remove GeckoView.ChromeDelegate; r=snorp
Remove the old ChromeDelegate interface, to be replaced by
PromptDelegate in a future patch.
2017-04-18 17:44:57 -04:00
Jim Chen f3eca63a21 Bug 1354911 - Guard against null menu item names; r=sebastian
Addons may give us invalid menu item names; bail instead of crashing in
such cases.
2017-04-18 17:42:58 -04:00
Wes Kocher 61ed56921b Merge m-c to inbound, a=merge 2017-04-18 14:38:53 -07:00
Julian_Chu 752ba9adf6 Bug 1352993 - Part 3, CustomTabsActivity prvoides presenter r=sebastian
CustomTabsActivity use standard ActionBar, so we can easily use action
mode for text-selection.

MozReview-Commit-ID: CSu0d24Z7dt

--HG--
extra : rebase_source : 9040e515a6208459aa5b0b7470e491c7474fe4ec
2017-04-18 18:51:11 +08:00
Julian_Chu afbcff523b Bug 1352993 - Part 2, Add presenter class which response text-selection r=sebastian
To create new interface ActionModePresenter, a presenter could to
operate action-mode.

For pre-marshmallow Android version, we use ActionBar to provide UI
action for text-selection. Therefore BrowserApp will implement this
presenter for text-selection.

MozReview-Commit-ID: GdLB3ke2pYe

--HG--
extra : rebase_source : 5467a7d514810fa846fefcf37e5eb2f55a643c3f
2017-04-18 18:12:43 +08:00
Julian_Chu b139b481bd Bug 1352993 - Part 1, Generalize ActionModeCompat r=sebastian
We want to reuse ActionBarTextSelection in more activities, so remove
custom classes from it, to make it easier to interactive with general
Andorid classes.

To achieve that
    * Let ActionModeCompat to be a subclass of ActionMode
    * Get rid of GeckoMenu

BrowserApp is the only one consumer for ActionModeCompat, and it do
understand the class type. We could move animateIn to it safely. After
doing this, TextSelectionActionModeCallback could become a general
ActionMode.Callback.

MozReview-Commit-ID: 7FTwDTe1JYG

--HG--
extra : rebase_source : cf7cbba40745bbfbd34099f238c904bb4d3c6438
2017-04-18 15:26:53 +08:00
Julian_Chu 0bf1b90932 Bug 1352993 - Part 0, remove useless variable r=sebastian
No one is using this variable, remove it.

MozReview-Commit-ID: LLcxoh4mRrE

--HG--
extra : rebase_source : e9b418c8adefa8459e04b3ad65e17e376a9369ad
2017-04-14 17:45:15 +08:00
Andrzej Hunt aee9d1bfa4 Bug 1261983 - infer: close file input stream in case of GZIP failure r=nechen
This commit also cleans up extraneous stream closes: these streams
are closed in finally, so we don't need to also clean them up in
the main try block body.

MozReview-Commit-ID: EXxlmmtqvyq

--HG--
extra : amend_source : 72ad8cb816202e8e3f234157bae092cea004d34a
2017-04-14 12:10:25 -07:00
Tom Klein f075e911e0 Bug 1350737 - Make the selected tab's row the first visible row when the tabs tray opens. r=sebastian
That helps usability in the following scenario:
1) Open more tabs than will fit on screen in the tabs tray (and fill the last
row with tabs if the tabs tray is in a grid mode);
2) Scroll to the bottom;
3) Open one of the last visible tabs, and from that open tab open a new
background tab (e.g. long click on a link in a page and choose "Open in new
tab");
4) Reopen the tabs tray.

With the fix, the new tab will be visible at the bottom of the list, whereas
previously in list mode it was not visible at all, and in grid modes only the
top of the title was visible.

(Bug 1299905 would make this sort of situation more widely applicable.)

This patch also has the side effect of scrolling the selected tab to the top of
the tabs tray on each rotation (previously it was just scrolled into view).

MozReview-Commit-ID: 4MKY7P1Mihk

--HG--
extra : rebase_source : a00776803b199a949ba598805e79a71fde82e2f3
2017-03-26 21:44:23 -05:00
Alastor Wu 7175cf4a75 Bug 1348803 - part2 : modify event name to lower case letter. r=sebastian
Other events in browser.js are all lower case letter, also change these two to make them consistent.

MozReview-Commit-ID: LkzYUo6OrEA

--HG--
extra : rebase_source : 6853dc40c68c0939d7e318b3a1e88c39495d0648
2017-04-18 11:04:17 +08:00
Alastor Wu dcf248107f Bug 1348803 - part1 : move fennec-only code to android/browser.js. r=sebastian
We could register media control related event after the tab has active media.
But we still need to register "audioFocusChange" in the beginning, because it
affect every tab even the tab has no active media.

MozReview-Commit-ID: ErIBUobnxbg

--HG--
extra : rebase_source : bdc8070f2f2a81f847ebb8e0ec87f6efeb86eb80
2017-04-18 11:03:49 +08:00
Matthew Wein 29488c9b00 Bug 1331742 - Part 1 - Create and register browser_action.json r=mixedpuppy
MozReview-Commit-ID: AwYuTDU3Ki4

--HG--
rename : browser/components/extensions/schemas/browser_action.json => mobile/android/components/extensions/schemas/browser_action.json
extra : rebase_source : 40d21958c2800a35e9a691f379694c6ca3b1c73e
2017-03-15 21:02:56 -04:00
Shane Caraveo f6660740ac Bug 1326298 implement off-main-thread delivery with start/stop/error listeners, r=kmag
MozReview-Commit-ID: Ke4NsthrbP2

--HG--
extra : rebase_source : 0324030e5f7f534256ff0c469bb486dc52e282c2
2017-04-18 15:50:53 -07:00
Sebastian Hengst 0e96a7ee95 Backed out changeset a5af7f7132f6 (bug 1254355) for failing android lint job (unused file crash_reporter.png). r=backout 2017-04-19 01:05:06 +02:00
Grigory Kruglov 68882a5021 Bug 1335198 - Add support for synchronizing bookmark creation date r=rnewman
Incoming records might be missing the dateAdded field, and so we perform some pre-processing:
- during reconciliation, dateAdded is set to the lowest of (remote lastModified, remote dateAdded, local dateAdded)
- during insertion, if dateAdded is missing it is set to lastModified

Whenever we modify dateAdded for a record during sync, we also bump its lastModified value. This will trigger an
upload of this record, and consequently a re-upload by clients which are able to provide an older dateAdded value.
It is possible that this might cause conflicts on other devices, but the expected likelyhood of that happening is low.


MozReview-Commit-ID: 3tDeXKSBgrO

--HG--
extra : rebase_source : 26cb13838df7a4adb6d4fe3c51f0ecf3fd2eda95
2017-04-18 18:04:45 -04:00
Ralph Giles 927fc2a00a Bug 1357119 - Include aarch64 in rustc package for builders. r=mshal
Add the aarch64-linux-android libstd to the android-cross
repackage of the upstream rust 1.16.0 stable builds.

MozReview-Commit-ID: gmZL7QCodQ

--HG--
extra : rebase_source : dc4072c3214188195aa6abda939d550df4e617d9
2017-04-18 10:24:08 -07:00
Nick Alexander 5918c2009b Bug 1254355 - Part 2: Generate AndroidManifest.xml using GENERATED_FILES. r=gps
MozReview-Commit-ID: 8McGHkPYyhI

--HG--
extra : rebase_source : 0789187e4c3a589060dcd9913f376410a390a6f7
2017-04-17 13:47:41 -07:00
Nick Alexander 7c46e515ed Bug 1254355 - Part 1: Prepare to generalize generate_build_config. r=gps
I'm taking another kick at this.  Since glandium's negative review of
older patches a year ago, generate_build_config.py landed (with your
r+, gps).  These patches extend that mechanism to generate
AndroidManifest.xml.  This sets the stage for that.

This is all in service of Bug 1355625, which will need the
generate_build_config.py extension point to do things that the
preprocessor cannot handle: generating Java code, copying resource
files, and merging resource XML declarations.

MozReview-Commit-ID: AcyC3CBMQl1

--HG--
extra : rebase_source : c379b07de4b9f9b4bfe53e6a0adac13f08a71c73
2017-04-17 13:38:24 -07:00
Michael Kaply 820e8c33db Bug 1357121 - Allow dashes and underscore in OTA distribution name. r=nalexander
MozReview-Commit-ID: 9PchGiKPGLi

--HG--
extra : rebase_source : 42360222fb3abc359d46180dc385c89a4c706cfb
2017-04-17 13:11:43 -05:00
Michael Kaply f9cb2ecf9b Bug 1359223 - Add geckoview to checkstyle and correct style issues. r=snorp
MozReview-Commit-ID: AM0bdF8dZQW

--HG--
extra : rebase_source : e6f21dafc2fa99cb1ddbac102fad8c3cbafb1516
2017-04-24 16:06:43 -05:00
Carsten "Tomcat" Book 3b4328e578 Merge mozilla-central to autoland
--HG--
extra : rebase_source : bc4cd926477775ac802f400a79f553034d569a18
2017-04-26 09:08:31 +02:00
Andrzej Hunt a1a692f7f5 Bug 1357783 - infer: Avoid CONTEXT_LEAK in stumbler r=sebastian
This solves 2 issues:
- We keep a reference to Tracker (which is implemented by a Service) forever,
  which is solved by keeping a WeakReference.
- We kept another reference to the Service by using it as a Context - we can
  avoid that by using the ApplicationContext instead.

MozReview-Commit-ID: 6UNSkZx12an

--HG--
extra : rebase_source : bfb50d02246e4377ef23179747987bc82731fd54
2017-04-18 23:18:41 -07:00
Jan Henning d8a015d07f Bug 1357579 - Correctly copy the sparse Boolean array when clearing Site Settings. r=ahunt
The checked items are stored in a *sparse* Boolean array, which we want to transform into an array (list) of the checked indices for transmission to Gecko.

The current approach doesn't do this correctly, as it iterates over all (sparse and non-sparse) items, but uses SparseBooleanArray.size() (which only counts non-sparse items) as its iteration limit. This means that we only copy the checked state of the first n items, where n is the total count of checked items.

For correctly iterating over the array to retrieve all indices that are true, we'd either have to use the largest available key (if we'd want to iterate over everything, including the sparse indices), or else use the approach chosen in this patch, namely using valueAt/keyAt in order to iterate over the internal array that's storing the values for all non-sparse indices.

MozReview-Commit-ID: FRGI4Rr0uCb

--HG--
extra : rebase_source : d9bb3a08af3a7ee2e730beb4777df30d019c922c
2017-04-21 22:53:19 +02:00
maliu 4dbe9d9e6d Bug 1358089 - [RTL] Separate xml drawable into v17 folder, r=ahunt
MozReview-Commit-ID: LaOwxXwhsHA

--HG--
extra : rebase_source : c34b558f97c52cd989668aad25d6b7f743db73f9
2017-04-24 01:16:11 +08:00
Zibi Braniecki a1a4f0b7c9 Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK

--HG--
extra : rebase_source : 883a91b249b6953b7872bfb9a8851e8be7257c7b
2017-03-11 18:43:11 -08:00
Sebastian Hengst 7b30105d39 Backed out changeset 60d72c2dd49d (bug 1346616) for eslint failure in DirectoryLinksProvider.jsm. r=backout on a CLOSED TREE 2017-04-18 00:48:16 +02:00
Zibi Braniecki cce53c69bc Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK

--HG--
extra : rebase_source : 2f166cf1746f389a035f7cf557edcadeacb10fa0
2017-03-11 18:43:11 -08:00
Sebastian Hengst 5a100ecb59 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-04-17 16:32:14 +02:00
Nevin Chen 5067faea40 Bug 1352004 - Fix doorhangers missing background. r=sebastian
MozReview-Commit-ID: 6vrY17fYXD6

--HG--
extra : rebase_source : 50e972ac1dc75a20b76bcc36c99af605b7ee735f
2017-04-10 18:13:47 +08:00
maliu cdc8b14c86 Bug 1354973 - Remove view before add to new ViewGroup, r=sebastian
MozReview-Commit-ID: 1Xdlbss6SVO

--HG--
extra : rebase_source : 7ad0e35d111fd5fbe9e5a93d0151ff5acfc18fc2
2017-04-10 11:48:59 +08:00
John Lin 760bdfdd3f Bug 1353459 - handle queueInputBuffer exceptions. r=esawin
MozReview-Commit-ID: 1Tm0vcl3Uv7

--HG--
extra : rebase_source : 9ff8ab441ebe6e4348edd7d0ac2a129f8e3d7311
2017-04-11 16:26:12 +08:00
Florian Queze 4c6a68d1c9 Bug 1355161 - script-generated patch to replace .{currentThread,mainThread}.dispatch(..., Ci.nsIThread.DISPATCH_NORMAL) with .dispatchToMainThread(...), r=froydnj. 2017-04-14 18:29:12 +02:00
Kris Maglione 2f577ad88b Bug 1317697: Follow-up: Fix android test bustage. r=me
MozReview-Commit-ID: 4bFu0pPMZim
2017-04-14 19:28:53 -07:00
Ted Mielczarek adf4bd2737 bug 1354048 - update sccache to rev 7a3847276d05deb564cb84a16b8c551b690aaa3e. r=mshal
MozReview-Commit-ID: C7o9uRGAeqd

--HG--
extra : rebase_source : a432ff8bba31d3d33afe45d4a5d613a294106533
2017-04-10 06:55:15 -04:00
Wes Kocher 5cba60441b Merge m-c to inbound, a=merge
MozReview-Commit-ID: HfJqvXF2Ux7
2017-04-20 15:55:31 -07:00
Randall Barker a606cd8b60 Bug 1335895 - Android GeckoView Dynamic Toolbar Version 3 r=botond,dvander,jchen,kats
This version of the Dynamic Toolbar moves the animation of the toolbar
from the Android UI thread to the compositor thread. All animation for
showing and hiding the toolbar are done with the compositor and a static
snapshot of the real toolbar.

MozReview-Commit-ID: BCe8zpbkWQt
2017-04-20 15:15:14 -07:00
Honza Bambas 0504ed64c3 Bug 1319111 - Exposing URI to make security check against on LoadInfo (no LOAD_REPLACE flag). r=bz 2017-01-27 19:10:01 +01:00
Shane Caraveo 13b87e3cd9 Bug 1336908 implement management APIs needed for theme management, r=aswan
MozReview-Commit-ID: 8tZpCE3nXGr

--HG--
extra : rebase_source : 17bb24f0c6954f3e81062e86e18ec63284c9c64f
2017-05-04 11:40:02 -07:00
Sebastian Hengst 7434338cd5 Backed out changeset 6fa5520670a3 (bug 1357639) for frequently failing testAudioFocus on Android. r=backout on a CLOSED TREE 2017-05-04 21:26:09 +02:00
Sebastian Hengst 25cd21ebd9 Backed out changeset 608cca1e6059 (bug 1357639) 2017-05-04 21:24:07 +02:00
Sebastian Hengst 3889a3ef1e Backed out changeset 090286c03592 (bug 1357639) 2017-05-04 21:24:03 +02:00
Sebastian Hengst 7cf3db848a Backed out changeset 3c76fdbce387 (bug 1357639) 2017-05-04 21:23:59 +02:00
Sebastian Hengst 75b8bf5e70 Backed out changeset adcc6f84e6c2 (bug 1357639) 2017-05-04 21:23:55 +02:00
Sebastian Hengst 3abc9a12fb Backed out changeset 6f192315ba79 (bug 1357639) 2017-05-04 21:23:50 +02:00
Sebastian Hengst 7b1aa1ce07 Backed out changeset 3cf46eb1a111 (bug 1357639) 2017-05-04 21:23:46 +02:00
Sebastian Hengst d01f64daea Backed out changeset 7ded779bd7fc (bug 1357639) 2017-05-04 21:23:42 +02:00
James Cheng ac2dea5b4f Bug 1360626 - Create a blacklist for adaptive playback support. r=jolin
On some devices / os combinations, enabling adaptive playback causes decoded frame unusable.
It may cause the decode frame to be black and white or return tiled frames.
So we should do the blacklist according to the report.

MozReview-Commit-ID: j3PZXTtkXG

--HG--
extra : transplant_source : %B0%13%F9%D8i%06d%7B%E3%D7%B1%95%BCCV%DF%D4%EF%93%E7
2017-05-03 13:49:23 +08:00
Alastor Wu 8c7f357d42 Bug 1357639 - part8 : add annotiation @RobocopTarget. r=sebastian
To make sure these functions can be used in robocop test.

MozReview-Commit-ID: KPAKOrg5Ows

--HG--
extra : rebase_source : cb21f8dc19fb9368f789d46d38ed46ad2b916df1
2017-05-04 15:24:00 +08:00
Alastor Wu 337b087df8 Bug 1357639 - part7 : add check for notification's content. r=sebastian
Add check for media notification's small icon, title and content text.

MozReview-Commit-ID: AOhag8gQVqs

--HG--
extra : rebase_source : 95ba0378056c997855af0d0dceffed7dbdb90f03
2017-05-04 15:23:56 +08:00
Alastor Wu 3e170812fe Bug 1357639 - part6 : list all test tasks in the ctor. r=sebastian
It's easy to know what test tasks we'll run in this test.

MozReview-Commit-ID: DdtFp4pOXlC

--HG--
extra : rebase_source : 3618c4fe0037b16fb6e8727c1523d9121732a61a
2017-05-04 15:23:50 +08:00
Alastor Wu 8ac7ff6fae Bug 1357639 - part5 : create new type test class for media playback. r=sebastian
Create new test class for reducing the redundant code and can provide more
flexibility for adding new related test in the future.

MozReview-Commit-ID: 2f3O8vfHo12

--HG--
extra : rebase_source : 6b503816d9ac75d9269d8f81b2dad300bf1e9702
2017-05-04 15:22:40 +08:00
Alastor Wu d35138575d Bug 1357639 - part4 : add Fennec test for media control and audio focus. r=sebastian
Add robocop tests and mochitest chrome.

MozReview-Commit-ID: JofkKRSNdB5

--HG--
extra : rebase_source : 9e2aa8c39a5392127035b958f6e417110a17b383
2017-05-04 15:22:35 +08:00
Alastor Wu 50e1e92114 Bug 1357639 - part3 : change audio focus state before notifying observers. r=sebastian
Notify observer might cause the method (notifyStoppedPlaying) is called by C++ side,
and we should change our internal state before calling the method.

MozReview-Commit-ID: 5xNXhGmAIrR

--HG--
extra : rebase_source : c13943e717fe28b24a1bc6a83c9e6ac18b37eb9d
2017-05-04 15:19:44 +08:00
Alastor Wu f442b3e688 Bug 1357639 - part2 : use enum for audio focus states. r=sebastian
MozReview-Commit-ID: KE6QuuF8xWm

--HG--
extra : rebase_source : e8e89767da6992e71c87c3307372e10428287280
2017-05-04 15:19:41 +08:00
Alastor Wu bd089dc3c6 Bug 1357639 - part1 : change tab's media playing state when the tab is controlled by media control. r=sebastian
MozReview-Commit-ID: 7CNbMdCJT3K

--HG--
extra : rebase_source : 9bbbe072e3970a27d8d581bd8c06164d1ca78c8c
2017-05-04 15:19:39 +08:00
Kris Maglione b13ea15e1c Bug 1317697: Remove things from ExtensionUtils that don't belong there. r=mixedpuppy
MozReview-Commit-ID: CTX0TckLqoV

--HG--
extra : rebase_source : ebea9b6f0f17a29d331851a08e025cbd04f4d02b
extra : absorb_source : 70b120f39e9307c4b2ef66d8e776e8b832b4aab8
2017-04-07 13:39:06 -07:00
Kris Maglione e1feed9d51 Bug 1317697: Split ExtensionContent.jsm into a stub process script. r=mixedpuppy
MozReview-Commit-ID: 4vn0ERZiBQd

--HG--
rename : toolkit/components/extensions/ExtensionContent.jsm => toolkit/components/extensions/extension-process-script.js
extra : rebase_source : cc473732c152fa2ac47202a8c5634e4a68a30763
extra : absorb_source : 4a9b52534bee64e907e61f3bb229b0ad7849c097
2017-04-14 17:00:51 -07:00
Florian Queze f935ddc4b3 Bug 1356569 - Remove notifyObservers' last parameter when it is falsy, r=jaws. 2017-04-14 21:51:39 +02:00
Florian Queze 37f2343b9a Bug 1356569 - Remove appendElement's last parameter when it is false, r=jaws. 2017-04-14 21:51:39 +02:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Sebastian Hengst 159215e6f4 Backed out changeset 18d45aa984d6 (bug 1355161) 2017-04-14 23:39:23 +02:00
Sebastian Hengst a07223d699 Backed out changeset 322fde2d53bf (bug 1356569) so bug 1355161 can be backed out. r=backout 2017-04-14 23:39:22 +02:00
Sebastian Hengst 9e0ecf32c5 Backed out changeset e1f191aad863 (bug 1356569) 2017-04-14 23:39:17 +02:00
Sebastian Hengst 738d097aae Backed out changeset 55f3df15eaa6 (bug 1356569) 2017-04-14 23:39:17 +02:00
James Willcox 4e6674fd79 Bug 1353185 - Convert GeckoViewExample to use singleTop launch mode r=jchen
MozReview-Commit-ID: Fd3eYNxVQWp
2017-04-14 16:19:38 -05:00
Florian Queze 3c564a2b02 Bug 1356569 - Remove notifyObservers' last parameter when it is falsy, r=jaws. 2017-04-14 21:51:39 +02:00
Florian Queze 93a734a3ce Bug 1356569 - Remove appendElement's last parameter when it is false, r=jaws. 2017-04-14 21:51:39 +02:00
Florian Queze 95d4d20c17 Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Florian Queze a363fb8c8b Bug 1355161 - script-generated patch to replace .{currentThread,mainThread}.dispatch(..., Ci.nsIThread.DISPATCH_NORMAL) with .dispatchToMainThread(...), r=froydnj. 2017-04-14 18:29:12 +02:00
Iris Hsiao 93edef392b merge autoland to mozilla-central a=merge 2017-04-14 17:09:58 +08:00
Michael Kaply 77f4745af9 Bug 1355870 - Allow a system preference to determine distribution dir. r=nalexander
--HG--
extra : amend_source : 821fda9a805d50fd85c11e43962764efb9711b94
2017-04-13 20:04:41 -05:00
Wes Kocher c8a2033f35 Merge m-c to inbound, a=merge 2017-04-13 17:33:39 -07:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Eugen Sawin f6e5f80eca Bug 1351169 - [1.2] Update GeckoView's state after finishing window reattachment. r=jchen 2017-04-13 18:08:15 +02:00
Francesco Lodolo (:flod) a7053e1953 Bug 1352450 - Fennec searchplugin for Yahoo Japan: update icon, switch to SSL r=mkaply
MozReview-Commit-ID: CsJF8mELkSD

--HG--
extra : rebase_source : b11483348eebaa0e9683c801558bbf65601e670e
2017-04-06 11:15:59 +02:00
Eugen Sawin 0b1bae9e19 Bug 1355542 - [2.0] Remove unused web progress callbacks and add missing progress filters. r=felipe 2017-04-13 23:20:17 +02:00
Wes Kocher 20dd5f52c2 Merge m-c to autoland, a=merge 2017-04-13 17:35:34 -07:00
Wes Kocher 2986c817dc Merge autoland to central, a=merge CLOSED TREE 2017-04-12 15:13:30 -07:00
Wes Kocher 25d50f2c30 Merge inbound to central, a=merge 2017-04-12 14:39:09 -07:00
Nick Alexander 84711dd47a Bug 1320310 - Post-process Gradle-produced Android manifest. r=sebastian
Layer on the hacks!  This:

1) Reinstates the <activity-alias android:name=".App"> that we have in
   the moz.build produced Android manifest.  I found no way to do this
   using placeholders or the manifest merger.

2) Culls manifest entries provided by
   com.google.android.gms.measurement.  We know they're not necessary,
   since they're not present in the existing Fennec Android manifest.

These are strictly workarounds to avoid doing the real work of fixing
the issues.  To fix 1), we'd need to migrate all existing users with
homescreen shortcuts to .App.  This could be difficult, especially if
partners have deployed packages out of our update control.  To fix 2),
we'll need to upgrade our Google Play Services to at least version
9.0.0 and then use the finer-grained AAR dependencies to not build
with the measurement split at all.

MozReview-Commit-ID: 21CaZ2KMeIa

--HG--
extra : rebase_source : c9aff7c414c13843c4e54267c95941fa35bc1001
2017-04-11 20:49:05 -07:00
Sebastian Kaspari 45e3a6ae50 Bug 1272354 - Add in-tree documentation of DLC telemetry. r=Grisha,liuche
MozReview-Commit-ID: 9loqkU6U202

--HG--
extra : rebase_source : 53f609b91a31a4394317f05513b85bb6978707db
2017-04-03 17:22:09 +02:00
Sebastian Kaspari 7b05e2f73e Bug 1272354 - (DLC) Sync Action: Add telemetry to track sync success/failure. r=Grisha
MozReview-Commit-ID: A74A4pc9anK

--HG--
extra : rebase_source : 97233e90eb5fd270f52e70205d8e12ed98d64473
2017-04-03 16:46:43 +02:00
Sebastian Kaspari a813890ad6 Bug 1272354 - (DLC) Download Action: Add telemetry to track download success/failure. r=Grisha
MozReview-Commit-ID: CKDfodx3moX

--HG--
extra : rebase_source : b310e13183099545e8a11fdaffc5af030b56ccea
2017-04-03 16:13:30 +02:00
Sebastian Kaspari c29bfcf52d Bug 1272354 - (DLC) DownloadAction: Move network checks inside download loop. r=Grisha
This has two advantages:
* If the network changes while we are downloading content then we do not continue on an metered network.
* When adding telemetry in one of the next patches then we can report which kind of content we did not
  download.

MozReview-Commit-ID: 80QzSRyCArr

--HG--
extra : rebase_source : ff902c57e36cc5eadaef075410635aa07671c353
2017-04-03 15:03:12 +02:00