Commit Graph

836 Commits

Author SHA1 Message Date
satok
47a44916e2 Add InputMethodEnabler for enabling input methods and subtypes
- Copyed functionarity from LanguageSettings.java

TODO: Save enabled InputMethodSubtypes

Change-Id: I7b4fb1a79cb8b3229f88773d261430e23ba7aae2
2010-10-07 14:43:16 +09:00
Romain Guy
e743bd2bac Merge "Don't clear the framebuffer when not needed." 2010-10-06 19:51:36 -07:00
Romain Guy
6b7bd24659 Don't clear the framebuffer when not needed. 2010-10-06 19:49:23 -07:00
Christopher Tate
5ada6cb059 More drag/drop adjustments:
* Make View.onDragEvent() public instead of protected.
* No longer @hide View.startDrag()
* Properly manage the boundaries of DRAG_STARTED / DRAG_ENDED notifications
  to windows (and as a result don't send bogus empty DRAG_STARTED events or
  double-recycle pooled DragEvents)

Change-Id: Ib75f5c1417640c82a5b043c555e02d6e6f4b4d9c
2010-10-06 17:33:10 -07:00
Mathias Agopian
7930b5bc06 am 722665c5: am ef115308: fix build. SurfaceView.setFrame needed to be hidden
Merge commit '722665c5f76e81bed646490977ea30f38aaa00da'

* commit '722665c5f76e81bed646490977ea30f38aaa00da':
  fix build. SurfaceView.setFrame needed to be hidden
2010-10-06 17:07:30 -07:00
Mathias Agopian
3243cbc9b2 am b99e81ab: am 7e6064ad: Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread
Merge commit 'b99e81ab4cccac537fc7ae8d07d59a0f6c1395d2'

* commit 'b99e81ab4cccac537fc7ae8d07d59a0f6c1395d2':
  fix [3008290] passion GB surface does not send surfaceChanged notification after size change.
2010-10-06 16:17:44 -07:00
Neel Parekh
e537858ba7 Fix pressed vs selected typo in onCreateDrawableState
Change-Id: I7a415cacf29ed8c6c558f6b29902edd76fc98ea6
2010-10-06 11:39:53 -07:00
Brian Carlstrom
c21550a8d1 Adding android.os.Debug.countInstancesOfClass
- Debug.countInstancesOfClass is just a wrapper on
  dalvik.system.VMDebug.countInstancesOfClass to avoid code from
  depending on the dalvik classes directly

- Existing usages of VMDebug.countInstancesOfClass in ActivityThread
  and ViewDebug are converted to the new Debug.countInstancesOfClass

- Existing use of OpenSSLSocketImpl.instanceCount, which is being
  removed, is converted to Debug.countInstancesOfClass(OpenSSLSocketImpl.class)

Bug: 3015791
Change-Id: Iefa781292d5b82a63bad7254c913a09deb3b7888
2010-10-05 21:38:57 -07:00
Romain Guy
e21635571e Merge "Code cleanup and disable display lists for now." 2010-10-05 13:44:24 -07:00
Romain Guy
469b1dbeaf Code cleanup and disable display lists for now.
Change-Id: I681213036b5279339cb96a016d1dfb15d74dafc8
2010-10-05 13:42:35 -07:00
Christopher Tate
a0374192b9 Make View.DragThumbnailBuilder a static class
It also now uses a WeakReference to the associated View, not a hard
object pointer.

Change-Id: I37e10b3155ee7e089a72bdf050cc2d323794810f
2010-10-05 13:14:25 -07:00
Dianne Hackborn
38014763a2 am 89230e3b: am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread
Merge commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d'

* commit '89230e3b7b9ec455373e3f60b62ff65589a9c57d':
  Fix issue #3041660: Camera image flips upside down when rotating device
2010-10-05 12:54:41 -07:00
Romain Guy
2fe9a8f6f6 Correctly invalidate the drawing cache when an invalidate is requested.
Change-Id: Ic78f85d728a14a9f2e4a1925d46b6db9a204bbb1
2010-10-04 20:19:34 -07:00
Mathias Agopian
722665c5f7 am ef115308: fix build. SurfaceView.setFrame needed to be hidden
Merge commit 'ef11530874f86570aa04a10c16a416b274b3fdf5' into gingerbread-plus-aosp

* commit 'ef11530874f86570aa04a10c16a416b274b3fdf5':
  fix build. SurfaceView.setFrame needed to be hidden
2010-10-04 20:18:51 -07:00
Mathias Agopian
ef11530874 fix build. SurfaceView.setFrame needed to be hidden
Change-Id: I96b0896e24483e9b5db19c938cb6058868f34e48
2010-10-04 20:15:08 -07:00
Mathias Agopian
b99e81ab4c am 7e6064ad: Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread
Merge commit '7e6064ad7ccd4a0c59d89ccdf16e969b0c3296d3' into gingerbread-plus-aosp

