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

Commit 9214eff5 authored by Winson Chung's avatar Winson Chung
Browse files

Fix regression in using visibility flags.

parent d42a6cfe
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -20,9 +20,14 @@ import android.view.Display;
import android.view.View;

public interface RecentsComponent {
    public interface Callbacks {
        public void onVisibilityChanged(boolean visible);
    }

    void showRecents(boolean triggeredFromAltTab, View statusBarView);
    void hideRecents(boolean triggeredFromAltTab);
    void toggleRecents(Display display, int layoutDirection, View statusBarView);
    void preloadRecents();
    void cancelPreloadingRecents();
    void setCallback(Callbacks cb);
}
+7 −0
Original line number Diff line number Diff line
@@ -273,6 +273,13 @@ public class Recents extends SystemUI implements RecentsComponent {
        }
    }

    @Override
    public void setCallback(Callbacks cb) {
        if (mUseAlternateRecents) {
            mAlternateRecents.setRecentsComponentCallback(cb);
        }
    }

    /**
     * Send broadcast only if BOOT_COMPLETED
     */
+14 −0
Original line number Diff line number Diff line
@@ -38,6 +38,7 @@ import android.os.UserHandle;
import android.view.View;
import android.view.WindowManager;
import com.android.systemui.R;
import com.android.systemui.RecentsComponent;

import java.lang.ref.WeakReference;
import java.util.Iterator;
@@ -143,6 +144,7 @@ public class AlternateRecentsComponent implements ActivityOptions.OnAnimationSta
    final static String sRecentsService = "com.android.systemui.recents.RecentsService";

    static Bitmap sLastScreenshot;
    static RecentsComponent.Callbacks sRecentsComponentCallbacks;

    Context mContext;
    SystemServicesProxy mSystemServicesProxy;
@@ -556,6 +558,18 @@ public class AlternateRecentsComponent implements ActivityOptions.OnAnimationSta
        }
    }

    /** Sets the RecentsComponent callbacks. */
    public void setRecentsComponentCallback(RecentsComponent.Callbacks cb) {
        sRecentsComponentCallbacks = cb;
    }

    /** Notifies the callbacks that the visibility of Recents has changed. */
    public static void notifyVisibilityChanged(boolean visible) {
        if (sRecentsComponentCallbacks != null) {
            sRecentsComponentCallbacks.onVisibilityChanged(visible);
        }
    }

    /**** OnAnimationStartedListener Implementation ****/

    @Override
+9 −0
Original line number Diff line number Diff line
@@ -140,6 +140,9 @@ public class RecentsActivity extends Activity implements RecentsView.RecentsView
    BroadcastReceiver mScreenOffReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            // Mark recents as no longer visible
            AlternateRecentsComponent.notifyVisibilityChanged(false);
            // Finish without an animations
            finish();
        }
    };
@@ -148,6 +151,9 @@ public class RecentsActivity extends Activity implements RecentsView.RecentsView
    Runnable mFinishRunnable = new Runnable() {
        @Override
        public void run() {
            // Mark recents as no longer visible
            AlternateRecentsComponent.notifyVisibilityChanged(false);
            // Finish with an animations
            finish();
            overridePendingTransition(R.anim.recents_to_launcher_enter,
                    R.anim.recents_to_launcher_exit);
@@ -589,6 +595,9 @@ public class RecentsActivity extends Activity implements RecentsView.RecentsView
                    .withLayer()
                    .start();
        }

        // Mark recents as no longer visible
        AlternateRecentsComponent.notifyVisibilityChanged(false);
    }

    @Override
+8 −1
Original line number Diff line number Diff line
@@ -89,7 +89,8 @@ import java.util.Locale;
import static com.android.keyguard.KeyguardHostView.OnDismissAction;

public abstract class BaseStatusBar extends SystemUI implements
        CommandQueue.Callbacks, ActivatableNotificationView.OnActivatedListener {
        CommandQueue.Callbacks, ActivatableNotificationView.OnActivatedListener,
        RecentsComponent.Callbacks {
    public static final String TAG = "StatusBar";
    public static final boolean DEBUG = false;
    public static final boolean MULTIUSER_DEBUG = false;
@@ -385,6 +386,7 @@ public abstract class BaseStatusBar extends SystemUI implements
                ServiceManager.getService(Context.STATUS_BAR_SERVICE));

        mRecents = getComponent(RecentsComponent.class);
        mRecents.setCallback(this);

        mLocale = mContext.getResources().getConfiguration().locale;
        mLayoutDirection = TextUtils.getLayoutDirectionFromLocale(mLocale);
@@ -764,6 +766,11 @@ public abstract class BaseStatusBar extends SystemUI implements
        }
    }

    @Override
    public void onVisibilityChanged(boolean visible) {
        // Do nothing
    }

    public abstract void resetHeadsUpDecayTimer();

    public abstract void scheduleHeadsUpOpen();
Loading