History log of /frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
d5ef54658ba7f869b1558df656772eebc3fb7328 13-Jun-2012 John Spurlock <jspurlock@google.com> NavBar: Slippery on the unsecured lock screen.

The NavBar is always non-slippery, except when:
- the notification shade is showing
- the 3 buttons (back,home,recents) are disabled

Also fix unrelated bug that ignored the "show panel delay"
before the first config change.

Bug: 6614842
Change-Id: Ib40adaef122b563809398fdebbd8a88d8f0c7ffd
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
960892c0afa7f2b91236928e29e3987ed35b2077 24-May-2012 Jim Miller <jaggies@google.com> Fix 6547012: ignore events outside the home/back/recent navigation area

This fixes the search panel to only show if touch events originate
in the home/back/recent area.

Change-Id: I370da8b5c5613b7bbab5d266ba51a61df8f3a57b
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
e03bc95f06d1eee723695d14d8d884317a04bb5a 27-Apr-2012 Daniel Sandler <dsandler@android.com> The tiny-back-button bug found its way back in!

(Horizontal nav bars in landscape are not "vertical"; look
at the view bounds to determine verticality instead of
merely considering the device rotation.)

Bug: 5993561
Change-Id: I70a691f68db1c6417ea2af6f3bb018f99bcabda0
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
2c9ae7538819b77c8814217b93a6ef0bf417854a 27-Apr-2012 Daniel Sandler <dsandler@android.com> Finally, fix the teensy back button in landscape.

Bug: 5993561 (and friends)
Change-Id: I0ccde54ea145e945f1a02d0480585c32cd129911
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
d7e96866568cc94305db1455f4e9a9b8ada70618 26-Apr-2012 Daniel Sandler <dsandler@android.com> Lights out improvements.

+ Finally implemented LO in the top status bar.
+ Tightened up LO animations on nav bar (swap icons for dots
all at once rather than in sequence).

Bug: 6374406 (status bar lights out)
Bug: 5854958 (tighten up)
Change-Id: Id1393cef0b4281e062c1704d916843641da19dc4
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
e898ac59db04d8ab0762180ca8ec7cea1347aa09 07-Apr-2012 Jim Miller <jaggies@google.com> Fix 6299832: Add search target swipe action to navigation bar on phones

This adds a feature to swipe upward on the navigation bar to invoke
voice search on phones.

Change-Id: I462076fd43b1c66c5bf624f00b297c6d3414a19a
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
4a066c5c77109431f50806fc29179d28f1472871 20-Apr-2012 Daniel Sandler <dsandler@android.com> Update SystemUI for sw600dp devices.

Devices between 600 and 719dp will now use the two-bar
(phone) SystemUI layout, or something like it, derived from
PhoneStatusBar. Devices above 720dp will use the system bar
from TabletStatusBar.

However, this distinction is not to be made based on dp, at
least, not by the SystemUI; the goal is to drive most of
this switch from the window manager. Therefore most of
SystemUI's sw600dp resources have been folded into the main
set of resources (renaming them to avoid collisions where
appropriate). This allows SystemUI to choose which set of
resources to use entirely by switching status bar
components, entirely independent of Configuration.

(For some resources, particularly around recents, it seemed
more expeditious to keep relying on the device
configuration, so those resources have been bumped up to
sw720dp.)

Bug: 6297838
Change-Id: I3f5414a6a718bdc83f51930d6878cdf97df48c9c
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
3a3a6cfd8ec12208ca75c0d0d871d19d76c34194 26-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new feature to let apps layout over status bar / system bar.

The main change is a few new flags you can supply to
View.setSystemUiVisibility(). One is a new visibility mode,
SYSTEM_UI_FLAG_FULLSCREEN, which is basically the same as
the global FLAG_FULLSCREEN option for windows, but driven as
part of the system UI state.

There are also three new flags for telling the framework that you
would like to have your application's UI ignore screen
decorations -- SYSTEM_UI_FLAG_LAYOUT_NO_NAVIGATION for going
behind the navigation bar and SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
for ignoring full screen decorations (that is the status bar).

In combination with this you can use SYSTEM_UI_FLAG_LAYOUT_STABLE
to have the framework report consistent insets to your application.

