History log of /sdk/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/launch/DeviceChooserDialog.java
Revision Date Author Comments
723925336525f29f71688259a53077428267e066 17-Mar-2014 Raphael Moll <ralf@android.com> ADT: fix spurious SDK refresh when opening layout editor.

SDK Bug: b.android.com/67084

Reason: we recently switched SDK Manager location to a File
instead of string. ADT tries to automatically refresh the
SDK when it has changed or its path has changed and the
comparison between a File-to-path and the original path
string from the pref now differed by an ending /.

Also renames the legacy method to avoid confusion.

Change-Id: Ie4349075528fb552efe10cac4b4462b4bfd3a13f
a9a627f738de21814e75674b558ca5430962d0e1 19-Dec-2013 Siva Velusamy <vsiva@google.com> Allow control over whether Device Chooser Dialog is displayed

This CL allows users to control whether the device chooser dialog
will be displayed during a launch.

Currently, when performing a launch, the chooser dialog is displayed.
It has a checkbox for users to indicate that the same selected device
should be used for further launches. However, once set, there was no
way that the setting could be overridden to show the dialog again.

This CL mirrors that checkbox in the launch configuration. This allows
users to modify the launch configuration and disable the "Use last
selected device" checkbox, thereby forcing the chooser dialog to be
displayed again.

Fixes https://code.google.com/p/android/issues/detail?id=56076

Change-Id: I19dce8dd3acb76e799a422568267f28318b5ef58
(cherry picked from commit d43a349cecbf4c35b5d7286af4fe34a0a5aa693e)
d43a349cecbf4c35b5d7286af4fe34a0a5aa693e 19-Dec-2013 Siva Velusamy <vsiva@google.com> Allow control over whether Device Chooser Dialog is displayed

This CL allows users to control whether the device chooser dialog
will be displayed during a launch.

Currently, when performing a launch, the chooser dialog is displayed.
It has a checkbox for users to indicate that the same selected device
should be used for further launches. However, once set, there was no
way that the setting could be overridden to show the dialog again.

This CL mirrors that checkbox in the launch configuration. This allows
users to modify the launch configuration and disable the "Use last
selected device" checkbox, thereby forcing the chooser dialog to be
displayed again.

Fixes https://code.google.com/p/android/issues/detail?id=56076

Change-Id: I19dce8dd3acb76e799a422568267f28318b5ef58
07d9455f288a99127db868bd7be4f6ead7152fca 13-Sep-2012 Siva Velusamy <vsiva@google.com> avd launch: Fix paths using build target instead of minApi

This CL performs two changes:
- Refactors the predicate to decide whether an AVD can run
an application into a separate class.
- Fix the AUTO launch mode to properly check compatibility using
this new class as opposed to just checking against the project
build target.

Change-Id: I9e0056e7fb855a18e7a14fe61af11682538dcc51
3685081c34cb5d240e38e714d6a0004cf4381928 27-Jul-2012 Siva Velusamy <vsiva@google.com> Use minSdk for device/avd compatibility checks

When checking whether a device can run a certain project,
the only valid conditionals are:
- If the device API level is less than the minApiLevel,
then the device cannot run the app.
- If the app is built against a standard SDK, then the above
check is sufficient.
- If the app is built against an add-on, then we cannot
determine for sure if a device can run the app.
An AVD might provide some additional info that can be
used to determine if the app cannot be run on a particular
AVD.

This CL fixes a bug where platforms with API level greater
than the build target API level were being filtered out from
the DeviceChooserDialog.

It also fixes another bug where running devices that are
clearly not capable of running an app were being displayed
in the DeviceChooserDialog, albeit with a red check mark
indicating that they cannot run the app. Selecting that
device for deployment would error out in the next step.
This CL filters out such devices.
Fixes http://code.google.com/p/android/issues/detail?id=35367

Change-Id: Iba31a45572dabe3895c4e51707ed515d407caae0
b7f70835c533f0f07a1f52f75a1bbe783c32e010 12-Jun-2012 Siva Velusamy <vsiva@google.com> Provide readable device name rather than just serial number

