Use SetupWizardPreferenceLayout
Update SetupChooseLockGeneric to use SetupWizardPreferenceLayout, which is a layout designed to be used with Preference v14. Change-Id: I31f372b5f70382a9f6502c790cb8981277a8d5e1
This commit is contained in:
@@ -39,7 +39,7 @@ ifneq ($(INCREMENTAL_BUILDS),)
|
|||||||
LOCAL_JACK_FLAGS := --multi-dex native
|
LOCAL_JACK_FLAGS := --multi-dex native
|
||||||
endif
|
endif
|
||||||
|
|
||||||
include frameworks/opt/setupwizard/library/common.mk
|
include frameworks/opt/setupwizard/library/common-full-support.mk
|
||||||
include frameworks/base/packages/SettingsLib/common.mk
|
include frameworks/base/packages/SettingsLib/common.mk
|
||||||
|
|
||||||
include $(BUILD_PACKAGE)
|
include $(BUILD_PACKAGE)
|
||||||
|
@@ -15,11 +15,11 @@
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<com.android.setupwizardlib.SetupWizardLayout
|
<com.android.setupwizardlib.SetupWizardPreferenceLayout
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
xmlns:settings="http://schemas.android.com/apk/res-auto"
|
||||||
|
android:id="@android:id/list_container"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout="@layout/suw_no_scroll_template"
|
|
||||||
settings:suwBackgroundTile="@drawable/setup_illustration_tile"
|
settings:suwBackgroundTile="@drawable/setup_illustration_tile"
|
||||||
settings:suwIllustrationHorizontalTile="@drawable/setup_illustration_horizontal_tile" />
|
settings:suwIllustrationHorizontalTile="@drawable/setup_illustration_horizontal_tile" />
|
||||||
|
@@ -1,81 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2015 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- This layout file is intended for use with views that handle its own scrolling, like WebView or
|
|
||||||
RecyclerView. For other layouts that should be put inside a ScrollView, consider using
|
|
||||||
suw_template instead. -->
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:orientation="vertical">
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.Illustration
|
|
||||||
android:id="@+id/suw_layout_decor"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="@drawable/suw_layout_background">
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:orientation="vertical"
|
|
||||||
android:paddingLeft="@dimen/suw_card_port_margin_sides"
|
|
||||||
android:paddingRight="@dimen/suw_card_port_margin_sides">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/suw_layout_title"
|
|
||||||
style="@style/SuwCardTitle"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content" />
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="?attr/suwCardBackground"
|
|
||||||
android:elevation="@dimen/suw_card_elevation"
|
|
||||||
tools:ignore="UnusedAttribute">
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:id="@+id/suw_layout_content"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent">
|
|
||||||
|
|
||||||
<!-- Temporary solution to work with PreferenceFragment v14 -->
|
|
||||||
<FrameLayout android:id="@android:id/list_container"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<include layout="@layout/suw_progress_bar_stub" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
</com.android.setupwizardlib.view.Illustration>
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.NavigationBar
|
|
||||||
android:id="@+id/suw_layout_navigation_bar"
|
|
||||||
style="@style/SuwNavBarTheme"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="@dimen/suw_navbar_height" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
@@ -1,82 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2015 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- This layout file is intended for use with views that handle its own scrolling, like WebView or
|
|
||||||
RecyclerView. For other layouts that should be put inside a ScrollView, consider using
|
|
||||||
suw_template instead. -->
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:orientation="vertical">
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.Illustration
|
|
||||||
android:id="@+id/suw_layout_decor"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1"
|
|
||||||
android:background="@drawable/suw_layout_background">
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:gravity="start|top"
|
|
||||||
android:weightSum="16">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/suw_layout_title"
|
|
||||||
style="@style/SuwCardTitle"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_marginTop="@dimen/suw_card_land_header_text_margin_top"
|
|
||||||
android:layout_weight="6" />
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:layout_weight="8"
|
|
||||||
android:background="?attr/suwCardBackground"
|
|
||||||
android:elevation="@dimen/suw_card_elevation"
|
|
||||||
tools:ignore="UnusedAttribute">
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:id="@+id/suw_layout_content"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent">
|
|
||||||
|
|
||||||
<!-- Temporary solution to work with PreferenceFragment v14 -->
|
|
||||||
<FrameLayout android:id="@android:id/list_container"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<include layout="@layout/suw_progress_bar_stub" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
</com.android.setupwizardlib.view.Illustration>
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.NavigationBar
|
|
||||||
android:id="@+id/suw_layout_navigation_bar"
|
|
||||||
style="@style/SuwNavBarTheme"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="@dimen/suw_navbar_height" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
@@ -1,76 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2015 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- IMPORTANT NOTE: Even if this layout is used with a view that handles its scroll internally,
|
|
||||||
like WebView or RecyclerView, the illustration will not scroll away, since this view doesn't
|
|
||||||
know about the scrolling view at all. It is recommended that you add the illustration as a
|
|
||||||
header to the RecyclerView or avoid using this layout (e.g. use suw_no_scroll_template_short
|
|
||||||
instead of suw_no_scroll_template) -->
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
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="vertical">
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.Illustration
|
|
||||||
android:id="@+id/suw_layout_decor"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:background="@drawable/suw_layout_background"
|
|
||||||
android:elevation="@dimen/suw_title_area_elevation"
|
|
||||||
android:tag="stickyContainer"
|
|
||||||
tools:ignore="UnusedAttribute">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/suw_layout_title"
|
|
||||||
style="@style/SuwHeaderTitle"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:tag="sticky" />
|
|
||||||
|
|
||||||
</com.android.setupwizardlib.view.Illustration>
|
|
||||||
|
|
||||||
<include layout="@layout/suw_progress_bar_stub" />
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:id="@+id/suw_layout_content"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1">
|
|
||||||
|
|
||||||
<!-- Temporary solution to work with PreferenceFragment v14 -->
|
|
||||||
<FrameLayout android:id="@android:id/list_container"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.NavigationBar
|
|
||||||
android:id="@+id/suw_layout_navigation_bar"
|
|
||||||
style="@style/SuwNavBarTheme"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="@dimen/suw_navbar_height" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
@@ -1,63 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2015 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.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<!-- This layout file is intended for use with views that handle its own scrolling, like WebView or
|
|
||||||
RecyclerView. For other layouts that should be put inside a ScrollView, consider using
|
|
||||||
suw_template instead. -->
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:orientation="vertical">
|
|
||||||
|
|
||||||
<FrameLayout
|
|
||||||
android:id="@+id/suw_layout_decor"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:background="@drawable/suw_layout_background"
|
|
||||||
android:elevation="@dimen/suw_title_area_elevation"
|
|
||||||
tools:ignore="UnusedAttribute">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/suw_layout_title"
|
|
||||||
style="@style/SuwHeaderTitle"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<include layout="@layout/suw_progress_bar_stub" />
|
|
||||||
|
|
||||||
<FrameLayout android:id="@+id/suw_layout_content"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="0dp"
|
|
||||||
android:layout_weight="1">
|
|
||||||
|
|
||||||
<!-- Temporary solution to work with PreferenceFragment v14 -->
|
|
||||||
<FrameLayout android:id="@android:id/list_container"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent" />
|
|
||||||
|
|
||||||
</FrameLayout>
|
|
||||||
|
|
||||||
<com.android.setupwizardlib.view.NavigationBar
|
|
||||||
android:id="@+id/suw_layout_navigation_bar"
|
|
||||||
style="@style/SuwNavBarTheme"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="@dimen/suw_navbar_height" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
@@ -108,6 +108,8 @@
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="PreferenceTheme.SetupWizard">
|
<style name="PreferenceTheme.SetupWizard">
|
||||||
|
<item name="android:listPreferredItemPaddingEnd">@dimen/suw_layout_margin_sides</item>
|
||||||
|
<item name="android:listPreferredItemPaddingStart">@dimen/suw_layout_margin_sides</item>
|
||||||
<item name="preferenceFragmentStyle">@style/SetupWizardPreferenceFragmentStyle</item>
|
<item name="preferenceFragmentStyle">@style/SetupWizardPreferenceFragmentStyle</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
@@ -25,12 +25,16 @@ import android.os.Bundle;
|
|||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.support.v7.preference.Preference;
|
import android.support.v7.preference.Preference;
|
||||||
import android.support.v14.preference.PreferenceFragment;
|
import android.support.v14.preference.PreferenceFragment;
|
||||||
|
import android.support.v7.widget.RecyclerView;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
import android.view.ViewGroup;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
|
|
||||||
import com.android.internal.widget.LockPatternUtils;
|
import com.android.internal.widget.LockPatternUtils;
|
||||||
import com.android.settings.fingerprint.SetupSkipDialog;
|
import com.android.settings.fingerprint.SetupSkipDialog;
|
||||||
import com.android.setupwizardlib.SetupWizardLayout;
|
import com.android.setupwizardlib.SetupWizardLayout;
|
||||||
|
import com.android.setupwizardlib.SetupWizardPreferenceLayout;
|
||||||
import com.android.setupwizardlib.view.NavigationBar;
|
import com.android.setupwizardlib.view.NavigationBar;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -71,7 +75,9 @@ public class SetupChooseLockGeneric extends ChooseLockGeneric {
|
|||||||
|
|
||||||
SetupWizardUtils.setImmersiveMode(getActivity());
|
SetupWizardUtils.setImmersiveMode(getActivity());
|
||||||
|
|
||||||
SetupWizardLayout layout = (SetupWizardLayout) view;
|
SetupWizardPreferenceLayout layout = (SetupWizardPreferenceLayout) view;
|
||||||
|
layout.setDividerInset(getContext().getResources().getDimensionPixelSize(
|
||||||
|
R.dimen.suw_items_text_divider_inset));
|
||||||
final NavigationBar navigationBar = layout.getNavigationBar();
|
final NavigationBar navigationBar = layout.getNavigationBar();
|
||||||
Button nextButton = navigationBar.getNextButton();
|
Button nextButton = navigationBar.getNextButton();
|
||||||
nextButton.setText(null);
|
nextButton.setText(null);
|
||||||
@@ -86,6 +92,9 @@ public class SetupChooseLockGeneric extends ChooseLockGeneric {
|
|||||||
layout.setHeaderText(R.string.lock_settings_picker_title);
|
layout.setHeaderText(R.string.lock_settings_picker_title);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Use the dividers in SetupWizardRecyclerLayout. Suppress the dividers in
|
||||||
|
// PreferenceFragment.
|
||||||
|
setDivider(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -115,6 +124,13 @@ public class SetupChooseLockGeneric extends ChooseLockGeneric {
|
|||||||
// activity will be resumed to foreground.
|
// activity will be resumed to foreground.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public RecyclerView onCreateRecyclerView(LayoutInflater inflater, ViewGroup parent,
|
||||||
|
Bundle savedInstanceState) {
|
||||||
|
SetupWizardPreferenceLayout layout = (SetupWizardPreferenceLayout) parent;
|
||||||
|
return layout.onCreateRecyclerView(inflater, parent, savedInstanceState);
|
||||||
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* Disables preferences that are less secure than required quality and shows only secure
|
* Disables preferences that are less secure than required quality and shows only secure
|
||||||
* screen lock options here.
|
* screen lock options here.
|
||||||
|
Reference in New Issue
Block a user