It's not obvious how to listen to individual errors in most cases, so
we just link to the reports for now. Progress!
MozReview-Commit-ID: 8nGRJdpzZnO
--HG--
extra : rebase_source : e81c9b29cb03c5ba73e793512525b5c9c68ab655
extra : amend_source : ce1e2368d43d37cab8fe41cd7a978342ad3e2ea6
Provide Fennec's implementation of GeckoAppShell.NotificationListener in
NotificationClient. A lot of the code was removed in an earlier patch
from GeckoAppShell, so combined with this patch, we're essentially
moving code from GeckoAppShell to NotificationClient.
Use string names instead of integer IDs to identify notifications. The
integer IDs came from the hashes of the string names, so they are not
guaranteed to be unique. Because the names from Gecko are a combination
of the site origin and notification tag, there can be unintentional
collisions, or worse, a site can intentionally make its notification
collide with and replace another site's notification.
GeckoService and the notification package have some interdependencies,
so if we want to move the notification package, we have to move
GeckoService also. With that said, it's good to move GeckoService in any
case, because it's a Fennec component just like GeckoApp.
--HG--
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/GeckoService.java => mobile/android/base/java/org/mozilla/gecko/GeckoService.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/AppNotificationClient.java => mobile/android/base/java/org/mozilla/gecko/notifications/AppNotificationClient.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/NotificationClient.java => mobile/android/base/java/org/mozilla/gecko/notifications/NotificationClient.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/NotificationHandler.java => mobile/android/base/java/org/mozilla/gecko/notifications/NotificationHandler.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/NotificationHelper.java => mobile/android/base/java/org/mozilla/gecko/notifications/NotificationHelper.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/NotificationReceiver.java => mobile/android/base/java/org/mozilla/gecko/notifications/NotificationReceiver.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/NotificationService.java => mobile/android/base/java/org/mozilla/gecko/notifications/NotificationService.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/notifications/ServiceNotificationClient.java => mobile/android/base/java/org/mozilla/gecko/notifications/ServiceNotificationClient.java
Instead of using NotificationClient directly from GeckoAppShell, add a
NotificationListener interface, which NotificationClient would
implement. This isolates NotificationClient (and the notification
package) from GeckoAppShell and lets us move the notification package to
Fennec. It also makes a cleaner interface for GeckoView consumers to
implement notification support.
General cleanup patch: make JNI methods in GeckoAppShell private if
possible, because they're not meant to be used in Java from outside of
GeckoAppShell.
We decided to remove it because:
* Modern video controls include an exit fullscreen button
* After bug 1031519, you have to swipe down from the top of the screen to
display the soft back button so the copy does not make sense.
Note that the `MozShowFullScreenWarning` event was removed previously in the
platform in [1] so we remove the listener attachment here without replacing it.
[1]: https://hg.mozilla.org/integration/fx-team/rev/a6a5f79e630d
MozReview-Commit-ID: HwyyUkWkUUH
--HG--
extra : rebase_source : 99b81c1f71aca357c3a9ea34e63fc7d20bed994f
This is only there to silence the linter.
MozReview-Commit-ID: 8zEDsrbjyeo
--HG--
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/UnusedResourcesUtil.java => mobile/android/base/java/org/mozilla/gecko/util/UnusedResourcesUtil.java
extra : rebase_source : be9a886cc2d28a4336690255279f9cf50e9ed047
extra : histedit_source : 43c4512d56f5a01f04ecada6a493107b6ac9581f
Remove following domains from ua-update.json.in:
auctions.yahoo.co.jp
news.yahoo.co.jp
shopping.yahoo.co.jp
travel.yahoo.co.jp
sports.yahoo.co.jp
mixi.jp
Update bug number inline
ANRReporter is a telemetry tool that belongs in Fennec code.
GeckoJavaSampler is a developer tool that belongs in Fennec code.
SwipeDismissListViewTouchListener is only used in FormAssistPopup, which
is no longer referenced in geckoview code.
--HG--
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/ANRReporter.java => mobile/android/base/java/org/mozilla/gecko/ANRReporter.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/GeckoJavaSampler.java => mobile/android/base/java/org/mozilla/gecko/GeckoJavaSampler.java
rename : mobile/android/geckoview/src/main/java/org/mozilla/gecko/widget/SwipeDismissListViewTouchListener.java => mobile/android/base/java/org/mozilla/gecko/widget/SwipeDismissListViewTouchListener.java
Separate compiled JARs into GECKOVIEW_JARS and FENNEC_JARS, and run
AnnotationProcessor separately on each set. The GeckoView bindings are
put into widget/android/GeneratedJNI* (same as before), while the
Fennec-specific bindings are put into widget/android/fennec/FennecJNI*.
Compile geckoview sources into a separate gecko-view.jar file, apart
from gecko-browser.jar. This lets us separate JNI binding generation,
among other things.