Commit Graph

264 Commits

Author SHA1 Message Date
Sebastian Hengst
5a50c5cb42 merge autoland to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 7Ez95T2ivfR
2017-10-07 10:37:39 +02:00
John Lin
fad2013e53 Bug 1403849 - p2: add JNI method for native code to query tunneled playback support. r=esawin
MozReview-Commit-ID: 29HgjCanjGP
2017-09-29 18:04:20 +08:00
Jim Chen
ce77f82e0f Bug 1404144 - 2. Move start child process JNI call to GeckoProcessManager; r=rbarker
Avoid going through GeckoAppShell and move the start child process JNI
call directly to GeckoProcessManager.

MozReview-Commit-ID: KU62TiHVQJX
2017-10-04 22:28:43 -04:00
Eugen Sawin
0d5b12c7be Bug 1316934 - [3.1] Add JNI for AudioManager properties. r=snorp 2017-10-02 17:56:17 +02:00
Jim Chen
5e880673b5 Bug 1401737 - 2. Add GeckoAppShell.appendAppNotesToCrashReport; r=snorp
Add a way to append app notes to the crash report from Java, so we can
associate additional crash data with the crash.

MozReview-Commit-ID: 6I6pGOWb1sZ
2017-10-05 14:59:32 -04:00
James Willcox
09dc487526 Bug 1400878 - Don't show keyboard on Android unless the user caused it r=jchen
MozReview-Commit-ID: KURh08X4Q4U
2017-09-20 14:48:00 -05:00
Jim Chen
a750eb17bf Bug 1378410 - 3. Update generated bindings; r=jchen
MozReview-Commit-ID: fKCoCqFmZk
2017-09-01 14:02:44 -04:00
Eugen Sawin
988776f9a9 Bug 1386240 - [1.3] Check success status when enabling or disabling geolocation events. r=jchen 2017-08-08 18:15:54 +02:00
Jan Henning
ade2408f66 Bug 1266683 - Part 3 - Update notifyIMEContext JNI bindings to include private mode info. r=jchen
MozReview-Commit-ID: Gl2iRWxo9lE
2017-07-31 22:45:54 +02:00
Jim Chen
4214cd347c Bug 1384828 - Use tid for UI thread detection; r=esawin
Use the UI thread's tid for checking if we're on the UI thread in Gecko.
This lets us get rid of `GeckoThread.registerUiThread`, in order to
avoid a race where we check for UI thread before `registerUiThread` is
called.

MozReview-Commit-ID: 11gAWgx4UZo
2017-08-03 13:06:16 -04:00
James Willcox
8692a70cf1 Bug 1381916 - Remove frontend support for plugins in Fennec r=nechen
MozReview-Commit-ID: Gkqe8Y5AMPV
2017-07-31 12:25:16 -05:00
James Cheng
e0d347d7b7 Bug 1382151 - Pause Exoplayer when mediaelement is paused. r=kikuo
MozReview-Commit-ID: 5MDBBP5vfpa
2017-07-20 17:47:54 +08:00
James Cheng
595276d781 Bug 1379866 - Implement MediaResource Suspend and Resume in HLSResource. r=jolin
1. Pause the Exoplayer when navigating to another page and resume playback when navigating back.

2. Fix the OOM issue.

MozReview-Commit-ID: 5UGmBzpObsb
2017-07-14 01:29:00 +08:00
Kartikaya Gupta
43b4241f6f Bug 1379252 - Remove unused argument. r=rbarker
MozReview-Commit-ID: 7G8i0G9LyvZ
2017-07-07 14:56:10 -04:00
Kartikaya Gupta
497bb6de74 Bug 1379252 - Remove a bunch of unused fields from ImmutableViewportMetrics. r=rbarker
Also propagate the removal outwards to remove other unused functions.

MozReview-Commit-ID: 9aqcbBA0Mf1
2017-07-07 14:56:07 -04:00
Eugen Sawin
b65b184c69 Bug 1368701 - [1.2] Add shutdown intent action to shutdown Fennec. r=snorp,bc 2017-07-06 19:20:43 +02:00
Kilik Kuo
7ccb59c8ff Bug 1368954 - [Part1] Use reflection to avoid build bustage when source code is only included in Nightly. r=jolin,nalexander
1) Provide a BaseHlsPlayer as the interface used in related java wrappers.
2) Create and get the player instance from factory via reflection to decouple the source code dependency.

