diff --git a/res/drawable-hdpi/all_apps_button_focused.png b/res/drawable-hdpi/all_apps_button_focused.png
deleted file mode 100644
index ace493b..0000000
--- a/res/drawable-hdpi/all_apps_button_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/all_apps_button_normal.png b/res/drawable-hdpi/all_apps_button_normal.png
deleted file mode 100644
index cde455d..0000000
--- a/res/drawable-hdpi/all_apps_button_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/all_apps_button_pressed.png b/res/drawable-hdpi/all_apps_button_pressed.png
deleted file mode 100644
index d5f9f54..0000000
--- a/res/drawable-hdpi/all_apps_button_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/box_launcher_top_normal.9.png b/res/drawable-hdpi/box_launcher_top_normal.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-hdpi/box_launcher_top_normal.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/box_launcher_top_pressed.9.png b/res/drawable-hdpi/box_launcher_top_pressed.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-hdpi/box_launcher_top_pressed.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/box_launcher_top_selected.9.png b/res/drawable-hdpi/box_launcher_top_selected.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-hdpi/box_launcher_top_selected.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/focused_application_background.9.png b/res/drawable-hdpi/focused_application_background.9.png
deleted file mode 100644
index 7bf37ef..0000000
--- a/res/drawable-hdpi/focused_application_background.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/home_button_focused.png b/res/drawable-hdpi/home_button_focused.png
deleted file mode 100644
index 08b1fcb..0000000
--- a/res/drawable-hdpi/home_button_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/home_button_normal.png b/res/drawable-hdpi/home_button_normal.png
deleted file mode 100644
index 4afcce8..0000000
--- a/res/drawable-hdpi/home_button_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/home_button_pressed.png b/res/drawable-hdpi/home_button_pressed.png
deleted file mode 100644
index aa91732..0000000
--- a/res/drawable-hdpi/home_button_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_bg_center.9.png b/res/drawable-hdpi/hotseat_bg_center.9.png
deleted file mode 100644
index e162970..0000000
--- a/res/drawable-hdpi/hotseat_bg_center.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_bg_left.9.png b/res/drawable-hdpi/hotseat_bg_left.9.png
deleted file mode 100644
index 39e079d..0000000
--- a/res/drawable-hdpi/hotseat_bg_left.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_bg_right.9.png b/res/drawable-hdpi/hotseat_bg_right.9.png
deleted file mode 100644
index 921216b..0000000
--- a/res/drawable-hdpi/hotseat_bg_right.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_browser_focused.png b/res/drawable-hdpi/hotseat_browser_focused.png
deleted file mode 100644
index 4ab51dd..0000000
--- a/res/drawable-hdpi/hotseat_browser_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_browser_normal.png b/res/drawable-hdpi/hotseat_browser_normal.png
deleted file mode 100644
index 77ae927..0000000
--- a/res/drawable-hdpi/hotseat_browser_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_browser_pressed.png b/res/drawable-hdpi/hotseat_browser_pressed.png
deleted file mode 100644
index cfe963b..0000000
--- a/res/drawable-hdpi/hotseat_browser_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_phone_focused.png b/res/drawable-hdpi/hotseat_phone_focused.png
deleted file mode 100644
index f81f0a8..0000000
--- a/res/drawable-hdpi/hotseat_phone_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_phone_normal.png b/res/drawable-hdpi/hotseat_phone_normal.png
deleted file mode 100644
index 391802e..0000000
--- a/res/drawable-hdpi/hotseat_phone_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-hdpi/hotseat_phone_pressed.png b/res/drawable-hdpi/hotseat_phone_pressed.png
deleted file mode 100644
index a6c2baf..0000000
--- a/res/drawable-hdpi/hotseat_phone_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-hdpi/hotseat_bg_center.9.png b/res/drawable-land-hdpi/hotseat_bg_center.9.png
deleted file mode 100644
index 958b4a4..0000000
--- a/res/drawable-land-hdpi/hotseat_bg_center.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-hdpi/hotseat_bg_left.9.png b/res/drawable-land-hdpi/hotseat_bg_left.9.png
deleted file mode 100644
index 9ea8f9d..0000000
--- a/res/drawable-land-hdpi/hotseat_bg_left.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-hdpi/hotseat_bg_right.9.png b/res/drawable-land-hdpi/hotseat_bg_right.9.png
deleted file mode 100644
index ce8f1e2..0000000
--- a/res/drawable-land-hdpi/hotseat_bg_right.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-hdpi/hotseat_track_holo.9.png b/res/drawable-land-hdpi/hotseat_track_holo.9.png
new file mode 100644
index 0000000..165870e
--- /dev/null
+++ b/res/drawable-land-hdpi/hotseat_track_holo.9.png
Binary files differ
diff --git a/res/drawable-land-mdpi/hotseat_bg_center.9.png b/res/drawable-land-mdpi/hotseat_bg_center.9.png
deleted file mode 100644
index 691ab01..0000000
--- a/res/drawable-land-mdpi/hotseat_bg_center.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-mdpi/hotseat_bg_left.9.png b/res/drawable-land-mdpi/hotseat_bg_left.9.png
deleted file mode 100644
index bd235f3..0000000
--- a/res/drawable-land-mdpi/hotseat_bg_left.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-mdpi/hotseat_bg_right.9.png b/res/drawable-land-mdpi/hotseat_bg_right.9.png
deleted file mode 100644
index 6d87f0d..0000000
--- a/res/drawable-land-mdpi/hotseat_bg_right.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-land-mdpi/hotseat_track_holo.9.png b/res/drawable-land-mdpi/hotseat_track_holo.9.png
new file mode 100644
index 0000000..82ed81d
--- /dev/null
+++ b/res/drawable-land-mdpi/hotseat_track_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/all_apps_button_focused.png b/res/drawable-mdpi/all_apps_button_focused.png
deleted file mode 100644
index dd77f80..0000000
--- a/res/drawable-mdpi/all_apps_button_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/all_apps_button_normal.png b/res/drawable-mdpi/all_apps_button_normal.png
deleted file mode 100644
index 2419f97..0000000
--- a/res/drawable-mdpi/all_apps_button_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/all_apps_button_pressed.png b/res/drawable-mdpi/all_apps_button_pressed.png
deleted file mode 100644
index 3e6c850..0000000
--- a/res/drawable-mdpi/all_apps_button_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/box_launcher_top_normal.9.png b/res/drawable-mdpi/box_launcher_top_normal.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-mdpi/box_launcher_top_normal.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/box_launcher_top_pressed.9.png b/res/drawable-mdpi/box_launcher_top_pressed.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-mdpi/box_launcher_top_pressed.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/box_launcher_top_selected.9.png b/res/drawable-mdpi/box_launcher_top_selected.9.png
deleted file mode 100644
index af04b07..0000000
--- a/res/drawable-mdpi/box_launcher_top_selected.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/focused_application_background.9.png b/res/drawable-mdpi/focused_application_background.9.png
deleted file mode 100644
index 17ee6ea..0000000
--- a/res/drawable-mdpi/focused_application_background.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/home_button_focused.png b/res/drawable-mdpi/home_button_focused.png
deleted file mode 100644
index 4d62c1b..0000000
--- a/res/drawable-mdpi/home_button_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/home_button_normal.png b/res/drawable-mdpi/home_button_normal.png
deleted file mode 100644
index 37eccc0..0000000
--- a/res/drawable-mdpi/home_button_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/home_button_pressed.png b/res/drawable-mdpi/home_button_pressed.png
deleted file mode 100644
index 4b77d6d..0000000
--- a/res/drawable-mdpi/home_button_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_bg_center.9.png b/res/drawable-mdpi/hotseat_bg_center.9.png
deleted file mode 100644
index c846d54..0000000
--- a/res/drawable-mdpi/hotseat_bg_center.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_bg_left.9.png b/res/drawable-mdpi/hotseat_bg_left.9.png
deleted file mode 100644
index 92d583f..0000000
--- a/res/drawable-mdpi/hotseat_bg_left.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_bg_right.9.png b/res/drawable-mdpi/hotseat_bg_right.9.png
deleted file mode 100644
index 5181b00..0000000
--- a/res/drawable-mdpi/hotseat_bg_right.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_browser_focused.png b/res/drawable-mdpi/hotseat_browser_focused.png
deleted file mode 100644
index 0ad0878..0000000
--- a/res/drawable-mdpi/hotseat_browser_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_browser_normal.png b/res/drawable-mdpi/hotseat_browser_normal.png
deleted file mode 100644
index 52abe8c..0000000
--- a/res/drawable-mdpi/hotseat_browser_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_browser_pressed.png b/res/drawable-mdpi/hotseat_browser_pressed.png
deleted file mode 100644
index e1d35d1..0000000
--- a/res/drawable-mdpi/hotseat_browser_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_phone_focused.png b/res/drawable-mdpi/hotseat_phone_focused.png
deleted file mode 100644
index 3b2d361..0000000
--- a/res/drawable-mdpi/hotseat_phone_focused.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_phone_normal.png b/res/drawable-mdpi/hotseat_phone_normal.png
deleted file mode 100644
index 750960b..0000000
--- a/res/drawable-mdpi/hotseat_phone_normal.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/hotseat_phone_pressed.png b/res/drawable-mdpi/hotseat_phone_pressed.png
deleted file mode 100644
index 8ad9d5a..0000000
--- a/res/drawable-mdpi/hotseat_phone_pressed.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/default_widget_preview_holo.9.png b/res/drawable-xhdpi/default_widget_preview_holo.9.png
new file mode 100644
index 0000000..87cc975
--- /dev/null
+++ b/res/drawable-xhdpi/default_widget_preview_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/gardening_crosshairs.png b/res/drawable-xhdpi/gardening_crosshairs.png
new file mode 100644
index 0000000..18c9fbe
--- /dev/null
+++ b/res/drawable-xhdpi/gardening_crosshairs.png
Binary files differ
diff --git a/res/drawable-xhdpi/homescreen_blue_normal_holo.9.png b/res/drawable-xhdpi/homescreen_blue_normal_holo.9.png
new file mode 100644
index 0000000..966d0c1
--- /dev/null
+++ b/res/drawable-xhdpi/homescreen_blue_normal_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/homescreen_blue_strong_holo.9.png b/res/drawable-xhdpi/homescreen_blue_strong_holo.9.png
new file mode 100644
index 0000000..7e037ed
--- /dev/null
+++ b/res/drawable-xhdpi/homescreen_blue_strong_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/homescreen_green_normal_holo.9.png b/res/drawable-xhdpi/homescreen_green_normal_holo.9.png
new file mode 100644
index 0000000..219db3b
--- /dev/null
+++ b/res/drawable-xhdpi/homescreen_green_normal_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/homescreen_green_strong_holo.9.png b/res/drawable-xhdpi/homescreen_green_strong_holo.9.png
new file mode 100644
index 0000000..cc71519
--- /dev/null
+++ b/res/drawable-xhdpi/homescreen_green_strong_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/hotseat_bg_panel.9.png b/res/drawable-xhdpi/hotseat_bg_panel.9.png
new file mode 100644
index 0000000..6d9288e
--- /dev/null
+++ b/res/drawable-xhdpi/hotseat_bg_panel.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/hotseat_scrubber_holo.9.png b/res/drawable-xhdpi/hotseat_scrubber_holo.9.png
new file mode 100644
index 0000000..55b313f
--- /dev/null
+++ b/res/drawable-xhdpi/hotseat_scrubber_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/hotseat_track_holo.9.png b/res/drawable-xhdpi/hotseat_track_holo.9.png
new file mode 100644
index 0000000..a362a98
--- /dev/null
+++ b/res/drawable-xhdpi/hotseat_track_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_google_logo_normal_holo.png b/res/drawable-xhdpi/ic_google_logo_normal_holo.png
new file mode 100644
index 0000000..925e0b9
--- /dev/null
+++ b/res/drawable-xhdpi/ic_google_logo_normal_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_launcher_info_active_holo.png b/res/drawable-xhdpi/ic_launcher_info_active_holo.png
new file mode 100644
index 0000000..356c074
--- /dev/null
+++ b/res/drawable-xhdpi/ic_launcher_info_active_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_launcher_info_normal_holo.png b/res/drawable-xhdpi/ic_launcher_info_normal_holo.png
new file mode 100644
index 0000000..1f827fa
--- /dev/null
+++ b/res/drawable-xhdpi/ic_launcher_info_normal_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_launcher_market_holo.png b/res/drawable-xhdpi/ic_launcher_market_holo.png
new file mode 100644
index 0000000..958f0de
--- /dev/null
+++ b/res/drawable-xhdpi/ic_launcher_market_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_launcher_trashcan_active_holo.png b/res/drawable-xhdpi/ic_launcher_trashcan_active_holo.png
new file mode 100644
index 0000000..77cc3e4
--- /dev/null
+++ b/res/drawable-xhdpi/ic_launcher_trashcan_active_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_launcher_trashcan_normal_holo.png b/res/drawable-xhdpi/ic_launcher_trashcan_normal_holo.png
new file mode 100644
index 0000000..ce6aff0
--- /dev/null
+++ b/res/drawable-xhdpi/ic_launcher_trashcan_normal_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_search_google_logo_normal_holo.png b/res/drawable-xhdpi/ic_search_google_logo_normal_holo.png
new file mode 100644
index 0000000..b4978ae
--- /dev/null
+++ b/res/drawable-xhdpi/ic_search_google_logo_normal_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_search_normal_holo.png b/res/drawable-xhdpi/ic_search_normal_holo.png
new file mode 100644
index 0000000..3700a0c
--- /dev/null
+++ b/res/drawable-xhdpi/ic_search_normal_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_voice_search_holo.png b/res/drawable-xhdpi/ic_voice_search_holo.png
new file mode 100644
index 0000000..bab4e49
--- /dev/null
+++ b/res/drawable-xhdpi/ic_voice_search_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/page_hover_left_holo.9.png b/res/drawable-xhdpi/page_hover_left_holo.9.png
new file mode 100644
index 0000000..9187c9b
--- /dev/null
+++ b/res/drawable-xhdpi/page_hover_left_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/page_hover_right_holo.9.png b/res/drawable-xhdpi/page_hover_right_holo.9.png
new file mode 100644
index 0000000..ad70587
--- /dev/null
+++ b/res/drawable-xhdpi/page_hover_right_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/portal_container_holo.9.png b/res/drawable-xhdpi/portal_container_holo.9.png
new file mode 100644
index 0000000..55c701b
--- /dev/null
+++ b/res/drawable-xhdpi/portal_container_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/portal_ring_inner_holo.png b/res/drawable-xhdpi/portal_ring_inner_holo.png
new file mode 100644
index 0000000..dfdd622
--- /dev/null
+++ b/res/drawable-xhdpi/portal_ring_inner_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/portal_ring_outer_holo.png b/res/drawable-xhdpi/portal_ring_outer_holo.png
new file mode 100644
index 0000000..43579ec
--- /dev/null
+++ b/res/drawable-xhdpi/portal_ring_outer_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/portal_ring_rest.png b/res/drawable-xhdpi/portal_ring_rest.png
new file mode 100644
index 0000000..dcf1ae8
--- /dev/null
+++ b/res/drawable-xhdpi/portal_ring_rest.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_selected_focused_holo.9.png b/res/drawable-xhdpi/tab_selected_focused_holo.9.png
new file mode 100644
index 0000000..ffc7331
--- /dev/null
+++ b/res/drawable-xhdpi/tab_selected_focused_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_selected_holo.9.png b/res/drawable-xhdpi/tab_selected_holo.9.png
new file mode 100644
index 0000000..9c98c9d
--- /dev/null
+++ b/res/drawable-xhdpi/tab_selected_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_selected_pressed_focused_holo.9.png b/res/drawable-xhdpi/tab_selected_pressed_focused_holo.9.png
new file mode 100644
index 0000000..2412711
--- /dev/null
+++ b/res/drawable-xhdpi/tab_selected_pressed_focused_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_selected_pressed_holo.9.png b/res/drawable-xhdpi/tab_selected_pressed_holo.9.png
new file mode 100644
index 0000000..36bdf66
--- /dev/null
+++ b/res/drawable-xhdpi/tab_selected_pressed_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_unselected_focused_holo.9.png b/res/drawable-xhdpi/tab_unselected_focused_holo.9.png
new file mode 100644
index 0000000..dcf6964
--- /dev/null
+++ b/res/drawable-xhdpi/tab_unselected_focused_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_unselected_holo.9.png b/res/drawable-xhdpi/tab_unselected_holo.9.png
new file mode 100644
index 0000000..557f3f5
--- /dev/null
+++ b/res/drawable-xhdpi/tab_unselected_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_unselected_pressed_focused_holo.9.png b/res/drawable-xhdpi/tab_unselected_pressed_focused_holo.9.png
new file mode 100644
index 0000000..1653600
--- /dev/null
+++ b/res/drawable-xhdpi/tab_unselected_pressed_focused_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/tab_unselected_pressed_holo.9.png b/res/drawable-xhdpi/tab_unselected_pressed_holo.9.png
new file mode 100644
index 0000000..09ae705
--- /dev/null
+++ b/res/drawable-xhdpi/tab_unselected_pressed_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/widget_resize_frame_holo.9.png b/res/drawable-xhdpi/widget_resize_frame_holo.9.png
new file mode 100644
index 0000000..4988cad
--- /dev/null
+++ b/res/drawable-xhdpi/widget_resize_frame_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/widget_resize_handle_bottom.png b/res/drawable-xhdpi/widget_resize_handle_bottom.png
new file mode 100644
index 0000000..18b5a26
--- /dev/null
+++ b/res/drawable-xhdpi/widget_resize_handle_bottom.png
Binary files differ
diff --git a/res/drawable-xhdpi/widget_resize_handle_left.png b/res/drawable-xhdpi/widget_resize_handle_left.png
new file mode 100644
index 0000000..40d4e0b
--- /dev/null
+++ b/res/drawable-xhdpi/widget_resize_handle_left.png
Binary files differ
diff --git a/res/drawable-xhdpi/widget_resize_handle_right.png b/res/drawable-xhdpi/widget_resize_handle_right.png
new file mode 100644
index 0000000..5ca6071
--- /dev/null
+++ b/res/drawable-xhdpi/widget_resize_handle_right.png
Binary files differ
diff --git a/res/drawable-xhdpi/widget_resize_handle_top.png b/res/drawable-xhdpi/widget_resize_handle_top.png
new file mode 100644
index 0000000..329559c
--- /dev/null
+++ b/res/drawable-xhdpi/widget_resize_handle_top.png
Binary files differ
diff --git a/res/drawable/all_apps_button.xml b/res/drawable/all_apps_button.xml
deleted file mode 100644
index 9f6b8ac..0000000
--- a/res/drawable/all_apps_button.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?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.
--->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_pressed="true" android:drawable="@drawable/all_apps_button_pressed" />
-    <item android:state_focused="true" android:state_window_focused="true" android:drawable="@drawable/all_apps_button_focused" />
-    <item android:state_focused="true" android:state_window_focused="false" android:drawable="@drawable/all_apps_button_normal" />
-    <item android:drawable="@drawable/all_apps_button_normal" />
-</selector>
-
diff --git a/res/drawable/box_launcher_top.xml b/res/drawable/box_launcher_top.xml
deleted file mode 100644
index 20c07c4..0000000
--- a/res/drawable/box_launcher_top.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?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.
--->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_pressed="true" android:drawable="@drawable/box_launcher_top_pressed" />
-    <item android:state_focused="true" android:state_window_focused="true" android:drawable="@drawable/box_launcher_top_selected" />
-    <item android:state_focused="true" android:state_window_focused="false" android:drawable="@drawable/box_launcher_top_normal" />
-    <item android:drawable="@drawable/box_launcher_top_normal" />
-</selector>
-
diff --git a/res/drawable/hotseat_browser.xml b/res/drawable/hotseat_browser.xml
deleted file mode 100644
index 3c327bf..0000000
--- a/res/drawable/hotseat_browser.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?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.
--->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_pressed="true" android:drawable="@drawable/hotseat_browser_pressed" />
-    <item android:state_focused="true" android:state_window_focused="true" android:drawable="@drawable/hotseat_browser_focused" />
-    <item android:state_focused="true" android:state_window_focused="false" android:drawable="@drawable/hotseat_browser_normal" />
-    <item android:drawable="@drawable/hotseat_browser_normal" />
-</selector>
-
diff --git a/res/drawable/hotseat_phone.xml b/res/drawable/hotseat_phone.xml
deleted file mode 100644
index 318a81e..0000000
--- a/res/drawable/hotseat_phone.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?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.
--->
-
-<selector xmlns:android="http://schemas.android.com/apk/res/android">
-    <item android:state_pressed="true" android:drawable="@drawable/hotseat_phone_pressed" />
-    <item android:state_focused="true" android:state_window_focused="true" android:drawable="@drawable/hotseat_phone_focused" />
-    <item android:state_focused="true" android:state_window_focused="false" android:drawable="@drawable/hotseat_phone_normal" />
-    <item android:drawable="@drawable/hotseat_phone_normal" />
-</selector>
-
diff --git a/res/layout-land/hotseat.xml b/res/layout-land/hotseat.xml
index 79661a7..9dbe234 100644
--- a/res/layout-land/hotseat.xml
+++ b/res/layout-land/hotseat.xml
@@ -30,4 +30,4 @@
         launcher:widthGap="-1dp"
         launcher:heightGap="-1dp"
         launcher:maxGap="@dimen/workspace_max_gap" />
