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

Commit b134b203 authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change Id8c9cb2f into eclair

* changes:
  More fix #2163209: alarm clock rings but is hidden behind lock screen
parents 281acf42 3d163f07
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -262,6 +262,13 @@ public interface WindowManagerPolicy {
         */
        boolean isVisibleLw();
        
        /**
         * Like {@link #isVisibleLw}, but also counts a window that is currently
         * "hidden" behind the keyguard as visible.  This allows us to apply
         * things like window flags that impact the keyguard.
         */
        boolean isVisibleOrBehindKeyguardLw();
        
        /**
         * Is this window currently visible to the user on-screen?  It is 
         * displayed either if it is visible or it is currently running an 
+15 −0
Original line number Diff line number Diff line
@@ -7573,6 +7573,21 @@ public class WindowManagerService extends IWindowManager.Stub
                    && !mExiting && !mDestroying;
        }

        /**
         * Like {@link #isVisibleLw}, but also counts a window that is currently
         * "hidden" behind the keyguard as visible.  This allows us to apply
         * things like window flags that impact the keyguard.
         * XXX I am starting to think we need to have ANOTHER visibility flag
         * for this "hidden behind keyguard" state rather than overloading
         * mPolicyVisibility.  Ungh.
         */
        public boolean isVisibleOrBehindKeyguardLw() {
            final AppWindowToken atoken = mAppToken;
            return mSurface != null && !mAttachedHidden
                    && (atoken == null ? mPolicyVisibility : !atoken.hiddenRequested)
                    && !mExiting && !mDestroying;
        }

        /**
         * Is this window visible, ignoring its app token?  It is not visible
         * if there is no surface, or we are in the process of running an exit animation