diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-03-05 00:44:31 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-03-05 00:44:31 +0000 |
commit | 0744f4649dd484700fa01510a0e5d43f48b57abc (patch) | |
tree | 4420dd649e6d6f9d02eff3627762eddea910f6ed | |
parent | ebdeb17775c38f74438ecef0145451780b314b6f (diff) | |
parent | df2d4de85bdab985d72aecde5cde24fb0b5445e1 (diff) | |
download | setupdesign-0744f4649dd484700fa01510a0e5d43f48b57abc.tar.gz |
Snap for 11526283 from df2d4de85bdab985d72aecde5cde24fb0b5445e1 to 24Q2-releaseandroid-14.0.0_r51android-14.0.0_r50
Change-Id: Idf6759f6fc265732d8d0a51618a786893739bb9b
43 files changed, 1440 insertions, 0 deletions
diff --git a/lottie_loading_layout/res/layout-sw600dp-v31/sud_glif_fullscreen_loading_template_card.xml b/lottie_loading_layout/res/layout-sw600dp-v31/sud_glif_fullscreen_loading_template_card.xml index 8cd6af2..2aa254d 100644 --- a/lottie_loading_layout/res/layout-sw600dp-v31/sud_glif_fullscreen_loading_template_card.xml +++ b/lottie_loading_layout/res/layout-sw600dp-v31/sud_glif_fullscreen_loading_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_card_two_pane.xml b/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_card_two_pane.xml new file mode 100644 index 0000000..85ea0ff --- /dev/null +++ b/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_card_two_pane.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_fullscreen_loading_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout>
\ No newline at end of file diff --git a/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_content_two_pane.xml b/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_content_two_pane.xml new file mode 100644 index 0000000..9f1bdf6 --- /dev/null +++ b/lottie_loading_layout/res/layout-v34/sud_glif_fullscreen_loading_template_content_two_pane.xml @@ -0,0 +1,106 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true"> + + <ViewStub + android:id="@+id/sud_loading_layout_lottie_stub" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:inflatedId="@+id/sud_layout_lottie_illustration" + android:layout="@layout/sud_loading_fullscreen_lottie_layout" /> + + <LinearLayout + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:focusedByDefault="false" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_loading_content" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <ViewStub + android:id="@+id/sud_loading_layout_illustration_stub" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:inflatedId="@+id/sud_layout_progress_illustration" + android:layout="@layout/sud_loading_illustration_layout" /> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:visibility="gone" /> + + </FrameLayout> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + </LinearLayout> + +</FrameLayout>
\ No newline at end of file diff --git a/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_card_two_pane.xml b/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_card_two_pane.xml new file mode 100644 index 0000000..9b78dff --- /dev/null +++ b/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_card_two_pane.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2021 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_loading_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout>
\ No newline at end of file diff --git a/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_content_two_pane.xml b/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_content_two_pane.xml new file mode 100644 index 0000000..8e2a6d8 --- /dev/null +++ b/lottie_loading_layout/res/layout-v34/sud_glif_loading_template_content_two_pane.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:focusedByDefault="false" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_loading_content" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <ViewStub + android:id="@+id/sud_loading_layout_lottie_stub" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:inflatedId="@+id/sud_layout_lottie_illustration" + android:layout="@layout/sud_loading_lottie_layout" /> + + <ViewStub + android:id="@+id/sud_loading_layout_illustration_stub" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:inflatedId="@+id/sud_layout_progress_illustration" + android:layout="@layout/sud_loading_illustration_layout" /> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:visibility="gone" /> + + </FrameLayout> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/lottie_loading_layout/res/layout/sud_glif_fullscreen_loading_embedded_template_card.xml b/lottie_loading_layout/res/layout/sud_glif_fullscreen_loading_embedded_template_card.xml index b24fda4..56c0f9b 100644 --- a/lottie_loading_layout/res/layout/sud_glif_fullscreen_loading_embedded_template_card.xml +++ b/lottie_loading_layout/res/layout/sud_glif_fullscreen_loading_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/lottie_loading_layout/res/layout/sud_glif_loading_embedded_template_card.xml b/lottie_loading_layout/res/layout/sud_glif_loading_embedded_template_card.xml index 9092e1a..6b26c68 100644 --- a/lottie_loading_layout/res/layout/sud_glif_loading_embedded_template_card.xml +++ b/lottie_loading_layout/res/layout/sud_glif_loading_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/lottie_loading_layout/res/layout/sud_glif_loading_template_card.xml b/lottie_loading_layout/res/layout/sud_glif_loading_template_card.xml index 2db095c..a2f907e 100644 --- a/lottie_loading_layout/res/layout/sud_glif_loading_template_card.xml +++ b/lottie_loading_layout/res/layout/sud_glif_loading_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/lottie_loading_layout/res/values-v34/layouts.xml b/lottie_loading_layout/res/values-v34/layouts.xml new file mode 100644 index 0000000..5ae5f54 --- /dev/null +++ b/lottie_loading_layout/res/values-v34/layouts.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<resources xmlns:tools="http://schemas.android.com/tools"> + <item name="sud_glif_loading_template_two_pane" type="layout" tools:ignore="UnusedResources">@layout/sud_glif_loading_template_compat</item> + <item name="sud_glif_fullscreen_loading_template_two_pane" type="layout" tools:ignore="UnusedResources">@layout/sud_glif_loading_template_compat</item> +</resources> diff --git a/lottie_loading_layout/res/values-w840dp-v34/layouts.xml b/lottie_loading_layout/res/values-w840dp-v34/layouts.xml new file mode 100644 index 0000000..ff80def --- /dev/null +++ b/lottie_loading_layout/res/values-w840dp-v34/layouts.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<resources xmlns:tools="http://schemas.android.com/tools"> + <item name="sud_glif_loading_template_two_pane" type="layout" tools:ignore="UnusedResources">@layout/sud_glif_loading_template_card_two_pane</item> + <item name="sud_glif_fullscreen_loading_template_two_pane" type="layout" tools:ignore="UnusedResources">@layout/sud_glif_fullscreen_loading_template_card_two_pane</item> +</resources> diff --git a/lottie_loading_layout/src/com/google/android/setupdesign/GlifLoadingLayout.java b/lottie_loading_layout/src/com/google/android/setupdesign/GlifLoadingLayout.java index 8fe2340..004a20b 100644 --- a/lottie_loading_layout/src/com/google/android/setupdesign/GlifLoadingLayout.java +++ b/lottie_loading_layout/src/com/google/android/setupdesign/GlifLoadingLayout.java @@ -59,6 +59,7 @@ import com.google.android.setupcompat.partnerconfig.PartnerConfigHelper; import com.google.android.setupcompat.partnerconfig.ResourceEntry; import com.google.android.setupcompat.template.FooterBarMixin; import com.google.android.setupcompat.util.BuildCompatUtils; +import com.google.android.setupcompat.util.ForceTwoPaneHelper; import com.google.android.setupdesign.lottieloadinglayout.R; import com.google.android.setupdesign.util.LayoutStyler; import com.google.android.setupdesign.util.LottieAnimationHelper; @@ -602,6 +603,8 @@ public class GlifLoadingLayout extends GlifLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(context)) { template = R.layout.sud_glif_fullscreen_loading_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } else { template = R.layout.sud_glif_loading_template; @@ -609,6 +612,8 @@ public class GlifLoadingLayout extends GlifLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(context)) { template = R.layout.sud_glif_loading_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } } diff --git a/main/res/layout-sw600dp-v31/sud_glif_preference_template_card.xml b/main/res/layout-sw600dp-v31/sud_glif_preference_template_card.xml index 68ea99e..4a4374c 100644 --- a/main/res/layout-sw600dp-v31/sud_glif_preference_template_card.xml +++ b/main/res/layout-sw600dp-v31/sud_glif_preference_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout-v34/sud_glif_list_template_card_two_pane.xml b/main/res/layout-v34/sud_glif_list_template_card_two_pane.xml new file mode 100644 index 0000000..9787877 --- /dev/null +++ b/main/res/layout-v34/sud_glif_list_template_card_two_pane.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_list_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_list_template_content_two_pane.xml b/main/res/layout-v34/sud_glif_list_template_content_two_pane.xml new file mode 100644 index 0000000..fd14379 --- /dev/null +++ b/main/res/layout-v34/sud_glif_list_template_content_two_pane.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" + android:filterTouchesWhenObscured="true"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.StickyHeaderListView + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@android:id/list" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:scrollIndicators="?attr/sudScrollIndicators" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_preference_template_card_two_pane.xml b/main/res/layout-v34/sud_glif_preference_template_card_two_pane.xml new file mode 100644 index 0000000..6edd79b --- /dev/null +++ b/main/res/layout-v34/sud_glif_preference_template_card_two_pane.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<com.google.android.setupcompat.view.StatusBarBackgroundLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true"> + + <include layout="@layout/sud_glif_preference_template_content_two_pane" /> + +</com.google.android.setupcompat.view.StatusBarBackgroundLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_preference_template_content_two_pane.xml b/main/res/layout-v34/sud_glif_preference_template_content_two_pane.xml new file mode 100644 index 0000000..a14adc8 --- /dev/null +++ b/main/res/layout-v34/sud_glif_preference_template_content_two_pane.xml @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_recycler_template_card_two_pane.xml b/main/res/layout-v34/sud_glif_recycler_template_card_two_pane.xml new file mode 100644 index 0000000..2bcf82d --- /dev/null +++ b/main/res/layout-v34/sud_glif_recycler_template_card_two_pane.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<com.google.android.setupcompat.view.StatusBarBackgroundLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true"> + + <include layout="@layout/sud_glif_recycler_template_content_two_pane" /> + +</com.google.android.setupcompat.view.StatusBarBackgroundLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_recycler_template_content_two_pane.xml b/main/res/layout-v34/sud_glif_recycler_template_content_two_pane.xml new file mode 100644 index 0000000..ea47dfc --- /dev/null +++ b/main/res/layout-v34/sud_glif_recycler_template_content_two_pane.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.HeaderRecyclerView + android:id="@+id/sud_recycler_view" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:scrollbars="vertical" + android:scrollIndicators="?attr/sudScrollIndicators" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-v34/sud_glif_template_card_two_pane.xml b/main/res/layout-v34/sud_glif_template_card_two_pane.xml new file mode 100644 index 0000000..d90b4ee --- /dev/null +++ b/main/res/layout-v34/sud_glif_template_card_two_pane.xml @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + http://www.apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout> diff --git a/main/res/layout-v34/sud_glif_template_content_two_pane.xml b/main/res/layout-v34/sud_glif_template_content_two_pane.xml new file mode 100644 index 0000000..3aed478 --- /dev/null +++ b/main/res/layout-v34/sud_glif_template_content_two_pane.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators" + android:importantForAccessibility="no"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + <ViewStub + android:id="@+id/sud_layout_illustration_progress_stub" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:inflatedId="@+id/sud_layout_progress_illustration" + android:layout="@layout/sud_progress_illustration_layout" /> + </LinearLayout> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_list_template_card_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_list_template_card_two_pane.xml new file mode 100644 index 0000000..9787877 --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_list_template_card_two_pane.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_list_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_list_template_content_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_list_template_content_two_pane.xml new file mode 100644 index 0000000..a408da2 --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_list_template_content_two_pane.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.StickyHeaderListView + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@android:id/list" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:scrollIndicators="?attr/sudScrollIndicators" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_preference_template_card_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_preference_template_card_two_pane.xml new file mode 100644 index 0000000..6edd79b --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_preference_template_card_two_pane.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<com.google.android.setupcompat.view.StatusBarBackgroundLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true"> + + <include layout="@layout/sud_glif_preference_template_content_two_pane" /> + +</com.google.android.setupcompat.view.StatusBarBackgroundLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_preference_template_content_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_preference_template_content_two_pane.xml new file mode 100644 index 0000000..a14adc8 --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_preference_template_content_two_pane.xml @@ -0,0 +1,79 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_recycler_template_card_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_recycler_template_card_two_pane.xml new file mode 100644 index 0000000..2bcf82d --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_recycler_template_card_two_pane.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<com.google.android.setupcompat.view.StatusBarBackgroundLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true"> + + <include layout="@layout/sud_glif_recycler_template_content_two_pane" /> + +</com.google.android.setupcompat.view.StatusBarBackgroundLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_recycler_template_content_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_recycler_template_content_two_pane.xml new file mode 100644 index 0000000..ea47dfc --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_recycler_template_content_two_pane.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.HeaderRecyclerView + android:id="@+id/sud_recycler_view" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:scrollbars="vertical" + android:scrollIndicators="?attr/sudScrollIndicators" /> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout-w840dp-v34/sud_glif_template_card_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_template_card_two_pane.xml new file mode 100644 index 0000000..d90b4ee --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_template_card_two_pane.xml @@ -0,0 +1,48 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + http://www.apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/suc_layout_status" + style="@style/SudGlifCardBackground" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:fitsSystemWindows="true" + android:gravity="center_horizontal" + android:orientation="vertical"> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + + <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + style="@style/SudGlifCardContainer" + android:layout_width="@dimen/sud_glif_card_width" + android:layout_height="wrap_content" + android:height="@dimen/sud_glif_card_height"> + + <include layout="@layout/sud_glif_template_content_two_pane" /> + + </com.google.android.setupdesign.view.IntrinsicSizeFrameLayout> + + <View + android:layout_width="0dp" + android:layout_height="0dp" + android:layout_weight="1" + android:visibility="invisible" /> + +</LinearLayout> diff --git a/main/res/layout-w840dp-v34/sud_glif_template_content_two_pane.xml b/main/res/layout-w840dp-v34/sud_glif_template_content_two_pane.xml new file mode 100644 index 0000000..d02aaee --- /dev/null +++ b/main/res/layout-w840dp-v34/sud_glif_template_content_two_pane.xml @@ -0,0 +1,102 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- Please keep filterTouchesWhenObscured=true; it's to prevent tapjacking. + See https://developer.android.com/privacy-and-security/risks/tapjacking --> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/sud_layout_template_content" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:filterTouchesWhenObscured="true" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" + android:orientation="horizontal"> + + <LinearLayout + android:id="@+id/sud_landscape_header_area" + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_weight="@dimen/sud_glif_land_header_area_weight" + android:orientation="vertical"> + + <ViewStub + android:id="@+id/sud_layout_sticky_header" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_header_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators"> + + <include layout="@layout/sud_glif_header" /> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + <LinearLayout + android:id="@+id/sud_landscape_content_area" + style="@style/SudLandContentContianerStyle" + android:orientation="vertical"> + + <com.google.android.setupdesign.view.BottomScrollView + android:id="@+id/sud_scroll_view" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:fillViewport="true" + android:scrollIndicators="?attr/sudScrollIndicators" + android:importantForAccessibility="no"> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:orientation="vertical"> + + <FrameLayout + android:id="@+id/sud_layout_content" + android:paddingTop="?attr/sudGlifContentPaddingTop" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + <ViewStub + android:id="@+id/sud_layout_illustration_progress_stub" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:inflatedId="@+id/sud_layout_progress_illustration" + android:layout="@layout/sud_progress_illustration_layout" /> + </LinearLayout> + + </com.google.android.setupdesign.view.BottomScrollView> + + </LinearLayout> + + </LinearLayout> + + <ViewStub + android:id="@+id/suc_layout_footer" + android:layout_width="match_parent" + android:layout_height="wrap_content" /> + +</LinearLayout>
\ No newline at end of file diff --git a/main/res/layout/sud_glif_blank_embedded_template_card.xml b/main/res/layout/sud_glif_blank_embedded_template_card.xml index 89badcd..b8a63d7 100644 --- a/main/res/layout/sud_glif_blank_embedded_template_card.xml +++ b/main/res/layout/sud_glif_blank_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_blank_template_card.xml b/main/res/layout/sud_glif_blank_template_card.xml index eac860d..bb54318 100644 --- a/main/res/layout/sud_glif_blank_template_card.xml +++ b/main/res/layout/sud_glif_blank_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_embedded_template_card.xml b/main/res/layout/sud_glif_embedded_template_card.xml index 381cfcb..0662daa 100644 --- a/main/res/layout/sud_glif_embedded_template_card.xml +++ b/main/res/layout/sud_glif_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_list_embedded_template_card.xml b/main/res/layout/sud_glif_list_embedded_template_card.xml index 45e35b3..29a1d21 100644 --- a/main/res/layout/sud_glif_list_embedded_template_card.xml +++ b/main/res/layout/sud_glif_list_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_list_template_card.xml b/main/res/layout/sud_glif_list_template_card.xml index a1e7a36..4b64ee6 100644 --- a/main/res/layout/sud_glif_list_template_card.xml +++ b/main/res/layout/sud_glif_list_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_recycler_embedded_template_card.xml b/main/res/layout/sud_glif_recycler_embedded_template_card.xml index 316abb2..97eb4e6 100644 --- a/main/res/layout/sud_glif_recycler_embedded_template_card.xml +++ b/main/res/layout/sud_glif_recycler_embedded_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_recycler_template_card.xml b/main/res/layout/sud_glif_recycler_template_card.xml index a76b47e..09f7b20 100644 --- a/main/res/layout/sud_glif_recycler_template_card.xml +++ b/main/res/layout/sud_glif_recycler_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/layout/sud_glif_template_card.xml b/main/res/layout/sud_glif_template_card.xml index 0f2f145..5fbb601 100644 --- a/main/res/layout/sud_glif_template_card.xml +++ b/main/res/layout/sud_glif_template_card.xml @@ -31,6 +31,7 @@ android:visibility="invisible" /> <com.google.android.setupdesign.view.IntrinsicSizeFrameLayout + android:id="@+id/suc_intrinsic_size_layout" style="@style/SudGlifCardContainer" android:layout_width="@dimen/sud_glif_card_width" android:layout_height="wrap_content" diff --git a/main/res/values-v34/layouts.xml b/main/res/values-v34/layouts.xml new file mode 100644 index 0000000..fd9fa12 --- /dev/null +++ b/main/res/values-v34/layouts.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<resources> + + <!-- Layout for supporting force two pane even if it is portrait mode. --> + <item name="sud_glif_preference_template_two_pane" type="layout">@layout/sud_glif_preference_template_compact</item> + +</resources> diff --git a/main/res/values-w840dp-v34/layouts.xml b/main/res/values-w840dp-v34/layouts.xml new file mode 100644 index 0000000..f19e88b --- /dev/null +++ b/main/res/values-w840dp-v34/layouts.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (C) 2024 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<resources> + + <!-- Layout for supporting force two pane even if it is portrait mode. --> + <item name="sud_glif_template_two_pane" type="layout">@layout/sud_glif_template_card_two_pane</item> + <item name="sud_glif_list_template_two_pane" type="layout">@layout/sud_glif_list_template_card_two_pane</item> + <item name="sud_glif_recycler_template_two_pane" type="layout">@layout/sud_glif_recycler_template_card_two_pane</item> + <item name="sud_glif_preference_template_two_pane" type="layout">@layout/sud_glif_preference_template_card_two_pane</item> + +</resources> diff --git a/main/res/values/layouts.xml b/main/res/values/layouts.xml index 56f227d..7d3bd57 100644 --- a/main/res/values/layouts.xml +++ b/main/res/values/layouts.xml @@ -58,4 +58,11 @@ <item name="sud_glif_preference_embedded_template" type="layout">@layout/sud_glif_blank_embedded_template_compact</item> <item name="sud_glif_recycler_template" type="layout">@layout/sud_glif_recycler_template_compact</item> <item name="sud_glif_recycler_embedded_template" type="layout">@layout/sud_glif_recycler_embedded_template_compact</item> + + <!-- The sud_glif_template_two_pane resource is same as sud_glif_template for Phone. --> + <item name="sud_glif_template_two_pane" type="layout">@layout/sud_glif_template_compact</item> + <item name="sud_glif_list_template_two_pane" type="layout">@layout/sud_glif_list_template_compact</item> + <item name="sud_glif_preference_template_two_pane" type="layout">@layout/sud_glif_blank_template_compact</item> + <item name="sud_glif_recycler_template_two_pane" type="layout">@layout/sud_glif_recycler_template_compact</item> + </resources> diff --git a/main/src/com/google/android/setupdesign/GlifLayout.java b/main/src/com/google/android/setupdesign/GlifLayout.java index 61d8329..4f565e1 100644 --- a/main/src/com/google/android/setupdesign/GlifLayout.java +++ b/main/src/com/google/android/setupdesign/GlifLayout.java @@ -42,6 +42,7 @@ import com.google.android.setupcompat.PartnerCustomizationLayout; import com.google.android.setupcompat.partnerconfig.PartnerConfig; import com.google.android.setupcompat.partnerconfig.PartnerConfigHelper; import com.google.android.setupcompat.template.StatusBarMixin; +import com.google.android.setupcompat.util.ForceTwoPaneHelper; import com.google.android.setupdesign.template.DescriptionMixin; import com.google.android.setupdesign.template.HeaderMixin; import com.google.android.setupdesign.template.IconMixin; @@ -289,6 +290,8 @@ public class GlifLayout extends PartnerCustomizationLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(getContext())) { template = R.layout.sud_glif_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } diff --git a/main/src/com/google/android/setupdesign/GlifListLayout.java b/main/src/com/google/android/setupdesign/GlifListLayout.java index 79b905c..5afb334 100644 --- a/main/src/com/google/android/setupdesign/GlifListLayout.java +++ b/main/src/com/google/android/setupdesign/GlifListLayout.java @@ -26,6 +26,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.ListAdapter; import android.widget.ListView; +import com.google.android.setupcompat.util.ForceTwoPaneHelper; import com.google.android.setupdesign.template.ListMixin; import com.google.android.setupdesign.template.ListViewScrollHandlingDelegate; import com.google.android.setupdesign.template.RequireScrollMixin; @@ -94,6 +95,8 @@ public class GlifListLayout extends GlifLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(getContext())) { template = R.layout.sud_glif_list_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } return super.onInflateTemplate(inflater, template); diff --git a/main/src/com/google/android/setupdesign/GlifPreferenceLayout.java b/main/src/com/google/android/setupdesign/GlifPreferenceLayout.java index fb10515..d208a67 100644 --- a/main/src/com/google/android/setupdesign/GlifPreferenceLayout.java +++ b/main/src/com/google/android/setupdesign/GlifPreferenceLayout.java @@ -23,6 +23,7 @@ import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.google.android.setupcompat.util.ForceTwoPaneHelper; import com.google.android.setupdesign.template.RecyclerMixin; /** @@ -102,6 +103,8 @@ public class GlifPreferenceLayout extends GlifRecyclerLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(getContext())) { template = R.layout.sud_glif_preference_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } return super.onInflateTemplate(inflater, template); diff --git a/main/src/com/google/android/setupdesign/GlifRecyclerLayout.java b/main/src/com/google/android/setupdesign/GlifRecyclerLayout.java index 484ad50..23d4dca 100644 --- a/main/src/com/google/android/setupdesign/GlifRecyclerLayout.java +++ b/main/src/com/google/android/setupdesign/GlifRecyclerLayout.java @@ -27,6 +27,7 @@ import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import com.google.android.setupcompat.util.ForceTwoPaneHelper; import com.google.android.setupdesign.template.RecyclerMixin; import com.google.android.setupdesign.template.RecyclerViewScrollHandlingDelegate; import com.google.android.setupdesign.template.RequireScrollMixin; @@ -95,6 +96,8 @@ public class GlifRecyclerLayout extends GlifLayout { // if the activity is embedded should apply an embedded layout. if (isEmbeddedActivityOnePaneEnabled(getContext())) { template = R.layout.sud_glif_recycler_embedded_template; + } else if (ForceTwoPaneHelper.isForceTwoPaneEnable(getContext())) { + template = ForceTwoPaneHelper.getForceTwoPaneStyleLayout(getContext(), template); } } return super.onInflateTemplate(inflater, template); |