History log of /frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
723a725e790d269f32980116e775d3d7f0037865 12-Oct-2012 Jeff Sharkey <jsharkey@android.com> Make all lockscreen widgets follow haptic flag.

Bug: 7337006
Change-Id: I782e498b7528e612c4b06a75b77f5521c951cbd6
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
e56ffdc7b31b0937628609cc3bbaa15879023569 23-Sep-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bug #6427629 Clean up layout direction APIs

- rename getResolvedLayoutDirection() to getLayoutDirection()

Change-Id: I3afe56c0db0751952f5056c23893cb7455531d29
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
53f109bf4923e111e796014e6701a14e5bfa5d1a 14-Jun-2012 Michael Jurka <mikejurka@google.com> Change snap behavior for lock screen

Use angle and distance from center, rather than
distance from target.

Change-Id: Ic970bc4b05d341dbb6aab334e3f630794f2a211c
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
955a016922ea49f154d190b054a202559b41a4d3 12-Jun-2012 Jim Miller <jaggies@google.com> Fix 6613962: Update keyguard to use new GlowPadView UX design.

Change-Id: I4f1ef3107e5550f7df9dcb412943a84b66432b7d
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
3294b6b09b2f52cb44005720051c32c9c851fc9f 01-Jun-2012 Jim Miller <jaggies@google.com> Fix 6592932: add means to replace assist icon from given package

This provides the means to replace the assist icon shown in keyguard and the
navigation gesture for assist. It's done by adding metadata called
"com.android.systemui.action_assist_icon" to the activity that handles
android.intent.action.ASSIST. It should point to a StateListDrawable
in that package with the required states. For example:

<meta-data android:name="com.android.systemui.action_assist_icon"
android:resource="@drawable/ic_android_systemui_action_assist" />

And then something like this in drawable/ic_android_systemui_action_assist.xml :

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true"
android:state_active="false"
android:state_focused="false"
android:drawable="@drawable/ic_action_assist_normal" />
<item android:state_enabled="true"
android:state_active="true"
android:state_focused="false"
android:drawable="@drawable/ic_action_assist_activated" />
<item android:state_enabled="true"
android:state_active="false"
android:state_focused="true"
android:drawable="@drawable/ic_action_assist_focused" />
</selector>

Change-Id: Ibc29360e179fed68253ff06a07b1bb2b982d0dab
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
2a7b17bb2604823e140fb867fe87836dd039611a 30-May-2012 Jim Miller <jaggies@google.com> Fix 6580421: make sure MultiWaveView.reset() makes handle visible

This fixes a bug where sometimes the handle wasn't visble in the
incoming call screen. The problem was that the animation was
interrupted on its transition from alpha = 0 to alpha = 1 by reset()
and the new handle animation wasn't started.

Change-Id: I3ab4259db1115da20e7f54b91bbfe3b496940214
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
9a720f5eb6c67b581df22f4ecb498cebb459babe 30-May-2012 Jim Miller <jaggies@google.com> Fix 6398209: SearchPanel gesture improvements

This fixes a few recent regressions caused by other bug fixes:
- add new flags to animateCollapse() so we can selectively close panels. Fixes regression caused by attempt to close recent apps from startAssistActivity() which had the side effect of closing the search panel before the animation completes.
- adds tuneable holdoff delay for responding to home key press.
- minor tweaks to MultiWaveView animations.

Change-Id: Ia48434b8d59e7b0290a5e9783960c2f684068218
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
a073e570789e5b49e8339af44516444b13db4428 24-May-2012 Jim Miller <jaggies@google.com> Fix 6398209: General animation improvements for swipe to search

This cleans up the animation for swipe to search from the navbar. In particular:
1. Wait for initial animation to finish if gesture was too quick.
2. Better fade animation
3. Hide background and fade in when ring is selected
4. Smoother target and outer ring animation when switching between states.

Change-Id: I401197760cf9f06b6ff3e1cdb80bee86a03ef276
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.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/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
998bb765290066822ff8a3b378dadd71deb0ce73 21-May-2012 Jim Miller <jaggies@google.com> Fix6398209: reveal search when home button is long-pressed

This change add a feature to reveal the swipe to search interface
when the home key is pressed for longer than 50ms. It progressively
reveals the interface. It still requires a bit of tuning, but all
the basic parameters are in this CL.

