Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1d296b89 authored by Adam Cohen's avatar Adam Cohen
Browse files

Merging from ub-launcher3-master @ build 6150369

Test: manual, presubmit on the source branch
http://x20/teams/android-launcher/merge/ub-launcher3-master_6150369.html

Change-Id: I656d8b58ba3f06c2c1e045476fa3d5186aba5032
parents c31fe901 4b1178c1
Loading
Loading
Loading
Loading
+119 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2020 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.
-->
<androidx.coordinatorlayout.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="?android:colorPrimary"
    android:orientation="vertical">

    <include layout="@layout/section_header" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_behavior="@string/scalable_container_behavior">

        <com.android.customization.widget.PreviewPager
            android:id="@+id/clock_preview_pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/preview_pager_background" />
    </FrameLayout>

    <FrameLayout
        android:id="@+id/scalable_content_container"
        android:layout_width="wrap_content"
        android:layout_height="@dimen/content_container_maximum_height"
        app:behavior_peekHeight="@dimen/content_container_minimum_height"
        app:layout_behavior="@string/bottom_sheet_behavior">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/content_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <androidx.recyclerview.widget.RecyclerView
                android:id="@+id/options_container"
                android:layout_width="match_parent"
                android:layout_height="@dimen/options_container_height"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="10dp"
                app:layout_constraintBottom_toTopOf="@id/placeholder"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="1.0" />

            <Space
                android:id="@+id/placeholder"
                android:layout_width="match_parent"
                android:layout_height="@dimen/min_taptarget_height"
                app:layout_constraintBottom_toTopOf="@id/apply_button"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHeight_min="@dimen/min_taptarget_height"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toBottomOf="@id/options_container"
                app:layout_constraintVertical_bias="1.0" />

            <Button
                android:id="@+id/apply_button"
                style="@style/ActionPrimaryButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="end"
                android:layout_marginVertical="10dp"
                android:layout_marginEnd="10dp"
                android:layout_weight="1"
                android:text="@string/apply_theme_btn"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent" />
        </androidx.constraintlayout.widget.ConstraintLayout>
    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <androidx.core.widget.ContentLoadingProgressBar
            android:id="@+id/loading_indicator"
            style="@android:style/Widget.DeviceDefault.ProgressBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|top"
            android:layout_marginTop="200dp"
            android:indeterminate="true" />

        <FrameLayout
            android:id="@+id/error_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:visibility="gone">

            <TextView
                android:id="@+id/error_message"
                style="@style/TitleTextAppearance"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:gravity="center"
                android:text="@string/something_went_wrong" />
        </FrameLayout>
    </FrameLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
+118 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2020 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.
-->
<androidx.coordinatorlayout.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="?android:colorPrimary"
    android:orientation="vertical">

    <include layout="@layout/section_header" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_behavior="@string/scalable_container_behavior">

        <com.android.customization.widget.PreviewPager
            android:id="@+id/grid_preview_pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/preview_pager_background"
            app:card_style="screen_aspect_ratio" />
    </FrameLayout>

    <FrameLayout
        android:id="@+id/scalable_content_container"
        android:layout_width="wrap_content"
        android:layout_height="@dimen/content_container_maximum_height"
        app:behavior_peekHeight="@dimen/content_container_minimum_height"
        app:layout_behavior="@string/bottom_sheet_behavior">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/content_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <androidx.recyclerview.widget.RecyclerView
                android:id="@+id/options_container"
                android:layout_width="match_parent"
                android:layout_height="@dimen/options_container_height"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="10dp"
                app:layout_constraintBottom_toTopOf="@id/placeholder"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="1.0" />

            <Space
                android:id="@+id/placeholder"
                android:layout_width="match_parent"
                android:layout_height="@dimen/min_taptarget_height"
                app:layout_constraintBottom_toTopOf="@id/apply_button"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toBottomOf="@id/options_container"
                app:layout_constraintVertical_bias="1.0" />

            <Button
                android:id="@+id/apply_button"
                style="@style/ActionPrimaryButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="end"
                android:layout_marginVertical="10dp"
                android:layout_marginEnd="10dp"
                android:layout_weight="1"
                android:text="@string/apply_theme_btn"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent" />

        </androidx.constraintlayout.widget.ConstraintLayout>
    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <androidx.core.widget.ContentLoadingProgressBar
            android:id="@+id/loading_indicator"
            style="@android:style/Widget.DeviceDefault.ProgressBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|top"
            android:layout_marginTop="200dp"
            android:indeterminate="true" />

        <FrameLayout
            android:id="@+id/error_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:visibility="gone">

            <TextView
                android:id="@+id/error_message"
                style="@style/TitleTextAppearance"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:gravity="center"
                android:text="@string/something_went_wrong" />
        </FrameLayout>
    </FrameLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
+124 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<!--
     Copyright (C) 2020 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.
