106 Commits

Author SHA1 Message Date
Xavier Ducrohet
9f751ab3fc Reimplement all the method of Paint for layoutlib
There were a few missing methods that should have been reimplmented
(because they were native).

Others have been added just to be sure so that we can test whether methods
are missing or not (test coming soon).

Change-Id: I24895c353e38545e9b1abe28d41224fdc78cadb1
2009-10-05 19:10:04 -07:00
Xavier Ducrohet
8c739671d2 Fix the layoutlib test to run from adt-tests.
Change-Id: I34f513429593dce9f781ed8a08c4664a5d6f9aa8
2009-10-05 15:36:53 -07:00
Xavier Ducrohet
ac7391de5f Refactor class/method names used by layoutlib_create.
Information about classes and methods that are replaced, renamed, removed
into CreateInfo, so that it can be used by the tests.

Change-Id: I8874a40503249416621aa90b2ca02dcaf30ecd57
2009-10-05 14:16:09 -07:00
Xavier Ducrohet
f18ccc13a6 Fix a warning output.
This was introduced by the dpi work.

Change-Id: I7c7b1596085f70532b8279139c287a2a58f57046
2009-09-28 12:59:33 -07:00
Dianne Hackborn
ffa424800d Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off
Lot of infrastructure for more things to go away when "clear system dialogs"
happens, and now do this when we turn on the lock screen.

Change-Id: I567130296fe47ce82df065ed58ef21b37416ceaf
2009-09-23 23:17:07 -07:00
Xavier Ducrohet
56a92e3ba0 Add density support to layoutlib so that bitmap are scaled if needed.
Change-Id: I00204bb136ccaa44deeafbe0ea8746fea9903341
2009-09-23 16:38:57 -07:00
Dianne Hackborn
de0dfb7b65 Fix issue #2125720 Weather Forecast Widget - graphics do not scale
I forgot to add the new density field to the Bitmaps' parcelable data.

Change-Id: I77cf3e93e356297e0caed6fc71b62b5cd8f79124
2009-09-23 14:26:02 -07:00
Xavier Ducrohet
39cd36ec1f Add density value to density enum.
This is going to be used as constant to both ADT classes and the
layoutlib.

Change-Id: Id9befe83c5c2be3fbc5f045c7ed21aa8ee0108cc
2009-09-22 21:00:12 -07:00
Xavier Ducrohet
ccb630df4b Add a new IResourceValue that knows about the density.
This will allow the layoutlib to resize bitmaps that are
not in the native density of the rendering.

Change-Id: If9dca6d51cd93a2083c96fce3ac64335ec6ad801
2009-09-22 18:30:22 -07:00
Dianne Hackborn
efa199f016 Add API to send an ordered sticky broadcast.
Change-Id: Ida7081204e226db0cd07ff618c08e308a909ec0c
2009-09-19 12:05:25 -07:00
Dianne Hackborn
fa82f22f1d Fix issue #2093608: Calendar widget takes a few seconds to launch
Avert your eyes!

The key change here is that RemoteViews can now call a Context API to
start its pending intent, which inside of the activity manager we can
use to determine to cancel the timeout delay for external entities
to disrupt the home screen.

Change-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197
2009-09-17 18:01:35 -07:00
Android (Google) Code Review
d023f9a9a9 Merge change 24829 into eclair
* changes:
  Some optizations to wallpaper drawing/scrolling.
2009-09-14 18:45:42 -04:00
Dianne Hackborn
19382ac1a4 Some optizations to wallpaper drawing/scrolling.
First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off.   We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable.  As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset.  This ensures
that the wallpaper better tracks the application.  Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
2009-09-14 15:29:44 -07:00
Raphael
7a79628cd9 Fix some LayoutBridge javadoc.
Change-Id: I255d1d58d3537403ac9a8a5c7adece30ae989ce0
2009-09-14 11:17:49 -07:00
Xavier Ducrohet
ad013fae0d Replace fullHeight support by fullSize (height and width)
This is useful for linearlayout in horizontal mode.
2009-08-21 12:55:59 -07:00
Xavier Ducrohet
d604ad1ad4 Support full length rendering.
New rendering method in ILayoutBridge to specify whether the rendering
height should be the specified height or if it should be the height
required by the layout (specified height is always the minimum).
2009-08-20 15:15:35 -07:00
Xavier Ducrohet
f369b7199f am ad4bc607: Merge change 21772 into donut
Merge commit 'ad4bc607bd236dd9b06df9cf89dc5e14541ff66c' into eclair