-</com.android.launcher2.Hotseat>
\ No newline at end of file
+</com.android.launcher2.Hotseat>
diff --git a/res/layout-land/launcher.xml b/res/layout-land/launcher.xml
index 4d40ada..215f8db 100644
--- a/res/layout-land/launcher.xml
+++ b/res/layout-land/launcher.xml
@@ -23,11 +23,12 @@
     android:layout_height="match_parent">
 
     <include
-        android:id="@+id/paged_view_indicator_track"
-        layout="@layout/scroll_indicator_track"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_gravity="bottom" />
+        android:id="@+id/dock_divider"
+        layout="@layout/dock_divider"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:layout_marginRight="@dimen/button_bar_height"
+        android:layout_gravity="right" />
     <include
         android:id="@+id/paged_view_indicator"
         layout="@layout/scroll_indicator"
@@ -45,7 +46,9 @@
         launcher:defaultScreen="2"
         launcher:cellCountX="4"
         launcher:cellCountY="4"
-        launcher:pageSpacing="@dimen/workspace_page_spacing">
+        launcher:pageSpacing="@dimen/workspace_page_spacing"
+        launcher:scrollIndicatorPaddingLeft="@dimen/qsb_bar_height"
+        launcher:scrollIndicatorPaddingRight="@dimen/button_bar_height">
 
         <include android:id="@+id/cell1" layout="@layout/workspace_screen" />
         <include android:id="@+id/cell2" layout="@layout/workspace_screen" />