Change-Id: I1d3a5bb7b912265eb41da68bc9313eee1af2e415
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
5de47b6ad9d72476302f8a3732b639d3d413ef77 17-May-2012 Jim Miller <jaggies@google.com> Fix 6398209: Fix glitch in chevron animation in MultiWaveView

This fixes a glitch caused by clearing the array of chevrons before
stopping the associated animations. The old animations were allowed to
complete which caused chevrons to move around erratically because they
were being controlled by multiple animators.

Change-Id: Iec1450dd83077a721930eb3cac19a621e7356980
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
20830421fe223bf2a8a69a67a6d26b0b5beb5baa 16-May-2012 Jim Miller <jaggies@google.com> Fix 6398209: Lots of improvements to gesture search from navbar

- Added ability to postpone animations until after window is shown
to ensure the animation is visible on slower devices.
- Fixed layout bug that prevented targets from being located on
outer ring.
- Fixed bug where some motion events were being ignored when handle
wasn't captured.
- Reduced temp object generation in several methods.
- Added containers to start all animations together and to facilitate
delayed start.
- Increased radius of outer ring on phones to closer match mocks.
- Decreased sensitivity of swipe up gesture on navbar so it's harder to false.

Change-Id: I084f840115aef6496a1f87202c4e42d9962c8c3e
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
c6e523ea9bc15f18c9cbf04b05e8d2c90298453f 12-May-2012 Jim Miller <jaggies@google.com> Fix 6486099: Fix clipping issues with MultiWaveView on phone/tablet

This fixes a problem where the bounds of the view weren't being
calculated properly when a separate outer radius was specified.

The code now takes the maximum of the ring drawable's width/height
and that specified in the resource files.

This gives it the best default look on all devices while still
allowing minor tweaks.

Change-Id: I5daa40ff4f14653c8cc89b39102816afb976e4f7
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
4c351d62e7a09bcc29e7d0329bcdd947a302cf40 11-May-2012 Jim Miller <jaggies@google.com> Fix 6040870: Update MultiWaveView for new device

This change allows more flexibility in target placement in MultiWaveView.
It now supports a new way of specifying chevron drawables that allows
them to be moved in directions corresponding to more than the four basic
directions (right, up, left, down).

Chevron drawables can now be updated in an overlay.

This change also adds a place holder and makes a minor tweak to the layout
on 720dp devices where the navbar buttons weren't centered.

Change-Id: Icd319ec5f276870380e27737c873e78f599ff751
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
10c66afbd05e91143ea9bd109d3ce578e53dab14 11-May-2012 Jim Miller <jaggies@google.com> Fix 6398209: Improve MultiWaveView animations and interaction

TargetDrawables now have a "home" position they can be scaled about.
Added new "focused" state to TargetDrawable. This is used to distinguish between highlight and selection.
Updated target icons to use new focused state. Currently re-uses "activated" icon.
Change to event handling to allow cancel events when a target is highlighted to cause a selection.
Cleaned up MultiWaveView initialization code.

MultiWaveView animation improvements:
- new scale animation when center handle is touched.
- switched to using indices instead of foreach loops in critical path code to avoid creating temporary objects.
- updated and simplified animation code.

Change-Id: I593c021475f1644c73bdb9f84855e6a9fec7c0ab
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
72b26c1fa25077b1f3367eb211be20b629f7b1d4 07-May-2012 Jim Miller <jaggies@google.com> Fix 6397736: Fix issue with MultiWaveView in incoming call screen.

This fixes a bug where the incoming call screen sometimes had
misplaced icons. The code previously relied on an additional layout
pass that doesn't happen in the incoming call screen in some cases.

Change-Id: If7c39994c1bdadbd3e97f4b9ebb45f68893fd9bd
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
354619c1cc1b4668c81c5368b2256335cc9e8538 28-Apr-2012 Jim Miller <jaggies@google.com> Fix 6397736: Swipe up to search layout fixes

This fixes several layout issues on phones and tablets with MultiWaveView.

It adds a new background scrim to be shown behind the MultiWaveView
on the navigation bar.

MultiWaveView is updated to handle gravity constraints which makes layouts
much more flexible across devices.

Change-Id: I64068f4eaa81ef6c464247049117d53432fcacbd
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.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/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
b030476d193a423f6c1baf3053f66fc768c925e0 14-Mar-2012 Jim Miller <jaggies@google.com> Fix 6021938: Improved target support in lock screen