* commit 'ad4bc607bd236dd9b06df9cf89dc5e14541ff66c':
  Fix Resources#opeRawResource(int, TypedValue) in layoutlib.
2009-08-18 13:42:09 -07:00
Xavier Ducrohet
72e4bcd3d0 Fix Resources#opeRawResource(int, TypedValue) in layoutlib. 2009-08-18 13:35:55 -07:00
Xavier Ducrohet
f7064e18fb am ace6a5cf: Merge change 21408 into donut
Merge commit 'ace6a5cfc0d14a909b4b95bdfe16609188125baf' into eclair

* commit 'ace6a5cfc0d14a909b4b95bdfe16609188125baf':
  Improved drawing/matrix support in layoutlib
2009-08-18 11:01:19 -07:00
Xavier Ducrohet
1a8c1599de am c1c432f5: Merge change 21241 into donut
Merge commit 'c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839' into eclair

* commit 'c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839':
  Layoutlib now uses the dimen status_bar_height instead of hard-coded value
2009-08-18 08:44:59 -07:00
Dianne Hackborn
8df8b2b405 Allow wallpapers to get touch events. 2009-08-17 21:23:05 -07:00
Xavier Ducrohet
2473ef5654 Improved drawing/matrix support in layoutlib
- Make the custom Canvas actually replace the original one so that it's used
  even by parts of the framework that allocate their own temp Canvas object.
- Better support for Matrix: added support for mapPoint() and mapRect(), and invert()
- Implemented drawBitmap() with a Matrix, and made the paint object not NPE when null.
2009-08-17 14:17:05 -07:00
Xavier Ducrohet
09701011bc Layoutlib now uses the dimen status_bar_height instead of hard-coded value
BUG: 2053956
2009-08-13 21:48:03 -07:00
Xavier Ducrohet
1d47a51426 am 94ff3f1f: Merge change 21063 into donut
Merge commit '94ff3f1f08805b68c5524b39024968aebcdc83ee' into eclair

* commit '94ff3f1f08805b68c5524b39024968aebcdc83ee':
  Fix handling of reference XML file in layout files
2009-08-13 18:43:54 -07:00
Xavier Ducrohet
314e0226a2 am e1b63d22: Merge change 21033 into donut
Merge commit 'e1b63d224a0a68191f087186c470cde317e3fa76' into eclair

* commit 'e1b63d224a0a68191f087186c470cde317e3fa76':
  Mock ServiceManager and AccesibilityManager to make the view renders in ADT
2009-08-13 18:43:46 -07:00
Xavier Ducrohet
08e2a4b56f Fix handling of reference XML file in layout files
This allows layout that references animation to properly load
in the layout editor in ADT
2009-08-13 11:23:40 -07:00
Andrei Popescu
385df699a6 remove Gears 2009-08-13 13:07:48 +01:00
Xavier Ducrohet
7953e7d89b Mock ServiceManager and AccesibilityManager to make the view renders in ADT
BUG: 2049348
2009-08-12 17:20:18 -07:00
Dianne Hackborn
72c82ab992 Report wallpaper offset to the wallpaper, use this in the image wallpaper.
Wallpapers can now be just the size of the screen, and get told when their
scroll position should change to do the updating on their own.
2009-08-12 14:41:29 -07:00
Dianne Hackborn
c8a0a75e1c Implement support for scrolling a wallpaper.
This currently only works for a wallpaper that is larger than the
screen.  Set the scroll position with the new wallpaper API.  Right
now only does jump scrolls.
2009-08-11 10:03:16 -04:00
Xavier Ducrohet
eba337ad09 Reimplement TypedArray.getLayoutDimension(int, int) for the layout bridge. 2009-07-22 15:44:52 -07:00
Dianne Hackborn
a53b828635 Add "nodpi" density, and expose a bunch of density-related APIs.
Also update the DpiTest app to use nodpi images, and try to have a mode
where it turns off compatibility though it's not quite working.
2009-07-17 16:59:08 -07:00
Dianne Hackborn
723738cfae Expand support for different screen sizes.
Applications can now declare that they support small, normal, or
large screens.  Resource selection can also be done based on these
sizes.  By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes.  In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
2009-06-26 13:37:05 -07:00
Android (Google) Code Review
63e7155c7d Merge change 4696 into donut
* changes:
  Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.