@@ -71,6 +74,4 @@
         android:layout_width="@dimen/button_bar_height"
         android:layout_height="match_parent"
         android:layout_gravity="right" />
-
-
 </com.android.launcher2.DragLayer>
diff --git a/res/layout-port/hotseat.xml b/res/layout-port/hotseat.xml
index 88dd738..a122abb 100644
--- a/res/layout-port/hotseat.xml
+++ b/res/layout-port/hotseat.xml
@@ -23,6 +23,7 @@
         android:id="@+id/layout"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
+        android:paddingTop="@dimen/button_bar_height_padding"
         android:paddingLeft="@dimen/workspace_left_padding"
         android:paddingRight="@dimen/workspace_right_padding"
         launcher:cellWidth="@dimen/workspace_cell_width"
diff --git a/res/layout-port/launcher.xml b/res/layout-port/launcher.xml
index fc39034..f7e93f0 100644
--- a/res/layout-port/launcher.xml
+++ b/res/layout-port/launcher.xml
@@ -25,12 +25,12 @@
     <!-- Keep these behind the workspace so that they are not visible when
          we go into AllApps -->
     <include
-        android:id="@+id/paged_view_indicator_track"
-        layout="@layout/scroll_indicator_track"
+        android:id="@+id/dock_divider"
+        layout="@layout/dock_divider"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:layout_gravity="bottom"
-        android:layout_marginBottom="@dimen/button_bar_height" />
+        android:layout_marginBottom="@dimen/button_bar_height"
+        android:layout_gravity="bottom" />
     <include
         android:id="@+id/paged_view_indicator"
         layout="@layout/scroll_indicator"