This adds the ability to enable or disable target icons based on the drawable
resource of the target.

It also fixes a bug where we'd show the camera while displaying
the PIN/PUK unlock screen or when it's disabled by DevicePolicyAdmin.

Minor simplification and cleanup KeyguardUpdateMonitor callbacks.

Change-Id: I33fad56a2203bc8b7bcd0300c20478711a56713a
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
bf032650e3938f264091764a606a06a0d34bd15a 28-Jan-2012 Jim Miller <jaggies@google.com> Fix 5907223: Fix lock screen glitch caused on devices with a system bar

This fixes a regression caused by making the lock screen window slippery where
dragging the target over the system bar would incorrectly cause it to
snap to an invisible target. It now interprets MotionEvent.ACTION_CANCEL
the same as an "up" event and resets to the initial state.

Change-Id: I9a3c195371d64e1a4613f6f1fb0a043e9a47a601
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
72ec81441a9f2595774e3ea04616f8ff5bd6d7dd 24-Sep-2011 Brandon Keely <lbk@google.com> Avoid double-ping when tapping outside the handle.

Change-Id: Iccab649e075fc86a860c1ce6e8df173e9968bef2
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
c56c92013c0acfa4517ed5d36d8aa78bc21452ae 23-Sep-2011 Brandon Keely <lbk@google.com> Merge "Make LockScreen ping() on a miss."
fb708a1a6cdca91375b5d8a21b0c7001763d6119 23-Sep-2011 Jim Miller <jaggies@google.com> Fix 5355659: Minor tweak to wave ping radius in MultiWaveView.

Change-Id: Ib85c9d375e26897ce87b41addfaba503d9430f18
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
ce6eb1f5f2b4dae3f4b487f6da579149f42a8b4b 21-Sep-2011 Jim Miller <jaggies@google.com> Fix 5355659: Change chevron visuals, timing, and animated positioning

Change-Id: I55e34496cc1eb4ace60b6d1ccbdb894035bca6e2
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
8dcd571b89580ada6b557fc5e72010fa9696cf4e 22-Sep-2011 Brandon Keely <lbk@google.com> Make LockScreen ping() on a miss.

Change-Id: Ib0cd12f40a6027e8c950dd4bdd3d5a5210b049ac
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
2a671ac905e97d108e53e11856b01356f9248cc8 16-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> MiltiWaveView accessibility improvement.

Now hover events behave s motion events in touch exploration mode.
The use no longer needs to find the handle and tap + hold to engage.
It is enough to move on top of it.

Now the handle is engaged, i.e. can be dragged, when the user passes
on top of it for both accessibility enabled and disabled.

bug:5253968

Change-Id: If70b44cb6db8a38432216b46ecddefb3e2bc3825
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
2f8dbf5722a5d18fe6c2050b2351f6dd18ea6ffc 06-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Merge "Increasing the tap radius for the handle in MultiWaveView to improve accessibility"
66b191dad09a7552d1579a4a1d57a84e27a9ddb1 03-Sep-2011 Svetoslav Ganov <svetoslavganov@google.com> Increasing the tap radius for the handle in MultiWaveView to improve accessibility

bug:5253968

Change-Id: Ibe5a3a2453db1bbeaf8e818430685b48460ab06c
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
57df88bc94f9aa06450e158b5a59ec29e3fe8874 31-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Cleaning up the accessibility of MultiWaveView

Change-Id: I13bd71670b38a917d62118ddef5ed6982c9eba99
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
f058340b2f1c3d8114c48581680b4294122fe371 27-Aug-2011 Svetoslav Ganov <svetoslavganov@google.com> Adding accessibility support to the slide lock screen

bug:5210233

Change-Id: I93e876524ae6aaf75aadbe6a21c5c17d41a705f0
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
be8d1cf1ac9fc514fb0cc2e8ef4a85beb0197fa0 05-Aug-2011 Jim Miller <jaggies@google.com> Fix 5045008: replace "ring/silence" target in LockScreen with camera app

This change replaces the ring/silence target with a camera target. It
is disabled and falls back to the old behavior when any device policy
disables the camera.

Updated with latest icons.

Change-Id: I2374eba08f85ff1d1b0bad2859efa30bb166fb60
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
6b05d58018c2806459c121e507c005639b74aee9 18-Jul-2011 Jim Miller <jaggies@google.com> Fix 5044158: Initial pass: add music transport controls to LockScreen

