This should guarantee that any reader view page will also be successfully saved offline.
MozReview-Commit-ID: 4J8cY6hYeyU
--HG--
extra : rebase_source : 689a2db7a7d81dbe89e5e58c170afe473563b2f6
Note: some delegates might live in other packages, e.g. our HelperUI
related promotions (HomeScreenPromotion, ReaderViewBookmarkPromotion)
live in org.mozilla.gecko.promotions.
BookmarkStateChangeDelegate previously lived in promotions, however
it isn't really a promotion (we're just showing snackbars, and showing
one helper UI to explain offline reader view bookmarks _after_ such
a bookmark has been created), hence it seems a better fit for delegates.
MozReview-Commit-ID: 6fQD3FWzqnm
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/promotion/BookmarkStateChangeDelegate.java => mobile/android/base/java/org/mozilla/gecko/delegates/BookmarkStateChangeDelegate.java
rename : mobile/android/base/java/org/mozilla/gecko/BrowserAppDelegate.java => mobile/android/base/java/org/mozilla/gecko/delegates/BrowserAppDelegate.java
rename : mobile/android/base/java/org/mozilla/gecko/ScreenshotDelegate.java => mobile/android/base/java/org/mozilla/gecko/delegates/ScreenshotDelegate.java
extra : rebase_source : 1c0286e6074233bdd2e32fd7309e7eddf01cfb13
extra : histedit_source : 1ade7d494a373895629e0fa7cf786510524f08d0
This simplifies some old code. We get rid of a whitelist of services, and rely on the face that accessibility and explore by touch is enabled to enter our internal accessibility mode.
The whitelist methode held 2 assumptions that are not true anymore:
1. There are some non-accessibility accessibility service apps in the wild that read notifications.
In later Android versions this has been made into a non-a11y use case with NotificationListenerService. So the cases of non-a11y accessibility services has shrunk.
2. Not all screen readers (Gingerbread TalkBack, for example) supported explore by touch. Today, we
exclusively support accessibility services that use explore by touch, and we should not activate our
accessibility mode in any other case.
MozReview-Commit-ID: LMeCedoIGbb
--HG--
extra : rebase_source : 69dd7ab6868fd09b0b6529efacd215157305b1c9
This overwrites a commit I did at the beginning, but fixing the version control
would have been a waste of time.
MozReview-Commit-ID: Ry9WRpTf8s
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/telemetry/core/TelemetryCorePingBuilder.java => mobile/android/base/java/org/mozilla/gecko/telemetry/pingbuilders/TelemetryCorePingBuilder.java
rename : mobile/android/base/java/org/mozilla/gecko/telemetry/TelemetryPingBuilder.java => mobile/android/base/java/org/mozilla/gecko/telemetry/pingbuilders/TelemetryPingBuilder.java
rename : mobile/android/tests/background/junit4/src/org/mozilla/gecko/telemetry/TestTelemetryPingBuilder.java => mobile/android/tests/background/junit4/src/org/mozilla/gecko/telemetry/pingbuilders/TestTelemetryPingBuilder.java
extra : rebase_source : 55ff9e25b8ba49ba29a3111b92b77a16a4ffc788
I would have folded this but I screwed up but the version control is getting
messy.
MozReview-Commit-ID: 3LaYkrao4dD
--HG--
extra : rebase_source : 2fe2f6ced974b6fe55ecaed0c34caef58ed8c11a
Ideally, we'd just not run the service but skimming, I see no clean way to do
that with the existing code.
MozReview-Commit-ID: HRU1PAmYoil
--HG--
extra : rebase_source : 63074ae8dcd2613ff90d3f431fe2e58f51364e03
I would have done this sooner but it's a version control nightmare.
I made the change because it's harder to grep for logs when the logtag doesn't
include "Telemetry".
MozReview-Commit-ID: GD8Cb8D5CRy
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/telemetry/stores/JSONFilePingStore.java => mobile/android/base/java/org/mozilla/gecko/telemetry/stores/TelemetryJSONFilePingStore.java
rename : mobile/android/tests/background/junit4/src/org/mozilla/gecko/telemetry/stores/TestJSONFilePingStore.java => mobile/android/tests/background/junit4/src/org/mozilla/gecko/telemetry/stores/TestTelemetryJSONFilePingStore.java
extra : rebase_source : 754912d199c84ab166b58a3ddd7c4f0e8d80bde3
There is less to store on disk and it's probably more correct.
MozReview-Commit-ID: KAJAE1M7Fzv
--HG--
extra : rebase_source : ef226ea7b7d0ce03e216eb640dff30245551cc55
Note: this is the first commit expected to compile.
MozReview-Commit-ID: Fc8uRkJAXgB
--HG--
extra : rebase_source : c34096f6123fa898b3b3553b2914122f4ff92143
Thoughts:
* An alternative design put this code in a CorePingUtil but I decided these
methods are tied closely to the TelemetryCorePingBuilder.
* Adding these methods makes it less clear what the class is about (without
filtering on public methods that is).
I'm not sure what the best trade-off is.
Note: this is not yet expected to compile.
MozReview-Commit-ID: FQYFP3ioewN
--HG--
extra : rebase_source : 660c66cb5bb38928b9e532e1861ff7c8c3169187
Note: for version control and review simplicity, this does not yet compile.
MozReview-Commit-ID: EvccGtseOKT
--HG--
extra : rebase_source : 9572d2df3a306ca4b51b1af464a21161db66ba78
I'm thinking it's better to have constants with the classes they're most
closely associated with rather than one giant constants file because it becomes
hard to find anything in a large constants file.
MozReview-Commit-ID: D3SCkW3vbRM
--HG--
extra : rebase_source : 37611c82f84ba011c763554c6793bef63c093faa
Since the history restore code now apparently supports restoring subframes, too, we should let the mobile session store capture frameset navigation as well, so we can preserve the full browsing history.
MozReview-Commit-ID: 5SM8eMTfgIH
--HG--
extra : transplant_source : IO%1Bz%CA_%14%D0D%F9Q%FBA%E5S7%85%90%AE%C0