Load default GLE device profiles from the SDK.
Change-Id: Ife64397692912f892ec81af8237ac31914830be9
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/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_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/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_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_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/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
|
# emacs support
|
||||||
development/tools/scripts/android.el tools/lib/android.el
|
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.ddmlib.IDevice;
|
||||||
import com.android.ide.eclipse.adt.AdtPlugin;
|
import com.android.ide.eclipse.adt.AdtPlugin;
|
||||||
import com.android.ide.eclipse.adt.internal.project.AndroidClasspathContainerInitializer;
|
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;
|
||||||
import com.android.ide.eclipse.adt.internal.resources.manager.ResourceMonitor.IProjectListener;
|
import com.android.ide.eclipse.adt.internal.resources.manager.ResourceMonitor.IProjectListener;
|
||||||
import com.android.ide.eclipse.adt.internal.sdk.AndroidTargetData.LayoutBridge;
|
import com.android.ide.eclipse.adt.internal.sdk.AndroidTargetData.LayoutBridge;
|
||||||
@@ -469,8 +451,8 @@ public class Sdk implements IProjectListener {
|
|||||||
mDocBaseUrl = getDocumentationBaseUrl(mManager.getLocation() +
|
mDocBaseUrl = getDocumentationBaseUrl(mManager.getLocation() +
|
||||||
SdkConstants.OS_SDK_DOCS_FOLDER);
|
SdkConstants.OS_SDK_DOCS_FOLDER);
|
||||||
|
|
||||||
// create some built-in layout devices
|
// load the built-in layout devices
|
||||||
createDefaultLayoutDevices();
|
loadDefaultLayoutDevices();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -668,66 +650,17 @@ public class Sdk implements IProjectListener {
|
|||||||
/**
|
/**
|
||||||
* Creates some built-it layout devices.
|
* Creates some built-it layout devices.
|
||||||
*/
|
*/
|
||||||
private void createDefaultLayoutDevices() {
|
private void loadDefaultLayoutDevices() {
|
||||||
DeviceConfiguration adp1 = new DeviceConfiguration("ADP1");
|
SAXParserFactory parserFactory = SAXParserFactory.newInstance();
|
||||||
adp1.setXDpi(180.6f);
|
parserFactory.setNamespaceAware(true);
|
||||||
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));
|
|
||||||
|
|
||||||
// specific configs
|
File toolsFolder = new File(mManager.getLocation(), SdkConstants.OS_SDK_TOOLS_LIB_FOLDER);
|
||||||
FolderConfiguration closedPort = new FolderConfiguration();
|
if (toolsFolder.isDirectory()) {
|
||||||
closedPort.set(defConfig);
|
File deviceXml = new File(toolsFolder, SdkConstants.FN_DEVICES_XML);
|
||||||
closedPort.addQualifier(new ScreenOrientationQualifier(ScreenOrientation.PORTRAIT));
|
if (deviceXml.isFile()) {
|
||||||
adp1.addConfig("Portrait, closed", closedPort);
|
parseLayoutDevices(parserFactory, deviceXml);
|
||||||
|
}
|
||||||
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);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
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