72 Commits

Author SHA1 Message Date
Daniel Sandler
1d4d30aebd It's lights out for you, navigation bar!
Views requesting lights out mode will cause the navbar to
disappear (this is useful for viewing videos/photos/etc
using every pixel of the screen).

But there's a catch: any user activity at all will cause the
lights to come back on and the navbar to return.

Change-Id: I535ed3ba9ae7fab3282c402be256add765395b6f
2011-05-11 09:48:52 -04:00
Daniel Sandler
e40451a89d Ongoing notification for GPS use.
This change improves upon the notification priority API
introduced in change I9e738cc4, allowing privileged clients
to set the priority of a notification when posting it
directly to INotificationManager. StatusBarTest is updated
to test this new feature.

The new LocationController in SystemUI uses this facility to
post a high-priority ongoing notification whenever GPS is in
use (replacing the functionality of the legacy GPS status
bar icon).

Also happens to fix http://b/3325472 (adding a log message
when notifications are dropped because of a missing icon).

Bug: 3412807

Change-Id: I523016ffa53bf979be98ddc4a2deb55a6270c68a
2011-02-03 21:11:46 -05:00
Joe Onorato
7bb8eeb90c Allow the status bar disable flags to be used as View's system ui visibility fields.
Bug: 3363046
Change-Id: I50ba06ed9a4d2f5d0e0c807437aea9900f44fee9
2011-01-27 21:41:24 -08:00
Daniel Sandler
f844dc4fa8 Fit and finish on status bar:
- Clock color fixed. [3374581]
  - Clock vertically aligned. [3388224]
  - Clock uses system font assets now. [3385564]
  - Solid version of AndroidClock added to build. [3385564]
  - Extraneous background glow removed from notification panel.
  - Removed solid black background from notifications. [3388223]
  - Added background image behind large notification icons
    and increased large size to 64dip [3388434, 3384355]
  - Corrected size & leading of notification text [3388577]

Bug: 3374581
Bug: 3384355
Bug: 3385564
Bug: 3388223
Bug: 3388224
Bug: 3388434
Bug: 3388577
Change-Id: I8e443da5758deca412d1ce5944f887b35f6265ed
2011-01-25 16:46:43 -05:00
Joe Onorato
664644d9e0 visibility ("lights out") API.
1. Views may setSystemUiVisibility() to recommend that
the system chrome (status bar or other UI) show or hide
itself.  (This functionality was previously available only
via the FLAG_FULLSCREEN window flag for some SystemUI
implementations.)

2. Views may register a OnSystemUiVisibilityChangedListener
on a view, and find out when the system UI actually
appears or disappears, allowing apps to coordinate the
appearance of their own UI if desired.

Bug: 3241144
Change-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829
2011-01-23 19:22:52 -08:00
Joe Onorato
80a44401a2 Need to update the largeIcon for notifications when we're reapplying the views.
Bug: 3298062
Change-Id: I6bb72c0b93e00a9de8cc2633ac07add0a572a20f
2011-01-15 16:22:24 -08:00
Joe Onorato
c9596d6d8e Possibly fix bad notification updates.
I think what was happening is that it was using a different layout but we were trying to reapply the
RemoveViews because of some bad boolean logic.  This fixes that, and adds some better debugging that
might show us what else is happening.

Bug: 3298062
Change-Id: I0984f24cb2960166c79b9f2cc7c6a98bd75e17ba
2011-01-12 17:06:14 -08:00
Joe Onorato
d070e89396 Make AppWidgetService handle components enabling and disabling.
Change-Id: Ie6b75cb90be38bbce694ccf2d5a342d7f0172fa4
2011-01-10 17:26:39 -08:00
Daniel Sandler
6f6cf3c5e5 Reimplement StatusBarManager.disable(DISABLE_SYSTEM_INFO).
Bug: 3284968
Change-Id: I7171b7770c2972bb56672a771c7ed5ca10fb4dda
2010-12-16 12:54:03 -05:00
Daniel Sandler
3e8f5a2c1b Hide navigation buttons and clock on lockscreen.
(This introduces a StatusBarManager disable flag to ask the
status bar to hide just the clock, which might be useful in
other situations, such as clock/dock apps.)