* commit '7e6064ad7ccd4a0c59d89ccdf16e969b0c3296d3':
  fix [3008290] passion GB surface does not send surfaceChanged notification after size change.
2010-10-04 19:52:41 -07:00
Mathias Agopian
7e6064ad7c Merge "fix [3008290] passion GB surface does not send surfaceChanged notification after size change." into gingerbread 2010-10-04 19:50:16 -07:00
Christopher Tate
2c095f3677 Refinements to drag/drop
Thumbnail measurement & drawing has been moved out into a delegate
class called View.DragThumbnailBuilder.  This consolidates the
thumbnail-related code as well as ensuring that the drag initiator
does not have to know a priori where to place the thumbnail relative
to the touch point *before* the thumbnail measurement step, as was
previously the case.

startDrag() no longer needs to be told where the current touch point
is at the time the drag is launched.

Drag events are now dispatched only to VISIBLE views.

Dispatch shouldn't double-recycle events any more when the target
window is local to the system process.

Change-Id: I49419103765a0cad2e18ddfcdd6dacb94daf1ff1
2010-10-04 18:29:09 -07:00
Mathias Agopian
995bb9d24d fix [3008290] passion GB surface does not send surfaceChanged notification after size change.
The video has the same aspect ratio than the window, so the window size doesn't change.
In turn, onSizeChanged() is not called, which is where surfaceChanged() is eventually called from.

we now override setFrame() and always call updateWindow from there instead of from onSizeChanged()

Change-Id: I87064b577ff1d7b6ba50e563d7278813002d2b29
2010-10-04 17:13:15 -07:00
Chet Haase
5e25c2c145 Add ability to automate animated transitions on View show/hide
Change-Id: Id6ff92c8fd06c3f5fb30c41b020b4de4f567154f
2010-10-04 15:11:36 -07:00
Dianne Hackborn
89230e3b7b am 458fc5f5: Merge "Fix issue #3041660: Camera image flips upside down when rotating device" into gingerbread
Merge commit '458fc5f52e25d7a8b4e482010711aed66f0b4999' into gingerbread-plus-aosp

* commit '458fc5f52e25d7a8b4e482010711aed66f0b4999':
  Fix issue #3041660: Camera image flips upside down when rotating device
2010-10-04 14:55:09 -07:00
Dianne Hackborn
e5439f228f Fix issue #3041660: Camera image flips upside down when rotating device
Apps now must explicitly opt in to having their rotation changed while
forcing landscape mode.  Also add some new orientation constants for other
things apps may want to do.

Change-Id: If64d84b5ef54793ee717ebda9b4c76408efc9bfd
2010-10-04 14:01:39 -07:00
Jeff Brown
efb8a3d6e0 am 57fa3e8b: am 9e32a438: Merge "Support haptic feedback for virtual keys defined in key layout." into gingerbread
Merge commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f'

* commit '57fa3e8b4c94125ddb5be015dd7fbde4a458894f':
  Support haptic feedback for virtual keys defined in key layout.
2010-10-01 17:08:34 -07:00
Dianne Hackborn
120e6be701 am 007d5b2c: am fd57416c: Fix build.
Merge commit '007d5b2cf6af32dfe96c0c04988d090b872afb01'

* commit '007d5b2cf6af32dfe96c0c04988d090b872afb01':
  Fix build.
2010-10-01 17:07:09 -07:00
Chet Haase
ed03270fb0 Optimizing invalidation to avoid trashing the rendering cache
Objects whose size or contents do not change can use the same rendering cache as before, so in these cases we do invalidation without causing the rendering cache to be recreated.

Change-Id: I840737097b73017ae9ccc9e2cc0bc3d71527e555
2010-10-01 16:33:59 -07:00
Jeff Brown
57fa3e8b4c am 9e32a438: Merge "Support haptic feedback for virtual keys defined in key layout." into gingerbread
Merge commit '9e32a438fd87180692da55197972ecddb1a731d9' into gingerbread-plus-aosp

* commit '9e32a438fd87180692da55197972ecddb1a731d9':
  Support haptic feedback for virtual keys defined in key layout.
2010-10-01 16:16:23 -07:00
Jeff Brown
0eaf3931a3 Support haptic feedback for virtual keys defined in key layout.
Change-Id: I83e4108a87332692e03791dc066206becbc7941f
2010-10-01 15:08:56 -07:00
Dianne Hackborn
007d5b2cf6 am fd57416c: Fix build.
Merge commit 'fd57416cc8c2a333f46cacad6de48a3b1547eac9' into gingerbread-plus-aosp

