Fix full screen issue when switching between RTT and voice call.
Incall and answer screen is using transparent status and navigation bar, while RTT screen is using customized color. Switch between them require correct setting of system UI.
Bug: 67596257
Test: manually test to make RTT call and voice call, then switch between them.
PiperOrigin-RevId: 188956868
Change-Id: I3c17ff453be943f0b2ad28fe5cae434453fbe326
diff --git a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
index ccec8a4..2c6ee0d 100644
--- a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
+++ b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
@@ -22,9 +22,6 @@
android:layout_height="match_parent">
<RelativeLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipChildren="false"
diff --git a/java/com/android/incallui/rtt/impl/RttChatFragment.java b/java/com/android/incallui/rtt/impl/RttChatFragment.java
index e35ff4d..3b943c4 100644
--- a/java/com/android/incallui/rtt/impl/RttChatFragment.java
+++ b/java/com/android/incallui/rtt/impl/RttChatFragment.java
@@ -152,6 +152,11 @@
public View onCreateView(
LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.frag_rtt_chat, container, false);
+ view.setSystemUiVisibility(
+ View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
+ | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
+ | View.SYSTEM_UI_FLAG_LAYOUT_STABLE
+ | View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR);
editText = view.findViewById(R.id.rtt_chat_input);
editText.setOnEditorActionListener(this);
editText.addTextChangedListener(this);
@@ -278,11 +283,14 @@
Window window = getActivity().getWindow();
window.setStatusBarColor(activity.getColor(R.color.rtt_status_bar_color));
window.setNavigationBarColor(activity.getColor(R.color.rtt_navigation_bar_color));
- window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR);
}
@Override
public void onRttScreenStop() {
+ Activity activity = getActivity();
+ Window window = getActivity().getWindow();
+ window.setStatusBarColor(activity.getColor(android.R.color.transparent));
+ window.setNavigationBarColor(activity.getColor(android.R.color.transparent));
rttCallScreenDelegate.onRttCallScreenUiUnready();
}
diff --git a/java/com/android/incallui/rtt/impl/res/layout/frag_rtt_chat.xml b/java/com/android/incallui/rtt/impl/res/layout/frag_rtt_chat.xml
index 3194b75..6940569 100644
--- a/java/com/android/incallui/rtt/impl/res/layout/frag_rtt_chat.xml
+++ b/java/com/android/incallui/rtt/impl/res/layout/frag_rtt_chat.xml
@@ -16,7 +16,8 @@
-->
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
- android:layout_height="match_parent">
+ android:layout_height="match_parent"
+ android:fitsSystemWindows="true">
<include layout="@layout/rtt_banner"/>