1157 Commits

Author SHA1 Message Date
Raphael
f241c40476 Revert "Fix rendering of digitalClock/Gallery in Eclipse editors."
This reverts commit 25e96ce7b99f9736a6024d25bd65a83774c7640f.
2010-10-26 13:55:10 -07:00
Xavier Ducrohet
68404a0125 am a44a5e02: am 1b6180ec: Merge "Fix rendering of digitalClock/Gallery in Eclipse editors." into gingerbread 2010-10-26 12:13:32 -07:00
Xavier Ducrohet
a44a5e02d2 am 1b6180ec: Merge "Fix rendering of digitalClock/Gallery in Eclipse editors." into gingerbread 2010-10-26 12:10:28 -07:00
Xavier Ducrohet
25e96ce7b9 Fix rendering of digitalClock/Gallery in Eclipse editors.
Change-Id: I80f4f90b173529632eaf2fbc3bb5471b7ede8216
2010-10-26 11:18:39 -07:00
Xavier Ducrohet
a6ca66af0c Merge "Layoutlib_Create: Fix order of class adapters." 2010-10-22 15:42:40 -07:00
Xavier Ducrohet
c08e175f14 Merge "Layoutlib_create: fix binary name of delegate methods." 2010-10-22 15:42:26 -07:00
Raphael
e2e8ba904b Layoutlib_Create: Fix order of class adapters.
The Transform adapter was running last, instead of
running on the output of the Delegate adapter.

Change-Id: I2cd777add7b0972c6bb197aaac6693d39dd5a103
2010-10-22 15:29:04 -07:00
Xavier Ducrohet
2191b4b22f Merge "Remove dependency on ASM util classes." 2010-10-22 14:03:07 -07:00
Raphael
280372e2c7 Layoutlib_create: fix binary name of delegate methods.
Change-Id: Iebd7d730b23e12f770e6ecadafb2f5c3459958db
2010-10-22 13:58:31 -07:00
Xavier Ducrohet
ee9642c2ba am 2051a1be: am c5371fad: Merge "Make layoutlib use the prebuilt of layoutlib_api" 2010-10-22 13:41:08 -07:00
Xavier Ducrohet
2051a1be52 am c5371fad: Merge "Make layoutlib use the prebuilt of layoutlib_api" 2010-10-22 13:38:58 -07:00
Raphael
d556d8ba36 Remove dependency on ASM util classes.
Change-Id: I975b103f8c207e727699e4135170755f6ba2a084
2010-10-22 13:33:50 -07:00
Xavier Ducrohet
0db3844925 Make layoutlib use the prebuilt of layoutlib_api
Change-Id: Ie04a9e847acacf7b2aeb179589517fc75688c75b
2010-10-21 18:32:37 -07:00
Chris Tate
d4533f1469 Report drag success/fail in the DRAG_ENDED message
DragEvent.getResult() returns 'true' if the drop was ultimately accepted;
false otherwise.  The validity of this datum is only guaranteed when the
DragEvent's action verb is ACTION_DRAG_ENDED.

Also fixes the drag-start timeout handling (though the offending app is
not yet officially declared ANR).

Implements bug 3097807

Change-Id: I6908ac628c72ff7d6193d87060d769a559a78d0e
2010-10-21 14:25:06 -07:00
Xavier Ducrohet
79d433dd87 am 556866a2: am 656d2165: Merge "Parser is optional in obtainStyledAttributes." into gingerbread
Merge commit '556866a2ea1f4758a79fe4f207153b71815ed400'

* commit '556866a2ea1f4758a79fe4f207153b71815ed400':
  Parser is optional in obtainStyledAttributes.
2010-10-08 17:59:13 -07:00
Xavier Ducrohet
556866a2ea am 656d2165: Merge "Parser is optional in obtainStyledAttributes." into gingerbread
Merge commit '656d21656ad9b33f7d7e1e4960a2f03076a5fc7a' into gingerbread-plus-aosp

* commit '656d21656ad9b33f7d7e1e4960a2f03076a5fc7a':
  Parser is optional in obtainStyledAttributes.
2010-10-07 07:16:51 -07:00
Xavier Ducrohet
f8e4c1f57b Parser is optional in obtainStyledAttributes.
If the parser is null it just means the default style/values are
used.

Change-Id: I5ff3d632fd5dfc5a1ce42796b2fef7b30f9fbf34
2010-10-04 18:11:50 -07:00
Raphael
3cff14ca77 Merge "layoutlib_create: Generate delegate to implement native methods." 2010-10-04 12:46:37 -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
Raphael
bc10180624 layoutlib_create: Generate delegate to implement native methods.
- Some new parameters are added to CreateInfo with the list of methods
  or classes to override with delegates.