@@ -47,7 +47,9 @@
         launcher:defaultScreen="2"
         launcher:cellCountX="4"
         launcher:cellCountY="4"
-        launcher:pageSpacing="@dimen/workspace_page_spacing">
+        launcher:pageSpacing="@dimen/workspace_page_spacing"
+        launcher:scrollIndicatorPaddingLeft="@dimen/dock_divider_padding_left"
+        launcher:scrollIndicatorPaddingRight="@dimen/dock_divider_padding_right">
 
         <include android:id="@+id/cell1" layout="@layout/workspace_screen" />
         <include android:id="@+id/cell2" layout="@layout/workspace_screen" />
@@ -71,9 +73,6 @@
     <include layout="@layout/hotseat"
         android:id="@+id/hotseat"
         android:layout_width="match_parent"
-        android:layout_height="@dimen/button_bar_height"
+        android:layout_height="@dimen/button_bar_height_plus_padding"
         android:layout_gravity="bottom" />
-
-
-
 </com.android.launcher2.DragLayer>
diff --git a/res/layout/scroll_indicator_track.xml b/res/layout/dock_divider.xml
similarity index 78%
rename from res/layout/scroll_indicator_track.xml
rename to res/layout/dock_divider.xml
index e3aa625..c3cac52 100644
--- a/res/layout/scroll_indicator_track.xml
+++ b/res/layout/dock_divider.xml
@@ -16,7 +16,9 @@
 <ImageView
     xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