When using NO_NAVIGATION, when the user taps the screen we now
also automatically clear ONLY_CONTENT, so that we atomically show
both UI elements. This should make it easy for apps like video
players that want to move between fully full-screen and regular
modes.

The ActionBar has also been extended when in overlay mode so
that it will adjust the system window insets to also account
for its space, and allow it to be hidden using the new
SYSTEM_UI_FLAG_FULLSCREEN.

Change-Id: Ic8db1adec49a0f420bfe40c1d92eb21307856d0b
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
a5d0ddba60ff9877c0251ea9cf79af82d1eeb349 10-Mar-2012 Michael Jurka <mikejurka@google.com> Fix back button state issue

Back button / down chevron button (eg when you have an IME visible)
was not getting synced on rotation changes

Bug: 6133831
Change-Id: Iefaf3babf92898fcc87a0b14c10b037de04d84e2
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
6f203807e0cc9fb4fea9d56092d66d4817f39e96 24-Jan-2012 Daniel Sandler <dsandler@android.com> am 9dc211af: am a4474ae0: Merge "Detect and repair invalid layouts in the navigation bar." into ics-mr1

* commit '9dc211afbf3201a23a29cf7cd02ce575c6dbe094':
Detect and repair invalid layouts in the navigation bar.
0b69b59877896e4cab448cef9e12ff4c29a4252e 24-Jan-2012 Daniel Sandler <dsandler@android.com> Detect and repair invalid layouts in the navigation bar.

It seems that something (probably layout transitions)
occasionally leaves the navigation bar layout in a weird
state such that most of the buttons are offscreen. For
example, the portrait nav bar might have buttons with widths
matching the nav bar's old width from landscape; the
clickable regions will therefore be far off the right edge
of the display.

The navigation bar now looks for this situation when the
size of the view changes and corrects for it.

Bug: 5549288
Change-Id: I8464ac9fd64cb64ec18baf51478dd0f6564a2284
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
328310c6fac6066d338926bb43d359862cae36d2 23-Sep-2011 Daniel Sandler <dsandler@android.com> System bar now renders the back button for recents

We used to render the back button in Recents
itself, but that had an inconsistent visual
experience.

As a part of this change, add the early beginning
of support for private status bar APIs for dimming
navigation buttons.

Bug: 3448536
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
488529506f2b767aec0c6e122e7227a9ebe067a2 01-Dec-2011 Daniel Sandler <dsandler@android.com> Add copious navigation bar info to SystemUI dumps.

Bug: 5549288
Change-Id: I8556584e6abd22912d55dccc27ccebb6602b1bcb
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
dba935659024a9ca83cb6bd3f1a9970e277f7658 06-Oct-2011 Daniel Sandler <dsandler@android.com> Break apart DISABLE_HOME and DISABLE_RECENT.

Additionally, start using setSystemUiVisibility() where
possible in the keyguard to allow activities and dialogs to
re-enable some of the navigation keys (notably: home but not
recents).

Finally, stop disabling MENU for activities atop the keyguard.

Bug: 5380495 // no home in driveabout, clock
Bug: 5396134 // able to show home/recent in keyguard
Change-Id: I04eb224554ee8cff79476b85148c4cda75bb0b62
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
df89e65bf0fcc651d20b208c8d8d0b848fb43418 07-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix how we hide and show the nav bar.

The PhoneWindowManager is now responsible for hiding and showing
the nav bar.

For hiding, it just moves it off the screen (easy way to get a
nice slide animation on and off). At the same time, we use a
new WM facility to put up a fake input window to capture all
touch events.

When a touch event is received, we force the system UI to clear
the navigation hiding bit so it will be shown again.

This removes a bunch of code from the system UI for hiding and
showing the nav bar. Also removes the code calling from userActivity()
to the system UI, which was bad. (Also no longer using userActivity()
fixes bugs around re-showing the nav bar due to key presses and
other wrong things.)

Change-Id: I8c3174873b5bcaa36a92322a51e8f7993e88e551
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
291c6d789dac8f85c50163e9a9ef24ef31183b93 20-Sep-2011 Daniel Sandler <dsandler@android.com> Merge "Fix disappearing nav icons."
f0e8daa405f24e23c9cb0254af79d55f5353aaec 20-Sep-2011 Daniel Sandler <dsandler@android.com> Fix disappearing nav icons.