* commit 'fd57416cc8c2a333f46cacad6de48a3b1547eac9':
  Fix build.
2010-10-01 14:21:32 -07:00
Dianne Hackborn
fd57416cc8 Fix build.
Change-Id: I99d362e6673252ade4da29f29852eccaedbc9709
2010-10-01 14:04:27 -07:00
Jeff Brown
8667174067 Make View transformation matrix updating more explicit.
The original code depends on side-effects of hasIdentityMatrix()
to update the View transformation matrix.  This change adds an
explicit updateMatrix() method to make it more explicit when
we are relying on the matrix having been updated.  Among other
things, getInverseMatrix() did not update the matrix so the
caller had to know to call hasIdentityMatrix() first (which was
always the case, but still potentially error-prone).

Change-Id: I16d56f60a785a15c65f73e57b9aded9e4e3bca55
2010-10-01 13:30:07 -07:00
Romain Guy
0bb5667b4e Fix INVALID_OPERATION error with layers rendering.
This change is a workaround for a driver bug that causes an INVALID_OPERATION
to be thrown on every glCopyTexSubImage() call. This change also adds a new
test for gradients local matrices.

Change-Id: I41b7437481026702d0a3a9677f099b4557c0a84e
2010-10-01 00:25:02 -07:00
Christopher Tate
a53146c556 Drag/drop APIs and infrastructure
A View initiates a drag-and-drop operation (hereafter just called a "drag")
by calling its startDrag(ClipData) method.  Within the processing of that
call, two callbacks are made into the originating View.  The first is to
onMeasureDragThumbnail().  Similarly to the core onMeasure() method, this
callback must respond by calling setDragThumbnailDimension(width, height) to
declare the size of the drag thumbnail image that should be used.  Following
this, the View's onDrawDragThumbnail(canvas) method will be invoked to
actually produce the bits of the thumbnail image.

If all goes well, startDrag() will return 'true', and the drag is off and
running.  (The other arguments to startDrag() provide reconciliation between
the current finger position and where the thumbnail should be placed on
the screen relative to it.)

Potential receipients of the ClipData behind the drag are notified by a
new dispatch mechanism, roughly parallel to motion event dispatch.  The core
routine is the View's onDragEvent(event) callback, with the mechanics of
dispatch itself being routed through dispatchDragEvent(event) -- as in
the case of motion events, the dispatch logic is in ViewGroup, with leaf
View objects not needing to consider the dispatch flow.

Several different event 'actions' are delivered through this dispatch
mechanism:

ACTION_DRAG_STARTED: this event is propagated to every View in every window
(including windows created during the course of a drag).  It serves as a
global notification that a drag has started with a payload whose matching
ClipDescription is supplied with the event.  A View that is prepared to
consume the data described in this event should return 'true' from their
onDragEvent() method, and ideally will also make some visible on-screen
indication that they are a potential target of the drop.

ACTION_DRAG_ENTERED: this event is sent once when the drag point
enters the View's bounds.  It is an opportunity for the View to set up
feedback that they are the one who will see the drop if the finger goes
up now.

ACTION_DRAG_LOCATION: when the drag point is over a given View, that
View will receive a stream of DRAG_LOCATION events, providing an
opportunity for the View to show visual feedback tied to the drag point.

ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point
leaves the View's bounds.  The View should undo any visuals meant to
emphasize their being the hovered-over target.

ACTION_DROP: when the drag ends at a given point, the View under that
point is sent this event, with the full ClipData of the payload.

ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global
broadcast that the drag has ended and all Views should return to their
normal visual state.  This happens after the DROP event.

Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
2010-09-30 16:29:07 -07:00
Jeff Brown
20e987bfc3 Add MotionEvent Matrix transformations.
Fixed issued in ViewGroup's transformation of MotionEvents to ensure
that the entire historical trace is transformed, not just the current
pointer.

Simplified the code in ViewGroup for splitting events across Views.
The new code also handles the case where some pointers are dispatched
to the ViewGroup in addition to its children whereas the previous
code would drop some pointers on the floor.

Change-Id: I56ac31903e1de8a9c376d9c935b7217b0c42d93e
2010-09-30 11:52:48 -07:00
Romain Guy
e17c054d34 Merge "Add display lists caching." 2010-09-29 13:37:37 -07:00
Romain Guy
b051e895cc Add display lists caching.
Change-Id: Iac3a248a81ed8cb076a83ef9d186b8ebba685b4c
2010-09-29 13:29:04 -07:00
Jeff Brown
464fb74e28 am 9785bf0f: am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread
Merge commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919'