-    android:paddingLeft="@dimen/scroll_track_padding_left"
-    android:paddingRight="@dimen/scroll_track_padding_right"
+    android:paddingLeft="@dimen/dock_divider_padding_left"
+    android:paddingRight="@dimen/dock_divider_padding_right"
+    android:paddingTop="@dimen/dock_divider_padding_top"
+    android:paddingBottom="@dimen/dock_divider_padding_bottom"
     android:scaleType="fitXY"
     android:src="@drawable/hotseat_track_holo" />
\ No newline at end of file
diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml
index d484393..d8cc7ef 100644
--- a/res/values-land/dimens.xml
+++ b/res/values-land/dimens.xml
@@ -25,8 +25,10 @@
     <dimen name="workspace_top_padding">0dp</dimen>
     <dimen name="workspace_bottom_padding">0dp</dimen>
     <dimen name="workspace_page_spacing">8dp</dimen>
-    <dimen name="scroll_track_padding_left">@dimen/qsb_bar_height</dimen>
-    <dimen name="scroll_track_padding_right">@dimen/button_bar_height</dimen>
+    <dimen name="dock_divider_padding_left">0dp</dimen>
+    <dimen name="dock_divider_padding_right">0dp</dimen>
+    <dimen name="dock_divider_padding_top">12dp</dimen>
+    <dimen name="dock_divider_padding_bottom">12dp</dimen>
 
 <!-- AppsCustomize -->
     <dimen name="apps_customize_cell_width">80dp</dimen>