There are a number of places where we need to display a device
name. Currently, DDMS shows the serial number + manufacturer/model
if available, but in other instances, we just show the serial
number.

This CL provides a getName() method in the IDevice interface so
that all the locations which require a human readable name can
use this.

The name is typically of the form manufacturer-model-serial.
If the manufacturer/model strings are not available, then those
fields are omitted, so it will show just the serial number.

Change-Id: I80ef7b48a4c7c8587042c1227c932251e18dba2e
ab36f4e7488358dea4ab6b54ee2b7bef3da0232b 21-Dec-2011 Tor Norbye <tnorbye@google.com> Update SDK codebase to JDK 6

This changeset makes the SDK codebase compile with source=1.6 (which
means it also requires JDK 6). This means that methods implementing an
interface requires @Override's. It also means we can start using APIs
like the ArrayDeque class and methods like String#isEmpty().

This changeset looks big but the change is trivial: it's basically
adding @Override in all the places that need it, along with some other
automatic Eclipse cleanup in certain files (such as reordering imports
where they were incorrectly ordered (because older versions of Eclipse
didn't always handle inner classes right)), as well as cleaning up
trailing whitespace and removing some $NON-NLS-1$ markers on lines
where there aren't any string literals anymore.

This changeset also sets the source and target JDK level to 6 in the
Eclipse compiler .settings file, and synchronizes this file to all the
other Eclipse SDK projects.

Change-Id: I6a9585aa44c3dee9a5c00739ab22fbdbcb9f8275
b8baa65a172fc38aef0b24a6c66f5ed42bf10b39 28-Nov-2011 Siva Velusamy <vsiva@google.com> ADT Launch: default to always showing device chooser dialog.

The device chooser dialog has a checkbox that says use the same
device for future launches of an application. This is currently
enabled, which does not match current user expectation that the
dialog is always shown.

This patch disables the checkbox by default, so that the behavior
is identical to previous versions of ADT.

Change-Id: I32c9e903f0dbdb8c7ff1da38714125d58bfa06a9
1cb202b187071466a1a0d9b0d4a0cd9c7c0918e8 23-Nov-2011 Siva Velusamy <vsiva@google.com> ADT Launch: Add setting to use same device for future runs

Add a checkbox in the DeviceChooserDialog to specify that the same
device should be used for future launches. The settings are valid
for the current session only.

Change-Id: I26cc71308ba94ff741755217e3cb83b1faf5d5ff
42b2f34604a3f8e8ac191831d8f01a0498760d38 09-Jun-2011 Tor Norbye <tnorbye@google.com> Fix various warnings

I ran the latest version of findbugs on our codebase and fixed some
(not all!) of the warnings.

I also ran with Eclipse 3.7 RC3 and updated our compiler warning
settings for the new warnings that are available.

I also fixed some DOS line endings in some files (formatted with CRLF
instead of LF).

Change-Id: I9a9d34a9b60f2cb609245793815d96a4587007b0
f7f20885473dfd837732a951fecfe373b05928b6 29-Apr-2011 Raphael Moll <ralf@android.com> Fix build (due to previous AvdInfo refactoring).

Change-Id: I09e405963817089f5af53d23f2cafa21e15b6ec9
e312b2800018fcfe7fad0b1c883127f1364a17d0 23-Jun-2010 Xavier Ducrohet <xav@android.com> Make ddmlib/ddmuilib jar files inside the ddms plug-in instead of symlinks.

Also cleaned up the abstraction layer to load images from ddmuilib since
its image are now always located inside ddmuilib jar.

Change-Id: Id9d283df18a05b7b5593e4593e90dac6e5548b94
1a6379e626588d1b3306ee89e4dc05f7b79ec103 25-Mar-2010 Raphael <raphael@google.com> SDK Manager: fix crash when creating new AVD with no home.

This also fixes the logging:
- properly propagate the ISdkLog to the AvdCreateDialog.
- properly use the ADT console for logging when invoked from Eclipse.

SDK Bug 2535112

Change-Id: I9e059fe30fe02c4f5d3e70054b4454f5703df515
d4963dc4347c871be5faa76920709001490e1d2a 24-Feb-2010 The Android Open Source Project <initial-contribution@android.com> snapshot
2bb7ab0c55cc3e848f2c31601018637e13be7fac 23-Jan-2010 Raphael <raphael@google.com> ADT NPW: cleanup minSdkVersion resolution for samples.

This fixes a couple quirks in NPW:
- When you select a sample, its minSdkVersion is now used as-is
but the currently selected target is not changed to match.
Otherwise it invalidates the list of samples you're trying to
import from...
- This allows for samples with no minSdkVersion to properly
import with an empty field.
- Same issue if you were to manually edit the field after the fact.

Also renamed IAndroidTarget.isCompatibleBaseFor() to
IAndroidTarget.canRunOn(), which is way more readable.

This also "fixes" bug 2346838 -- kind of, the bug was obsolete
since I had added the new sample mode but there was another
quirk instead (it was reverting the target so it invalidated
the sample you were trying to import... see point #1 above.)

Change-Id: If2487632484fa5646bea7fe2625a2a55e5d26c50
e13151727c63786342cddc3ea355425582bd4e7a 13-Jan-2010 The Android Open Source Project <initial-contribution@android.com> android-2.1_r1 snapshot
84063f8b2027eb5a96b0079e6cefa562594f6de7 03-Aug-2009 Xavier Ducrohet <xav@android.com> Fix the DeviceChooserDialog table issues.

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.
6d8d4187c33e461c0674f82f44edab46e4b918b4 20-Jul-2009 Xavier Ducrohet <xav@android.com> Add support for preview versions of platforms.

ro.build.version.codename is a new property indicating whether a platform
is in its release form (value = REL) or in development (value = dev branch
name such as Donut). When the codename indicates a development/preview version
then the API level must be ignored and this codename is used as a unique
identifier of the platform.

IAndroidTarget has been changed to return an instance of a new class
AndroidVersion instead of the api level directly. This class helps deals with
the logic of comparing version from targets or devices.

This change impacts all of the sdk manager to deal with targets identified by
codename instead of api level. This in turn impacts everything that relies
on the sdkmanager: ADT (build, launch, project creation), the AVD manager,
the SDK updater.
6f04045072aba987f0648ed020592ff4c6816fe2 09-Jul-2009 Raphael <raphael@google.com> AVD Selector: Add a "Start" button to launch the selected AVD in a
new emulator. Doesn't detect if the AVD is already running; instead
prints the emulator error.
88f1127ee0b90d7fe91597d072ff6a2c693eff7c 17-Jun-2009 Xavier Ducrohet <xav@android.com> First step of a more standalone AvdSelector.

- New/Delete/Info/Refresh/Manager buttons.
- Ability to set any kind of AVD filter
- Self-refresh: Selector knows the AvdManager and can refresh itself.
- Manager mode or simple (selection or checkboxes)
- Manager mode displays broken AVDs.

Updated the SdkUpdate AVD page and the various use of the Selector in ADT.
09127bc24055d7dfc9720eb334f19cd7f80c5c35 09-Jun-2009 Xavier Ducrohet <xav@android.com> Move the custom widgets for avd/targets/apk-config into internal.widgets
5542fe492293223a81e604a49aa6fa55b1719847 15-May-2009 Xavier Ducrohet <xav@android.com> Make the ddmlib API use IDevice instead of Device

Device is now private. All the API is using IDevice.
Updated ddms, ADT, hierarchyviewer and other tools that relied on ddmlib.
f2880494706ad8dfd43e21471096216be4ca7c69 14-May-2009 Xavier Ducrohet <xav@android.com> ADT: Move more packages into internal.

common.project -> adt.internal.project
adt.resources -> adt.internal.resources
adt.wizards.* -> adt.internal.wizards
adt.ui -> adt.internal.ui
85211cd176c655f245e46b753926089adaf2a6fd 14-May-2009 Xavier Ducrohet <xav@android.com> Moved more ADT packages into internal.

adt.build
adt.launch.*
adt.preferences

Also started combining adt and common.