Bug: 3130393
Change-Id: Ia08627508518e2ed3713ffbf856e4ec42952b3a8
2010-12-03 15:55:04 -05:00
Daniel Sandler
1bfddc8d15 Fix build.
Change-Id: Iccbe1609bbe582180d1c61f908b8dce4d485494b
2010-11-30 16:17:28 -05:00
Daniel Sandler
373a998374 When updating notifications, always reuse the last row.
Ordinarily, changing the "when" slot when updating a
Notification will move its expanded payload to the bottom of
the notification panel's list. But if it's already at the
bottom, this causes an unsightly out-then-in animation
sequence. We now check for that exact situation.

Bug: 3222274
Bug: 3162218
Change-Id: I8b643b3f8bce64e57a22bdbb06d92c196c2484c2
2010-11-30 15:32:55 -05:00
Joe Onorato
8d0b655c49 Add a better notification test and clean up the flag handling in the notification builder.
Change-Id: I9354ed2c2cda690f53e5f43ad60943b63b02e7d4
2010-11-22 16:19:40 -08:00
Joe Onorato
561d3858bb The large icon for notifications.
Change-Id: I8537c602b5b5fca03be8980295bfa28330543669
2010-11-21 16:16:28 -08:00
Joe Onorato
3f76aa7755 Test for using the right size of notification info text.
Change-Id: Iac8764542ddcd3ef0375f6d6d03225e9f6c2fc1c
2010-11-21 16:16:28 -08:00
Joe Onorato
8595a3dd9a Show the number in the expanded notification instead of in the bar.
Change-Id: I248b4fe1732ed290e9f3f9c094de4544a0e396ab
2010-11-21 16:16:28 -08:00
Joe Onorato
46439cec0e Update the look of the notifications. Includes adding a new Notification.Builder class.
Change-Id: I7c57b81c45defe77d6f3d22472e9cf8432bbed03
2010-11-21 16:16:27 -08:00
Joe Onorato
1a542c7b8e The CHEEK_TOUCH stuff never worked. Remove it.
Bug: 3104906
Change-Id: Ia37236ba1775fc3ec8c111e2e0b85b105e0dea6a
2010-11-08 13:02:58 -08:00
Joe Onorato
4058ba0526 Allow both contentIntent and setOnClickPendingIntent in notifications
From the app developer's request:

  Intents assigned to specific views should take precedence over the content intent, but it should not
  be required to set the content intent to null in order for the view-intents to work

Bug: 3107945
Change-Id: Ic5282d441277a9a8c8c700ef3f43872f3405b58a
2010-10-31 11:38:04 -07:00
Daniel Sandler
b0cc50de14 Notification flyovers.
Hold your finger on an individual notification icon to
quickly show that notification's payload.

Also: Quickly swipe up on any icon to open the tray.

Bug: 2994009

Change-Id: I2ae2b546fcfa62994b63b9376f487289b2d06796
2010-10-29 13:33:24 -04:00
Joe Onorato
184498ce5a Allow notifications to not specify a contentIntent.
If they don't, the click events will be passed through to the individual
views in the notification view, which may have their own PendingIntents
attached.

Previously, it was against the UX spec to allow this, but now we are
changing that and will have buttons in there.

Change-Id: I674234212f64b2b8802a0708b7eed0614e147ca3
2010-10-13 17:29:26 -07:00
Jason Chen
39b4867d48 Revert "Merge "Allow notifications to not specify a contentIntent.""
This reverts commit 8885321046622d6a8c0a4214af98dc27eecd48a0, reversing
changes made to 61b8aaadd742f0be708cd37971d2c9e822bf778a.
2010-10-08 16:22:53 -07:00
Joe Onorato
80a752c537 Allow notifications to not specify a contentIntent.
If they don't, the click events will be passed through to the individual
views in the notification view, which may have their own PendingIntents
attached.

Previously, it was against the UX spec to allow this, but now we are
changing that and will have buttons in there.

Change-Id: Ie3b2e96c6a1c4449fa86ed571f3ad0f047320d31
2010-10-08 17:57:18 -04:00
Joe Onorato
2cddeb4b82 am 2c164747: am f7872780: Merge "PowerManagerService needs yet another flag..." into gingerbread
Merge commit '2c164747d364c3e51964d03ecefc5752c7c0c6ba'

* commit '2c164747d364c3e51964d03ecefc5752c7c0c6ba':
  PowerManagerService needs yet another flag...