diff --git a/res/values-land/styles.xml b/res/values-land/styles.xml
index e8d767c..ea79a5a 100644
--- a/res/values-land/styles.xml
+++ b/res/values-land/styles.xml
@@ -55,25 +55,5 @@
         <item name="android:paddingTop">5dp</item>
         <item name="android:paddingBottom">10dp</item>
     </style>
-
-    <style name="HotseatButton">
-        <item name="android:paddingTop">12dip</item>
-        <item name="android:paddingBottom">12dip</item>
-        <item name="android:background">@drawable/hotseat_bg_center</item>
-        <item name="android:layout_height">wrap_content</item>
-        <item name="android:layout_width">fill_parent</item>
-        <item name="android:scaleType">center</item>
-        <item name="android:focusable">true</item>
-        <item name="android:clickable">true</item>
-    </style>
-    <style name="HotseatButton.Left">
-        <item name="android:layout_marginBottom">4dip</item>
-        <item name="android:background">@drawable/hotseat_bg_left</item>
-    </style>
-    <style name="HotseatButton.Right">
-        <item name="android:layout_marginTop">4dip</item>
-        <item name="android:background">@drawable/hotseat_bg_right</item>
-    </style>
-
 </resources>
 
diff --git a/res/values/arrays.xml b/res/values/arrays.xml
deleted file mode 100644
index 6bd16ed..0000000
--- a/res/values/arrays.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string-array name="hotseats" translatable="false">
-        <item>intent:#Intent;action=android.intent.action.DIAL;end</item>
-        <item>*BROWSER*</item>
-    </string-array>
-    <array name="hotseat_icons" translatable="false">
-        <item>@drawable/hotseat_phone</item>
-        <item>@drawable/hotseat_browser</item>
-    </array>
-</resources>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index e093e36..4359103 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -108,6 +108,9 @@
         <attr name="pageLayoutPaddingRight" format="dimension" />
         <!-- The space between adjacent pages of the PagedView. -->
         <attr name="pageSpacing" format="dimension" />
+        <!-- The padding for the scroll indicator area -->
+        <attr name="scrollIndicatorPaddingLeft" format="dimension" />
+        <attr name="scrollIndicatorPaddingRight" format="dimension" />
     </declare-styleable>
 
     <!-- AppsCustomizePagedView specific attributes.  These attributes are used to
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 44da352..215f698 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -24,8 +24,10 @@
     <dimen name="workspace_max_gap">8dp</dimen>
     <dimen name="folder_cell_width">74dp</dimen>
     <dimen name="folder_cell_height">80dp</dimen>
-    <dimen name="scroll_track_padding_left">12dp</dimen>
-    <dimen name="scroll_track_padding_right">12dp</dimen>
+    <dimen name="dock_divider_padding_left">12dp</dimen>
+    <dimen name="dock_divider_padding_right">12dp</dimen>
+    <dimen name="dock_divider_padding_top">0dp</dimen>
+    <dimen name="dock_divider_padding_bottom">0dp</dimen>
 
 <!-- QSB -->
     <dimen name="toolbar_button_vertical_padding">0dip</dimen>
@@ -45,6 +47,10 @@
 
     <!-- height of the bottom row of controls -->
     <dimen name="button_bar_height">80dip</dimen>
+    <!-- Because portal animations go beyond the bounds of an icon, we need
+         to make the dock layout slightly larger than the button_bar_height -->
+    <dimen name="button_bar_height_padding">8dp</dimen>
+    <dimen name="button_bar_height_plus_padding">88dp</dimen>
 
     <!-- Drag padding to add to the drop targets -->
     <dimen name="drop_target_drag_padding">20dp</dimen>
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index e318960..ae301c6 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -282,7 +282,6 @@
                     Environment.getExternalStorageDirectory() + "/launcher");
         }
 
-        loadHotseats();
         checkForLocaleChange();
         setContentView(R.layout.launcher);
         setupViews();
@@ -368,7 +367,6 @@
             sLocaleConfiguration.mnc = mnc;
 
             mIconCache.flush();
-            loadHotseats();
 
             final LocaleConfiguration localeConfiguration = sLocaleConfiguration;
             new Thread("WriteLocaleConfiguration") {
@@ -458,141 +456,6 @@
         return Uri.parse(url);
     }
 
