ViewConfiguration.java revision 4296fc4d326447875c26a925f12b3935632f13bb
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* 29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project 39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License. 69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at 79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and 149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License. 159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.view; 189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.content.Context; 209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.util.DisplayMetrics; 219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.util.SparseArray; 229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/** 249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Contains methods to standard constants used in the UI for timeouts, sizes, and distances. 259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class ViewConfiguration { 279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the width of the horizontal scrollbar and the height of the vertical scrollbar in 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * pixels 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int SCROLL_BAR_SIZE = 10; 329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the length of the fading edges in pixels 359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int FADING_EDGE_LENGTH = 12; 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds of the pressed state in child 409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * components. 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int PRESSED_STATE_DURATION = 85; 439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds before a press turns into 469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * a long press 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int LONG_PRESS_TIMEOUT = 500; 499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds a user needs to hold down the 529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * appropriate button to bring up the global actions dialog (power off, 539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * lock screen, etc). 549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int GLOBAL_ACTIONS_KEY_TIMEOUT = 500; 569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds we will wait to see if a touch event 599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * is a tap or a scroll. If the user does not move within this interval, it is 609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered to be a tap. 619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int TAP_TIMEOUT = 100; 639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds we will wait to see if a touch event 669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * is a jump tap. If the user does not complete the jump tap within this interval, it is 679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered to be a tap. 689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int JUMP_TAP_TIMEOUT = 500; 709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds between the first tap's up event and 739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * the second tap's down event for an interaction to be considered a 749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * double-tap. 759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int DOUBLE_TAP_TIMEOUT = 300; 779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Defines the duration in milliseconds we want to display zoom controls in response 809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * to a user panning within an application. 819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int ZOOM_CONTROLS_TIMEOUT = 3000; 839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Inset in pixels to look for touchable content when the user touches the edge of the screen 869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int EDGE_SLOP = 12; 889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Distance a touch can wander before we think the user is scrolling in pixels 919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int TOUCH_SLOP = 25; 939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Distance between the first touch and second touch to still be considered a double tap 969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int DOUBLE_TAP_SLOP = 100; 989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Distance a touch needs to be outside of a window's bounds for it to 1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * count as outside for purposes of dismissing the window. 1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int WINDOW_TOUCH_SLOP = 16; 1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Minimum velocity to initiate a fling, as measured in pixels per second 1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int MINIMUM_FLING_VELOCITY = 50; 1094296fc4d326447875c26a925f12b3935632f13bbRomain Guy 1104296fc4d326447875c26a925f12b3935632f13bbRomain Guy /** 1114296fc4d326447875c26a925f12b3935632f13bbRomain Guy * Maximum velocity to initiate a fling, as measured in pixels per second 1124296fc4d326447875c26a925f12b3935632f13bbRomain Guy */ 1134296fc4d326447875c26a925f12b3935632f13bbRomain Guy private static final int MAXIMUM_FLING_VELOCITY = 4000; 1149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The maximum size of View's drawing cache, expressed in bytes. This size 1179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * should be at least equal to the size of the screen in ARGB888 format. 1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final int MAXIMUM_DRAWING_CACHE_SIZE = 320 * 480 * 4; // HVGA screen, ARGB8888 1219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The coefficient of friction applied to flings/scrolls. 1249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static float SCROLL_FRICTION = 0.015f; 1269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mEdgeSlop; 1289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mFadingEdgeLength; 1299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mMinimumFlingVelocity; 1304296fc4d326447875c26a925f12b3935632f13bbRomain Guy private final int mMaximumFlingVelocity; 1319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mScrollbarSize; 1329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mTouchSlop; 1339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mDoubleTapSlop; 1349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mWindowTouchSlop; 1359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private final int mMaximumDrawingCacheSize; 1369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private static final SparseArray<ViewConfiguration> sConfigurations = 1389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project new SparseArray<ViewConfiguration>(2); 1399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link android.view.ViewConfiguration#get(android.content.Context)} instead. 1429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 1449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public ViewConfiguration() { 1459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mEdgeSlop = EDGE_SLOP; 1469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mFadingEdgeLength = FADING_EDGE_LENGTH; 1479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mMinimumFlingVelocity = MINIMUM_FLING_VELOCITY; 1484296fc4d326447875c26a925f12b3935632f13bbRomain Guy mMaximumFlingVelocity = MAXIMUM_FLING_VELOCITY; 1499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mScrollbarSize = SCROLL_BAR_SIZE; 1509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mTouchSlop = TOUCH_SLOP; 1519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mDoubleTapSlop = DOUBLE_TAP_SLOP; 1529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mWindowTouchSlop = WINDOW_TOUCH_SLOP; 1539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project //noinspection deprecation 1549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mMaximumDrawingCacheSize = MAXIMUM_DRAWING_CACHE_SIZE; 1559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 1569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Creates a new configuration for the specified context. The configuration depends on 1599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * various parameters of the context, like the dimension of the display or the density 1609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * of the display. 1619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 1629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @param context The application context used to initialize this view configuration. 1639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 1649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @see #get(android.content.Context) 1659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @see android.util.DisplayMetrics 1669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project private ViewConfiguration(Context context) { 1689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project final DisplayMetrics metrics = context.getResources().getDisplayMetrics(); 1699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project final float density = metrics.density; 1709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mEdgeSlop = (int) (density * EDGE_SLOP + 0.5f); 1729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mFadingEdgeLength = (int) (density * FADING_EDGE_LENGTH + 0.5f); 1739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mMinimumFlingVelocity = (int) (density * MINIMUM_FLING_VELOCITY + 0.5f); 1744296fc4d326447875c26a925f12b3935632f13bbRomain Guy mMaximumFlingVelocity = (int) (density * MAXIMUM_FLING_VELOCITY + 0.5f); 1759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mScrollbarSize = (int) (density * SCROLL_BAR_SIZE + 0.5f); 1769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mTouchSlop = (int) (density * TOUCH_SLOP + 0.5f); 1779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mDoubleTapSlop = (int) (density * DOUBLE_TAP_SLOP + 0.5f); 1789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mWindowTouchSlop = (int) (density * WINDOW_TOUCH_SLOP + 0.5f); 1799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project // Size of the screen in bytes, in ARGB_8888 format 1819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mMaximumDrawingCacheSize = 4 * metrics.widthPixels * metrics.heightPixels; 1829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 1839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 1859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Returns a configuration for the specified context. The configuration depends on 1869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * various parameters of the context, like the dimension of the display or the 1879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * density of the display. 1889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 1899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @param context The application context used to initialize the view configuration. 1909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 1919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static ViewConfiguration get(Context context) { 1929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project final DisplayMetrics metrics = context.getResources().getDisplayMetrics(); 1939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project final int density = (int) (100.0f * metrics.density); 1949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ViewConfiguration configuration = sConfigurations.get(density); 1969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (configuration == null) { 1979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project configuration = new ViewConfiguration(context); 1989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project sConfigurations.put(density, configuration); 1999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return configuration; 2029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return The width of the horizontal scrollbar and the height of the vertical 2069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * scrollbar in pixels 2079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 2089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledScrollBarSize()} instead. 2099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 2119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getScrollBarSize() { 2129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return SCROLL_BAR_SIZE; 2139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return The width of the horizontal scrollbar and the height of the vertical 2179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * scrollbar in pixels 2189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledScrollBarSize() { 2209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mScrollbarSize; 2219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the length of the fading edges in pixels 2259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 2269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledFadingEdgeLength()} instead. 2279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 2299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getFadingEdgeLength() { 2309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return FADING_EDGE_LENGTH; 2319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the length of the fading edges in pixels 2359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledFadingEdgeLength() { 2379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mFadingEdgeLength; 2389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the duration in milliseconds of the pressed state in child 2429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * components. 2439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getPressedStateDuration() { 2459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return PRESSED_STATE_DURATION; 2469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the duration in milliseconds before a press turns into 2509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * a long press 2519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getLongPressTimeout() { 2539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return LONG_PRESS_TIMEOUT; 2549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the duration in milliseconds we will wait to see if a touch event 2589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * is a tap or a scroll. If the user does not move within this interval, it is 2599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered to be a tap. 2609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getTapTimeout() { 2629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return TAP_TIMEOUT; 2639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the duration in milliseconds we will wait to see if a touch event 2679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * is a jump tap. If the user does not move within this interval, it is 2689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered to be a tap. 2699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getJumpTapTimeout() { 2719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return JUMP_TAP_TIMEOUT; 2729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the duration in milliseconds between the first tap's up event and 2769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * the second tap's down event for an interaction to be considered a 2779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * double-tap. 2789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getDoubleTapTimeout() { 2809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return DOUBLE_TAP_TIMEOUT; 2819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Inset in pixels to look for touchable content when the user touches the edge of the 2859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * screen 2869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 2879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledEdgeSlop()} instead. 2889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 2909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getEdgeSlop() { 2919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return EDGE_SLOP; 2929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 2939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 2959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Inset in pixels to look for touchable content when the user touches the edge of the 2969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * screen 2979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 2989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledEdgeSlop() { 2999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mEdgeSlop; 3009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance a touch can wander before we think the user is scrolling in pixels 3049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 3059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledTouchSlop()} instead. 3069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 3089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getTouchSlop() { 3099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return TOUCH_SLOP; 3109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance a touch can wander before we think the user is scrolling in pixels 3149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledTouchSlop() { 3169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mTouchSlop; 3179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance between the first touch and second touch to still be 3219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered a double tap 3229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledDoubleTapSlop()} instead. 3239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @hide The only client of this should be GestureDetector, which needs this 3249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * for clients that still use its deprecated constructor. 3259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 3279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getDoubleTapSlop() { 3289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return DOUBLE_TAP_SLOP; 3299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance between the first touch and second touch to still be 3339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * considered a double tap 3349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledDoubleTapSlop() { 3369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mDoubleTapSlop; 3379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance a touch must be outside the bounds of a window for it 3419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * to be counted as outside the window for purposes of dismissing that 3429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * window. 3439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 3449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledWindowTouchSlop()} instead. 3459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 3479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getWindowTouchSlop() { 3489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return WINDOW_TOUCH_SLOP; 3499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Distance a touch must be outside the bounds of a window for it 3539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * to be counted as outside the window for purposes of dismissing that 3549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * window. 3559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledWindowTouchSlop() { 3579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mWindowTouchSlop; 3589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Minimum velocity to initiate a fling, as measured in pixels per second. 3629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 3639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledMinimumFlingVelocity()} instead. 3649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 3669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getMinimumFlingVelocity() { 3679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return MINIMUM_FLING_VELOCITY; 3689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return Minimum velocity to initiate a fling, as measured in pixels per second. 3729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 3739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledMinimumFlingVelocity() { 3749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mMinimumFlingVelocity; 3759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 3784296fc4d326447875c26a925f12b3935632f13bbRomain Guy * @return Maximum velocity to initiate a fling, as measured in pixels per second. 3794296fc4d326447875c26a925f12b3935632f13bbRomain Guy * 3804296fc4d326447875c26a925f12b3935632f13bbRomain Guy * @deprecated Use {@link #getScaledMaximumFlingVelocity()} instead. 3814296fc4d326447875c26a925f12b3935632f13bbRomain Guy */ 3824296fc4d326447875c26a925f12b3935632f13bbRomain Guy @Deprecated 3834296fc4d326447875c26a925f12b3935632f13bbRomain Guy public static int getMaximumFlingVelocity() { 3844296fc4d326447875c26a925f12b3935632f13bbRomain Guy return MAXIMUM_FLING_VELOCITY; 3854296fc4d326447875c26a925f12b3935632f13bbRomain Guy } 3864296fc4d326447875c26a925f12b3935632f13bbRomain Guy 3874296fc4d326447875c26a925f12b3935632f13bbRomain Guy /** 3884296fc4d326447875c26a925f12b3935632f13bbRomain Guy * @return Maximum velocity to initiate a fling, as measured in pixels per second. 3894296fc4d326447875c26a925f12b3935632f13bbRomain Guy */ 3904296fc4d326447875c26a925f12b3935632f13bbRomain Guy public int getScaledMaximumFlingVelocity() { 3914296fc4d326447875c26a925f12b3935632f13bbRomain Guy return mMaximumFlingVelocity; 3924296fc4d326447875c26a925f12b3935632f13bbRomain Guy } 3934296fc4d326447875c26a925f12b3935632f13bbRomain Guy 3944296fc4d326447875c26a925f12b3935632f13bbRomain Guy /** 3959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The maximum drawing cache size expressed in bytes. 3969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 3979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the maximum size of View's drawing cache expressed in bytes 3989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 3999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @deprecated Use {@link #getScaledMaximumDrawingCacheSize()} instead. 4009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 4019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project @Deprecated 4029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static int getMaximumDrawingCacheSize() { 4039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project //noinspection deprecation 4049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return MAXIMUM_DRAWING_CACHE_SIZE; 4059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 4089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The maximum drawing cache size expressed in bytes. 4099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 4109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the maximum size of View's drawing cache expressed in bytes 4119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 4129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public int getScaledMaximumDrawingCacheSize() { 4139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return mMaximumDrawingCacheSize; 4149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 4179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The amount of time that the zoom controls should be 4189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * displayed on the screen expressed in milliseconds. 4199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 4209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return the time the zoom controls should be visible expressed 4219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * in milliseconds. 4229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 4239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static long getZoomControlsTimeout() { 4249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return ZOOM_CONTROLS_TIMEOUT; 4259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 4289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The amount of time a user needs to press the relevant key to bring up 4299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * the global actions dialog. 4309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 4319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return how long a user needs to press the relevant key to bring up 4329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * the global actions dialog. 4339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 4349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static long getGlobalActionKeyTimeout() { 4359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return GLOBAL_ACTIONS_KEY_TIMEOUT; 4369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /** 4399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * The amount of friction applied to scrolls and flings. 4409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 4419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * @return A scalar dimensionless value representing the coefficient of 4429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * friction. 4439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 4449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project public static float getScrollFriction() { 4459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return SCROLL_FRICTION; 4469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 448