2010-10-07 12:22:03 -07:00
Joe Onorato
2c164747d3 am f7872780: Merge "PowerManagerService needs yet another flag..." into gingerbread
Merge commit 'f7872780ca3dae9584251b1e3495aed12110254c' into gingerbread-plus-aosp

* commit 'f7872780ca3dae9584251b1e3495aed12110254c':
  PowerManagerService needs yet another flag...
2010-10-05 14:45:28 -07:00
Joe Onorato
8274a0e536 PowerManagerService needs yet another flag...
... to make sure that if you press the power button to turn off the
screen, that the prox sensor won't turn it back on.

Bug: 3011618
Change-Id: Id16c1d65417539d4592f485b1c3efb737540c3cd
2010-10-05 17:39:01 -04:00
Joe Onorato
066b5c5166 manual merge Merge commit '77e42376' into work
Conflicts:
	packages/SystemUI/res/values/colors.xml
	packages/SystemUI/src/com/android/systemui/statusbar/StatusBarService.java

Change-Id: I891c8a9f6410037ca7805507e85a17f1655c115e
2010-10-05 12:37:03 -04:00
Joe Onorato
77e4237682 am 87efbbb5: Merge "implement the number bubbles on the status bar" into gingerbread
Merge commit '87efbbb563ef96a74ffd2fbbe5c0865a450254df' into gingerbread-plus-aosp

* commit '87efbbb563ef96a74ffd2fbbe5c0865a450254df':
  implement the number bubbles on the status bar
2010-10-04 14:44:40 -07:00
Joe Onorato
6c01a11a20 implement the number bubbles on the status bar
Bug: 2993482
Change-Id: I73b1f8c39e995fd4f986c25ea04127eb23c3cd07
2010-10-04 17:40:24 -04:00
Joe Onorato
7ebd659dbf Merge commit 'f9f9e248' into manualmerge
Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/StatusBarService.java
	tests/StatusBar/src/com/android/statusbartest/StatusBarTest.java

Change-Id: Ibbb2fec2d8c6f5d41398272753d271dfae698100
2010-09-27 14:13:46 -07:00
Joe Onorato
f9f9e248a0 am 6fa4de3c: Merge "If an icon add remove get coalesced, don\'t remove some other icon." into gingerbread
Merge commit '6fa4de3cffe1390f699051fa0c7d21e8058a5ebd' into gingerbread-plus-aosp

* commit '6fa4de3cffe1390f699051fa0c7d21e8058a5ebd':
  If an icon add remove get coalesced, don't remove some other icon.
2010-09-27 11:56:24 -07:00
Joe Onorato
795f2840b4 If an icon add remove get coalesced, don't remove some other icon.
Also adds a test case and turns off the extra logging we added to debug this.

Change-Id: I8640938ae4d1e75c88213177888f363e05ce0fa0
2010-09-27 11:34:46 -07:00
Joe Onorato
091e1b8a86 Implement disable() on the status bar.
This includes adding the new DISABLE_NAVIGATION flag.

Bug: 3000770
Change-Id: I6d1c3586198e13e06b5d26e8b23a9495dc4ba02e
2010-09-26 19:07:51 -07:00
Joe Onorato
ddf680bff5 Touching the blue glow should close the system and notification panels.
Bug: 3029373
Change-Id: I96760656dcda20ab238305900f9964083a8e5273
2010-09-26 13:59:40 -07:00
Joe Onorato
ef1e7763c2 Tablet ticker.
Change-Id: Ia3db5cc29eac1703123de3e1c6dc7c22e7d024eb
2010-09-20 14:14:02 -04:00
Joe Onorato
9305647eb6 Plumb lights out mode through from the window manager to the status bar running in the system ui process.
Lights out mode itself isn't implemented.

Change-Id: Ieeef0eb9ae5be23000f770e74e8ee66472f4c673
2010-09-12 13:25:06 -04:00
Daniel Sandler
44af754cf0 am d02bdaab: Remove experimental immersive mode support. DO NOT MERGE
Merge commit 'd02bdaab495641ab50e2123fdfd99a819cc40540' into gingerbread-plus-aosp

* commit 'd02bdaab495641ab50e2123fdfd99a819cc40540':
  Remove experimental immersive mode support. DO NOT MERGE
2010-08-27 20:00:29 -07:00
Daniel Sandler
d02bdaab49 Remove experimental immersive mode support. DO NOT MERGE
Bug: 2949215

