Use Drawer in Settings app

- get rid of PreferenceActivity as much as we can and use fragments instead
- add Drawer widget
- add Dashboard high level entry into the Drawer (but this is work in progress and would be done in another CL)
- add bypass of fragment's Header  validation when launched from the Drawer but *force* validation if external
call thru an Intent

Be aware that WifiPickerActivity should remain for now a PreferenceActivity. It is used by SetupWizard and should
not trigger running the SettingsActivity's header building code. SetupWizard is a Home during the provisionnig process
and then deactivate itself as a Home but would make the Home header to appear in the Drawer (because momentarily we
would have two Home).

Also, verified that:

- the WiFi settings still work when called from SetupWizard
- when you have multiple Launchers, the Home header will appear in the list of Headers in the Drawer

Change-Id: I407a5e0fdd843ad7615d3d511c416a44e3d97c90
This commit is contained in:
Fabrice Di Meglio
2014-01-17 19:17:58 -08:00
parent af79ddb358
commit 263bcc8b73
76 changed files with 2475 additions and 1494 deletions

View File

@@ -35,10 +35,8 @@
<!-- Device status - launches activity -->
<PreferenceScreen android:key="status_info"
android:title="@string/device_status"
android:summary="@string/device_status_summary">
<intent android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
android:targetClass="com.android.settings.deviceinfo.Status" />
android:summary="@string/device_status_summary"
android:fragment="com.android.settings.deviceinfo.Status">
</PreferenceScreen>
<!-- Legal Information -->

View File

@@ -22,6 +22,13 @@
<header android:id="@+id/wireless_section"
android:title="@string/header_category_wireless_networks" />
<!-- Dashboard -->
<!--TODO: android:icon="@drawable/ic_settings_dashboard"-->
<header
android:id="@+id/dashboard"
android:fragment="com.android.settings.dashboard.DashboardSummary"
android:title="@string/dashboard_title" />
<!-- Wifi -->
<header
android:id="@+id/wifi_settings"