Commit Graph

1118 Commits

Author SHA1 Message Date
Christopher Tate
67265808c1 am 28f0a53a: Merge "Fail more gracefully when window state changes during drags" into honeycomb
* commit '28f0a53a882a39bc22bc5892250411cadf6c0d5d':
  Fail more gracefully when window state changes during drags
2011-01-19 16:43:14 -08:00
Christopher Tate
28f0a53a88 Merge "Fail more gracefully when window state changes during drags" into honeycomb 2011-01-19 16:41:14 -08:00
Christopher Tate
f01af7551b Fail more gracefully when window state changes during drags
In particular, if a new window was created out from under the drag,
the drag-move event dispatch logic would wind up blithly assuming
that it would find a valid touch-dispatchable window under the
finger.  When this was untrue, it would NPE, but the NPE was caught
and discarded safely by higher-level guard code.

With this change, we now avoid the NPE entirely and report the
spurious condition as part of the debugging log stream.

(Also add the local-state object to DragEvent.toString()'s output.)

Change-Id: Idfa5f45d049e48415ee59c8b0ffb5b0ed4098ce3
2011-01-19 16:25:22 -08:00
Gilles Debunne
8d2480ca39 am 0c44d1db: Merge "Race condition patched in Email autocompletion." into honeycomb
* commit '0c44d1dbb152ed16df4eb2af39157f3d281323d9':
  Race condition patched in Email autocompletion.
2011-01-19 16:09:43 -08:00
Gilles Debunne
be2c4f92a9 Race condition patched in Email autocompletion.
Bug 3347962

Root cause of this problem: if the adapter's content gets updated by a backgroung
thread, the PopupDataSetObserver will call showDropDown which will popup the
list.

Added a flag to make this call show the popup iif it is already visible.
This relayout is needed to clear the mDataChanged flag set when the content was
modified and which otherwise prevents touch events on the result list.

ArrayAdapter didn't use its lock to protect access to mObject.

-------------------------------------------------

However, the study of the this race conditions revealed an other bug:

Updated adapter's content is not displayed in filtered AutoCompleteTextView
Bug 3369097

Change-Id: Icd90d452f98231866f4d8a1f6994c1492febecb9
2011-01-19 15:10:09 -08:00
Romain Guy
1aae1c2a9b am 8f36bedc: Merge "Don\'t attempt to create empty layers. Bug #3369888" into honeycomb
* commit '8f36bedcf3fd3b5b3e5746af689b9915d506365f':
  Don't attempt to create empty layers. Bug #3369888
2011-01-19 14:38:04 -08:00
Romain Guy
8f36bedcf3 Merge "Don't attempt to create empty layers. Bug #3369888" into honeycomb 2011-01-19 14:36:22 -08:00
Romain Guy
514fb18827 Don't attempt to create empty layers.
Bug #3369888

Change-Id: Ic17bbd1c04bbf760cb17d0eb9e6767fd6479948c
2011-01-19 14:38:29 -08:00
Christopher Tate
714066d873 am 5383d077: Merge "Fix a couple of drag & drop crashes" into honeycomb
* commit '5383d077ed79e9fec95361046fcd7491ee9a0fd4':
  Fix a couple of drag & drop crashes
2011-01-19 13:53:42 -08:00
Christopher Tate
5383d077ed Merge "Fix a couple of drag & drop crashes" into honeycomb 2011-01-19 13:51:58 -08:00
Romain Guy
2c197a0708 am 9335f5b2: Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb
* commit '9335f5b2fde244614184f45d29cc574d1ba8cbba':
  Make embedded hardware layers work. Bug #3369474
2011-01-19 13:42:33 -08:00
Romain Guy
9335f5b2fd Merge "Make embedded hardware layers work. Bug #3369474" into honeycomb 2011-01-19 13:40:43 -08:00
Romain Guy
42f3a4b7c3 Make embedded hardware layers work.
Bug #3369474

Change-Id: Ib6d7fb44eedda9dc2933b5e1b176f307968af91d
2011-01-19 13:42:26 -08:00
Christopher Tate
1fc014fd00 Fix a couple of drag & drop crashes
1. ViewGroups being removed from the layout during a drag would wind up
crashing the app with an NPE at drag-ended time, due to blind dereference
of now-cleared object pointers.

2. Passing a 'null' ClipData to startDrag() would crash the system
process with an NPE.  Should this even be valid?  I'm inclined to say
yes, though it means that apps will need to guard against it.

Fixes bug 3369542

Change-Id: I168fc1284d6fd4403999946609725414cf254df0
2011-01-19 13:02:24 -08:00
Eric Laurent
28e8c9423c am 10f4ffe9: Merge "Issue 3315999: catch ToneGenerator exceptions." into honeycomb
* commit '10f4ffe9619ca3a943e3460d8bb7b5441575a173':
  Issue 3315999: catch ToneGenerator exceptions.
2011-01-19 12:19:51 -08:00
Eric Laurent
733a42b24b Issue 3315999: catch ToneGenerator exceptions.
When the AudioFlinger runs out of available AudioTracks (max 32),
the ToneGenerator constructor throws a RuntimeException. Although this
denotes an abnormal situation, VolumePanel should catch this exception.

Change-Id: Ida1312fe4857e99a0ef38b4013cb03e819405689
2011-01-19 12:16:19 -08:00
Romain Guy
3e4f4b8857 am 064f6ad3: Merge "Recreate the EGL surface when ViewRoot\'s surface changes. Bug #3306150" into honeycomb
* commit '064f6ad3928c51996359694c00a580115b2dabfc':
  Recreate the EGL surface when ViewRoot's surface changes. Bug #3306150
2011-01-18 18:41:29 -08:00
Dianne Hackborn
fe86e9793c am 661b6cfb: Merge "Okay, new plan for dialogs." into honeycomb
* commit '661b6cfb2bcecdd335540db7059e5d8e22c2e79a':
  Okay, new plan for dialogs.
2011-01-18 18:40:22 -08:00
Christopher Tate
31cd02ade3 am 17ed60c3: API CHANGE: add a no-View ctor for DragShadowBuilder
* commit '17ed60c3d2e480ab9788b445958a22b9ae7b6e96':
  API CHANGE: add a no-View ctor for DragShadowBuilder
2011-01-18 18:36:06 -08:00
Romain Guy
2a83f001fd Recreate the EGL surface when ViewRoot's surface changes.
Bug #3306150

Change-Id: Ifbf0ab9deca7a34eff7d844ea7276d12d7284788
2011-01-18 18:28:21 -08:00
Romain Guy
064f6ad392 Merge "Recreate the EGL surface when ViewRoot's surface changes. Bug #3306150" into honeycomb 2011-01-18 18:26:22 -08:00
Dianne Hackborn
661b6cfb2b Merge "Okay, new plan for dialogs." into honeycomb 2011-01-18 17:48:22 -08:00
Dianne Hackborn
ef57575887 Okay, new plan for dialogs.
Don't dismiss by default when tapping outside, even for AlertDialog.

If AlertDialog doesn't have any buttons, tapping outside will dismiss it.

Applications can make their own dialogs (or activities looking like
dialogs) can use the existing and new APIs to control this behavior
themselves so that it does the right thing.

Change-Id: I02bfb9161e169de0033200211b3a7ec80080bd83
2011-01-18 17:35:17 -08:00
Christopher Tate
17ed60c3d2 API CHANGE: add a no-View ctor for DragShadowBuilder
Cf conversation with the API council.  Also expand the javadoc
a bit.

Change-Id: I9d4edb1042e00492b3db5c6bb7c7d9648581efad
2011-01-18 16:07:06 -08:00
Dianne Hackborn
2ec5a7160b am 36c84403: Merge "Fix issue #3362484: Can\'t dismiss activity picker by tapping outside dialog" into honeycomb
* commit '36c84403ec07439d11ed284ac5f9a9db807fbf92':
  Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog
2011-01-18 15:32:44 -08:00
Dianne Hackborn
36c84403ec Merge "Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog" into honeycomb 2011-01-18 15:31:21 -08:00
Dianne Hackborn
cfaf8878de Fix issue #3362484: Can't dismiss activity picker by tapping outside dialog
Change-Id: Idc2fe5a86c61e8f94fe9d902a0087a05f6f7918e
2011-01-18 15:28:41 -08:00
Romain Guy
a2dcab45d8 am 89108d5c: Merge "Add support for skew()" into honeycomb
* commit '89108d5c311d0cc6879fb41c6392f17c58644fee':
  Add support for skew()
2011-01-18 11:23:07 -08:00
Romain Guy
807daf7df6 Add support for skew()
Change-Id: Ia3a9a867f74fd78b61f75179e3788fdc2f0cacd0
2011-01-18 11:19:19 -08:00
Romain Guy
d80d81bb65 am a43cfd29: Merge "Improve hardware layers rendering speed when setting a View\'s alpha." into honeycomb
* commit 'a43cfd2940d7c887a8130c0e972a1b398a887819':
  Improve hardware layers rendering speed when setting a View's alpha.
2011-01-17 14:45:32 -08:00
Romain Guy
d6cd572df8 Improve hardware layers rendering speed when setting a View's alpha.
Change-Id: Ib1275677f531c60d9919978c5538c663fdb823b5
2011-01-17 14:42:41 -08:00
Jeff Brown
fed9d654e9 am 5cdf0752: Merge "Support non-rectangular input regions." into honeycomb
* commit '5cdf07524132722e0db69db1ca8dcaf3f0073265':
  Support non-rectangular input regions.
2011-01-16 19:24:17 -08:00
Jeff Brown
5cdf075241 Merge "Support non-rectangular input regions." into honeycomb 2011-01-16 19:22:01 -08:00
Jeff Brown
fbf0977321 Support non-rectangular input regions.
This enables the system bar to carve out a region through which
events will be sent to the IME behind it.

Bug: 3238092
Change-Id: I69b855a8d9b5b3ee525266c0861826e53e5b5028
2011-01-16 18:58:49 -08:00
Romain Guy
761ae69b7c am 3c372789: Merge "Don\'t dispatchDetachedFromWindow() if the View was not attached." into honeycomb
* commit '3c372789ea0b7836c6a9fe4852fac0de3f29fbbf':
  Don't dispatchDetachedFromWindow() if the View was not attached.
2011-01-16 13:30:43 -08:00
Romain Guy
90fc03bc49 Don't dispatchDetachedFromWindow() if the View was not attached.
Change-Id: I36cb697be76c8c03497284563dc339c5367559c6
2011-01-16 13:07:15 -08:00
Romain Guy
8dd5b1e531 Prevent NPE when a View is detached without having been attached.
Bug #3355252

Change-Id: I58e03983ccf6a27a24619ec0f49659d6d7cc0a64
2011-01-14 17:28:51 -08:00
Romain Guy
2be00ccbe7 am 8dd5b1e5: Prevent NPE when a View is detached without having been attached. Bug #3355252
* commit '8dd5b1e53184ed3b786dd329e12d665ae59ca3f4':
  Prevent NPE when a View is detached without having been attached. Bug #3355252
2011-01-14 17:28:28 -08:00
Dianne Hackborn
a347733000 am 88471b25: Merge "DO NOT MERGE Added check to make orientation calculations more robust" into honeycomb
* commit '88471b25632818a8bc79193e20bd04a8be39f660':
  DO NOT MERGE Added check to make orientation calculations more robust
2011-01-14 16:03:30 -08:00
Niclas Kellgren
fcbbb31f27 DO NOT MERGE Added check to make orientation calculations more robust
Added check avoid a division by zero resulting in NaN which in turn
makes checkFullyTilted to ignore high tilt angles from then on.
If (x, y, z) == (0, 0, 0) then there is no tilt or rotation and
this vector must be ignored. This check is extended to ignore all
small acceleration values where noise can be of big influence.

Low or zero readings can happen when space travelling free falling,
but more commonly when shaking or getting bad readings from the sensor.
The accelerometer is turned off when not used and polling it too soon
after it is turned on may result in (0, 0, 0).

Change-Id: I7b61b77c8a9d4e137bf6352b84f0c358d93c82ae
2011-01-14 16:01:20 -08:00
Patrick Dubroy
75f555f26f am bdcff0fa: Merge "Allow old view hierarchy to be GC\'ed more quickly during rotation." into honeycomb
* commit 'bdcff0fa8383a1ae93c18a768a7c2bf150d3f405':
  Allow old view hierarchy to be GC'ed more quickly during rotation.
2011-01-14 14:47:23 -08:00
Patrick Dubroy
ec84c3a189 Allow old view hierarchy to be GC'ed more quickly during rotation. 2011-01-14 14:13:31 -08:00
Christopher Tate
e1cc00bba0 am 64cb24e6: Merge "Send DRAG_STARTED notices to views that become visible during drag" into honeycomb
* commit '64cb24e686b13aabe3d28e049796c8315b011485':
  Send DRAG_STARTED notices to views that become visible during drag
2011-01-14 12:38:24 -08:00
Christopher Tate
64cb24e686 Merge "Send DRAG_STARTED notices to views that become visible during drag" into honeycomb 2011-01-14 12:36:53 -08:00
Dianne Hackborn
f21ae26935 am d922ae01: Add Holo theme for IMEs.
* commit 'd922ae01ca99a2b6d39a9393f86776a1d10ebd14':
  Add Holo theme for IMEs.
2011-01-14 12:31:59 -08:00
Dianne Hackborn
d922ae01ca Add Holo theme for IMEs.
Also clean up theme selection code to get rid of duplication.

Change-Id: Idf7b21db70ee83fce24756ead877169bd08b77a9
2011-01-14 12:28:23 -08:00
Christopher Tate
86cab1bd52 Send DRAG_STARTED notices to views that become visible during drag
We now recognize that a view is now a candidate for receiving the drop
but hasn't yet been notified about it, and send the DRAG_STARTED lifecycle
event properly.  This change also changes the DRAG_ENDED policy: now,
every view that had been sent a DRAG_STARTED receives the corresponding
DRAG_ENDED event, even though subsequent visibility changes may have
occured.

Change-Id: If4ae9ddbf414703e9f15eb2005471626bf19f316
2011-01-14 11:46:09 -08:00
Romain Guy
bd04922f8f am 5b907be8: Merge "Move the main thread check to the appropriate place." into honeycomb
* commit '5b907be8f5c387e7580a8e43935250adabc408c8':
  Move the main thread check to the appropriate place.
2011-01-13 18:38:25 -08:00
Romain Guy
5b907be8f5 Merge "Move the main thread check to the appropriate place." into honeycomb 2011-01-13 18:36:13 -08:00
Romain Guy
501053a16d Move the main thread check to the appropriate place.
Change-Id: Ic9bcf209e9398ea05b293a8cc31ac7f234b9de16
2011-01-13 18:38:45 -08:00