Refactored all lockscreen notifications to go through new KeyguardStatusViewManager.
This is required to intercept messages originally intended for separate TextViews that
are now shown in a single view when showing the transport control view.

Refactor EmergencyCallButton to be handled by common code in KeyguardStatusViewManager.

First pass at LockScreenWidgetCallback for LockScreen "widgets" to send events back to LockScreen.

First pass at LockScreenWidgetInterface, which will be required of Views that want to be rendered on
LockScreen.

Added place-holder TransportControlView until the real one is ready and integrated it into GridLayouts.

Ensured emergencyCallButton is in all views, even if not shown since some devices may lock the user
out if certain criteria isn't met (missing SIM, etc).

Refactored layouts and removed keyguard_screen_status*.xml since layouts are all over the map and
no longer make good use of a shared layout for this.

Minor tweak to MultiWaveView to fix layout issues when placed in GridLayout where the measurement
was being calculated improperly.

Moved EmergencyCallButton to bottom of view where we can.

Removed unused Alpha keyboards from tablet password unlock layouts.

Removed unused views (status2, emergencyCallText screenLocked) from layouts and made common views have common names.

Fixed bug with MultiWave layout in landscape where array was shown in wrong orientation.

Separated clock colors for phones/tablets since they're now different.

Converted remaining phone layouts to use GridLayout.

Start routing audiomanager events to lockscreen views.

Move emergency call button handling to KeyguardStatusViewManager.

Change-Id: I480b0346cfe19aad316fea0c0aaabf8862693636
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
e20414f37a9aa0c5add34253033a2847905687d7 27-Jul-2011 Jim Miller <jaggies@google.com> Fix 5044158: Turn off debugging in MultiWaveView.

Change-Id: I501e4dbdfff9dc6fbe4ab92f6b15652814480642
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
1c8d207201150c29ac92c424e1320c715a64b5bc 30-Jun-2011 Jim Miller <jaggies@google.com> Fix 4691563: Polish MultiWaveView experience in LockScreen and InCall screen
Better activation experience:
- Hold off on switching out targets until current animation has finished.
- Hide unselected targets when a target is selected.
Code simplification:
- Use explicit callback objects to handle animation updates instead of having MWV implement the interface.
- More compact chevron-loading code.
- Don't use animations for properties that need to change immediately.

Other minor timing tweaks.

Change-Id: I328533e8ab7b4c69c7ba51c8c55002765dcbbd46
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
bf591ff682f14db7ba7b3554897e9cdcf245da59 28-Jun-2011 Jim Miller <jaggies@google.com> Fix 4691563: Fix memory leak caused by Tweeners hanging onto references.

This fixes a bug where the animations in MultiWaveView were keeping references
to bitmaps and preventing them from being reclaimed during GC. The solution
is two-fold:
1. When any given animation completes, it is now removed from the list of running
animators objects.
2. When the client explicitly calls reset(), we release all references to
animators and objects.

Change-Id: Ice434ed1720fe4c253b9607ef61699d41f87f777
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
b35e372bf4080f3b1940a371f1e39fb5dccde990 20-Jun-2011 Jim Miller <jaggies@google.com> Handle dropped motion events in MultiWaveView due to high system activity

This change causes MultWaveView to look at historical motion events to make
unlocking easier during high system load.

Updated after review.

Change-Id: Ibfc3cb513936e3b8488aa4390164bf5e214c982f
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
70832a3d77d90f09fb7ba27612c9cbec6a92abe6 14-Jun-2011 Jim Miller <jaggies@google.com> Some tuning for MultiWaveView animations and assets:
- allow individual chevrons to be specified for (top, bottom, left, right).
- move ring to pressed position (currently w/o animation)
- add top/bottom chevron handling and refactor code accordingly.
- constrain drag handle to the ring

Change-Id: I859b2d03d8f0397c68b87a8ee15df20d55c9552c
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java
b505074e8273887fbcd1e933738a42e770085fb8 09-Jun-2011 Jim Miller <jaggies@google.com> Add new MultiWaveView widget and integrate it into LockScreen

This adds a new multi-target widget to the framework and integrates
it into LockScreen.

Now with updated assets.

Change-Id: Ib41595b9e80a7be6d647f44c803a77f9e5bfeca9
/frameworks/base/core/java/com/android/internal/widget/multiwaveview/MultiWaveView.java