2009-06-18 19:33:33 -07:00
Dianne Hackborn
5c1e00b14d Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.
- Fix a bug where targetSdkVersion could not be set if minSdkVersion.  Stupid, stupid.
  Also make sure to fail if minSdkVersion is for a code name.  Really stupid.

- Change the API for resize compatibility mode to be a bit in the flags field, instead
  of a separate boolean.

- Implement delayed dexopting, to avoid the looong full dexopt during boot.  This is
  only enabled for "eng" builds.  When in this mode, the activity manager will make
  sure that a dexopt has been done before loading an .apk into a process, and will
  try to avoid displaying ANRs if they are due to the dexopt causing some operation
  to take longer than it normally would (though I make no guarantees about this
  totally working).

- Add API to Context to get the ApplicationInfo for its package, for easy access to
  things like targetSdkVersion.
2009-06-18 17:10:57 -07:00
Xavier Ducrohet
83189c985a Connect TabHost/TabWidget/FrameLayout in the layout editor.
Basically this does automatically what the developer has to do in his/her
activity so that the TabHost gets tabs that connects the TabWidgets and the
content of the FrameLayout.
2009-06-18 11:56:36 -07:00
Joe Onorato
23ecae3bbb Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.
This took quite a bit of refactoring.
2009-06-11 11:29:57 -07:00
Xavier Ducrohet
1741ec39a9 Fix external bug 2875: Matrix#mValues[7] assigned twice in place of mValues[8] 2009-06-05 12:58:29 -07:00
Mitsuru Oshima
9189cabb0b * Moved supports-density tag under manifest
* Refactored Compatibility code
  * Added CompatibilityInfo class
  * Removed getApplicationScale from Context
  * Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context
* Expandable support
  * Added expandable tag under manifest
  * Old application w/o expandable is given the default screen size  ([320, 480] x density).
  * The non-expandable window is centered.
2009-06-03 16:28:10 -07:00
Dianne Hackborn
231cc608d0 Rewrite SyncStorageEngine to use flat files and in-memory data structures.
The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.

There are now 4 files associated with this class, holding various pieces of its state that
should be consistent.  These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time.  Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.

Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database.  This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it.  Other changes in other projects are required to update to the
new API.

The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
2009-05-05 15:40:53 -07:00
Raphael
33fbd3bee0 Ignore layout bin directories in git. 2009-05-05 12:39:28 -07:00
Mitsuru Oshima
13735a255d Merge branch 'readonly-p4-donut' into donut 2009-04-28 18:13:25 -07:00
Mitsuru Oshima
8169daed2f AI 147976: Compatibility mode support. Part 2.
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
  * Changes to RootView / SurfaceView
  - Makes the app believe it's running in the supported density/resolution.
  - Makes the window manager believe it's running at the right density/resolution.
  * Added methods to Rect/Event for scaling up/down.
  Known issues:
  * certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
  which, in turn, is causing layout issue.
  * ZoomButton in MapView is rendered in wrong place
  * Transparent region on Surface is not correct
  * Specifying different densities in one process is not working.
  BUG=1770627

Automated import of CL 147976
2009-04-28 18:12:09 -07:00
Xavier Ducrohet
d4943a9a7b Add file to ignore the content of the layoutlib/Bridge Eclipe bin folder. 2009-04-24 17:01:56 -07:00
Xavier Ducrohet
e30661294b AI 146485: am: CL 146411 Fix BridgeCanvas#drawRoundRect
Original author: xav
  Merged from: //branches/cupcake/...

Automated import of CL 146485
2009-04-16 12:44:37 -07:00
The Android Open Source Project
105925376f auto import from //branches/cupcake_rel/...@140373 2009-03-18 17:39:46 -07:00
The Android Open Source Project
4df2423a94 auto import from //depot/cupcake/@136594 2009-03-05 14:34:35 -08:00
The Android Open Source Project
9066cfe988 auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
The Android Open Source Project
d83a98f4ce auto import from //depot/cupcake/@135843 2009-03-03 18:28:45 -08:00
The Android Open Source Project
076357b856 auto import from //depot/cupcake/@132589 2009-03-03 14:04:24 -08:00