ReaderModeUtils.getUrlFromAboutReader() will return null if this is not a 100% valid reader mode
URL. However ReaderMoteUtils.stripAboutReaderUrl() will return the original URL if the reader mode
URL could not be "decoded".
MozReview-Commit-ID: J07Gkyq07JK
--HG--
extra : rebase_source : 3703d8f7f98fe5cb29d3e74012659996d9149dcb
Using a set is bad since it will silently ignore multiple files with the same timestamp, resulting in crashes when
the set has fewer items than we expected. A list is probably the best choice in this instance.
(Note: I am not familiar enough with this code to know whether or not this is an expected situation, i.e.
whether or not timestamps should be unique.)
MozReview-Commit-ID: 5TRNLgTsSHO
--HG--
extra : rebase_source : eff575ed7ef36555d20ffa568cb80bef1a1dfadc
Gecko could potentially send notifications via ShowAlertNotification (or any related method). It's possible
for this to happen very soon after launching Gecko, so we need to set the GeckoAppShell's notificationClient
before launching Gecko to ensure that it can handle notifications (this also avoids the associated crash - we
could try to do null-checks instead, but that would result in dropped notifications, which doesn't seem
useful).
MozReview-Commit-ID: 5MG8bBnt12M
--HG--
extra : rebase_source : 0723bbf987cf7f1f8dd5a612fb3e5cc81c6e1f78
Because of the smart folders and section headers, the adapter position needs to be appropriately adjusted when trying to access the corresponding cursor item.
MozReview-Commit-ID: n3FvcsYJ5T
--HG--
extra : rebase_source : 366dadb7abde5283a93fb1d62cff3ff4e3bba28b
Moving all vertically listed items into one RecylerView avoids the layouting issues encountered
with nested RVs. This results in a slightly more complex adapter, however overall this still
seems simpler than having to hack around the RecyclerView height measurements. (This also
makes the layout itself simpler, which hopefully means better performance too.)
MozReview-Commit-ID: HFS9q5JNYpY
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/home/activitystream/MainRecyclerAdapter.java => mobile/android/base/java/org/mozilla/gecko/home/activitystream/StreamRecyclerAdapter.java
extra : rebase_source : a8914cade238e031f171718914dbd67e8f81fba1
Implement a new OnFrameAvailableListener callback system for
AndroidSurfaceTexture using native methods. Each AndroidSurfaceTexture
creates its own SurfaceTextureListener object and uses it to forward
OnFrameAvailableListener callbacks to the corresponding nsIRunnable.
Put presentation surface native methods in PMPM Instead of in
GeckoAppShell, and also make these methods work with multiple GeckoViews
by having them take a GeckoView parameter if necessary. This also lets
us eliminate the static nsWindow reference in nsWindow.cpp.
Asynchronous mode was not available until API level 21. To make it transparent to the caller, introduce a wrapper interface that mimics the new API.
MozReview-Commit-ID: 7idq2lQo35I
--HG--
extra : rebase_source : 304c4267547096450712c05ab65163955fcc1f4f