Not using Settings app as a source of shortcuts

Bug: 126587956
Change-Id: I13ef4298a8133ff5773eef8658a04094d5d154da
(cherry picked from commit 476a511ca5)
This commit is contained in:
vadimt 2019-04-05 18:35:29 -07:00 committed by Vadim Tryshev
parent 2a0bb40a76
commit b96898a025
4 changed files with 66 additions and 35 deletions

View File

@ -18,39 +18,39 @@
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.launcher3.tests">
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>
<application android:debuggable="true">
<uses-library android:name="android.test.runner" />
<uses-library android:name="android.test.runner"/>
<receiver
android:name="com.android.launcher3.testcomponent.AppWidgetNoConfig"
android:label="No Config">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/appwidget_no_config" />
android:resource="@xml/appwidget_no_config"/>
</receiver>
<receiver
android:name="com.android.launcher3.testcomponent.AppWdigetHidden"
android:label="Hidden widget">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/appwidget_hidden" />
android:resource="@xml/appwidget_hidden"/>
</receiver>
<receiver
android:name="com.android.launcher3.testcomponent.AppWidgetWithConfig"
android:label="With Config">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
<action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/appwidget_with_config" />
android:resource="@xml/appwidget_with_config"/>
</receiver>
<activity
@ -61,8 +61,8 @@
</activity>
<activity
android:name="com.android.launcher3.testcomponent.RequestPinItemActivity"
android:label="Test Pin Item"
android:icon="@drawable/test_drawable_pin_item">
android:icon="@drawable/test_drawable_pin_item"
android:label="Test Pin Item">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
@ -73,28 +73,28 @@
<provider
android:name="com.android.launcher3.testcomponent.TestCommandReceiver"
android:authorities="${packageName}.commands"
android:exported="true" />
android:exported="true"/>
<activity
android:name="com.android.launcher3.testcomponent.TestLauncherActivity"
android:launchMode="singleTask"
android:clearTaskOnLaunch="true"
android:label="Test launcher"
android:stateNotNeeded="true"
android:theme="@android:style/Theme.DeviceDefault.Light"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="unspecified"
android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize"
android:resizeableActivity="true"
android:taskAffinity=""
android:enabled="false"
android:label="Test launcher"
android:launchMode="singleTask"
android:process=":testLauncherProcess"
android:enabled="false">
android:resizeableActivity="true"
android:screenOrientation="unspecified"
android:stateNotNeeded="true"
android:taskAffinity=""
android:theme="@android:style/Theme.DeviceDefault.Light"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.HOME"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.MONKEY"/>
<category android:name="android.intent.category.LAUNCHER_APP" />
<category android:name="android.intent.category.LAUNCHER_APP"/>
</intent-filter>
</activity>
<activity
@ -104,6 +104,12 @@
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
<action android:name="com.android.launcher3.intent.action.test_shortcut"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
<meta-data android:name="android.app.shortcuts"
android:resource="@xml/shortcuts"/>
</activity>
</application>
</manifest>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="shortcut1" translatable="false">Shortcut 1</string>
<string name="shortcut2" translatable="false">Shortcut 2</string>
<string name="shortcut3" translatable="false">Shortcut 3</string>
</resources>

View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<shortcuts xmlns:android="http://schemas.android.com/apk/res/android" >
<shortcut
android:shortcutId="shortcut1"
android:shortcutShortLabel="@string/shortcut1">
<intent android:action="com.android.launcher3.intent.action.test_shortcut"/>
</shortcut>
<shortcut
android:shortcutId="shortcut2"
android:shortcutShortLabel="@string/shortcut2">
<intent android:action="com.android.launcher3.intent.action.test_shortcut"/>
</shortcut>
<shortcut
android:shortcutId="shortcut3"
android:shortcutShortLabel="@string/shortcut3">
<intent android:action="com.android.launcher3.intent.action.test_shortcut"/>
</shortcut>
</shortcuts>

View File

@ -25,7 +25,6 @@ import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import android.content.Intent;
import android.content.pm.LauncherActivityInfo;
import android.util.Log;
import androidx.test.filters.LargeTest;
@ -62,6 +61,7 @@ import java.io.IOException;
@RunWith(AndroidJUnit4.class)
public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
private static final String TAG = "TaplTestsAosp";
private static final String APP_NAME = "LauncherTestApp";
private static int sScreenshotCount = 0;
@ -307,12 +307,11 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
@PortraitLandscape
public void testLaunchMenuItem() throws Exception {
if (!TestHelpers.isInLauncherProcess()) return;
final LauncherActivityInfo testApp = getSettingsApp();
final AppIconMenu menu = mLauncher.
getWorkspace().
switchToAllApps().
getAppIcon(testApp.getLabel().toString()).
getAppIcon(APP_NAME).
openMenu();
executeOnLauncher(
@ -322,7 +321,7 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
final AppIconMenuItem menuItem = menu.getMenuItem(1);
final String itemName = menuItem.getText();
menuItem.launch(testApp.getComponentName().getPackageName(), itemName);
menuItem.launch(getAppPackageName(), APP_NAME);
}
@Test
@ -330,16 +329,15 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
public void testDragAppIcon() throws Throwable {
try {
TestProtocol.sDebugTracing = true;
final String appName = "LauncherTestApp";
// 1. Open all apps and wait for load complete.
// 2. Drag icon to homescreen.
// 3. Verify that the icon works on homescreen.
mLauncher.getWorkspace().
switchToAllApps().
getAppIcon(appName).
getAppIcon(APP_NAME).
dragToWorkspace().
getWorkspaceAppIcon(appName).
launch(getInstrumentation().getContext().getPackageName());
getWorkspaceAppIcon(APP_NAME).
launch(getAppPackageName(), APP_NAME);
} finally {
TestProtocol.sDebugTracing = false;
}
@ -349,7 +347,6 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
@PortraitLandscape
public void testDragShortcut() throws Throwable {
if (!TestHelpers.isInLauncherProcess()) return;
LauncherActivityInfo testApp = getSettingsApp();
// 1. Open all apps and wait for load complete.
// 2. Find the app and long press it to show shortcuts.
@ -357,7 +354,7 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
final AppIconMenuItem menuItem = mLauncher.
getWorkspace().
switchToAllApps().
getAppIcon(testApp.getLabel().toString()).
getAppIcon(APP_NAME).
openMenu().
getMenuItem(0);
final String shortcutName = menuItem.getText();
@ -368,6 +365,10 @@ public class TaplTestsLauncher3 extends AbstractLauncherUiTest {
menuItem.
dragToWorkspace().
getWorkspaceAppIcon(shortcutName).
launch(testApp.getComponentName().getPackageName(), shortcutName);
launch(getAppPackageName(), APP_NAME);
}
private static String getAppPackageName() {
return getInstrumentation().getContext().getPackageName();
}
}