This CL represents the base for the new "Graphical Editor Part".
First, GLE2 has been renamed in GraphicalEditorPart. That's the
final name, I swear I won't change it again (until next month that is.)
The editor part has 3 composites: the top ConfigConfiguration
(same as usual, reused as-is), a new PaletteComposite and a new
LayoutCanavas. This last one displays the rendering image and
will deal with interactivity.
The LayoutCanvas is actually stacked with a label which displays
the rendering error. After a rendering, either the error or the
canvas is visible, depending on the success of the operation.
That would make it easier to have a different mechanism, for example
the error could be next to the last known rendering, they don't
have to be mutually exclusive.
It is worth noting that GraphicalEditorPart is 95% similar to
the GLE1, reusing all the glue code that we had to handle
layout requestes, refresh requests, sdk/framework load listeners,
configuration and file input changes, etc.
Both PaletteComposite and LayoutCanvas are currently embryonic
at best, just to make sure the editor part is structured correctly.
Change-Id: I36c2ae4d85a68e68a349adc63a718f06375e12c5
'ant install' must know the debug apk filename so newer naming scheme breaks
on older rule files (1.5 and earlier).
The fix is to check for the presence of the property naming the debug,
signed, unaligned package. If the property is present, then we use
the new naming scheme ({base}[-{config}]-debug-unaligned.apk), else we use
the old one ({base}-[-{config}]-debug.apk).
Also merge the install/reinstall targets, since 'adb install -r <file>'
works even if the apk was not yet installed.
Change-Id: Id0670610a6539a3f48c955756955f950039c3cd0
Resource filters are used when generating additional APK containing only
specific resources.
The previous UI allowed for any type of filters, but we are moving to a
simpler way with fixed filters.
The first one is the density. Selecting the filter will generate 4 APKs per
application: default (all resources), hdpi (only hdpi/nodpi and default
resources), mdpi, ldpi.
This is just based on Eclipse static analysis of potential null pointers.
It doesn't mean we were ever going to have any NPE there.
Change-Id: I2a326048d2eb6afff7598f9300f48e35495ff3c2
This adds a @since GLE1 to all classes involved in the current GLE
and a @since GLE2 to the new classes. The idea is that both classes
are going to be mixed in the same packages and it will help later
to remove the old GLE by just searching for this specific tag.
The alternative would be to move the classes in a sub-package
layout.gle1 vs layout.gle2, but that seems unecessary.
Change-Id: I577cd81819db4c6e0209ebbd910a393fc2182619
This refactors the GLE base class into an interface, to make it
possible to not depend on GEF at all.
The GLE2 editor part displays and does nothing. It's just an empty shell.
To enable, setenv USE_GLE2 to anything. Unset to remove it.
Change-Id: I7a95b4a1a5a8ddf5a3f18acf7a04b1f9b3439655
Merge commit 'c7d0cec7e83d5194c35e88b17d3acc937fa87511' into eclair
* commit 'c7d0cec7e83d5194c35e88b17d3acc937fa87511':
Fix broken XML generated during "Extract string"
Merge commit 'f07bd569c361969e64aaebd9da1ddab15d86d425' into eclair
* commit 'f07bd569c361969e64aaebd9da1ddab15d86d425':
Codename in minsdkversion for release platform shows 'null' in error string
Merge commit '49ac0f9df009ace5175267ad60be51114ee19817' into eclair
* commit '49ac0f9df009ace5175267ad60be51114ee19817':
Make sure that the android pref folder is always present when queried.
Merge commit '0d223cab6aa4912cfba11a9ccf8f2fcb7bb3218e' into eclair
* commit '0d223cab6aa4912cfba11a9ccf8f2fcb7bb3218e':
Add support for the new qualifier in the config selector.
Merge commit '0cef5c4666b9c77161421c8a52b7dddff42f12da' into eclair
* commit '0cef5c4666b9c77161421c8a52b7dddff42f12da':
Add a functional test that renders all the layouts of ApiDemos
Merge commit '2f8d7a9fffe7e6c01900a4c59a8567e8ca00264f' into eclair
* commit '2f8d7a9fffe7e6c01900a4c59a8567e8ca00264f':
Also display error on empty minSdkVersion for preview targets.
Merge commit '0edddddd14708ccf1c98081edd09d3b9783ba08b'
* commit '0edddddd14708ccf1c98081edd09d3b9783ba08b':
Add internal support for screen size/ratio, and version qualifiers.
Merge commit '19f8d10daba4108833550c934f97a7ba2d21cd5a'
* commit '19f8d10daba4108833550c934f97a7ba2d21cd5a':
Make the res qualifiers aware of the project target to handle differnt behavior.
On Linux, the gtk table seems to resize itself automatically when the
layout is computed and forces the last column to resize itself at +18 pixels.
This has a problematic impact on this dialog as it is not resizable and is
made to match the size of the content. As the dialog is used time after time
the last column grows by 18 pixels at every use up to a point where it
doesn't fit the screen.
Since storing the columns size is not that useful and I couldn't find a
way to ignore this first resize, I'm just removing the width storage.
Merge commit '60a735fda1f9d7c24c577853304d486b0109632f'
* commit '60a735fda1f9d7c24c577853304d486b0109632f':
ADT: fix PreCompilerBuilder to use minSdkVersion as a string, not an int.