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

123 Коммитов

Автор SHA1 Сообщение Дата
Jim Chen e16afc583e 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
John Lin c62cf1bde1 Bug 1374556 - use Android-like signal handlers instead of SIG_DFL. r=glandium
For some reason the remote decoder process will crash on some x86/Android M devices when SIGSEGV is handled by SIG_DFL. To avoid this issue and continue suppressing crash dialog, capture the signals with Android like handlers and strip debuggerd related code.

MozReview-Commit-ID: 3diOGc3OInD

--HG--
extra : rebase_source : 42017c10d13c30880f80c81b0d7487bb0d05fd44
2017-07-10 14:44:50 +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
Dylan Roeh df9b1b5528 Bug 1305815 - Fix false positives for x86 devices. r=snorp 2017-03-13 10:25:12 -05:00
Jim Chen 53a1107cd1 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
Dylan Roeh a21a7f8f67 Bug 1305815 - Issue EOL warning if non-NEON-compatible device detected. r=glandium 2017-03-01 13:26:12 -06: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
Mike Hommey 11a4734e0d Bug 1332523 - Remove nsXPCOMGlue.h. r=bsmedberg
--HG--
extra : rebase_source : 7a0b2441f768cbdef1a5b51139f8ecd4a6fde0c1
2017-01-13 07:56:05 +09:00
Mike Hommey bebd095c4c Bug 1306327 - Use the new XRE Bootstrap API in Firefox for Android. r=bsmedberg
Here, we also modify APKOpen to use the XPCOM glue loading process
instead of custom symbol resolution, so that the Bootstrap API can be
used in a more straightforward manner.

--HG--
extra : rebase_source : 55037ba30ca66a090b73923a3ce8df5b054bf47a
2016-12-17 06:48:01 +09:00
Benjamin Smedberg d37894f60d Bug 1321593 part A - Refactor nsXREAppData: 1) make nsXREAppData strongly own its members 2) rename it to mozilla::XREAppData 3) separate out the static compiled data into StaticXREAppData 4) Remove XRE_CreateAppData and XRE_FreeAppData 5) remove the struct size and related size-checking code which was only ever useful for cross-version compatibility, r=glandium
MozReview-Commit-ID: CQv1UrSaw4D

--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : source : eae2252a519f3ac5850f5110a6a1be45891ea5e9
2016-12-02 09:07:24 -05:00
Sebastian Hengst 27bd22acd7 Backed out changeset eae2252a519f (bug 1321593) for leaks, e.g. in clipboard and jetpack tests. r=backout
--HG--
rename : xpcom/build/XREAppData.h => xpcom/build/nsXREAppData.h
rename : xpcom/glue/XREAppData.cpp => xpcom/glue/AppData.cpp
2016-12-12 22:10:17 +01:00
Benjamin Smedberg 835aaa0cad Bug 1306327 part A - NS_EXPORT macro in APKOpen.h can conflict with nscore.h: rename it to APKOPEN_EXPORT to avoid build issues on a CLOSED TREE, r=glandium
MozReview-Commit-ID: 5Y08hwtc7s2

--HG--
extra : source : b1a3d2e42a4e38ca49f7316bef5ac5de9340f940
extra : amend_source : 7858b1690ccf42619c88dd3c9a2984dedebd4e65
2016-11-29 14:27:30 -05:00
Benjamin Smedberg 4df1abc2c0 Bug 1321593 part A - Refactor nsXREAppData: 1) make nsXREAppData strongly own its members 2) rename it to mozilla::XREAppData 3) separate out the static compiled data into StaticXREAppData 4) Remove XRE_CreateAppData and XRE_FreeAppData 5) remove the struct size and related size-checking code which was only ever useful for cross-version compatibility, r=glandium
MozReview-Commit-ID: CQv1UrSaw4D