- DelegateClassAdapter and DelegateMethodAdapter do the work... see javadoc.

Change-Id: I0657cd929837181d81c65db7051d8ccbdc59c741
2010-09-29 14:45:20 -07:00
Ying Wang
1e57996f47 am 0e8dc464: am 292c246b: Merge "Call functions to calculate deps and classes.jar" into gingerbread
Merge commit '0e8dc464bdfa29785aab7be6343154fee361f6a0'

* commit '0e8dc464bdfa29785aab7be6343154fee361f6a0':
  Call functions to calculate deps and classes.jar
2010-09-28 17:38:19 -07:00
Ying Wang
0e8dc464bd am 292c246b: Merge "Call functions to calculate deps and classes.jar" into gingerbread
Merge commit '292c246b27319bc2195e2b3dbc3c3adea22db672' into gingerbread-plus-aosp

* commit '292c246b27319bc2195e2b3dbc3c3adea22db672':
  Call functions to calculate deps and classes.jar
2010-09-28 15:09:49 -07:00
Ying Wang
c486da4887 Call functions to calculate deps and classes.jar
Instead of hard-coding them.

Change-Id: Ia5818a1a69efb0964d5aa7de7e8d30ef04dfeccc
2010-09-28 14:33:58 -07:00
Xavier Ducrohet
cdde57ae5c Merge "Improve error reporting in the layoutlib class replacement test." 2010-09-28 10:59:46 -07:00
Xavier Ducrohet
e335914c7e Improve error reporting in the layoutlib class replacement test.
Change-Id: I451253ebb902171d67683784ef7a6de65588865d
2010-09-28 10:55:24 -07:00
Dianne Hackborn
cca1f0e347 Allow all apps to call ContentResolver.getType().
I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field.  This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
2010-09-27 18:05:44 -07:00
Dianne Hackborn
a8bce7c8ac am d8691d73: Merge "Allow all apps to call ContentResolver.getType()." into gingerbread
Merge commit 'd8691d73d158acd9ffc63748126e822afd656707' into gingerbread-plus-aosp

* commit 'd8691d73d158acd9ffc63748126e822afd656707':
  Allow all apps to call ContentResolver.getType().
2010-09-27 12:45:31 -07:00
Dianne Hackborn
8313fc7e94 Allow all apps to call ContentResolver.getType().
I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field.  This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
2010-09-26 21:31:47 -07:00
Raphael
dcc9dced33 am cb7c5498: am 91512f57: Layoutlib_create: Unittest for ClassHasNativeVisitor.
Merge commit 'cb7c5498709526e2a2367a7f36f83caf05be5f1a'

* commit 'cb7c5498709526e2a2367a7f36f83caf05be5f1a':
  Layoutlib_create: Unittest for ClassHasNativeVisitor.
2010-09-24 17:02:00 -07:00
Raphael
cb7c549870 am 91512f57: Layoutlib_create: Unittest for ClassHasNativeVisitor.
Merge commit '91512f579e7a1bf91d23254471ee47d3a88d342f' into gingerbread-plus-aosp

* commit '91512f579e7a1bf91d23254471ee47d3a88d342f':
  Layoutlib_create: Unittest for ClassHasNativeVisitor.
2010-09-24 16:43:28 -07:00
Raphael
91512f579e Layoutlib_create: Unittest for ClassHasNativeVisitor.
Change-Id: Id101bb3fc2644e450847e73c933cb6f616982f24
2010-09-24 14:04:04 -07:00
Dianne Hackborn
adaba84ad7 Merge "Work on fragments in layouts." 2010-09-21 22:17:52 -07:00
Dianne Hackborn
625ac271f8 Work on fragments in layouts.
- Change semantics if IDs associated with these fragments, to
  work correctly when placed in a container.  If the container
  has an ID or you have supplied a tag, the fragment's ID is
  optional.

- To do this, there is a new LayoutInflater API that allows code
  creating views to access the parent container that view will
  be in.

- Fix issues with state management around these fragments.  Now
  correctly retains state when switching to a layout that doesn't
  include the fragment.

Also:

- Add new simple list layouts for items that want to show an
  activated state.
- Add new Activity.dump() that can be invoked with adb shell
  dumpsys; the default implementation dumps fragment state.

Change-Id: I192f35e3ea8c53fbd26cf909095f2a994abfc1b6
2010-09-21 22:08:50 -07:00
Raphael Moll
1ad0e9a1a2 am 98699c8f: am f2960b8d: Refresh the layoutlib_create doc.
Merge commit '98699c8fc44358d168183dae47e10758b2d1cb08'

* commit '98699c8fc44358d168183dae47e10758b2d1cb08':
  Refresh the layoutlib_create doc.
