Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74c261c8 authored by Vadim Tryshev's avatar Vadim Tryshev
Browse files

Prerequisites for TAPL

Adding things that will be used by TAPL.

1. Adding Ctrl+W to open widgets
2. Marking a UI element with shortcuts_and_widgets
id. Example of usage: we want to be sure we are in all apps.
A somewhat paranoid way to check this is to check that
apps_view is on, and workspace and overview_panel are off.
However, workspace is always in the hierarchy. We use
shortcuts_and_widgets instead.

Bug: 110103162
Test: Manual
Change-Id: I2a851e16c477f7ee895b459530bc5a1ff19e32f8
parent b0e4126a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -149,4 +149,5 @@
    <integer name="config_recentsMaxThumbnailCacheSize">6</integer>
    <integer name="config_recentsMaxIconCacheSize">12</integer>

    <item name="workspace_page_container" type="id" />
</resources>
+8 −0
Original line number Diff line number Diff line
@@ -2328,6 +2328,8 @@ public class Launcher extends BaseDraggingActivity implements LauncherExterns,
        if (isInState(NORMAL)) {
            shortcutInfos.add(new KeyboardShortcutInfo(getString(R.string.all_apps_button_label),
                    KeyEvent.KEYCODE_A, KeyEvent.META_CTRL_ON));
            shortcutInfos.add(new KeyboardShortcutInfo(getString(R.string.widget_button_text),
                    KeyEvent.KEYCODE_W, KeyEvent.META_CTRL_ON));
        }
        final View currentFocus = getCurrentFocus();
        if (currentFocus != null) {
@@ -2376,6 +2378,12 @@ public class Launcher extends BaseDraggingActivity implements LauncherExterns,
                        return true;
                    }
                    break;
                case KeyEvent.KEYCODE_W:
                    if (isInState(NORMAL)) {
                        OptionsPopupView.openWidgets(this);
                        return true;
                    }
                    break;
            }
        }
        return super.onKeyShortcut(keyCode, event);
+1 −0
Original line number Diff line number Diff line
@@ -547,6 +547,7 @@ public class Workspace extends PagedView<WorkspacePageIndicator>
        // created CellLayout.
        CellLayout newScreen = (CellLayout) LayoutInflater.from(getContext()).inflate(
                        R.layout.workspace_screen, this, false /* attachToRoot */);
        newScreen.getShortcutsAndWidgets().setId(R.id.workspace_page_container);
        int paddingLeftRight = mLauncher.getDeviceProfile().cellLayoutPaddingLeftRightPx;
        int paddingBottom = mLauncher.getDeviceProfile().cellLayoutBottomPaddingPx;
        newScreen.setPadding(paddingLeftRight, 0, paddingLeftRight, paddingBottom);
+4 −1
Original line number Diff line number Diff line
@@ -153,7 +153,10 @@ public class OptionsPopupView extends ArrowPopup
    }

    public static boolean onWidgetsClicked(View view) {
        Launcher launcher = Launcher.getLauncher(view.getContext());
        return openWidgets(Launcher.getLauncher(view.getContext()));
    }

    public static boolean openWidgets(Launcher launcher) {
        if (launcher.getPackageManager().isSafeMode()) {
            Toast.makeText(launcher, R.string.safemode_widget_error, Toast.LENGTH_SHORT).show();
            return false;