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

Commit bfd17051 authored by Jim Miller's avatar Jim Miller Committed by Android Git Automerger
Browse files

am 271add4e: am 899e6c73: Merge "Fix bug where SearchPanel wasn\'t launching...

am 271add4e: am 899e6c73: Merge "Fix bug where SearchPanel wasn\'t launching assist intent when keyguard is gone." into jb-mr1-lockscreen-dev

* commit '271add4e':
  Fix bug where SearchPanel wasn't launching assist intent when keyguard is gone.
parents 1470297c 271add4e
Loading
Loading
Loading
Loading
+36 −4
Original line number Diff line number Diff line
@@ -81,13 +81,45 @@ public class SearchPanelView extends FrameLayout implements

        // Close Recent Apps if needed
        mBar.animateCollapsePanels(CommandQueue.FLAG_EXCLUDE_SEARCH_PANEL);
        boolean isKeyguardShowing = false;
        try {
            isKeyguardShowing = mWm.isKeyguardLocked();
        } catch (RemoteException e) {

        }

        if (isKeyguardShowing) {
            // Have keyguard show the bouncer and launch the activity if the user succeeds.
            try {
                mWm.showAssistant();
            } catch (RemoteException e) {
                // too bad, so sad...
            }
            onAnimationStarted();
        } else {
            // Otherwise, keyguard isn't showing so launch it from here.
            Intent intent = ((SearchManager) mContext.getSystemService(Context.SEARCH_SERVICE))
                    .getAssistIntent(mContext, UserHandle.USER_CURRENT);
            if (intent == null) return;

            try {
                ActivityManagerNative.getDefault().dismissKeyguardOnNextActivity();
            } catch (RemoteException e) {
                // too bad, so sad...
            }

            try {
                ActivityOptions opts = ActivityOptions.makeCustomAnimation(mContext,
                        R.anim.search_launch_enter, R.anim.search_launch_exit,
                        getHandler(), this);
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                mContext.startActivityAsUser(intent, opts.toBundle(),
                        new UserHandle(UserHandle.USER_CURRENT));
            } catch (ActivityNotFoundException e) {
                Slog.w(TAG, "Activity not found for " + intent.getAction());
                onAnimationStarted();
            }
        }
    }

    class GlowPadTriggerListener implements GlowPadView.OnTriggerListener {