-    // Load the Intent templates from arrays.xml to populate the hotseats. For
-    // each Intent, if it resolves to a single app, use that as the launch
-    // intent & use that app's label as the contentDescription. Otherwise,
-    // retain the ResolveActivity so the user can pick an app.
-    private void loadHotseats() {
-        if (mHotseatConfig == null) {
-            mHotseatConfig = getResources().getStringArray(R.array.hotseats);
-            if (mHotseatConfig.length > 0) {
-                mHotseats = new Intent[mHotseatConfig.length];
-                mHotseatLabels = new CharSequence[mHotseatConfig.length];
-                mHotseatIcons = new Drawable[mHotseatConfig.length];
-            } else {
-                mHotseats = null;
-                mHotseatIcons = null;
-                mHotseatLabels = null;
-            }
-
-            TypedArray hotseatIconDrawables = getResources().obtainTypedArray(R.array.hotseat_icons);
-            for (int i=0; i<mHotseatConfig.length; i++) {
-                // load icon for this slot; currently unrelated to the actual activity
-                try {
-                    mHotseatIcons[i] = hotseatIconDrawables.getDrawable(i);
-                } catch (ArrayIndexOutOfBoundsException ex) {
-                    Log.w(TAG, "Missing hotseat_icons array item #" + i);
-                    mHotseatIcons[i] = null;
-                }
-            }
-            hotseatIconDrawables.recycle();
-        }
-
-        PackageManager pm = getPackageManager();
-        for (int i=0; i<mHotseatConfig.length; i++) {
-            Intent intent = null;
-            if (mHotseatConfig[i].equals("*BROWSER*")) {
-                // magic value meaning "launch user's default web browser"
-                // replace it with a generic web request so we can see if there is indeed a default
-                String defaultUri = getString(R.string.default_browser_url);
-                intent = new Intent(
-                        Intent.ACTION_VIEW,
-                        ((defaultUri != null)
-                            ? Uri.parse(defaultUri)
-                            : getDefaultBrowserUri())
-                    ).addCategory(Intent.CATEGORY_BROWSABLE);
-                // note: if the user launches this without a default set, she
-                // will always be taken to the default URL above; this is
-                // unavoidable as we must specify a valid URL in order for the
-                // chooser to appear, and once the user selects something, that
-                // URL is unavoidably sent to the chosen app.
-            } else {
-                try {
-                    intent = Intent.parseUri(mHotseatConfig[i], 0);
-                } catch (java.net.URISyntaxException ex) {
-                    Log.w(TAG, "Invalid hotseat intent: " + mHotseatConfig[i]);
-                    // bogus; leave intent=null
-                }
-            }
-
-            if (intent == null) {
-                mHotseats[i] = null;
-                mHotseatLabels[i] = getText(R.string.activity_not_found);
-                continue;
-            }
-
-            if (LOGD) {
-                Log.d(TAG, "loadHotseats: hotseat " + i
-                    + " initial intent=["
-                    + intent.toUri(Intent.URI_INTENT_SCHEME)
-                    + "]");
-            }
-
-            ResolveInfo bestMatch = pm.resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY);
-            List<ResolveInfo> allMatches = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
-            if (LOGD) {
-                Log.d(TAG, "Best match for intent: " + bestMatch);
-                Log.d(TAG, "All matches: ");
-                for (ResolveInfo ri : allMatches) {
-                    Log.d(TAG, "  --> " + ri);
-                }
-            }
-            // did this resolve to a single app, or the resolver?
-            if (allMatches.size() == 0 || bestMatch == null) {
-                // can't find any activity to handle this. let's leave the
-                // intent as-is and let Launcher show a toast when it fails
-                // to launch.
-                mHotseats[i] = intent;
-
-                // set accessibility text to "Not installed"
-                mHotseatLabels[i] = getText(R.string.activity_not_found);
-            } else {
-                boolean found = false;
-                for (ResolveInfo ri : allMatches) {
-                    if (bestMatch.activityInfo.name.equals(ri.activityInfo.name)
-                        && bestMatch.activityInfo.applicationInfo.packageName
-                            .equals(ri.activityInfo.applicationInfo.packageName)) {
-                        found = true;
-                        break;
-                    }
-                }
-
-                if (!found) {
-                    if (LOGD) Log.d(TAG, "Multiple options, no default yet");
-                    // the bestMatch is probably the ResolveActivity, meaning the
-                    // user has not yet selected a default
-                    // so: we'll keep the original intent for now
-                    mHotseats[i] = intent;
-
-                    // set the accessibility text to "Select shortcut"
-                    mHotseatLabels[i] = getText(R.string.title_select_shortcut);
-                } else {
-                    // we have an app!
-                    // now reconstruct the intent to launch it through the front
-                    // door
-                    ComponentName com = new ComponentName(
-                        bestMatch.activityInfo.applicationInfo.packageName,
-                        bestMatch.activityInfo.name);
-                    mHotseats[i] = new Intent(Intent.ACTION_MAIN).setComponent(com);
-
-                    // load the app label for accessibility
-                    mHotseatLabels[i] = bestMatch.activityInfo.loadLabel(pm);
-                }
-            }
-
-            if (LOGD) {
-                Log.d(TAG, "loadHotseats: hotseat " + i
-                    + " final intent=["
-                    + ((mHotseats[i] == null)
-                        ? "null"
-                        : mHotseats[i].toUri(Intent.URI_INTENT_SCHEME))
-                    + "] label=[" + mHotseatLabels[i]
-                    + "]"
-                    );
-            }
-        }
-    }
-
     /**
      * Returns whether we should delay spring loaded mode -- for shortcuts and widgets that have
      * a configuration step, this allows the proper animations to run after other transitions.
@@ -2250,7 +2113,6 @@
                     if (!springLoaded && !LauncherApplication.isScreenLarge()) {
                         // Hide the workspace scrollbar
                         mWorkspace.hideScrollingIndicator(true);
-                        mWorkspace.hideScrollIndicatorTrack();
                     }
                 }
             });
@@ -2276,7 +2138,6 @@
                 if (!springLoaded && !LauncherApplication.isScreenLarge()) {
                     // Hide the workspace scrollbar
                     mWorkspace.hideScrollingIndicator(true);
-                    mWorkspace.hideScrollIndicatorTrack();
                 }
             }
         }
@@ -2334,7 +2195,6 @@
                 public void onAnimationStart(android.animation.Animator animation) {
                     if (!springLoaded && !LauncherApplication.isScreenLarge()) {
                         // Show the workspace scrollbar
-                        mWorkspace.showScrollIndicatorTrack();
                         mWorkspace.flashScrollingIndicator();
                     }
                 }
@@ -2356,8 +2216,7 @@
                 ((LauncherTransitionable) fromView).onLauncherTransitionEnd(null);
 
                 if (!springLoaded && !LauncherApplication.isScreenLarge()) {
-                    // Show the workspace scrollbar
-                    mWorkspace.showScrollIndicatorTrack();
+                    // Flash the workspace scrollbar
                     mWorkspace.flashScrollingIndicator();
                 }
             }
diff --git a/src/com/android/launcher2/PagedView.java b/src/com/android/launcher2/PagedView.java
index bed107a..f8c956b 100644
--- a/src/com/android/launcher2/PagedView.java
+++ b/src/com/android/launcher2/PagedView.java
@@ -163,7 +163,8 @@
     // Scrolling indicator
     private android.animation.ValueAnimator mScrollIndicatorAnimator;
     private ImageView mScrollIndicator;
-    private ImageView mScrollTrack;
+    private int mScrollIndicatorPaddingLeft;
+    private int mScrollIndicatorPaddingRight;
     private boolean mHasScrollIndicator = true;
     private static final int sScrollIndicatorFadeInDuration = 150;
     private static final int sScrollIndicatorFadeOutDuration = 650;
@@ -203,6 +204,10 @@
                 R.styleable.PagedView_pageLayoutWidthGap, -1);
         mPageLayoutHeightGap = a.getDimensionPixelSize(
                 R.styleable.PagedView_pageLayoutHeightGap, -1);
+        mScrollIndicatorPaddingLeft =
+            a.getDimensionPixelSize(R.styleable.PagedView_scrollIndicatorPaddingLeft, 0);
+        mScrollIndicatorPaddingRight =
+            a.getDimensionPixelSize(R.styleable.PagedView_scrollIndicatorPaddingRight, 0);
         a.recycle();
 
         setHapticFeedbackEnabled(false);
@@ -1741,23 +1746,13 @@
         int numPages = getChildCount();
         int pageWidth = getMeasuredWidth();
         int maxPageWidth = (numPages * getMeasuredWidth()) + ((numPages - 1) * mPageSpacing);
-        int trackWidth = pageWidth;
+        int trackWidth = pageWidth - mScrollIndicatorPaddingLeft - mScrollIndicatorPaddingRight;
         int indicatorWidth = mScrollIndicator.getMeasuredWidth() -
                 mScrollIndicator.getPaddingLeft() - mScrollIndicator.getPaddingRight();
-        int paddingLeft = 0;
-        int paddingRight = 0;
-
-        // Get the track properties
-        getScrollingIndicatorTrack();
-        if (mScrollTrack != null) {
-            paddingLeft = mScrollTrack.getPaddingLeft();
-            paddingRight = mScrollTrack.getPaddingRight();
-            trackWidth = mScrollTrack.getMeasuredWidth() - paddingLeft - paddingRight;
-        }
 
         float offset = (float) getScrollX() / maxPageWidth;
         int indicatorSpace = trackWidth / numPages;
-        int indicatorPos = (int) (offset * trackWidth) + paddingLeft;
+        int indicatorPos = (int) (offset * trackWidth) + mScrollIndicatorPaddingLeft;
         if (hasElasticScrollIndicator()) {
             if (mScrollIndicator.getMeasuredWidth() != indicatorSpace) {
                 mScrollIndicator.getLayoutParams().width = indicatorSpace;
@@ -1771,30 +1766,10 @@
         mScrollIndicator.invalidate();
     }
 
-    private ImageView getScrollingIndicatorTrack() {
-        if (mScrollTrack == null) {
-            ViewGroup parent = (ViewGroup) getParent();
-            mScrollTrack = (ImageView) (parent.findViewById(R.id.paged_view_indicator_track));
-        }
-        return mScrollTrack;
-    }
-
     public void showScrollIndicatorTrack() {
-        if (!isScrollingIndicatorEnabled()) return;
-
-        getScrollingIndicatorTrack();
-        if (mScrollTrack != null) {
-            mScrollTrack.setVisibility(View.VISIBLE);
-        }
     }
 
     public void hideScrollIndicatorTrack() {
-        if (!isScrollingIndicatorEnabled()) return;
-
-        getScrollingIndicatorTrack();
-        if (mScrollTrack != null) {
-            mScrollTrack.setVisibility(View.GONE);
-        }
     }
 
     /* Accessibility */
