Since the build files moved to m/a/app/, it wasn't being used anymore.
--HG--
rename : mobile/android/base/lint.xml => mobile/android/app/base/lint.xml
extra : commitid : InQMFW7Fyh
extra : rebase_source : 7e17dd6c96d3b995743bd9606da52638640f756e
This patch changes onAttachedToWindow in GeckoView, so that if we have
states that have been restored, we use those states for initialization
instead of creating new states (e.g. opening a new nsWindow). Because
the GLController instance is associated with the nsWindow instance, we
need to keep the GLController instance as part of our saved states. This
patch also adds a reattach method to GeckoView.Window, because
GeckoEditable needs to be notified when its target View changes.
This patch adds an implementation of onSaveInstanceState and
onRestoreInstanceState to GeckoView, so that when GeckoView is destroyed
and later recreated, we would properly save and restore necessary states
and JNI associations. The patch also fixes onDetachedFromWindow, so that
we keep the nsWindow if we saved states, and close the nsWindow if we
did not save states.
As GeckoViews get destroyed and recreated, we want to carry its states
across. In particular, we want to keep a reference to our GLController
instance, and keep the association with the native nsWindow instance.
This patch makes GLContextProviderEGL create EGL surfaces through
nsWindow/nsIWidget on Android. nsWindow then calls GLController in Java
to actually create the surface.
GLController instances are associated with a particular nsWindow, rather
than a particular View. Therefore, we need to let GeckoView manage
GLController instances, as part of GeckoView's handling of saving and
restoring states.
One nsWindow will have one corresponding GLController, and using native
GLController methods instead of GeckoEvents lets us control the
compositor for each nsWindow separately.
GeckoViewSupport better reflects the purpose of the class and will match
the GLControllerSupport class that another patch is adding. This patch
also changes the way GeckoViewSupport is constructed in order to be more
encapsulating.
Right now, code that queues native calls through GeckoThread can
encounter a race condition, after the GeckoThread state changes but
before we flush the existing queued calls. In that case, the new call
will be made before existing queued calls are made, and the order of
calls is disrupted. This patch moves flushing existing calls to before
the state changes, to avoid this race condition.
Right now LayerView depends on geckoConnected being called by GeckoApp
or GeckoView during its initialization. However, we can get rid of it
and let LayerView handle the task itself. As part of this change, screen
depth overriding is moved to native code in nsAppShell.
This patch adds auto-generated bindings for LayerRenderer.Frame, and
uses the new bindings in nsWindow, in place of the old manual bindings
in AndroidJavaWrappers.
We already take care of this in AdjustConstants where we return
StubAdjustHelper if MOZ_INSTALL_TRACKING is not defined.
However, the one downside to this is that we touch SharedPreferences on the
main thread in onCreate even if Adjust is disabled. However, our release and
beta users already have this problem (since Adjust is enabled) so who cares if
our Nightly and Aurora users also have this problem.
--HG--
extra : commitid : 23AwrEm4oaZ
extra : rebase_source : d1b1aa228878d18ef01091b0c5b693972237e3c8