MozReview-Commit-ID: 5wsHSOjSeXV
2017-06-15 11:16:21 +08:00
James Cheng
8239df4638 Bug 1368907 - Part5 - Regenerate the JNI glue codes after renaming the java files. r=jolin
MozReview-Commit-ID: 88A44j5vmGv
2017-06-12 16:30:57 +08:00
Jim Chen
19937ab159 Bug 1369107 - 4. Remove GeckoAppShell.ContextGetter; r=snorp
Remove ContextGetter and all implementations now that it's no longer
being used.

MozReview-Commit-ID: G5jWFsQPfWw
2017-06-02 16:13:42 -04:00
James Willcox
ff0480f091 Bug 1367287 - Reference count GeckoSurfaceTexture r=jchen
MozReview-Commit-ID: 1JJVzCmANyH
2017-06-02 10:14:20 -05:00
James Cheng
f07251a01d Bug 1350250 - Add a GeckoHlsResourceWrapper java glue. r=jolin,jya
MozReview-Commit-ID: KMAqkJSk2tT
2017-05-17 17:05:42 +08:00
Kilik Kuo
f51d682e5a Bug 1350253 - Provide GeckoHlsDemuxerWrapper & corresponding generated JNI files as the glue for HLSDemuxer and GeckoHlsPlayer. r=jolin,jya
MozReview-Commit-ID: 62cnGQsmdNS
2017-05-25 20:48:03 +08:00
Kilik Kuo
a0c9a13b3c Bug 1350241 -Part1: Provide data structure of {Audio,Video}Info and demuxed sample for the use of HLS on Fennec. r=jolin,jya
MozReview-Commit-ID: 11triLS84Gq
2017-05-25 12:46:06 +08:00
Jim Chen
338365274d Bug 1365127 - Move history accessors from GeckoAppShell to GlobalHistory; r=droeh
Move checkUriVisited, markUriVisited, and setUriTitle from
GeckoApp/GeckoAppShell to GlobalHistory. Make them static and directly
accessible from native code, so that we can remove those methods from
GeckoInterface.

MozReview-Commit-ID: JrmlfeKibaW
2017-05-18 18:09:16 -04:00
Jim Chen
ae86dd6998 Bug 1365126 - Move shortcut creation to static methods in GeckoApplication; r=droeh
Move shortcut creation code in GeckoApp to GeckoApplication, and make
the methods static so that we can call them without a GeckoInterface
instance. This lets us remove GeckoInterface.createShortcut.

MozReview-Commit-ID: AUnQGI02Bk
2017-05-18 18:09:05 -04:00
Jim Chen
f91a210834 Bug 1365122 - Move launchOrBringToFront from GeckoAppShell to GeckoApp; r=droeh
Move GeckoAppShell.launchOrBringToFront to GeckoApp, so that we can use
GeckoActivityMonitor to check whether BrowserApp is the current
foreground Activity. This lets us remove GeckoInterface.isForegrounded.

MozReview-Commit-ID: CgjnaNK8OGW
2017-05-18 18:09:04 -04:00
Jim Chen
35ee70ae9b Bug 1363567 - 2. Move onFullScreenPluginHidden to GeckoApp; r=rbarker
Move the native call onFullScreenPluginHidden from GeckoAppShell to
GeckoApp itself.

MozReview-Commit-ID: APhGRBTNl0X
2017-05-15 23:11:18 -04:00
Jim Chen
ebfed1e849 Bug 1363567 - 1. Remove addPluginView/removePluginView methods; r=rbarker
Remove the addPluginView and removePluginView methods from
GeckoInterface. Instead, move the JNI calls directly to GeckoApp itself.
GeckoApp then uses GeckoActivityMonitor to find the current activity,
instead of using GeckoAppShell.getGeckoInterface().