* commit '9785bf0f2b6b8758aed7ded3b996a2ef0be89919':
  Add suuport for splitting touch events across windows.
2010-09-27 14:40:38 -07:00
Jeff Brown
9785bf0f2b am 14a288da: Merge "Add suuport for splitting touch events across windows." into gingerbread
Merge commit '14a288da6a372230d9af41da12241fe500eec837' into gingerbread-plus-aosp

* commit '14a288da6a372230d9af41da12241fe500eec837':
  Add suuport for splitting touch events across windows.
2010-09-27 12:37:03 -07:00
Jeff Brown
14a288da6a Merge "Add suuport for splitting touch events across windows." into gingerbread 2010-09-27 12:33:14 -07:00
Jeff Brown
01ce2e9eee Add suuport for splitting touch events across windows.
This feature is currently used to enable dragging the start and end
selection handles of a TextView at the same time.  Could be used for
other things later.

Deleted some dead code in ArrowKeyMovementMethod and CursorControllers.

Change-Id: I930accd97ca1ca1917aab8a807db2c950fc7b409
2010-09-26 22:20:12 -07:00
Jean-Baptiste Queru
79d716f7de am 74a8df20: am dcfb271b: Merge "Fix if ACTION_DOWN and lost focus time too close, it will become long press."
Merge commit '74a8df2026514025b186aba80a810a03377a80e9'

* commit '74a8df2026514025b186aba80a810a03377a80e9':
  Fix if ACTION_DOWN and lost focus time too close, it will become long press.
2010-09-26 08:44:07 -07:00
Jean-Baptiste Queru
74a8df2026 am dcfb271b: Merge "Fix if ACTION_DOWN and lost focus time too close, it will become long press."
Merge commit 'dcfb271b7fa364d567ffd7c495b2baa28a755251' into gingerbread-plus-aosp

* commit 'dcfb271b7fa364d567ffd7c495b2baa28a755251':
  Fix if ACTION_DOWN and lost focus time too close, it will become long press.
2010-09-26 08:38:59 -07:00
Dianne Hackborn
405e012681 am deaa8ff1: am a7ef18fc: Merge "Some debugging support." into gingerbread
Merge commit 'deaa8ff1b10d38add4f7c276e7be2ffc19359a14'

* commit 'deaa8ff1b10d38add4f7c276e7be2ffc19359a14':
  Some debugging support.
2010-09-24 15:58:25 -07:00
Dianne Hackborn
deaa8ff1b1 am a7ef18fc: Merge "Some debugging support." into gingerbread
Merge commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503' into gingerbread-plus-aosp

* commit 'a7ef18fca50d0db99a161d8c7e2d8979f0445503':
  Some debugging support.
2010-09-24 15:32:51 -07:00
Dianne Hackborn
f123e49bf0 Some debugging support.
- New feature to "am monitor" to have it automatically launch
  gdbserv for you when a crash/ANR happens, and tell you how to
  run the client.

- Update dumpstate to match new location of binder debug logs

- Various commented out logs that are being used to track down
  issues.

Change-Id: Ia5dd0cd2df983a1fc6be697642a4590aa02a26a5
2010-09-24 13:11:55 -07:00
Romain Guy
1abe452515 Merge "Add drawing profiling to the HardwareRenderer." 2010-09-23 16:34:05 -07:00
Romain Guy
9a40babc62 Add drawing profiling to the HardwareRenderer.
Change-Id: Idf410f1764f3e73590b587d0d76a8d10c021f056
2010-09-23 16:32:47 -07:00
Romain Guy
d1fbcbb3cc Merge "Don't clip alpha layers if the flag is not set." 2010-09-23 16:18:32 -07:00
Romain Guy
fd880425e0 Don't clip alpha layers if the flag is not set.
Change-Id: I820fa66bc3699357677f37a769de52fd176d9416
2010-09-23 16:16:04 -07:00
Jeff Brown
5bd069fe1e am 27917946: am de04fb0a: Merge "Enforce serial ordering of MotionEvents." into gingerbread
Merge commit '279179461edccaa4217fe752a9abf6fcc2efa5a1'

* commit '279179461edccaa4217fe752a9abf6fcc2efa5a1':
  Enforce serial ordering of MotionEvents.
2010-09-23 14:57:14 -07:00
Jeff Brown
279179461e am de04fb0a: Merge "Enforce serial ordering of MotionEvents." into gingerbread
Merge commit 'de04fb0a0366057028369eb3b3efcb75367f74db' into gingerbread-plus-aosp

* commit 'de04fb0a0366057028369eb3b3efcb75367f74db':
  Enforce serial ordering of MotionEvents.
2010-09-23 14:53:52 -07:00