diff options
author | Stevespear426 <stephen.k.spear@gmail.com> | 2013-02-11 23:02:34 +0100 |
---|---|---|
committer | Gerrit Code Review <gerrit@cyanogenmod.org> | 2013-03-11 04:38:03 -0700 |
commit | c7177f87e1e007ac722e9a7143781560fddd7608 (patch) | |
tree | 270cbe67e72a31f762703ba0ae1712a4a6b13892 /res | |
parent | f1bbefdfe6fd83f664f0db3d7bd7c0334577322e (diff) | |
download | packages_apps_Settings-c7177f87e1e007ac722e9a7143781560fddd7608.zip packages_apps_Settings-c7177f87e1e007ac722e9a7143781560fddd7608.tar.gz packages_apps_Settings-c7177f87e1e007ac722e9a7143781560fddd7608.tar.bz2 |
Settings: Navigation bar Quick launch shortcuts (1 of 2)
This allows up to 3 targets on the Navigation bar ring
or Home buttons with custom Quick launch shortcut actions.
Patchset 1 to 17 - Initial commits and edits
Patchset 18 - Update preference layout
- Use AOSP terminology for the feature name
- Group under new 'Navigation bar' category
- Rename Navigationbar buttons configurator
Patchset 19 - Update commit message with x of y indicator
Change-Id: I91a7b86b7bfa79526b537e28b510ec078a58c956
Diffstat (limited to 'res')
-rw-r--r-- | res/drawable-hdpi/ic_navigation_ring_hint_activated.png | bin | 0 -> 1614 bytes | |||
-rw-r--r-- | res/drawable-hdpi/ic_navigation_ring_hint_normal.png | bin | 0 -> 1614 bytes | |||
-rw-r--r-- | res/drawable-mdpi/ic_navigation_ring_hint_activated.png | bin | 0 -> 1110 bytes | |||
-rw-r--r-- | res/drawable-mdpi/ic_navigation_ring_hint_normal.png | bin | 0 -> 1110 bytes | |||
-rw-r--r-- | res/drawable-xhdpi/ic_navigation_ring_hint_activated.png | bin | 0 -> 2294 bytes | |||
-rw-r--r-- | res/drawable-xhdpi/ic_navigation_ring_hint_normal.png | bin | 0 -> 2294 bytes | |||
-rw-r--r-- | res/drawable/ic_navigation_ring_hint.xml | 37 | ||||
-rw-r--r-- | res/drawable/navbar_search_outerring.xml | 24 | ||||
-rw-r--r-- | res/layout-land/navigation_ring_targets.xml | 50 | ||||
-rw-r--r-- | res/layout-sw600dp-land/navigation_ring_targets.xml | 50 | ||||
-rw-r--r-- | res/layout-sw600dp/navigation_ring_targets.xml | 51 | ||||
-rw-r--r-- | res/layout/navigation_ring_targets.xml | 51 | ||||
-rwxr-xr-x | res/values-sw600dp/dimens.xml | 7 | ||||
-rwxr-xr-x | res/values/dimens.xml | 9 | ||||
-rw-r--r-- | res/values/strings.xml | 24 | ||||
-rw-r--r-- | res/xml/system_settings.xml | 20 |
16 files changed, 316 insertions, 7 deletions
diff --git a/res/drawable-hdpi/ic_navigation_ring_hint_activated.png b/res/drawable-hdpi/ic_navigation_ring_hint_activated.png Binary files differnew file mode 100644 index 0000000..c8b5a2e --- /dev/null +++ b/res/drawable-hdpi/ic_navigation_ring_hint_activated.png diff --git a/res/drawable-hdpi/ic_navigation_ring_hint_normal.png b/res/drawable-hdpi/ic_navigation_ring_hint_normal.png Binary files differnew file mode 100644 index 0000000..c8b5a2e --- /dev/null +++ b/res/drawable-hdpi/ic_navigation_ring_hint_normal.png diff --git a/res/drawable-mdpi/ic_navigation_ring_hint_activated.png b/res/drawable-mdpi/ic_navigation_ring_hint_activated.png Binary files differnew file mode 100644 index 0000000..4b5b2a4 --- /dev/null +++ b/res/drawable-mdpi/ic_navigation_ring_hint_activated.png diff --git a/res/drawable-mdpi/ic_navigation_ring_hint_normal.png b/res/drawable-mdpi/ic_navigation_ring_hint_normal.png Binary files differnew file mode 100644 index 0000000..4b5b2a4 --- /dev/null +++ b/res/drawable-mdpi/ic_navigation_ring_hint_normal.png diff --git a/res/drawable-xhdpi/ic_navigation_ring_hint_activated.png b/res/drawable-xhdpi/ic_navigation_ring_hint_activated.png Binary files differnew file mode 100644 index 0000000..3aa890f --- /dev/null +++ b/res/drawable-xhdpi/ic_navigation_ring_hint_activated.png diff --git a/res/drawable-xhdpi/ic_navigation_ring_hint_normal.png b/res/drawable-xhdpi/ic_navigation_ring_hint_normal.png Binary files differnew file mode 100644 index 0000000..3aa890f --- /dev/null +++ b/res/drawable-xhdpi/ic_navigation_ring_hint_normal.png diff --git a/res/drawable/ic_navigation_ring_hint.xml b/res/drawable/ic_navigation_ring_hint.xml new file mode 100644 index 0000000..d962db5 --- /dev/null +++ b/res/drawable/ic_navigation_ring_hint.xml @@ -0,0 +1,37 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2012 The Android Open Source Project + Copyright (C) 2013 The Cyanogenmod 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. +--> +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + + <item + android:state_enabled="true" + android:state_active="false" + android:state_focused="false" + android:drawable="@drawable/ic_navigation_ring_hint_normal" /> + + <item + android:state_enabled="true" + android:state_active="true" + android:state_focused="false" + android:drawable="@drawable/ic_navigation_ring_hint_activated" /> + + <item + android:state_enabled="true" + android:state_active="false" + android:state_focused="true" + android:drawable="@drawable/ic_navigation_ring_hint_activated" /> + +</selector> diff --git a/res/drawable/navbar_search_outerring.xml b/res/drawable/navbar_search_outerring.xml new file mode 100644 index 0000000..250e335 --- /dev/null +++ b/res/drawable/navbar_search_outerring.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2008 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. +--> + +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="oval"> + <size android:height="@dimen/navbar_search_outerring_diameter" + android:width="@dimen/navbar_search_outerring_diameter" /> + <solid android:color="#00000000" /> + <stroke android:color="#40ffffff" android:width="2dp" /> +</shape> + diff --git a/res/layout-land/navigation_ring_targets.xml b/res/layout-land/navigation_ring_targets.xml new file mode 100644 index 0000000..e72bd0a --- /dev/null +++ b/res/layout-land/navigation_ring_targets.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:prvandroid="http://schemas.android.com/apk/prv/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@android:color/holo_blue_light" + android:layout_marginRight="8dip" + android:layout_marginLeft="8dip" + android:padding="4dip" + android:gravity="center_horizontal" + android:textColor="#FFFFFF" + android:textAppearance="?android:attr/textAppearanceSmall" + android:text="@string/lockscreen_target_info" /> + + <View + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + <com.android.internal.widget.multiwaveview.GlowPadView + android:id="@+id/navring_target" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:orientation="horizontal" + android:gravity="@*android:integer/kg_selector_gravity" + android:contentDescription="@*android:string/keyguard_accessibility_slide_area" + prvandroid:targetDrawables="@*android:array/lockscreen_targets_unlock_only" + prvandroid:targetDescriptions="@*android:array/lockscreen_target_descriptions_unlock_only" + prvandroid:directionDescriptions="@*android:array/lockscreen_direction_descriptions" + prvandroid:handleDrawable="@drawable/ic_navigation_ring_hint" + prvandroid:outerRingDrawable="@drawable/navbar_search_outerring" + prvandroid:outerRadius="@dimen/navbar_search_outerring_radius" + prvandroid:innerRadius="@*android:dimen/glowpadview_inner_radius" + prvandroid:snapMargin="@dimen/navbar_search_snap_margin" + prvandroid:firstItemOffset="@*android:integer/kg_glowpad_rotation_offset" + prvandroid:magneticTargets="false" + prvandroid:feedbackCount="1" + prvandroid:vibrationDuration="20" + prvandroid:glowRadius="@*android:dimen/glowpadview_glow_radius" + prvandroid:pointDrawable="@*android:drawable/ic_lockscreen_glowdot" + prvandroid:allowScaling="true" /> + +</LinearLayout> diff --git a/res/layout-sw600dp-land/navigation_ring_targets.xml b/res/layout-sw600dp-land/navigation_ring_targets.xml new file mode 100644 index 0000000..e72bd0a --- /dev/null +++ b/res/layout-sw600dp-land/navigation_ring_targets.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:prvandroid="http://schemas.android.com/apk/prv/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@android:color/holo_blue_light" + android:layout_marginRight="8dip" + android:layout_marginLeft="8dip" + android:padding="4dip" + android:gravity="center_horizontal" + android:textColor="#FFFFFF" + android:textAppearance="?android:attr/textAppearanceSmall" + android:text="@string/lockscreen_target_info" /> + + <View + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1" /> + + <com.android.internal.widget.multiwaveview.GlowPadView + android:id="@+id/navring_target" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:orientation="horizontal" + android:gravity="@*android:integer/kg_selector_gravity" + android:contentDescription="@*android:string/keyguard_accessibility_slide_area" + prvandroid:targetDrawables="@*android:array/lockscreen_targets_unlock_only" + prvandroid:targetDescriptions="@*android:array/lockscreen_target_descriptions_unlock_only" + prvandroid:directionDescriptions="@*android:array/lockscreen_direction_descriptions" + prvandroid:handleDrawable="@drawable/ic_navigation_ring_hint" + prvandroid:outerRingDrawable="@drawable/navbar_search_outerring" + prvandroid:outerRadius="@dimen/navbar_search_outerring_radius" + prvandroid:innerRadius="@*android:dimen/glowpadview_inner_radius" + prvandroid:snapMargin="@dimen/navbar_search_snap_margin" + prvandroid:firstItemOffset="@*android:integer/kg_glowpad_rotation_offset" + prvandroid:magneticTargets="false" + prvandroid:feedbackCount="1" + prvandroid:vibrationDuration="20" + prvandroid:glowRadius="@*android:dimen/glowpadview_glow_radius" + prvandroid:pointDrawable="@*android:drawable/ic_lockscreen_glowdot" + prvandroid:allowScaling="true" /> + +</LinearLayout> diff --git a/res/layout-sw600dp/navigation_ring_targets.xml b/res/layout-sw600dp/navigation_ring_targets.xml new file mode 100644 index 0000000..3fc6c6f --- /dev/null +++ b/res/layout-sw600dp/navigation_ring_targets.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:prvandroid="http://schemas.android.com/apk/prv/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@android:color/holo_blue_light" + android:layout_marginEnd="8dip" + android:layout_marginStart="8dip" + android:padding="4dip" + android:gravity="center_horizontal" + android:textColor="#FFFFFF" + android:textAppearance="?android:attr/textAppearanceSmall" + android:text="@string/lockscreen_target_info" /> + + <View + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="0.6" /> + + <com.android.internal.widget.multiwaveview.GlowPadView + android:id="@+id/navring_target" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="0.4" + android:orientation="horizontal" + android:layout_alignParentBottom="true" + android:gravity="top" + android:contentDescription="@*android:string/keyguard_accessibility_slide_area" + prvandroid:targetDrawables="@*android:array/lockscreen_targets_unlock_only" + prvandroid:targetDescriptions="@*android:array/lockscreen_target_descriptions_unlock_only" + prvandroid:directionDescriptions="@*android:array/lockscreen_direction_descriptions" + prvandroid:handleDrawable="@drawable/ic_navigation_ring_hint" + prvandroid:outerRingDrawable="@drawable/navbar_search_outerring" + prvandroid:outerRadius="@dimen/navbar_search_outerring_radius" + prvandroid:innerRadius="@*android:dimen/glowpadview_inner_radius" + prvandroid:snapMargin="@dimen/navbar_search_snap_margin" + prvandroid:firstItemOffset="@*android:integer/kg_glowpad_rotation_offset" + prvandroid:magneticTargets="false" + prvandroid:feedbackCount="1" + prvandroid:vibrationDuration="20" + prvandroid:glowRadius="@*android:dimen/glowpadview_glow_radius" + prvandroid:pointDrawable="@*android:drawable/ic_lockscreen_glowdot" + prvandroid:allowScaling="true" /> + +</LinearLayout> diff --git a/res/layout/navigation_ring_targets.xml b/res/layout/navigation_ring_targets.xml new file mode 100644 index 0000000..9fb0db8 --- /dev/null +++ b/res/layout/navigation_ring_targets.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:prvandroid="http://schemas.android.com/apk/prv/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@android:color/holo_blue_light" + android:layout_marginEnd="8dip" + android:layout_marginStart="8dip" + android:padding="4dip" + android:gravity="center_horizontal" + android:textColor="#FFFFFF" + android:textAppearance="?android:attr/textAppearanceSmall" + android:text="@string/lockscreen_target_info" /> + + <View + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="0.4" /> + + <com.android.internal.widget.multiwaveview.GlowPadView + android:id="@+id/navring_target" + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="0.6" + android:orientation="horizontal" + android:layout_alignParentBottom="true" + android:gravity="top" + android:contentDescription="@*android:string/keyguard_accessibility_slide_area" + prvandroid:targetDrawables="@*android:array/lockscreen_targets_unlock_only" + prvandroid:targetDescriptions="@*android:array/lockscreen_target_descriptions_unlock_only" + prvandroid:directionDescriptions="@*android:array/lockscreen_direction_descriptions" + prvandroid:handleDrawable="@drawable/ic_navigation_ring_hint" + prvandroid:outerRingDrawable="@drawable/navbar_search_outerring" + prvandroid:outerRadius="@dimen/navbar_search_outerring_radius" + prvandroid:innerRadius="@*android:dimen/glowpadview_inner_radius" + prvandroid:snapMargin="@dimen/navbar_search_snap_margin" + prvandroid:firstItemOffset="@*android:integer/kg_glowpad_rotation_offset" + prvandroid:magneticTargets="false" + prvandroid:feedbackCount="1" + prvandroid:vibrationDuration="20" + prvandroid:glowRadius="@*android:dimen/glowpadview_glow_radius" + prvandroid:pointDrawable="@*android:drawable/ic_lockscreen_glowdot" + prvandroid:allowScaling="false" /> + +</LinearLayout> diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml index 1374efd..557fe27 100755 --- a/res/values-sw600dp/dimens.xml +++ b/res/values-sw600dp/dimens.xml @@ -38,4 +38,11 @@ <dimen name="keyguard_appwidget_picker_margin_left">2dip</dimen> <dimen name="keyguard_appwidget_picker_margin_right">2dip</dimen> <integer name="keyguard_appwidget_picker_cols">2</integer> + + <!-- Diameter of outer shape drawable shown in navbar search. Should be 1/2 of above value --> + <dimen name="navbar_search_outerring_radius">215dp</dimen> + <!-- Diameter of outer shape drawable shown in navbar search--> + <dimen name="navbar_search_outerring_diameter">430dp</dimen> + <!-- Height of search panel including navigation bar height --> + <dimen name="navbar_search_panel_height">280dip</dimen> </resources> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 2f0f859..a2dd145 100755 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -72,5 +72,14 @@ <!-- height of an expanded list item in edit playlist mode --> <dimen name="expanded_height">128dip</dimen> + <!-- Default distance beyond which snaps to the matching target --> + <dimen name="navbar_search_snap_margin">40dip</dimen> + <!-- Diameter of outer shape drawable shown in navbar search. Should be 1/2 of above value --> + <dimen name="navbar_search_outerring_radius">170dp</dimen> + <!-- Diameter of outer shape drawable shown in navbar search--> + <dimen name="navbar_search_outerring_diameter">340dp</dimen> + <!-- Height of search panel including navigation bar height --> + <dimen name="navbar_search_panel_height">230dip</dimen> + <!-- **** CYANOGENMOD ADDITIONS END **** --> </resources> diff --git a/res/values/strings.xml b/res/values/strings.xml index 9972b13..877222b 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -4895,8 +4895,8 @@ <string name="hardware_keys_action_voice_search">Voice search</string> <string name="hardware_keys_action_in_app_search">In-app search</string> - <!-- Navigation Bar #CM --> - <string name="navigation_bar_title">Navigation bar</string> + <!-- Navigation Bar --> + <string name="navigation_bar_title">Buttons and layout</string> <string name="navigation_bar_help_text">1 - To begin editing, tap the lock icon\n\n2 - Tap any button to assign or change functionality\n\n3 - Long press any button to rearrange the order\n\n4 - To save, tap the lock icon again\n\n5 - To restore system default, tap the reset button\n\n</string> <string name="navigation_bar_tips">• Actions can only be assigned to one button at a time\n\n• The home button cannot be re-assigned\n\n• Side buttons cannot be rearranged</string> <string name="navigation_bar_tips_title">Quick tips</string> @@ -5174,5 +5174,25 @@ <string name="advanced_reboot_title">Advanced reboot</string> <string name="advanced_reboot_summary">When unlocked, include options in the power menu for rebooting into recovery or bootloader</string> + <!-- Navigation bar buttons and shortcuts category title --> + <string name="navigation_bar_category">Navigation bar</string> + + <!-- Navigation ring shortcuts --> + <string name="navigation_ring_title">Quick launch shortcuts</string> + <string name="navring_target_reset_message">Delete all user created navigation bar shortcuts and restore to default?</string> + <string name="navring_target_reset">Navigation bar shortcuts reset to default</string> + <string name="navring_target_save">Navigation bar shortcuts saved</string> + <string name="navring_action_open_ime_switcher">Open IME Switcher</string> + <string name="navring_action_kill_app">Kill app</string> + <string name="navring_action_none">None</string> + <string name="navring_action_take_screenshot">Take screenshot</string> + <string name="navring_action_ring_vibrate">Ring/Vibration</string> + <string name="navring_action_ring_silent">Ring/Silent</string> + <string name="navring_action_ring_vibrate_silent">Ring/Vibration/Silent</string> + <string name="navring_action_screen_off">Screen off</string> + <string name="navring_action_torch">Toggle torch</string> + <string name="navring_action_google_now">Google Now</string> + <string name="navring_choose_action_title">Choose action</string> + <!-- **** CYANOGENMOD ADDITIONS END **** --> </resources> diff --git a/res/xml/system_settings.xml b/res/xml/system_settings.xml index f20f190..2009767 100644 --- a/res/xml/system_settings.xml +++ b/res/xml/system_settings.xml @@ -50,11 +50,6 @@ </PreferenceScreen> <PreferenceScreen - android:key="navigation_bar" - android:fragment="com.android.settings.cyanogenmod.NavBar" - android:title="@string/navigation_bar_title" /> - - <PreferenceScreen android:key="notification_pulse" android:title="@string/notification_pulse_title" android:fragment="com.android.settings.notificationlight.NotificationLightSettings" /> @@ -69,4 +64,19 @@ android:fragment="com.android.settings.cyanogenmod.HardwareKeys" android:title="@string/hardware_keys_title" /> + <PreferenceCategory + android:key="navigation_bar_category" + android:title="@string/navigation_bar_category" > + + <PreferenceScreen + android:key="navigation_bar" + android:fragment="com.android.settings.cyanogenmod.NavBar" + android:title="@string/navigation_bar_title" /> + + <PreferenceScreen + android:key="navigation_ring" + android:fragment="com.android.settings.cyanogenmod.NavRing" + android:title="@string/navigation_ring_title" /> + </PreferenceCategory> + </PreferenceScreen> |