-->
<androidx.coordinatorlayout.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="?android:colorPrimary"
    android:orientation="vertical">

    <include layout="@layout/section_header" />

    <FrameLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_behavior="@string/scalable_container_behavior">

        <com.android.customization.widget.PreviewPager
            android:id="@+id/theme_preview_pager"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/preview_pager_background" />
    </FrameLayout>

    <FrameLayout
        android:id="@+id/scalable_content_container"
        android:layout_width="wrap_content"
        android:layout_height="@dimen/content_container_maximum_height"
        app:behavior_peekHeight="@dimen/content_container_minimum_height"
        app:layout_behavior="@string/bottom_sheet_behavior">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:id="@+id/content_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <androidx.recyclerview.widget.RecyclerView
                android:id="@+id/options_container"
                android:layout_width="match_parent"
                android:layout_height="@dimen/options_container_height"
                android:layout_gravity="bottom|center_horizontal"
                android:layout_marginTop="10dp"
                android:layout_weight="1"
                app:layout_constraintBottom_toTopOf="@id/use_my_wallpaper"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="1.0" />

            <CheckBox
                android:id="@+id/use_my_wallpaper"
                android:layout_width="wrap_content"
                android:layout_height="@dimen/min_taptarget_height"
                android:layout_marginStart="10dp"
                android:ellipsize="end"
                android:gravity="start|center_vertical"
                android:paddingLeft="4dp"
                android:text="@string/keep_my_wallpaper"
                app:layout_constraintBottom_toTopOf="@id/apply_button"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHeight_min="@dimen/min_taptarget_height"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toBottomOf="@id/options_container"
                app:layout_constraintVertical_bias="1.0" />

            <Button
                android:id="@+id/apply_button"
                style="@style/ActionPrimaryButton"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="end"
                android:layout_marginEnd="10dp"
                android:layout_marginBottom="10dp"
                android:text="@string/apply_theme_btn"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent" />
        </androidx.constraintlayout.widget.ConstraintLayout>
    </FrameLayout>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <androidx.core.widget.ContentLoadingProgressBar
            android:id="@+id/loading_indicator"
            style="@android:style/Widget.DeviceDefault.ProgressBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|top"
            android:layout_marginTop="200dp"
            android:indeterminate="true" />

        <FrameLayout
            android:id="@+id/error_section"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:visibility="gone">

            <TextView
                android:id="@+id/error_message"
                style="@style/TitleTextAppearance"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:gravity="center"
                android:text="@string/something_went_wrong" />
        </FrameLayout>
    </FrameLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
+16 −2
Original line number Diff line number Diff line
@@ -15,6 +15,8 @@
 */
package com.android.customization.picker.clock;

import static android.content.res.Configuration.ORIENTATION_LANDSCAPE;

import android.content.Context;
import android.content.res.Resources;
import android.os.Bundle;
@@ -88,8 +90,20 @@ public class ClockFragment extends ToolbarFragment {
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
            @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(
        View view;
        if (ADD_SCALABLE_HEADER) {
            // TODO(b/147780560): Once the temporary flag (ADD_SCALABLE_HEADER) is removed,
            // we should have a layout with the same name for portrait and landscape.
            int orientation = getResources().getConfiguration().orientation;
            view = inflater.inflate(
                    orientation == ORIENTATION_LANDSCAPE
                            ? R.layout.fragment_clock_picker
                            : R.layout.fragment_clock_scalable_picker,
                    container, /* attachToRoot */ false);
        } else {
            view = inflater.inflate(
                    R.layout.fragment_clock_picker, container, /* attachToRoot */ false);
        }
        setUpToolbar(view);
        mContent = view.findViewById(R.id.content_section);
        mPreviewPager = view.findViewById(R.id.clock_preview_pager);
+16 −2
Original line number Diff line number Diff line
@@ -15,6 +15,8 @@
 */
package com.android.customization.picker.grid;

import static android.content.res.Configuration.ORIENTATION_LANDSCAPE;

import android.app.Activity;
import android.content.Context;
import android.content.res.Resources;
@@ -106,8 +108,20 @@ public class GridFragment extends ToolbarFragment {
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
            @Nullable Bundle savedInstanceState) {
        View view = inflater.inflate(
        View view;
        if (ADD_SCALABLE_HEADER) {
            // TODO(b/147780560): Once the temporary flag (ADD_SCALABLE_HEADER) is removed,
            // we should have a layout with the same name for portrait and landscape.
            int orientation = getResources().getConfiguration().orientation;
            view = inflater.inflate(
                    orientation == ORIENTATION_LANDSCAPE
                            ? R.layout.fragment_grid_picker
                            : R.layout.fragment_grid_scalable_picker,
                    container, /* attachToRoot */ false);
        } else {
            view = inflater.inflate(
                    R.layout.fragment_grid_picker, container, /* attachToRoot */ false);
        }
        setUpToolbar(view);
        mContent = view.findViewById(R.id.content_section);
        mPreviewPager = view.findViewById(R.id.grid_preview_pager);
Loading