Can't reproduce the NPE in ContentAssist listed in the
bug. However if things go really wrong there are a couple
objects that can be null so let's be defensive about them.
First, the ApkBuilder didn't cancel its run if the project had markers from JDT.
Second, the try/catch on ApkBuilder#build didn't properly test the
CoreException status severity (used getCode instead of getSeverity), so it did
not detect cancels being thrown by #abortOnBadSetup and displayed the error
in the console instead.
Basically:
editors.resources.manager -> resources.manager
editors.resources.configurations -> resources.configurations
This is to make it less confusing between the "Resources editors" and the
class parsing/handling Android resources (either in a project or in the
framework).
Also moved the ResourceExplorerView out of the resources editors, and clean
up a few other misc classes.
project.*
refactorings.*
Also: moved the export wizard from project.export to wizards.export, moved some
actions out of project into the new internal package actions.
StreamHelper was used before by AdtPlugin, DdmsPlugin and EditorsPlugin. It's now
only used by AdtPlugin, so the only 2 methods in it can go in AdtPlugin.
I merged the externalized string in the messages.properties file used by AdtPlugin.
We currently hardcode a list in the PlatformTarget and propagate
it to the UI via the AndroidTargetParser. This way we can later
decide to actually get the info from some kind of manifest.
Used to display the AVD Manager from the Device Chooser/Launch config.
Used to delete AVDs from the AVD Manager.
In AVD Manager, also hide the Cancel button since actions are
immediate and not cancelable.
* changes:
Fix a bunch of issues related to packaging the content of libs (NPE with files with no extension, not ignoring ignorable folders). Also fixed an issue when parsing Manifest with <uses-sdk />
This happens when you open the Windows > Prefs > Android panel
while an SDK is initially loading or when you change the
SDK in the pref panel. The target change listener was not
properly removed since the field was not properly disposed.
This also removed the multiple selection handling in the
SdkTargetSelector, which we never use. In the unlikely event
we want to use it later, it would be trivial to add it back.
Original author: raphael
Merged from: //branches/cupcake/...
Automated import of CL 146634
For ADT #1603194, it is desirable to select the Instrumentation
Runner class from the android.jar. The class browser was filtering
it out. The class browser has been changed like this:
- include all source & jar package roots
- a checkbox let the user toggle between searching only sources
(of the project) or anything in the classpath (thus include jars.)
The default is to include everything for the instrumentation and only
the source for other browsers.
Also improved a bit the filter by not iterating over the hierarchy
and filtering out abstract classes (which was not needed before.)
Original author: raphael
Merged from: //branches/cupcake/...
Automated import of CL 146336
The fix I did last week was just refreshing the UiRootNode
but it turns out we need to refresh the DescriptorFilters too
(since they are null when there's no SDK.) So the old fix was
wrong, what we need is to generate a new tree model when the
SDK is reloaded.
Original author: raphael
Merged from: //branches/cupcake/...
Automated import of CL 146250
Bug description is to add support for <uses-configuration>.
Currently the Manifest editor already supports <uses-sdk> (which is an
element node, not an attribute) by exposing it as a manifest attribute.
That doesn't scale. So instead just provide a tree for all <manifest>
child elements that are not handled in other pages. Currently that
contains uses-sdk and uses-configuration but the nice part of it is that
it will pick up automatically any new manfiest sub elements in the future.
Original author: raphael
Merged from: //branches/cupcake/...
Automated import of CL 146249