Commit Graph

427 Commits

Author SHA1 Message Date
Jim Chen
0ea27022be Bug 1287946 - Update existing code to use mozilla::java; r=me 2016-07-21 00:42:26 -04:00
Jim Chen
d5a351d0e4 Bug 1286663 - Remove THUMBNAIL event from GeckoEvent; r=snorp
Remove the now-obsolete THUMBNAIL event from GeckoEvent, as well as its
implementations in nsAppShell and AndroidBridge.
2016-07-21 00:41:13 -04:00
Jim Chen
e58d307fbe Bug 1286663 - Add request thumbnail native method to ThumbnailHelper; r=snorp
Add and use a request thumbnail native method call in ThumbnailHelper,
instead of using the THUMBNAIL event in GeckoEvent.
2016-07-21 00:41:13 -04:00
Jim Chen
3bd23d057b Bug 1286663 - Update existing code using ByteBuffer; r=me 2016-07-21 00:41:13 -04:00
Makoto Kato
7afb6f496e Bug 1287015 - Part 2. Remove unused AndroidBridge()::LockWindow/UnlockWindow. r=snorp
MozReview-Commit-ID: u5CDwNqt1g
2016-07-15 11:04:04 +09:00
Eugen Sawin
2ea06898be Bug 1278574 - [2.2] Instantiate MediaPrefs on Android during AndroidBridge construction. r=jya 2016-06-23 15:26:11 +02:00
SUN Haitao
b7f76abfcb Bug 1264815 - Add a 'showPersistentAlertNotification' method to GeckoAppShell. r=kcambridge 2016-04-17 21:18:20 +08:00
Nicholas Nethercote
a41e57a9b1 Bug 1276824 (part 1) - Rename gfxContext::ForDrawTarget{,WithTransform}(). r=milan.
The new names Create{,PreservingTransform}OrNull() better communicate that
these functions (a) do object creation, and (b) are fallible.
2016-06-07 09:39:56 +10:00
Alastor Wu
540e60ec11 Bug 1240423 - part4 : update audio playing window checking in AndroidBridge. r=snorp
MozReview-Commit-ID: CJCnyUtSduN
2016-06-01 10:26:14 +08:00
Alastor Wu
b2543fcbfc Bug 1257738 - part2 : modify logic of requesting audio focus in Android.
MozReview-Commit-ID: AG095CIgnA5
2016-06-01 10:21:58 +08:00
Kyle Huey
f3e34e67b3 Bug 1266595: Replace Chromium Task with Runnable. r=froydnj 2016-04-27 17:06:05 -07:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Alastor Wu
efe0f4d1e4 Bug 1249579 - part1 : request audio focus on Fennec. r=snorp.
MozReview-Commit-ID: 45qW0Wjmnad
2016-04-18 18:48:19 +08:00
Milan Sreckovic
dd0830c93c Bug 1259513: Make gfxContext constructor private, use a utility function that can return nullptr. r=bas,lsalzman
MozReview-Commit-ID: rHhLEDZEQt
2016-04-12 15:18:11 -04:00
David Anderson
7b7cd394cc Rename PCompositor to PCompositorBridge. (bug 1258479 part 2, r=mattwoodrow) 2016-03-22 14:08:38 -04:00
Jim Chen
65eb0dbf73 Bug 1246788 - Properly synchronize and manage UI thread tasks; r=rbarker
Add proper synchronization to the UI thread task queue so we don't run
into race conditions. Also use UniquePtr to manage the contained task,
to fix a previous memory leak.
2016-02-10 18:54:55 -05:00
Jim Chen
82870a9c22 Bug 1244875 - Update JNI usages; r=snorp
Update JNI usages to match the changes in JNI templates.
2016-02-09 17:27:28 -05:00
Kyle Huey
e95edb30a9 Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Jim Chen
1f403e6400 Bug 1235475 - Crash at the exception source when an exception is in native code; r=snorp
When we have a Java exception in native code, the Java stack in the
exception will not be very useful because the top frame is the native
entry point. In this case, the native stack is more useful. However,
currently we don't get a good native stack in this situation because we
go through Java when handling the exception, and the native stack we get
will have a lot of unknown frames inside libdvm or libart. This patch
makes us stay in native code when handling an uncaught exception from
native code, so that we get a good native stack.
2015-12-30 18:36:41 -05:00
Jim Chen
e56235cd4f Bug 1233812 - Fix possible race in accessing nsAppShell instance; r=snorp
When getting nsAppShell from another thread, there could be a race with
nsAppShell being destroyed on the main thread. This patch makes the raw
nsAppShell pointer only accessible from the main thread, and use a
static mutex to coordinate accessing nsAppShell from other threads.
2015-12-23 22:03:35 -05:00
Jim Chen
02fea99837 Bug 1232456 - Create EGL surface through widget; r=snorp
This patch makes GLContextProviderEGL create EGL surfaces through
nsWindow/nsIWidget on Android. nsWindow then calls GLController in Java
to actually create the surface.
2015-12-23 22:03:34 -05:00
Jim Chen
97742ebb77 Bug 1227706 - Implement nsWindow::GLControllerSupport; r=snorp
This patch adds native method implementations in GLControllerSupport to
manage compositor creation/pause/resume.
2015-12-23 22:03:34 -05:00
Chenxia Liu
1c3274a9cf Bug 1212611 - Use system notification for website notifications in Android. r=mfinkle 2015-12-03 10:56:04 -05:00
sgiles
51eff860f1 Bug 1174228 - Set up TYPE_APP for navigator.getDeviceStorage for B2GDroid r=dhylands 2015-11-06 05:55:40 +00:00
Nicholas Nethercote
7f19b68d7f Bug 1209812 (part 3) - Rename SurfaceFormat::R5G6B5 as R5G6B5_UINT16. r=Bas. 2015-10-22 23:01:31 -07:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Nathan Froyd
bf7f6dda03 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Reuben Morais
6b197b98a6 Bug 748391 - Implement markMessageRead on the Android backend. r=snorp 2015-10-13 01:08:51 -03:00
Reuben Morais
b653b039b4 Bug 1197010 - Implement Android backend for createMessageCursor/createThreadCursor. r=snorp 2015-10-06 19:40:38 -03:00
Wes Kocher
943b98bde3 Backed out changeset 3f9ca060b8d0 (bug 1197010) for android build failures 2015-10-06 16:18:13 -07:00
Reuben Morais
b663e80bd8 Bug 1197010 - Implement Android backend for createMessageCursor/createThreadCursor. r=snorp 2015-10-06 19:40:38 -03:00
Fabrice Desré
227145901a Bug 1204557 - Stop using base64 for native app icons in the application registry r=jchen 2015-09-24 11:53:05 -07:00
Fabrice Desré
d3135a644a Bug 1203428 - E10S for device storage API r=cyu 2015-09-15 11:01:07 -07:00
Kartikaya Gupta
fadc132229 Bug 1201581 - Hook up the syncFrameMetrics call to sync metrics info from the compositor to Java-land on each composite. r=rbarker 2015-09-11 21:58:16 -04:00
Kartikaya Gupta
54c1024407 Bug 1151102 - Add some diagnostic logging. r=snorp 2015-09-09 23:22:19 -04:00
William Chen
8b4785e7f6 Bug 1131470 - Part 2: Update screen configuration HAL to report orientation angle. r=snorp,mwu 2015-08-18 14:55:15 -07:00
William Chen
ecf84fcf22 Bug 1131470 - Part 1: Rename existing use of ScreenOrientation to ScreenOrientationInternal. r=baku 2015-08-18 14:55:09 -07:00
Kartikaya Gupta
f5ed3a019f Bug 1180295 - Implement seamless snapping to the stable state. r=rbarker 2015-08-18 14:27:20 -04:00
Kartikaya Gupta
3766fb3084 Bug 1180295 - Stop clipping the content while the toolbar is in the process of sliding off. r=rbarker 2015-08-18 14:27:19 -04:00
Kartikaya Gupta
ad9c5fec28 Bug 1180295 - Store the viewport width and height as integers instead of floats in ImmutableViewportMetrics. r=rbarker 2015-08-18 14:27:19 -04:00
Kartikaya Gupta
f8cac5f8c4 Bug 1180295 - Rip out the Fennec code to set the screen render offset. r=rbarker 2015-08-18 14:27:18 -04:00
Jim Chen
adaa3af91b 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
Jim Chen
3f6082f711 Bug 1192082 - De-clutter AndroidBridge init/deinit; r=snorp
Merge all the init code into AndroidBridge constructor and
AndroidBridge::ConstructBridge; merge all the deinit code into
AndroidBridge destructor and AndroidBridge::DeconstructBridge.