Change-Id: I7d998ef571ef7e149bb96261430e92150b80b77d
2010-08-27 22:57:39 -04:00
Daniel Sandler
6cf5eb0606 am 3f677b1b: Merge "Fix periodically disappearing status icons." into gingerbread
Merge commit '3f677b1b3e45240728de39d60441d791c0e8d3f8' into gingerbread-plus-aosp

* commit '3f677b1b3e45240728de39d60441d791c0e8d3f8':
  Fix periodically disappearing status icons.
2010-08-20 06:03:41 -07:00
Daniel Sandler
0398bf70e7 Fix periodically disappearing status icons.
Occasionally the animation listener wasn't being told that
the ticker animation had completed; this callback was
essential to keeping the status bar's internal state correct
(namely, setting mTicking=false). The safest thing to do is
simply set mTicking to false immediately upon tickerDone()
or tickerHalting().

Bug: 2915280
Change-Id: I997911b12fa2985fa83b42154fb3485220886219
2010-08-19 16:59:11 -04:00
Gilles Debunne
ed3cfb5e1b Generated hdpi drawable size reduced
Change-Id: Id17bb27500ba8729c33613bbf457f1b3193ced38
2010-08-03 16:13:54 -07:00
Gilles Debunne
389878e49d frameworks/base/ : added scaled hdpi version of assets that were moved to drawable-mdpi
Change-Id: I95c7e6afb84af981867c32fe7f86b140f643b5b9
2010-08-03 10:47:05 -07:00
Gilles Debunne
b0dde8e9b5 Move pngs from drawable to drawable-mdpi in project frameworks/base
After error during file transfer...

Change-Id: I21da694f81a4290e9af1f7647a8ceb6c6d3d806b
2010-08-02 15:21:27 -07:00
Jean-Baptiste Queru
8a76a9085d am 9150cff6: Merge "Replaced /sdcard with Environment.getExternalStorageDirectory()"
Merge commit '9150cff64abc79927ade28061ac99a1ebf812905' into gingerbread-plus-aosp

* commit '9150cff64abc79927ade28061ac99a1ebf812905':
  Replaced /sdcard with Environment.getExternalStorageDirectory()
2010-07-29 15:59:10 -07:00
Christian Mehlmauer
8b85dceadf Replaced /sdcard with Environment.getExternalStorageDirectory()
Change-Id: I9a7413f81090b69c82ca6b1e585f5e379b19e60c
2010-07-19 20:12:31 +02:00
Daniel Sandler
b59b94456b Fix icon size in intruder alerts.
(Updated test app to confirm the fix.)

Change-Id: Ife56cf07f282786162e2ebc5aaddbb24dac6cafd
2010-07-07 14:06:27 -04:00
Daniel Sandler
27a8be4b35 Support for tapping on an immersive-mode priority notification.
When the user taps on an intruder alert (the priority
notification in immersive mode), the .contentIntent in the
Notification object will be sent, just as we handle tapping
on a normal Notification in the windowshade.

Change-Id: Ib6991837b0b2122fe138cddacf347fdbc426b99d
2010-06-29 15:19:54 -04:00
Daniel Sandler
8896783dc1 Updated StatusBar test app for new notifications API.
New actions:
 - Toggle activity's immersive mode
 - Post a priority notification with fullScreenIntent
   that launches an alert-like activity

Change-Id: Ie38372209985577b6db856924c19914c000e1cec
2010-06-24 22:09:35 -04:00
Joe Onorato
0faeb078cf Add a test item the turns on a bunch of extra icons.
Change-Id: Ia5884ef46a5b0fa2d608c7924b3eb12293a1da8b
2010-06-09 14:33:31 -07:00
Joe Onorato
005847b03b Handle errors inflating notifications (and their icons).
On an inflation error, the StatusBarService cleans up, removes / doesn't add
the views, and calls into the StatusBarManagerService, which tells the
NotificationManagerService to remove the notification.

That then calls all the way back into the StatusBarService, but I think being
extra careful is okay.  Throughout the status bar, it's all keyed off of the
IBinder key, so if the app comes in with a good notification while we're
cleaning up, we won't lose the new notification or anything like that.

Change-Id: Iea78a637495a8b67810c214b951d5ddb93becacb
2010-06-09 09:15:25 -07:00