summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorXavier Ducrohet <xav@android.com>2009-07-27 15:24:38 -0700
committerXavier Ducrohet <xav@android.com>2009-07-27 15:26:10 -0700
commitbc8b16505efb0e9a2262713e28fe6ff558c5ccd6 (patch)
tree65fc6958a9071c0516aad61a682eb25844e1dd25 /tools
parent1ff4f596bfe608b26656f1e854f1a5504877bdaa (diff)
downloadandroid_development-bc8b16505efb0e9a2262713e28fe6ff558c5ccd6.tar.gz
android_development-bc8b16505efb0e9a2262713e28fe6ff558c5ccd6.tar.bz2
android_development-bc8b16505efb0e9a2262713e28fe6ff558c5ccd6.zip
Prevent SDK updater dialog from showing offscreen.
Diffstat (limited to 'tools')
-rw-r--r--tools/sdkmanager/libs/sdklib/src/com/android/sdklib/PlatformTarget.java3
-rwxr-xr-xtools/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdateChooserDialog.java19
2 files changed, 21 insertions, 1 deletions
diff --git a/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/PlatformTarget.java b/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/PlatformTarget.java
index 0481d4c00..15e7e51f4 100644
--- a/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/PlatformTarget.java
+++ b/tools/sdkmanager/libs/sdklib/src/com/android/sdklib/PlatformTarget.java
@@ -242,6 +242,9 @@ final class PlatformTarget implements IAndroidTarget {
int apiDiff = mVersion.getApiLevel() - target.getVersion().getApiLevel();
if (mVersion.getCodename() != null && apiDiff == 0) {
+ if (target.getVersionName() == null) {
+ return +1; // preview showed last
+ }
return mVersion.getCodename().compareTo(target.getVersion().getCodename());
}
diff --git a/tools/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdateChooserDialog.java b/tools/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdateChooserDialog.java
index 14c8bbca8..c940e0dac 100755
--- a/tools/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdateChooserDialog.java
+++ b/tools/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/repository/UpdateChooserDialog.java
@@ -63,6 +63,12 @@ import java.util.TreeMap;
*/
final class UpdateChooserDialog extends Dialog {
+ /**
+ * Min Y location for dialog. Need to deal with the menu bar on mac os.
+ */
+ private final static int MIN_Y = SdkConstants.CURRENT_PLATFORM == SdkConstants.PLATFORM_DARWIN ?
+ 20 : 0;
+
/** Last dialog size for this session. */
private static Point sLastSize;
private boolean mCompleted;
@@ -373,7 +379,18 @@ final class UpdateChooserDialog extends Dialog {
int cw = childSize.x;
int ch = childSize.y;
- child.setLocation(px + (pw - cw) / 2, py + (ph - ch) / 2);
+ int x = px + (pw - cw) / 2;
+ int y = py + (ph - ch) / 2;
+
+ if (x < 0) {
+ x = 0;
+ }
+
+ if (y < MIN_Y) {
+ y = MIN_Y;
+ }
+
+ child.setLocation(x, y);
child.setSize(cw, ch);
}
}