--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : rebase_source : c909ee206d31b110c6a38cc466ef24a465ee2ae5
extra : histedit_source : e86c3900412229f99ade29c5b8e3943d943ec718
2016-12-02 09:07:24 -05:00
Randall Barker de17af98b5 Bug 1314466 - part 5, Add service process manager r=snorp 2016-11-14 16:45:23 -08:00
Eugen Sawin 73f2949cad Bug 1309708 - [1.2] Delete reported library mapping on close. r=glandium 2016-11-10 15:47:59 +01:00
Eugen Sawin 06c47357d2 Bug 1298090 - [1.6] Extract and cache native libraries on APK update. r=glandium,snorp 2016-10-10 22:59:27 +02:00
Sebastian Hengst cdcc9e20da Bug 1304829 - rename RELEASE_BUILD to RELEASE_OR_BETA: main part. r=ted,Mossop
MozReview-Commit-ID: 1lCt0xTMV5O
2016-10-08 11:14:49 +02:00
Eugen Sawin 06a7828be2 Bug 1301665 - [1.1] Statically initialize lib mapping array. r=glandium 2016-09-13 14:11:30 +02:00
Jim Chen 984436a532 Bug 1297807 - Remove old JNI stubs; r=snorp 2016-08-26 12:26:46 -04:00
Jim Chen 75ce4d9aaa Bug 1292323 - Move Java UI thread registration to mozglue; r=snorp
We need to register the Java UI thread in native code very early in the
startup process, before libxul registers its JNI entry points. So it
makes sense to register the Java UI thread in mozglue.
2016-08-12 23:15:52 -04:00
Bob Owen c43bf02cda Bug 1035125 Part 8: Pass sandboxing pointers through XRE_InitChildProcess instead of linking to more functions in xul. r=aklotz,glandium
MozReview-Commit-ID: 5AiktOArpfU

--HG--
extra : rebase_source : 1ba3be949e2bfeb3b67687ab05d43342852ab764
2016-05-15 16:35:22 +01:00
Nathan Froyd 1e312fab5b Bug 1220189 - use UniquePtr<T[]> instead of delete[] calls in mozglue/android/; r=darchons
We can do better than use raw new[]/delete[] calls all over this file:
we can factor out the code for APK library loading into a separate
function, and use UniquePtr there.  This refactoring will also
centralize the code for determining the path to a library within the
APK.
2015-10-30 11:16:24 -04:00
Jim Chen aacb32b312 Bug 1207642 - Work around Dalvik bug by realigning stack on JNI entry. r=snorp
Use the force_align_arg_pointer attribute to force realigning stack at JNI entry points.
2015-10-21 08:27:00 -04:00
Jim Chen ee3de3a3c3 Bug 1192082 - Iniialize/deinitialize JNI in nsAppShell; r=snorp
First we need to set the Gecko thread JNIEnv* in nsAndroidStartup, but
after that we can initialize and deinitialize the rest of JNI, including
AndroidBridge, in GeckoAppShell. This makes nsAppShell control the
AndroidBridge lifetime. Over time, parts of the AndroidBridge
functionality will be migrated to nsAppShell.
2015-08-13 00:53:40 -04:00
Gabriele Svelto 17358b10b8 Bug 858928 - Switch XRE_StartupTimelineRecord() from PRTime to TimeStamp. r=froydnj
--HG--
extra : rebase_source : b39bf19f68a124cefaf5ceac2adccb20e05bf279
2015-07-06 18:01:09 +02:00
James Willcox 47ca1c6198 Bug 1127464 - Assert when we unexpectedly unload libraries on Android r=glandium 2015-03-09 08:33:22 -05:00
James Willcox bdedcc0b2a Bug 1108709 - Don't chdir on Android r=glandium 2015-02-02 17:49:44 -06:00
Eugen Sawin de460cbc39 Bug 1101583 - Remove unused variables. r=glandium 2014-11-19 17:17:28 +01:00
Chris Pearce f3af16c459 Bug 1088488 - Add GMPLoader interface to encapsulate loading GMPs, pass that to XRE_InitChildProcess. r=jesup,r=bsmedberg,r=glandium 2014-11-14 21:26:24 +13:00
Nick Alexander 430b02189b Bug 976699 - Place architecture specific assets in assets/$(ANDROID_CPU_ARCH). r=glandium 2014-11-03 20:04:20 -08:00
Jim Chen ead154121a Bug 1066760 - Redirect mozalloc_abort through Java exception handling; r=snorp 2014-09-24 14:12:54 -04:00
Jim Chen 8117b170c6 Bug 1056941 - Remove extract libs parameter; r=glandium 2014-08-26 15:08:00 -04:00
Bill McCloskey d52ab46335 Bug 1045847 - Initialize sProcessType really, really early (r=khuey) 2014-08-08 17:52:12 -07:00
Birunthan Mohanathas a159fb8617 Bug 784739 - Switch from NULL to nullptr in mozglue/; r=ehsan 2013-11-11 14:14:45 -05:00
Nick Alexander 0242a75718 Bug 873569 - Part 2: Move Gecko .so libraries into assets/ directory of Android APK. r=glandium 2013-06-12 13:24:30 -07:00
Mike Hommey a7befac654 Bug 876110 - Manually set fennec process ptraceable on non release builds. r=kats 2013-05-28 09:44:57 +02:00
Mike Hommey 32562dee67 Bug 875821 - Fix library loading time message and add process usage on top of thread usage. r=kats 2013-05-28 09:44:39 +02:00
Gabriele Svelto a8c937e2a1 Bug 793735 - Make XRE_StartupTimelineRecord() generate TimeStamps and modify its callers to use the appropriate timers, r=nfroyd 2013-03-26 11:31:20 +01:00
Mike Hommey aaed6c5d7f Bug 859763 - Remove more remains of the old linker. r=blassey 2013-04-10 09:02:32 +02:00
Nathan Froyd 0f42f822c1 Backout 61e1edc0b6bf (bug 793735), 77014412cd4a (bug 793735), and 8c5aa269c3cd (bug 793735) for botching FHR data 2013-04-09 16:25:42 -04:00
Mike Hommey f2ce301848 Bug 855824 - Get rid of the lib.id file on Android. r=blassey 2013-04-09 14:05:07 +02:00
Gabriele Svelto fc85f865dd Bug 793735 - Make XRE_StartupTimelineRecord() generate TimeStamps and modify its callers to use the appropriate timers, r=froydnj 2013-03-26 11:31:20 +01:00
Mike Hommey 347a7c2d09 Bug 852950 - Kill libxpcom. r=bsmedberg
Also refactored the xpcom standalone glue to reside in a single file and
removed its use of realpath().