MozReview-Commit-ID: 7ym8kuElADV
2017-05-15 23:11:17 -04:00
James Willcox
74a9996f37 Bug 1322650 - Update JNI bindings r=jchen
MozReview-Commit-ID: EjRjyY8BQxw
2017-05-15 09:37:54 -05:00
Iris Hsiao
3cea13a680 Backed out 11 changesets (bug 1322650) for media test failures on android. a=backout
Backed out changeset 31bd912fba54 (bug 1322650)
Backed out changeset 4d486c7469eb (bug 1322650)
Backed out changeset 4cf8f4d5064c (bug 1322650)
Backed out changeset 3cb108f7492f (bug 1322650)
Backed out changeset bd53533c108e (bug 1322650)
Backed out changeset 3522917d8f10 (bug 1322650)
Backed out changeset 2c2c1e33eccc (bug 1322650)
Backed out changeset 2f19977cd6ab (bug 1322650)
Backed out changeset 4519296a323e (bug 1322650)
Backed out changeset e56e5e1c8786 (bug 1322650)
Backed out changeset 96fe52231b57 (bug 1322650)
2017-05-12 10:21:14 +08:00
James Willcox
0954db9e0f Bug 1322650 - Update JNI bindings r=jchen
MozReview-Commit-ID: EjRjyY8BQxw
2017-05-11 15:42:44 -05:00
Jim Chen
74d756e470 Bug 1362195 - 5. Remove GeckoInterface.setFullScreen; r=me
Remove GeckoInterface.setFullScreen now that it's no longer used. r=me
for trivial patch.
2017-05-11 16:40:18 -04:00
Jim Chen
445a84a4fb Bug 1362191 - 3. Remove GeckoAppShell.scheduleRestart; r=snorp
GeckoAppShell.scheduleRestart was called from XPCOM toolkit when we
needed to restart after the Gecko thread exits. But because we made the
"Gecko:Exited" event contain a "restart" flag, we can handle that
entirely in Java now, so we don't need to call
GeckoAppShell.scheduleRestart anymore.
2017-05-11 16:39:30 -04:00
Jim Chen
5c1284e917 Bug 1362191 - 1. Add "restart" flag for "Gecko:Exited" event; r=snorp
In the GeckoBundle data for the "Gecko:Exited" event, indicate whether
we should restart or not through the "restart" flag.
2017-05-11 16:39:29 -04:00
Sebastian Hengst
5733b34069 Backed out changeset 9d3843274c67 (bug 1322650) 2017-05-05 18:53:36 +02:00
James Willcox
ed54b464d9 Bug 1322650 - Update JNI bindings r=jchen
MozReview-Commit-ID: EjRjyY8BQxw
2017-05-05 08:56:38 -05:00
Randall Barker
93dfbb7837 Bug 1359618 - Prevent LayerView from accessing the compositor until UiCompositorControllerChild is open r=jchen
MozReview-Commit-ID: 3SmdJx0QXW8
2017-04-28 08:37:41 -07:00
Randall Barker
c955f482b1 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
Eugen Sawin
9335cfede3 Bug 1351169 - [1.2] Update GeckoView's state after finishing window reattachment. r=jchen 2017-04-13 18:08:15 +02:00
John Lin
0bad43efbc Bug 1349883 - part 3: resolve decode promise according to buffer status. r=jya
MozReview-Commit-ID: JwOOi56t30Y
2017-04-07 17:07:02 +08:00
James Willcox
f2f68af5d6 Bug 1344347 - Move Android out-of-process decoder service into GeckoView r=jolin
MozReview-Commit-ID: QTnp95uhQV
2017-04-06 14:32:58 -05:00
Eugen Sawin
7b3158de0f Bug 1346542 - [1.2] Move state holder to GeckoView::Window and set ready state when reattaching to window. r=jchen 2017-03-31 13:12:21 +02:00
Kan-Ru Chen
2eb57bf5a2 Bug 1194751 - Part 2. Remove unused nsIScreen::LockMinimumBrightness and related methods. r=snorp
It's not used anywhere in gecko or addons. Remove it will make
removing PScreenManager easier.

MozReview-Commit-ID: K3BHnktO7wU
2017-03-09 19:16:29 +08:00
Makoto Kato
07de4ba969 Bug 1350169 - Part 1. Remove Android backend for Alarm API. r=snorp
After landing bug 1300884 and B2G is dead, Web Alarm API is removed.  So we should remove Android backend for Alarm API. This implementation was for B2GDroid.

MozReview-Commit-ID: ItmjOQrVSgs
2017-03-24 10:35:38 +09:00
Jim Chen
163cde5903 Bug 1344892 - Let native calls dispatch to XPCOM event queue; r=snorp
Bug 1344892 - 1. Add option to dispatch to priority queue; r=snorp

For the regular "gecko" option, change to dispatching to the XPCOM event
queue, and add a new "gecko_priority" option that dispatches calls to
the widget event queue. GeckoThread.waitOnGecko is changed to wait on
both the widget queue and the XPCOM queue. nsAppShell::SyncRunEvent is
changed to avoid a possible deadlock condition involving locking
sAppShellLock twice.

Bug 1344892 - 2. Update dispatchTo = "gecko" options; r=snorp

Update some existing dispatchTo = "gecko" options to "gecko_priority",
which typically involve UI events or JNI management calls like
disposeNative. As a rule, disposeNative is dispatched to the queue with
the least priority among the queues that other native members of the
same class dispatch to (i.e. "gecko_priority" if all other native
members dispatch to "gecko_priority", or "gecko" if any native members
dispatch to "gecko").