Bug: 5328284
Change-Id: Iaa20454cff9f5a340da7b0c71190796445e8a205
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
da1b819595fcf3cc332c59745677a0cc53e44f59 19-Sep-2011 Daniel Sandler <dsandler@android.com> Stop clobbering the systemUiVisibility on navbar touch.

Bug: 5328284
Change-Id: Ib49af35a7919dbf1cdb99f357798101d2534e853
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
56598cd4d3712ea451f8e19e363ae86a51158d3b 15-Sep-2011 Daniel Sandler <dsandler@android.com> Fix MENU icon weirdness.

(Broken by change I7cbb7bbf.)

Bug: 5308636
Change-Id: I30ca20f62bd140a823eb926a9a0521c4d6014680
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
d9283b903125c875f973bf6f724f23e595bce756 15-Sep-2011 Daniel Sandler <dsandler@android.com> Fix NPE.

Also remove unneeded log.

Bug: 5320647
Change-Id: If62b491ceb25d26195dea694fe0b5cd83c0f6305
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
6da2b76ea496129da5370bfafd667ee94907a356 14-Sep-2011 Daniel Sandler <dsandler@android.com> Fix disappearing BACK button.

We weren't properly applying the disabled flags from one
orientation to the other. This crops up when the lockscreen
changes the flags and forces a reorientation at the same
time; the other orientation can become stale.

Bug: 5312123
Change-Id: I7cbb7bbf69e6d86cb47450bcdfa692a1f766cd5e
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
029d5877b0c19af09c6a1cb7d1c3d3507e88430c 12-Sep-2011 Daniel Sandler <dsandler@android.com> Hide navigation buttons when they are DISABLEd.

Back is hidden by DISABLE_BACK; Home, Recents, and Menu are
hidden by DISABLE_NAVIGATION.

Bug: 5261576
Bug: 5284740 (confusion about visible inactive icons)
Change-Id: I410c133b737cc11d61bac0318dc24458353ee7b3
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
e3646dd8d96fb9756c8a7a4757ad5277e3801aed 01-Sep-2011 Mike Lockwood <lockwood@android.com> Show back button in status bar when in an activity in front of the lockscreen.

When the lockscreen is up we still enable the home and recent app buttons,
but the back button is only enabled if the lockscreen is not obscured by other activities

Fixes problem escaping from the DeskClock app when the screen is locked.

Bug: 5206013

Change-Id: I68c9e4513018f51e2ee4fc11254e42ecbef834e4
Signed-off-by: Mike Lockwood <lockwood@android.com>
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
e137a1ea997036248c86e8fc0a94711020721f19 17-Aug-2011 Daniel Sandler <dsandler@android.com> Low profile mode ("lights out") for phone status bar.

Also changes NAVIGATION_HIDDEN to remove the hide animation,
hopefully reducing the number of jarring transitions when
apps want to enable super-ultra-full-screen mode.

Bug: 5052456
Bug: 5146960
Change-Id: I5f5ebb23add81243dc8861b65d8f15ca4d9ce0d2
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
e21f288358df2c1cea57c0a359dcf647baeb970d 18-Aug-2011 Daniel Sandler <dsandler@google.com> Support DISABLE_NAVIGATION on phones.

Bug: 5161286
Change-Id: I6a2c3053423c2b34136b0c3889f575f9c082d7e9
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
96f4818ef41141649337d4dee09f837594e93d09 17-Aug-2011 Daniel Sandler <dsandler@google.com> Fix drawing artifacts on glowing navigation buttons.

Bug: 5162661
Change-Id: I49d78124cc179221492af2f7bee6adf7bfe34426
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
36412a7e7c4929bdac1221b7ced9e73d0d204691 04-Aug-2011 Daniel Sandler <dsandler@google.com> Subtract the navigation bar from DisplayMetrics.

Its region is now treated like the system bar: inaccessible
to applications and therefore not worth reporting as part of
the display.

(Note that using setSystemUiVisibility you can gain
temporary access to the navigation bar region, unlike the
sempiternal system bar.)

