@@ -1870,16 +1870,7 @@ else if (foundI > oldI) {
18701870
18711871 // First, make sure the client has the current visibility
18721872 // state.
1873- if (wallpaper .mWallpaperVisible != visible ) {
1874- wallpaper .mWallpaperVisible = visible ;
1875- try {
1876- if (DEBUG_VISIBILITY || DEBUG_WALLPAPER ) Slog .v (TAG ,
1877- "Setting visibility of wallpaper " + wallpaper
1878- + ": " + visible );
1879- wallpaper .mClient .dispatchAppVisibility (visible );
1880- } catch (RemoteException e ) {
1881- }
1882- }
1873+ dispatchWallpaperVisibility (wallpaper , visible );
18831874
18841875 wallpaper .mWinAnimator .mAnimLayer = wallpaper .mLayer + mWallpaperAnimLayerAdjustment ;
18851876 if (DEBUG_LAYERS || DEBUG_WALLPAPER ) Slog .v (TAG , "adjustWallpaper win "
@@ -2089,6 +2080,24 @@ void updateWallpaperOffsetLocked(WindowState changingTarget, boolean sync) {
20892080 }
20902081 }
20912082
2083+ /**
2084+ * Check wallpaper for visiblity change and notify window if so.
2085+ * @param wallpaper The wallpaper to test and notify.
2086+ * @param visible Current visibility.
2087+ */
2088+ void dispatchWallpaperVisibility (final WindowState wallpaper , final boolean visible ) {
2089+ if (wallpaper .mWallpaperVisible != visible ) {
2090+ wallpaper .mWallpaperVisible = visible ;
2091+ try {
2092+ if (DEBUG_VISIBILITY || DEBUG_WALLPAPER ) Slog .v (TAG ,
2093+ "Updating visibility of wallpaper " + wallpaper
2094+ + ": " + visible + " Callers=" + Debug .getCallers (2 ));
2095+ wallpaper .mClient .dispatchAppVisibility (visible );
2096+ } catch (RemoteException e ) {
2097+ }
2098+ }
2099+ }
2100+
20922101 void updateWallpaperVisibilityLocked () {
20932102 final boolean visible = isWallpaperVisible (mWallpaperTarget );
20942103 final int dw = mAppDisplayWidth ;
@@ -2113,16 +2122,7 @@ void updateWallpaperVisibilityLocked() {
21132122 updateWallpaperOffsetLocked (wallpaper , dw , dh , false );
21142123 }
21152124
2116- if (wallpaper .mWallpaperVisible != visible ) {
2117- wallpaper .mWallpaperVisible = visible ;
2118- try {
2119- if (DEBUG_VISIBILITY || DEBUG_WALLPAPER ) Slog .v (TAG ,
2120- "Updating visibility of wallpaper " + wallpaper
2121- + ": " + visible );
2122- wallpaper .mClient .dispatchAppVisibility (visible );
2123- } catch (RemoteException e ) {
2124- }
2125- }
2125+ dispatchWallpaperVisibility (wallpaper , visible );
21262126 }
21272127 }
21282128 }
0 commit comments