Bug 1344892 - 3. Update auto-generated bindings; r=me
2017-03-16 23:30:54 -04:00
Iris Hsiao
87d8f82bc0 Backed out changeset 4f5a93b89b2b (bug 1344892) for Mochitest rc4 failures in Android 2017-03-15 17:37:39 +08:00
Jim Chen
22f9885110 Bug 1344892 - Let native calls dispatch to XPCOM event queue; r=snorp
Bug 1344892 - 1. Add option to dispatch to priority queue; r=snorp

For the regular "gecko" option, change to dispatching to the XPCOM event
queue, and add a new "gecko_priority" option that dispatches calls to
the widget event queue.

Bug 1344892 - 2. Update dispatchTo = "gecko" options; r=snorp

Update some existing dispatchTo = "gecko" options to "gecko_priority",
which typically involve UI events or JNI management calls like
disposeNative.

Bug 1344892 - 3. Update auto-generated bindings; r=me
2017-03-14 17:47:16 -04:00
Eugen Sawin
cbc3508438 Bug 1343613 - [1.7] Refactor native call queuing out of GeckoThread. r=jchen 2017-03-09 00:29:30 +01:00
Andrea Marchesini
25207d9b03 Bug 1299500 - Get rid of DeviceStorage API - part 10 - DeviceStorage, r=ehsan, r=billm 2017-03-08 20:15:45 +01:00
Jim Chen
0911a44f43 Bug 1343075 - Use GeckoEditableSupport from PuppetWidget; r=masayuki r=rbarker r=snorp r=esawin
Bug 1343075 - 1a. Add TextEventDispatcherListener::GetIMEUpdatePreference; r=masayuki

Add a GetIMEUpdatePreference method to TextEventDispatcherListener to
optionally control which IME notifications are received by NotifyIME.
This patch also makes nsBaseWidget forward its GetIMEUpdatePreference
call to the widget's native TextEventDispatcherListener.

Bug 1343075 - 1b. Implement GetIMEUpdatePreference for all TextEventDispatcherListener; r=masayuki

This patch implements GetIMEUpdatePreference for all
TextEventDispatcherListener implementations, by moving previous
implementations of nsIWidget::GetIMEUpdatePreference.

Bug 1343075 - 2. Allow setting a PuppetWidget's native TextEventDispatcherListener; r=masayuki

In PuppetWidget, add getter and setter for the widget's native
TextEventDispatcherListener. This allows overriding of PuppetWidget's
default IME handling. For example, on Android, the PuppetWidget's native
TextEventDispatcherListener will communicate directly with Java IME code
in the main process.

Bug 1343075 - 3. Add AIDL interface for main process; r=rbarker

Add AIDL definition and implementation for an interface for the main
process that child processes can access.

Bug 1343075 - 4. Set Gecko thread JNIEnv for child process; r=snorp

Add a JNIEnv* parameter to XRE_SetAndroidChildFds, which is used to set
the Gecko thread JNIEnv for child processes. XRE_SetAndroidChildFds is
the only Android-specific entry point for child processes, so I think
it's the most logical place to initialize JNI.

Bug 1343075 - 5. Support multiple remote GeckoEditableChild; r=esawin

Support remote GeckoEditableChild instances that are created in the
content processes and connect to the parent process GeckoEditableParent
through binders.

Support having multiple GeckoEditableChild instances in GeckoEditable by
keeping track of which child is currently focused, and only allow
calls to/from the focused child by using access tokens.

Bug 1343075 - 6. Add method to get GeckoEditableParent instance; r=esawin

Add IProcessManager.getEditableParent, which a content process can call
to get the GeckoEditableParent instance that corresponds to a given
content process tab, from the main process.

Bug 1343075 - 7. Support GeckoEditableSupport in content processes; r=esawin

Support creating and running GeckoEditableSupport attached to a
PuppetWidget in content processes.

Because we don't know PuppetWidget's lifetime as well as nsWindow's,
when attached to PuppetWidget, we need to attach/detach our native
object on focus/blur, respectively.

Bug 1343075 - 8. Connect GeckoEditableSupport on PuppetWidget creation; r=esawin

Listen to the "tab-child-created" notification and attach our content
process GeckoEditableSupport to the new PuppetWidget.

Bug 1343075 - 9. Update auto-generated bindings; r=me
2017-03-07 22:34:39 -05:00