Merge change Id8c9cb2f into eclair
* changes: More fix #2163209: alarm clock rings but is hidden behind lock screen
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user