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
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
Whenever the Recents activity actively hides itself move its task
to the back of the activity stack behind the home task. Otherwise
we get into a loop of the bck key returning to the Recents task
when it is intended to move to the home app.
Fixes bug 9750207.
Change-Id: I7d69f28368db148cb493bf54867df084907910ec
When the system bars are revealed in auto-hiding mode, the user
should be able to dismiss them before the timeout by interacting
with the underlying activity.
Bug:8682187
Change-Id: I79169005baafda27fb5ad9c29ab1ec67600b2eb6
Reverts JB optimization I7ae978caa1f28932ee56f65484b18330a4406b80
made obsolete by I2f9b0591d44599b07bd83f03c4e09e6dd98e1448 in MR1.
Change-Id: I8a738624f9a902648e317f2eac25fd56c3b47a46
new shouldInterrupt logic: screen on, not locked, not dreaming, and
priority above HIGH and noisy, or has fullscreen intent
draft of API allowing devs to give hints about head up display
reuse inflateViews()
add an expand helper to the heads up space
move some things into Entry for reuse
don't allow touches in first second
delay decay if touched
make decay time a resource
add a custom viewgroup for notification rows to get view management
out of the NotificationData class.
Change-Id: I36464f110cfa0dabc3f35db7db6c35c27e8ee2ba
inflateViews() and updateNotification() reference the same objects
with different names, and it was confusing. #cleanup
Bug: 6497005
Change-Id: I0d9a94d7ec156b6bfcf4b85c777f9b58311d07d0
1. re-name intruder alerts to heads up notifications
2. use interrupt for the verb form, instead of intrude
3. new policy: no full screen, high priority, screen on, not locked or dreaming
4. controlled by global setting, with an observer
5. only content view for now, expandable is a todo
to turn it on:
adb shell settings put global heads_up_enabled 1
calendar notifications (not pop-up) work well.
Change-Id: I253418c217d0a5cf81dc2fa001f4bad90fafcce5
This change fixes a TODO to fix the behavior that the quick settings directly specifies a class of AOSP desk clock.
Currently the quick settings can't work with other alarm clocks and that's fixed by calling "android.intent.action.SET_ALARM" instead.
Change-Id: I028b8a320e945921c096fdc776b52441e7d07202
When registering for a specific setting key uri, the observer
can also be called back for "parent uri" updates. e.g.
adb shell content update --uri content://settings/secure will
trigger onChange with uri=content://settings/secure.
Add a quick setting value recheck, and avoid restarting if
the setting value change will have no impact.
Bug: 9595731
Change-Id: I4c71f6a4be3b655b31d2535e809bb42edd931cd6
Hoist the usb storage notification listener to a top-level
system ui service, not dependent on a status bar implementation.
Change-Id: Ic9e7fba1e5bfd758d72226f6d796c2f04f6b17e6
Remove remaining references to recents package from status bar.
Introduce in-process "components" to the existing SystemUI base class
to make component boundaries explicit, and implement Recents as the
first component.
Change-Id: Ieefd386379a1f46806b31f68a4cacd76c093aea4
If a service component is defined in a new secure setting,
SystemUI will attempt to use that service as the status bar
provider.
Falls back to the existing in-process implementation configured
in the product config if the setting is missing or invalid.
Nothing changes yet from a permission point of view. Alternative
system bar implementations still require the status bar permission.
Also nothing changes from an api point of view. Alternative
system bar implementations use the existing IStatusBar interface.
This simply enables testing alternative system bar implementations
installed from other trusted, platform-signed packages.
Known caveat: the setting is stored per user, multi-user changes
will be handled in a future CL.
Change-Id: I0413df185f7e75f77ad2ae1bc3689306d5e6e0fb
Previously this was updated only at construction time,
but the value isn't even set at that time and can change
at anytime. So instead read the current value when needed.
Bug: 9513380
Change-Id: I50c676beadf5df8190897a9f6ab94c098e8d7e71
"signatureOrSystem" permissions are no longer available to all apps
residing en the /system partition. Instead, there is a new /system/priv-app
directory, and only apps whose APKs are in that directory are allowed
to use signatureOrSystem permissions without sharing the platform cert.
This will reduce the surface area for possible exploits of system-
bundled applications to try to gain access to permission-guarded
operations.
The ApplicationInfo.FLAG_SYSTEM flag continues to mean what it is
says in the documentation: it indicates that the application apk was
bundled on the /system partition. A new hidden flag FLAG_PRIVILEGED
has been introduced that reflects the actual right to access these
permissions.
At some point the "system" permission category will be
renamed to "privileged".
Bug 8765951
Change-Id: I6f0fd9cdb9170e076dfc66d83ecea76f8dd7335d
Back to Gravity.TOP workaround to keep the hideybar confirmation
toast stable during navbar enter/exit animation.
Reverts part of Ifa380e387389ed9917336ad19dfde49f67a5fb10
Change-Id: I1e2e54851f2030603d43df611a616101f19bdab3