The navigation bar is now considerably less in control of
its own behavior (the window manager assumes it will be a
certain size and in a certain position in landscape and
portrait). This change also fixes the navbar so that it
becomes GONE instead of merely INVISIBLE (allowing
underlying windows to expand in size accordingly).

Bug: 5052456 // the feature
Bug: 5067627 // notification shade falling behind the navbar
Bug: 4959805 // fix third-party apps relying on DisplayMetrics
Change-Id: I60257fc5c858e0edcaba8cfc1f8d58dd99a68258
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
60ee25643e0a7b8841063a4e97b0f18c51807e91 22-Jul-2011 Daniel Sandler <dsandler@google.com> The fullest of fullscreen modes.

View.setSystemUiVisibility() now properly accepts a
bitfield, including:

* SYSTEM_UI_FLAG_LOW_PROFILE: "lights out mode"
(previously known, erroneously, as STATUS_BAR_HIDDEN)

* SYSTEM_UI_FLAG_HIDE_NAVIGATION: for when you need every
single pixel on a device that also has a navigation bar

These flags are painstakingly aggregated across the entire
view hierarchy and carefully delivered to the status bar
service, which in turn gently passes them along to the bar
implementation.

To really get access to the whole screen, you need to use
HIDE_NAVIGATION in conjunction with FLAG_FULLSCREEN and
FLAG_LAYOUT_IN_SCREEN. See development/samples/Overscan for
an example of how to do this.

Change-Id: I5fbfe009d9ceebbbf71db73f14a7008ea7c1d4da
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
41006aaf3494a46731868dcb9347caf05f8804a4 29-Jun-2011 Daniel Sandler <dsandler@google.com> Add 2mm dead zone (12dp) at the top of the navigation bar.

Also update metrics to match clarified spec; in particular,
the navbar is now 48dp tall.

Bug: 4689070
Change-Id: Ia05ae840076df5a984ac85bb63df997943356eb8
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
5c8da949804ed4b55dcebae63796714e0028b488 28-Jun-2011 Daniel Sandler <dsandler@android.com> Now showing: Navigation Bar, The Final Layout

Starring, in order of appearance:

BACK

and

HOME

and introducing in his first starring role on phones

RECENTS

with a special guest appearance by

MENU

presented in PORTRAVISION and LANSCOPE

Change-Id: I0b8459a6f648a4336a0e1a943e02ba82728a75cb
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
f86f898f8afe73d81b34543dcb2c30d8bf7da563 31-May-2011 Daniel Sandler <dsandler@google.com> Move navigation bar to right-hand-side of seascape.

This means the navbar will either be at the bottom (portrait
and reverse portrait) or the right (landscape and seascape)
irrespective of the physical bottom of the device.

Change-Id: Ib51cab22f246785c9cebcc688bcdb848eb776361
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
1d4d30aebd2c22627131819cabfe95f97def2c83 28-Apr-2011 Daniel Sandler <dsandler@google.com> 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
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java
8956dbbc5f292d8b79072ae73b25f2114c8c7479 22-Apr-2011 Daniel Sandler <dsandler@android.com> On-screen navigation bar (separate from the status bar).

In Honeycomb we introduced navigation controls in the status
bar, for xlarge devices without physical buttons. What about
phones? The status bar is pretty cramped already, and
besides, it's at the top of the display most of the time,
not at the bottom where your thumb is likely to be.

Enter the navigation bar. It's a new window type that
appears atop almost everything (including the keyguard); the
window manager subtracts its rectangle from the default
visible rectangle of other windows (including the status bar
and notification shade).

However, it behaves (on phones) like the status bar in that
applications that request fullscreen windows can get access
to those pixels. Well, almost; they need cooperation from
the navigation bar implementation to make the navbar
disappear, just like the status bar.

The current SystemUI implementation of the navigation bar on
phones is still rough, but it has the basics:

+ back, home, and menu keys (NB: we're showing menu all the
time right now because checking the api level of the
package owning the top window is currently a poor
indicator of whether the app requires the menu key)
+ it tries to stick to the same physical end of the device,
regardless of device orientation (on a phone, this is
the strip of land closest to the microphone)

Change-Id: Ic613a3351220af0bbfbdef63e1d99cbefd5ed1c2
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarView.java