am 227b8768: Load default GLE device profiles from the SDK.
Merge commit '227b8768fa8accff8a9e3555351af05d41ad7840' into eclair-plus-aosp * commit '227b8768fa8accff8a9e3555351af05d41ad7840': Load default GLE device profiles from the SDK.
This commit is contained in:
@@ -57,10 +57,11 @@ development/tools/scripts/layout.template platforms/${PLATFORM_NAME}/templates/l
|
||||
development/tools/scripts/strings.template platforms/${PLATFORM_NAME}/templates/strings.template
|
||||
development/tools/scripts/android_rules.xml platforms/${PLATFORM_NAME}/templates/android_rules.xml
|
||||
development/tools/scripts/android_test_rules.xml platforms/${PLATFORM_NAME}/templates/android_test_rules.xml
|
||||
development/tools/scripts/build.template tools/lib/build.template
|
||||
development/tools/scripts/icon_ldpi.png platforms/${PLATFORM_NAME}/templates/icon_ldpi.png
|
||||
development/tools/scripts/icon_mdpi.png platforms/${PLATFORM_NAME}/templates/icon_mdpi.png
|
||||
development/tools/scripts/icon_hdpi.png platforms/${PLATFORM_NAME}/templates/icon_hdpi.png
|
||||
development/tools/scripts/build.template tools/lib/build.template
|
||||
tools/scripts/devices.xml tools/lib/devices.xml
|
||||
|
||||
# emacs support
|
||||
development/tools/scripts/android.el tools/lib/android.el
|
||||
|
||||
@@ -19,24 +19,6 @@ package com.android.ide.eclipse.adt.internal.sdk;
|
||||
import com.android.ddmlib.IDevice;
|
||||
import com.android.ide.eclipse.adt.AdtPlugin;
|
||||
import com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.FolderConfiguration;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.KeyboardStateQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.NavigationMethodQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.PixelDensityQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenDimensionQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenOrientationQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenRatioQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenSizeQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.TextInputMethodQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.TouchScreenQualifier;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.KeyboardStateQualifier.KeyboardState;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.NavigationMethodQualifier.NavigationMethod;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.PixelDensityQualifier.Density;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenOrientationQualifier.ScreenOrientation;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenRatioQualifier.ScreenRatio;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.ScreenSizeQualifier.ScreenSize;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.TextInputMethodQualifier.TextInputMethod;
|
||||
import com.android.ide.eclipse.adt.internal.resources.configurations.TouchScreenQualifier.TouchScreenType;
|
||||
import com.android.ide.eclipse.adt.internal.resources.manager.ResourceMonitor;
|
||||
import com.android.ide.eclipse.adt.internal.resources.manager.ResourceMonitor.IProjectListener;
|
||||
import com.android.ide.eclipse.adt.internal.sdk.AndroidTargetData.LayoutBridge;
|
||||
@@ -469,8 +451,8 @@ public class Sdk implements IProjectListener {
|
||||
mDocBaseUrl = getDocumentationBaseUrl(mManager.getLocation() +
|
||||
SdkConstants.OS_SDK_DOCS_FOLDER);
|
||||
|
||||
// create some built-in layout devices
|
||||
createDefaultLayoutDevices();
|
||||
// load the built-in layout devices
|
||||
loadDefaultLayoutDevices();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -668,66 +650,17 @@ public class Sdk implements IProjectListener {
|
||||
/**
|
||||
* Creates some built-it layout devices.
|
||||
*/
|
||||
private void createDefaultLayoutDevices() {
|
||||
DeviceConfiguration adp1 = new DeviceConfiguration("ADP1");
|
||||
adp1.setXDpi(180.6f);
|
||||
adp1.setYDpi(182.f);
|
||||
mLayoutDevices.add(adp1);
|
||||
// default config
|
||||
FolderConfiguration defConfig = new FolderConfiguration();
|
||||
defConfig.addQualifier(new ScreenSizeQualifier(ScreenSize.NORMAL));
|
||||
defConfig.addQualifier(new ScreenRatioQualifier(ScreenRatio.NOTLONG));
|
||||
defConfig.addQualifier(new PixelDensityQualifier(Density.MEDIUM));
|
||||
defConfig.addQualifier(new TouchScreenQualifier(TouchScreenType.FINGER));
|
||||
defConfig.addQualifier(new KeyboardStateQualifier(KeyboardState.SOFT));
|
||||
defConfig.addQualifier(new TextInputMethodQualifier(TextInputMethod.QWERTY));
|
||||
defConfig.addQualifier(new NavigationMethodQualifier(NavigationMethod.TRACKBALL));
|
||||
defConfig.addQualifier(new ScreenDimensionQualifier(480, 320));
|
||||
private void loadDefaultLayoutDevices() {
|
||||
SAXParserFactory parserFactory = SAXParserFactory.newInstance();
|
||||
parserFactory.setNamespaceAware(true);
|
||||
|
||||
// specific configs
|
||||
FolderConfiguration closedPort = new FolderConfiguration();
|
||||
closedPort.set(defConfig);
|
||||
closedPort.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.PORTRAIT));
|
||||
adp1.addConfig("Portrait, closed", closedPort);
|
||||
|
||||
FolderConfiguration closedLand = new FolderConfiguration();
|
||||
closedLand.set(defConfig);
|
||||
closedLand.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.LANDSCAPE));
|
||||
adp1.addConfig("Landscape, closed", closedLand);
|
||||
|
||||
FolderConfiguration opened = new FolderConfiguration();
|
||||
opened.set(defConfig);
|
||||
opened.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.LANDSCAPE));
|
||||
opened.addQualifier(new KeyboardStateQualifier(KeyboardState.EXPOSED));
|
||||
adp1.addConfig("Landscape, opened", opened);
|
||||
|
||||
DeviceConfiguration ion = new DeviceConfiguration("Ion");
|
||||
ion.setXDpi(180.6f);
|
||||
ion.setYDpi(182.f);
|
||||
mLayoutDevices.add(ion);
|
||||
// default config
|
||||
defConfig = new FolderConfiguration();
|
||||
defConfig.addQualifier(new ScreenSizeQualifier(ScreenSize.NORMAL));
|
||||
defConfig.addQualifier(new ScreenRatioQualifier(ScreenRatio.NOTLONG));
|
||||
defConfig.addQualifier(new PixelDensityQualifier(Density.MEDIUM));
|
||||
defConfig.addQualifier(new TouchScreenQualifier(TouchScreenType.FINGER));
|
||||
defConfig.addQualifier(new KeyboardStateQualifier(KeyboardState.EXPOSED));
|
||||
defConfig.addQualifier(new TextInputMethodQualifier(TextInputMethod.NOKEY));
|
||||
defConfig.addQualifier(new NavigationMethodQualifier(NavigationMethod.TRACKBALL));
|
||||
defConfig.addQualifier(new ScreenDimensionQualifier(480, 320));
|
||||
|
||||
// specific configs
|
||||
FolderConfiguration landscape = new FolderConfiguration();
|
||||
landscape.set(defConfig);
|
||||
landscape.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.LANDSCAPE));
|
||||
ion.addConfig("Landscape", landscape);
|
||||
|
||||
FolderConfiguration portrait = new FolderConfiguration();
|
||||
portrait.set(defConfig);
|
||||
portrait.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.PORTRAIT));
|
||||
ion.addConfig("Portrait", portrait);
|
||||
File toolsFolder = new File(mManager.getLocation(), SdkConstants.OS_SDK_TOOLS_LIB_FOLDER);
|
||||
if (toolsFolder.isDirectory()) {
|
||||
File deviceXml = new File(toolsFolder, SdkConstants.FN_DEVICES_XML);
|
||||
if (deviceXml.isFile()) {
|
||||
parseLayoutDevices(parserFactory, deviceXml);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
62
tools/scripts/devices.xml
Normal file
62
tools/scripts/devices.xml
Normal file
@@ -0,0 +1,62 @@
|
||||
<?xml version="1.0"?>
|
||||
<d:layout-configs
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:d="http://schemas.android.com/sdk/android/layout-configs/1">
|
||||
|
||||
<d:device name="ADP1">
|
||||
<d:default>
|
||||
<d:screen-size>normal</d:screen-size>
|
||||
<d:screen-ratio>notlong</d:screen-ratio>
|
||||
<d:screen-orientation>port</d:screen-orientation>
|
||||
<d:pixel-density>mdpi</d:pixel-density>
|
||||
<d:touch-type>finger</d:touch-type>
|
||||
<d:text-input-method>qwerty</d:text-input-method>
|
||||
<d:nav-method>trackball</d:nav-method>
|
||||
<d:screen-dimension>
|
||||
<d:size>320</d:size>
|
||||
<d:size>480</d:size>
|
||||
</d:screen-dimension>
|
||||
<d:xdpi>180.6</d:xdpi>
|
||||
<d:ydpi>182</d:ydpi>
|
||||
</d:default>
|
||||
|
||||
<d:config name="Portrait">
|
||||
<d:keyboard-state>keyssoft</d:keyboard-state>
|
||||
<d:screen-orientation>port</d:screen-orientation>
|
||||
</d:config>
|
||||
<d:config name="Landscape, closed">
|
||||
<d:keyboard-state>keyssoft</d:keyboard-state>
|
||||
<d:screen-orientation>land</d:screen-orientation>
|
||||
</d:config>
|
||||
<d:config name="Landscape, open">
|
||||
<d:keyboard-state>keysexposed</d:keyboard-state>
|
||||
<d:screen-orientation>land</d:screen-orientation>
|
||||
</d:config>
|
||||
</d:device>
|
||||
|
||||
<d:device name="Ion">
|
||||
<d:default>
|
||||
<d:screen-size>normal</d:screen-size>
|
||||
<d:screen-ratio>notlong</d:screen-ratio>
|
||||
<d:screen-orientation>port</d:screen-orientation>
|
||||
<d:pixel-density>mdpi</d:pixel-density>
|
||||
<d:touch-type>finger</d:touch-type>
|
||||
<d:keyboard-state>keyssoft</d:keyboard-state>
|
||||
<d:text-input-method>nokeys</d:text-input-method>
|
||||
<d:nav-method>trackball</d:nav-method>
|
||||
<d:screen-dimension>
|
||||
<d:size>320</d:size>
|
||||
<d:size>480</d:size>
|
||||
</d:screen-dimension>
|
||||
<d:xdpi>180.6</d:xdpi>
|
||||
<d:ydpi>182</d:ydpi>
|
||||
</d:default>
|
||||
|
||||
<d:config name="Portrait">
|
||||
<d:screen-orientation>port</d:screen-orientation>
|
||||
</d:config>
|
||||
<d:config name="Landscape">
|
||||
<d:screen-orientation>land</d:screen-orientation>
|
||||
</d:config>
|
||||
</d:device>
|
||||
</d:layout-configs>
|
||||
Reference in New Issue
Block a user