Bug 1256615 - Partially restore removed <activity-alias>. r=sebastian
authorNick Alexander <nalexander@mozilla.com>
Mon, 21 Mar 2016 13:42:08 -0700
changeset 289887 ecf81bf18bdf7939aa0e70e698c40dbcb9dcb7b4
parent 289886 69b843ebaa274a4c6228af22e0ddeec8085e170b
child 289888 1b70e9fe9db0c1829208283251e8edc308eee5f3
push id74027
push userkwierso@gmail.com
push dateTue, 22 Mar 2016 23:57:42 +0000
treeherdermozilla-inbound@eb528d042c85 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1256615, 1242213
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1256615 - Partially restore removed <activity-alias>. r=sebastian Bug 1242213 removed the entire <activity-alias>. Sadly, users who added the Firefox icon to their dock (for example, Samsung's Touchwiz dock) will see the icon disappear when they upgrade, because the intent filter disappears. (That is, the icon is connected to .App and action MAIN, not to the package and action MAIN.) This patch restores the .App <activity-alias> for action MAIN. It doesn't add the launcher and other categories, which could lead to multiple launcher icons. New users that add the Firefox icon to their dock will use .BrowserApp, but sadly we'll need to maintain this alias essentially forever to support existing dock icons. MozReview-Commit-ID: 1o9XS5MEs1s
--- a/mobile/android/base/AndroidManifest.xml.in
+++ b/mobile/android/base/AndroidManifest.xml.in
@@ -136,16 +136,28 @@
             <!-- For debugging -->
                 <action android:name="org.mozilla.gecko.DEBUG" />
                 <category android:name="android.intent.category.DEFAULT" />
+        <!-- Bug 1256615: We published a .App alias and we need to maintain it
+             forever.  If we don't, dock icons (e.g., Samsung Touchwiz icons)
+             will disappear because the intent filter details change. -->
+        <activity-alias android:name=".App"
+                        android:label="@MOZ_APP_DISPLAYNAME@"
+                        android:targetActivity="@MOZ_ANDROID_BROWSER_INTENT_CLASS@">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.DEFAULT" />
+            </intent-filter>
+        </activity-alias>
         <service android:name="org.mozilla.gecko.GeckoService" />
         <activity android:name="org.mozilla.gecko.trackingprotection.TrackingProtectionPrompt"
                   android:theme="@style/OverlayActivity" />
         <!-- The main reason for the Tab Queue build flag is to not mess with the VIEW intent filter
              before the rest of the plumbing is in place -->