--HG--
rename : xpcom/stub/dependentlibs.py => toolkit/library/dependentlibs.py
rename : xpcom/stub/nsXPComStub.cpp => xpcom/build/FrozenFunctions.cpp
2013-03-20 14:56:41 +01:00
Mike Hommey 8cf8cff7ce Backout changeset f12e5c87adf6 (bug 852950) because it breaks running from dist/bin 2013-03-20 23:59:45 +01:00
Mike Hommey fa1c295631 Bug 852950 - Kill libxpcom. r=bsmedberg
--HG--
rename : xpcom/stub/dependentlibs.py => toolkit/library/dependentlibs.py
rename : xpcom/stub/nsXPComStub.cpp => xpcom/build/FrozenFunctions.cpp
2013-03-20 14:56:41 +01:00
Mike Hommey 34ea330cd0 Bug 648407 - Support loading the folded library on Android. r=blassey 2013-03-17 08:02:35 +01:00
Mike Hommey ce277304e9 Bug 842681 - Refactor the linker Zip code and allow to use an existing memory buffer as a Zip file. r=mwu 2013-03-08 09:24:46 +01:00
Kartikaya Gupta 00928b8a5e Bug 794982 - Autogenerate libxul JNI stubs and fail build if they change. r=glandium 2013-02-07 09:37:06 -05:00
Kartikaya Gupta 4486494833 Bug 794982 - Extract non-libxul native JNI functions from GeckoAppShell. r=glandium, cpeterson 2013-02-07 09:37:06 -05:00
Mike Hommey 4256e397e3 Bug 825901 - Remove the old linker code. r=blassey 2013-01-03 08:43:26 +01:00