Ensure the nav bar is hidden, then wait about the same amount
of time before showing the prompt.
Bug:10312565
Change-Id: Ifbbbc55edf2e40844296e3e96fcc5b491f1b246f
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
- 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 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
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
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
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
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
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
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
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
- 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
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
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
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
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
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
Implement all system level InputEvent monitors as new
InputEventListeners. Only one InputChannel required and monitoring
can be enabled or disabled by registering with WindowManagerService.
Change-Id: I64714ab858342ed183c62b421098478ffb6637bc
And disable the system gesture by default. Also remove observer
for obsolete "fancy_rotation_anim" setting.
Change-Id: I08012c164e10bfa5f10a1df8a3db4a3f0203f236
Some config.xml resources have values that vary based on the
configuration. A previous change caused initialization to
occur at a time when the configuration is was not yet available.
This change fixes the problem.
Bug: 8891502
Change-Id: Ia768dc2308cc6ae5f11812c6bce6a6e116cfd759
Remove some abstraction-breaking magic in ActionBarView and replace it
with proper resolution of the icon/logo when creating a window. The
old implementation relied on the ActionBarView's context being an
Activity.
Bug 9171554
Change-Id: Idbbb1942622195dcb55e8119f2d64287b07bb509
This fixes a bug where an incoming notification from AudioManager
would trigger showAppropriateWidgetPage() to be called even though
nothing has changed.
Fixes bug 9202611
Change-Id: If8bbd30b6b324233b5ad6552183c10cc5a335061
Consider this an interaction, ensures that the hideybar
does not reveal itself in low profile mode.
Bug: 9102473
Change-Id: I8819a7d3d7aef0e08afb6f8c574c0ac519066cca
Enhance Toast to support new standard toast bar style, similar
to the undo bar in Gmail. Toast bars can be interactive,
and can have a single action. Add a new toast duration to
indicate persistent toasts (no auto-hide delay).
Use the new toast bar to implement a feature hint when hiding
the navigation bar in hideybars mode.
Per UX, the feature confirmation bar can also be dismissed on
any outside touch as long as the user confirmed it using the
OK button at least once globally.
Bug: 8754108
Change-Id: Iaa85d3b4da7ada1952a562f1e31de04380f5d587
Add config resources to enable the following behavior for
certain devices:
* press home - go home
* long-press home - launch assist intent
* double-tap home - open recents
Bug: 8891502
Change-Id: I4564d9e4d127f782ed5bd8eb613ef8f2255176cc
(cherry picked from commit b7805698035622a633b2d76f7ca60169aaa9f0ca)
This method should be reading from the ACCELEROMETER_ROTATION instead
of the USER_ROTATION setting.
Needed for uiautomator to properly restore the current auto rotation
setting after test run finishes.
Bug 8985351
Change-Id: I50f100117c0590dd65a646b584d027751ad5d3ce
This attempts to fix a bug where it looks like we have null content in
one of the widget pages in keyguard.
Based on the bug description, it's likely the transport control was just
removed from the view hierarchy. Not sure how the content can be null
in this case, but this will hopefully prevent the crash and give us some
insight into what caused it.
Fixes bug 8886916
Change-Id: I22c26c49f22fa5b06987e8199070a9aaead2ff8a
Loading the avatar icons and drawing them into the sized bitmap
turns out to be quite expensive and the cost increases with number
of users. Caching them shaves off several hundred milliseconds from
Keyguard inflation time during user switching on the lockscreen.
For instance, 15ms vs. 750ms with 3 avatars on a certain 7" tablet.
Bug: 7986933
Change-Id: I3e2065bfa25aa263133ba204ca364c3b04d7c0ff