diff options
| author | 2025-03-20 11:53:55 -0700 | |
|---|---|---|
| committer | 2025-03-20 11:53:55 -0700 | |
| commit | 4f3bd0d66a8f3589d7c41f31310c88da8a9fcffa (patch) | |
| tree | 773c8831a46276aea9ae50c4a893d46a3c44ca22 | |
| parent | 5f61646a47e67390133cd622d31f37f6af1e020c (diff) | |
| parent | 02a19b14f879e96232db37f881f367eabfac0fe3 (diff) | |
Merge "Fix caption visibility for car window decoration" into main
| -rw-r--r-- | libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CarWindowDecoration.java | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CarWindowDecoration.java b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CarWindowDecoration.java index f6acca95916f..dc1b94e80ed7 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CarWindowDecoration.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/CarWindowDecoration.java @@ -89,9 +89,6 @@ public class CarWindowDecoration extends WindowDecoration<WindowDecorLinearLayou updateRelayoutParams(mRelayoutParams, taskInfo, isCaptionVisible); relayout(mRelayoutParams, startT, finishT, wct, mRootView, mResult); - if (DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue()) { - setCaptionVisibility(isCaptionVisible); - } // After this line, mTaskInfo is up-to-date and should be used instead of taskInfo mBgExecutor.execute(() -> mTaskOrganizer.applyTransaction(wct)); @@ -100,19 +97,23 @@ public class CarWindowDecoration extends WindowDecoration<WindowDecorLinearLayou // Nothing is set up in this case including the decoration surface. return; } + if (mRootView != mResult.mRootView) { mRootView = mResult.mRootView; setupRootView(mResult.mRootView, mClickListener); } - } - private void setCaptionVisibility(boolean visible) { - if (mRootView == null) { - return; + if (DesktopModeFlags.ENABLE_DESKTOP_APP_HANDLE_ANIMATION.isTrue()) { + setCaptionVisibility(mRootView, mRelayoutParams.mIsCaptionVisible); } + } + + private void setCaptionVisibility(@NonNull View rootView, boolean visible) { final int v = visible ? View.VISIBLE : View.GONE; - final View captionView = mRootView.findViewById(getCaptionViewId()); - captionView.setVisibility(v); + final View captionView = rootView.findViewById(getCaptionViewId()); + if (captionView != null) { + captionView.setVisibility(v); + } } @Override |