2010-09-21 20:21:43 -07:00
Raphael Moll
98699c8fc4 am f2960b8d: Refresh the layoutlib_create doc.
Merge commit 'f2960b8d66d7a20f590716f5e51160e77d0d1b24' into gingerbread-plus-aosp

* commit 'f2960b8d66d7a20f590716f5e51160e77d0d1b24':
  Refresh the layoutlib_create doc.
2010-09-21 18:58:14 -07:00
Raphael Moll
f2960b8d66 Refresh the layoutlib_create doc.
Change-Id: I43e92c33d824ace9edd77d90a1b36a5f69d85e7f
2010-09-21 17:39:35 -07:00
Romain Guy
1639351139 Make libhwui entirely optional.
The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.

This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.

Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
2010-08-08 17:45:07 -07:00
Xavier Ducrohet
80e62ac61c Fix the layoutlib Paint.set(Paint) method. Do not merge.
It would change the text rendering info but not recompute
the Java Font objects. The effect is a broken font rendering
in the EditText (which use this method to copy some Paint
object before using the copy for the actual drawing)

Change-Id: I9e7fbf9bd57b421fd793876a6de4ade1ecac372d
2010-07-19 10:19:49 -07:00
The Android Open Source Project
b5b37f3bcc am 3d02b48b: merge from open-source master
Merge commit '3d02b48bd95293c767563729264f007dbcff82b3'

* commit '3d02b48bd95293c767563729264f007dbcff82b3':
  Fix the layoutlib Paint.set(Paint) method.
2010-07-19 09:11:17 -07:00
The Android Open Source Project
3d02b48bd9 merge from open-source master
Change-Id: I84a8efc2d58476c72e84170c19dc692dc180b97d
2010-07-19 09:04:02 -07:00
Xavier Ducrohet
b8bb8ac5bb Fix the layoutlib Paint.set(Paint) method.
It would change the text rendering info but not recompute
the Java Font objects. The effect is a broken font rendering
in the EditText (which use this method to copy some Paint
object before using the copy for the actual drawing)

Change-Id: I6d8d1bf86f0d77d088f60ad81c71dd3ebab727b0
2010-07-16 16:46:39 -07:00
Joe Onorato
dcd077179c am 92a47ea3: am 562124e8: Merge "Clean up some style in the makefiles." into gingerbread
Merge commit '92a47ea3a7b82708e46c9d1710355f5e5fdd4f07'

* commit '92a47ea3a7b82708e46c9d1710355f5e5fdd4f07':
  Clean up some style in the makefiles.
2010-07-15 11:54:00 -07:00
Joe Onorato
80a60ba85b Clean up some style in the makefiles.
Change-Id: I993702808395f37c2e9d3c7e457d2952be51d795
2010-07-14 19:58:30 -07:00
Jeff Brown
8e03b7566c resolved conflicts for merge of 9e660c82 to master
Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
2010-06-13 19:16:55 -07:00
Jeff Brown
46b9ac0ae2 Native input dispatch rewrite work in progress.
The old dispatch mechanism has been left in place and continues to
be used by default for now.  To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API.  Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument.  The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points.  The ViewRoot then
provides the InputChannel to the InputQueue.  Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue.  This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event.  Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets).  Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
2010-06-13 17:42:16 -07:00
Vasu Nori
74f170f946 new API in Context. on openDatabase, new param DatabaseErrorHandler
add new method openOrCreateDatabase in Context.java to allow
callers specify a DatabaseErrorHandler object to be used when
database corruption occurs.
add new constructor in SQLiteOpenHelper to accept DatabaseErrorHandler
as an additional param to be used when SQLiteDatabase instance is
created.

Change-Id: I912a0202a74510f9ca0206dd8101c4abab9102ae
2010-06-03 12:38:11 -07:00
Xavier Ducrohet
55f9c17777 Merge "README for layoutlib." 2010-04-09 18:34:16 -07:00
Xavier Ducrohet
3a8d3167bc README for layoutlib.
Change-Id: If8192232b70f2c4084cf73abd54b7798296e8c16
2010-04-09 17:19:02 -07:00
Xavier Ducrohet
c56653bff1 Adds back the finalize method on the replaced Paint class.
without it com.android.layoutlib.bridge.TestClassReplacement fails.

Change-Id: Iafb6548f45c31e901591a45239224895c4403be8
2010-04-08 17:18:35 -07:00
Dianne Hackborn
694f79b5d1 Fix issue #2519590: Lock screen stuck in landscape mode
Well, mostly.  There is still a problem here where the first time
you show the lock screen it just doesn't draw itself.  I assume
this is something breaking in the view hierarchy as it floounders
around removing and adding new views as it is first being shown...
but no idea at this point what is the actual case.

Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
2010-03-18 01:12:20 -07:00