In particular, the SetMainThread call is obsolete and removed.
2015-08-13 00:53:39 -04:00
Jim Chen
dfcf5a84c5 Bug 1192077 - Convert AndroidBridge JNIEnv calls; r=esawin 2015-08-13 00:53:39 -04:00
Jim Chen
fc0d866bbd Bug 1192077 - Move AndroidBridge JNIEnv calls to jni/Utils; r=esawin
Calls like GetJNIForThread should now belong in jni/Utils. Moving the
calls also reduce clutter in AndroidBridge.
2015-08-13 00:53:39 -04:00
Jim Chen
3619ab253f Bug 1189995 - Move GeckoAppShell.pumpMessageLoop to GeckoThread; r=esawin
This method is used by Gecko to pump the Android message loop, and it's
also more suited to GeckoThread than GeckoAppShell.
2015-08-13 00:53:39 -04:00
Birunthan Mohanathas
a0f7c73250 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
Jim Chen
2986b3f565 Bug 1187088 - Use UNIFIED_SOURCES in widget/android; r=snorp
Fix some compiling errors in unified mode due to header dependency
issues.
2015-08-04 17:47:28 -04:00
Jim Chen
05fb61c829 Bug 1186467 - Rewrite NativeJSContainer to use new native JNI scheme; r=snorp
This patch makes NativeJSContainer use per-instance native methods.
NativeJSContainer is also updated to use smart JNI reference classes.
2015-08-04 17:47:28 -04:00
Jim Chen
9fba788ad2 Bug 1182641 - Implement new native methods for ANRReporter; r=snorp 2015-07-29 15:11:15 -04:00