summaryrefslogtreecommitdiffstats
path: root/policy
Commit message (Collapse)AuthorAgeFilesLines
* am c8d19b89: Merge "Update transient navigation confirmation wording & ↵John Spurlock2013-09-162-83/+95
|\ | | | | | | | | | | | | behavior" into klp-dev * commit 'c8d19b894ebe659d9508a9a4763388d8573c6d76': Update transient navigation confirmation wording & behavior
| * Update transient navigation confirmation wording & behaviorJohn Spurlock2013-09-162-83/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Decrease transient navigation confirmation annoyance. - Only use the power-key as a signal if we detect a screen-off screen-on within a short threshold value. - Auto-confirm if user performs the indicated gesture. - Remember confirmation across reboots. 2. Update wording to new final wording. Remove now obsolete short + long versions. Decrease message font temporarily until the new platform toast redesign is finalized. 3. Remove pre-ship ImmersiveModeTesting debug helper. Bug:10602929 Change-Id: I0bff826391058c7b282eeb61817b93b79de84893
* | am 6421aa06: Merge "Fix glitch launching new windows from transparent ↵John Spurlock2013-09-161-1/+1
|\ \ | |/ | | | | | | | | | | launcher." into klp-dev * commit '6421aa061a66312466bfa659e7fcad14c8f18834': Fix glitch launching new windows from transparent launcher.
| * Fix glitch launching new windows from transparent launcher.John Spurlock2013-09-161-1/+1
| | | | | | | | | | | | | | | | | | | | Part 1 of 2: Ignore remembered sysui visibility transparent flag value when computing global content frame. Since this fixes a visible window layout glitch, get this in asap. Bug:10561554 Change-Id: Ia3fd69ee65eb3f34fb3a684b697c98e37fabc0b0
* | am fa055694: Merge "Promote lights-out to a bar transition mode." into klp-devJohn Spurlock2013-09-141-17/+25
|\ \ | |/ | | | | | | * commit 'fa0556943ee386e83d190f1de86d73d81e08cc8a': Promote lights-out to a bar transition mode.
| * Promote lights-out to a bar transition mode.John Spurlock2013-09-141-17/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move all visual application of the legacy lights-out behind a new mode managed by BarTransitions for better coordination. Remove unused "hidden" state in NavigationBarView. Improve window state (showing/hiding/hidden) calculation, affecting whether or not sysui thinks it should animate. Removes invalid interim mode changes causing needless flashing during some transitions. Consider WINDOW_STATE_HIDING a state in which we ought to animate, since at least part of the window is visible throughout. Make the status/nav bar transition helper classes real boys. Animate KeyButtonView drawing alpha transition, cancel existing animations when resetting to avoid needless and unsightly "recovery". Bug:10746803 Change-Id: Ibd883da9041d071b6a4ff5b42cf96efba7696e9c
* | am a2906cb4: Merge "Show alternate menu panel on devices with menu key" into ↵Adam Powell2013-09-121-5/+11
|\ \ | |/ | | | | | | | | | | klp-dev * commit 'a2906cb4d9355b7a08e7fdec1924c2dbc7fda622': Show alternate menu panel on devices with menu key
| * Merge "Show alternate menu panel on devices with menu key" into klp-devAdam Powell2013-09-121-5/+11
| |\
| | * Show alternate menu panel on devices with menu keyAdam Powell2013-09-111-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a softer transition to the overflow-everywhere world for devices with menu keys. The panel menu will still be used on these devices in response to a menu key press even in the presence of an action bar with overflow. Fix a few lingering bugs around dispatching the open-overflow transition that caused problems with this along the way. Change-Id: I9d77c70f6d15c47160ac06292984101d619c44e6
* | | am 4d73951a: am c286ae17: Merge "GlobalAction dialog ref not set to null"Amith Yamasani2013-09-121-0/+1
|\ \ \ | |/ / |/| | | | | | | | * commit '4d73951a90d7b9b81146487df5a9d772351d29c1': GlobalAction dialog ref not set to null
| * | GlobalAction dialog ref not set to nullHenrik Baard2013-08-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a GlobalAction dialog is dismissed when screen goes into sleep the reference mDialog is not set to null. Next time the long presses power button and brings up the GlobalAction dialog the old reference still exist and we try to dismiss the dialog again even if it does not exist. The dialog reference in this case holds on to the dialog object using more memory than neccesary, and in rare cases we might get a crash when the dialog object is dissmissed the second time. Change-Id: I44ef1c385d90777e8f6dd9fe111eb3d9b0d3cf3f
* | | Fix issue #10688644: Java crash in com.android.phone:Dianne Hackborn2013-09-111-2/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | java.lang.SecurityException: Operation not allowed There was a situation I wasn't taking into account -- components declared by the system has a special ability to run in the processes of other uids. This means that if that code loaded into another process tries to do anything needing an app op verification, it will fail, because it will say it is calling as the system package name but it is not actually coming from the system uid. To fix this, we add a new Context.getOpPackageName() to go along-side getBasePackageName(). This is a special call for use by all app ops verification, which will be initialized with either the base package name, the actual package name, or now the default package name of the process if we are creating a context for system code being loaded into a non-system process. I had to update all of the code doing app ops checks to switch to this method to get the calling package name. Also improve the security exception throw to have a more descriptive error message. Change-Id: Ic04f77b3938585b02fccabbc12d2f0dc62b9ef25
* | Fix deadlock by keeping local copy of currentUserIdCraig Mautner2013-09-061-13/+6
| | | | | | | | | | | | | | | | | | Fetching current user id from activity causes a deadlock when holding the window manager lock. Fixes bug 10555852. Change-Id: Ib7911ef28b81aaf7f02cce311be193b36677a26d
* | Merge "Remove opaque-on-interaction from nav bar." into klp-devJohn Spurlock2013-09-051-1/+3
|\ \
| * | Remove opaque-on-interaction from nav bar.John Spurlock2013-09-051-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And decouple it from the status bar opaque-on-interaction logic. It's still important to track nav bar interaction for hideybar suspension purposes. Also fix a sysui NPE that can occur when restarting SystemUI (vs the shell). Bug:10606136 Change-Id: I66a15e02cff352e26b25aebc1c42fb58c042effa
* | | Force the nav bar visible when an IME window is visible.John Spurlock2013-09-051-1/+2
|/ / | | | | | | | | Bug:9499956 Change-Id: I1ed895c6283476440b6c47e1764b6b0fe2aa949a
* | Merge "Rename hideybars constant to SYSTEM_UI_FLAG_IMMERSIVE." into klp-devJohn Spurlock2013-08-291-5/+5
|\ \
| * | Rename hideybars constant to SYSTEM_UI_FLAG_IMMERSIVE.John Spurlock2013-08-271-5/+5
| | | | | | | | | | | | | | | | | | | | | And add more colour to the docs. Bug:10460791 Change-Id: I703d927101bb034ba6dd061e6afd3e1946440fe5
* | | Ensure IME windows always appear north of the nav bar.John Spurlock2013-08-282-6/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | Even if the bars are transparent / invisible. Refactor the PSB bar mode override logic to take the IME hint into account. Bars are overriden to opaque when hint is showing. Initialize bar state to showing, fix bug that would mark state as hidden pre-show (on shell restart). Bug:10505132 Bug:9499956 Change-Id: I21e830e90c7e9812b4192ca65c3c0cd7a6b72798
* | Allow wallpaper to extend into the entire screen.John Spurlock2013-08-271-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously it was constrained to displayInfo.appWidth/appHeight which comes from PWM.getNonDecorDisplayWidth/Height, which includes the nav bar. Also adjust window layout to entire screen. This allows wallpaper to extend into the navigation bar region, important if the nav bar is hidden or transparent. Bug:10505328 Change-Id: Ia6057b9c57b476a48f3b2d8b6368fd631e944a3e
* | Add new logging for system bar window state.John Spurlock2013-08-261-4/+8
| | | | | | | | | | | | | | And re-enable PhoneStatusBar dump output in bugreports. Bug:10488453 Change-Id: If39b32e82dee59f3c166c5a948d379030da0ea01
* | Improve transparent bar transitions.John Spurlock2013-08-232-6/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Migrate transparent transitions to the new optimized background color animations. 2. Ensure sysui animation transparent -> opaque has enough time to run before window manager crops off the content area. 3. Lose the individual alpha on each status bar icon if the bars are not opaque. Animate the alpha if visible, make sure they play together. 4. Documentation typo fix found in AnimatorSet. Bug:10344949 Change-Id: I615668ce3c552d3df15dbba5cdeeca67549a0220
* | Improve transient bar transitions.John Spurlock2013-08-202-34/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. If app clears transient flag w/ a gesture, the touch-outside listener would always win, causing an unsightly hide + immediate reshow. Instead, give the app some time to clear the flag, then perform a smooth transition in place. 2. When the transient bars are hidden, we do not know ahead of time which background will be used on reshow (if transient bars are revealed, the background is semi-transparent, if transient bars are cleared, the background is opaque). Window manager is responsible for showing windows, but sysui is responsible for setting the view background. Therefore, we need some level of coordination between the two in this case. Introduce two new non-public sysui flags that represent the window manager's request to reshow the hidden bars, but do not reshow until sysui acknowledges (by clearing the flag). This gives sysui whatever time is necessary to prepare itself for reshow, avoiding unsightly blip from opaque -> transparent during the enter animation. 3. When both system bars are hidden, any low-profile changes are moot. Avoid unsightly low-profile animations during bar reshow by suppressing the flag in this case. 4. Improve transient bar home -> launcher transition by cancelling the -> opaque animation. This also fixes a bug where hitting home from the transient bar would leave you with a semi-transparent bar in a non-transient state. Bug:10284800 Change-Id: I238210561d8d5f70c1a517283b986c9105a1ec75
* | Maintain TRANSIENT_*_BAR flags until transient bars hidden.John Spurlock2013-08-152-145/+256
| | | | | | | | | | | | | | | | | | Also factor common bar-management code into a separate helper class called BarController instead of continuing to pollute PhoneWindowManager with duplicate logic. Bug:10345412 Change-Id: I880900e61daa6c2c53b169e4885e68ebc62ecb6c
* | Ensure LOW_PROFILE is always clear when bars are transient.John Spurlock2013-08-141-1/+17
| | | | | | | | | | Bug:10326361 Change-Id: I4d12c4973153aac72bc840840f061ec782e27a87
* | Delay transient navigation confirmation prompt.John Spurlock2013-08-132-33/+54
| | | | | | | | | | | | | | | | Ensure the nav bar is hidden, then wait about the same amount of time before showing the prompt. Bug:10312565 Change-Id: Ifbbbc55edf2e40844296e3e96fcc5b491f1b246f
* | Update transient navigation confirmation logic.John Spurlock2013-08-132-11/+137
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Show the confirmation toast when hiding the transient navigation bar only the first time per app, per reboot. Hitting the power key while the transient nav is hidden is taken as a signal of possible user confusion, so reshow the prompt the next time. This requires the confirmation prompt to live in policy (not sysui). It arguably should have been here in the first place, since the transient bar state/policy was here, and sysui should not have not been able to fail to display the prompt correctly. Also take this opportunity to remove a hack wrt positioning the confirmation properly while the nav bar is transitioning. Toasts now support LAYOUT_HIDE_NAVIGATION if applied to the toast's view. Bug: 10246225 Change-Id: Ieb6355e4ca975c0758918a39e3c2ec13da81c7f4
* | add local focus mode and input event injection API to Windowkeunyoung2013-08-081-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | - This enables keyboard navigation for window without focus. - FLAG_LOCAL_FOCUS_MODE puts window into local focus mode. - Application needs to put window in local focus mode, control focus, and inject events to make dpad navigation work. - Window in local focus mode does not interact with window manager or ime regarding focus related events. - Also renamed ViewRootImpl.dispatchKey to dispatchInputEvent to allow both key and touch events injection. Change-Id: I8e8561f29e0dade3797fb7ae3ee7690e6b7f8895
* | Fix propagation of display overscan information.Jeff Brown2013-08-071-2/+4
| | | | | | | | | | | | | | | | | | | | Fix several problems in the way that the overscan was plumbed in which could result in information not being delivered to applications. There was also a violation of certain invariants regarding the immutability of returned DisplayInfo objects. Bug: 10213771 Change-Id: I21184a14305e44278b5e81353bf95d511e8517fb
* | Introduce new transparent bars sysui flags.John Spurlock2013-08-061-90/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two new public sysui flags for views to request transparent bars: View.SYSTEM_UI_FLAG_TRANSPARENT_STATUS View.SYSTEM_UI_FLAG_TRANSPARENT_NAVIGATION This first change simply introduces the flags at the framework level, and makes the requisite layout tweaks to WM. As part of this change, expunge the term "hideybars" from the codebase. The flag to declare support for transient bars is called: View.SYSTEM_UI_FLAG_ALLOW_TRANSIENT Final visuals/transitions between opaque/transparent bars will be done as a subsequent change. Right now the transparent style is identical to the transient bars. Change-Id: I5ead9c5e7b77f212df5b2a5f6e770596cd2226f3
* | Merge "Collapse/disable shade when hiding status bar window."John Spurlock2013-08-051-28/+41
|\ \
| * | Collapse/disable shade when hiding status bar window.John Spurlock2013-07-311-28/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide system bar window visibility (showing/hiding) to sysui, information it did not have before. Use this new info to disable shade interaction when bars are hiding. Bug: 8682123 Change-Id: I4105b789866f847582af1c68a703240d773fa71e
* | | Merge "Add force default orientation."Craig Mautner2013-08-031-19/+40
|\ \ \
| * | | Add force default orientation.Craig Mautner2013-08-021-19/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Devices can be configured to remain in their default landscape or portrait orientation by setting config_forceDefaultOrientation true in overlay/.../values/config.xml. Activities that desire to run in the non-default orientation are supported by creating a logical display within the physical display. Transitions to and from the activity perform a crossfade rather than the normal rotation animation. Also, improve SurfaceTrace debug output. Fixes bug 9695710. Change-Id: I053e136cd2b9ae200028595f245b6ada5927cfe9
* | | | Fix a regression where android:windowContentOverlay did not draw properly.Adam Powell2013-08-011-0/+7
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was the victim of an earlier refactoring. Have the ActionBarOverlayLayout draw this directly over the content so that it can stay properly in sync with any animations and also remove an extra couple of views from the decor layout. Some apps now expect the broken behavior in default themes. Protect them from themselves until they bump their targetSdkVersion. Public bug https://code.google.com/p/android/issues/detail?id=58280 Change-Id: I4284503577e322f3e68d4a7fabda8441d3749b98
* | | Tweak system gesture listener.John Spurlock2013-07-291-5/+7
|/ / | | | | | | | | | | | | | | | | Swipe gestures now need only travel a status bar's length to trigger. Name distance threshold variable appropriately to avoid future confusion. Bug: 10045892 Change-Id: I70fcf218e97c85e2653560bf2e2242d9c36537fd
* | Limit TYPE_SYSTEM_ERROR to system decor bounds.Craig Mautner2013-07-231-1/+2
| | | | | | | | | | | | | | | | | | | | Because windows of TYPE_SYTEM_ERROR lie in a layer above the Navigation Bar they cannot be allowed to extend into the Navigation Bar area or it will block touches to the Home button. Fixes bug 9626315 Change-Id: Ib5e4a2d2954cb79adc98d69e3c43108cb1389cc9
* | Restore nav bar position when wm size is reset.Craig Mautner2013-07-221-4/+2
| | | | | | | | | | | | | | | | | | | | The mNavigationBarCanMove variable was not reset when the dimensions were restored using 'adb shell wm size reset'. This change restores the correct value to it. Fixes bug 9885741. Change-Id: I6c9d3107fbc8a1e7acc0249691f4542cd8c07e93
* | Merge "Add a keycode to switch audio tracks (1/2)"michaelwr2013-07-162-3/+7
|\ \
| * | Add a keycode to switch audio tracks (1/2)Jaekyun Seok2013-07-122-3/+7
| | | | | | | | | | | | | | | | | | | | | A key to switch audio tracks is general on media devices like blu-ray. Bug: 9728155 Change-Id: Ib61822b8aa9c143a8febc3cff4707fa775119448
* | | add TYPE_PRIVATE_PRESENTATION window typekeunyoung2013-07-121-0/+4
|/ / | | | | | | | | | | | | | | | | - This window type can be used for Presentation created on top of virtual private display. - There can be PRIVATE_PRESENTATION specific policy / behavior, but for now, there is nothing special. Change-Id: I9fde0f0376e57fcc60000d3a3f8657a21ef58993
* | Resolve car dock home activities properly.John Spurlock2013-07-111-2/+13
| | | | | | | | | | | | | | | | | | Look up the actual user id (package manager does not understand UserHandle.USER_CURRENT) and return metadata during resolution for subsequent checking. Bug: 9738229 Change-Id: Ib060bacc84473b27a1fb2e717651dc84f018d6f9
* | Remove debug logging.Craig Mautner2013-07-011-9/+0
| | | | | | | | | | | | Bug has been fixed. Change-Id: Ifda11ac6e83012498855e0c7254c99491b128f04
* | Change order of setting isOpenCraig Mautner2013-07-011-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | Because the WindowManager.addView() method can indirectly call PhoneWindow.closePanel() it is critical to set isOpen after the addView call returns in PhoneWindow.openPanel. Otherwise when closePanel sets isOpen to false PhoneWindow will be in to an inconsistent state. Fixes bug 9404689. Change-Id: If0129a0859546b35445df0f4be2f422c4807fba7
* | Merge "More debug for 9404689."Craig Mautner2013-06-281-0/+6
|\ \
| * | More debug for 9404689.Craig Mautner2013-06-281-0/+7
| | | | | | | | | | | | | | | | | | Changing focus to PhoneWindow. Change-Id: I75c2ce6b1a20729daf8d2b7f83b2a871e1a7e642
* | | Simplify wake management code in keyguard.Jim Miller2013-06-273-49/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Removes onWakeKey/Motion handling from keyguard since it's no longer used. The legacy code was originally intended to have keyguard filter wake events which is now done in PhoneWindowManager. Ultimately it just needs to call PowerManager.wakeUp() since keyguard no longer filters these keys. Change-Id: I5b8ef9b422abf850a85b57f21944e5eb09fbedc2
* | | Single-user restrictionsAmith Yamasani2013-06-251-0/+2
|/ / | | | | | | | | | | | | | | | | | | | | Introduces a new "blocked" state for each package. This is used to temporarily disable an app via Settings->Restrictions. PIN creation and challenge activities for use by Settings and other apps. PIN is stored by the User Manager and it manages the interval for retry attempts across reboots. Change-Id: I4915329d1f72399bbcaf93a9ca9c0d2e69d098dd
* | Remove concept of system bar from window manager.John Spurlock2013-06-141-49/+15
| | | | | | | | | | | | It was already hardcoded to false, this change removes the dead code. Change-Id: I5e543344e60f69cb9882a70ba29f7c09404ad9fc
* | Show the default activity icon in the action bar if one is not suppliedAdam Powell2013-06-131-2/+25
| | | | | | | | | | | | | | | | | | | | Fix a regression where the system default activity icon was not used in the action bar if neither the activity nor application supplied one. Bug 9409846 Change-Id: I80a95a0bee511f21cd326372edaf6af811272825