aboutsummaryrefslogtreecommitdiffstats
path: root/layoutlib_api
diff options
context:
space:
mode:
authorXavier Ducrohet <xav@android.com>2012-10-16 17:18:55 -0700
committerTor Norbye <tnorbye@google.com>2012-10-16 17:30:11 -0700
commit5cf945b8f4250001cdddaba5ba1178691187137f (patch)
treeada7df2f30f0fb2ead3e981f41305a4de4754bf9 /layoutlib_api
parent1d628fc482b8545bca4e1b21cca4ad06004dae0f (diff)
downloadsdk-5cf945b8f4250001cdddaba5ba1178691187137f.zip
sdk-5cf945b8f4250001cdddaba5ba1178691187137f.tar.gz
sdk-5cf945b8f4250001cdddaba5ba1178691187137f.tar.bz2
New API in layoutlib_api.
- Capability for fixed 9-patch scaling. - software button param for rendering. Change-Id: I2616dbd97dc413c2c5b5d52af6309967400d2456
Diffstat (limited to 'layoutlib_api')
-rw-r--r--layoutlib_api/src/com/android/ide/common/rendering/api/Bridge.java2
-rw-r--r--layoutlib_api/src/com/android/ide/common/rendering/api/Capability.java6
-rw-r--r--layoutlib_api/src/com/android/ide/common/rendering/api/SessionParams.java9
3 files changed, 15 insertions, 2 deletions
diff --git a/layoutlib_api/src/com/android/ide/common/rendering/api/Bridge.java b/layoutlib_api/src/com/android/ide/common/rendering/api/Bridge.java
index 06a01d5..a19b8d5 100644
--- a/layoutlib_api/src/com/android/ide/common/rendering/api/Bridge.java
+++ b/layoutlib_api/src/com/android/ide/common/rendering/api/Bridge.java
@@ -32,7 +32,7 @@ import java.util.Map;
*/
public abstract class Bridge {
- public final static int API_CURRENT = 8;
+ public final static int API_CURRENT = 9;
/**
* Returns the API level of the layout library.
diff --git a/layoutlib_api/src/com/android/ide/common/rendering/api/Capability.java b/layoutlib_api/src/com/android/ide/common/rendering/api/Capability.java
index a7ab7ae..5ad438d 100644
--- a/layoutlib_api/src/com/android/ide/common/rendering/api/Capability.java
+++ b/layoutlib_api/src/com/android/ide/common/rendering/api/Capability.java
@@ -61,5 +61,9 @@ public enum Capability {
*/
FULL_ANIMATED_VIEW_MANIPULATION,
ADAPTER_BINDING,
- EXTENDED_VIEWINFO;
+ EXTENDED_VIEWINFO,
+ /**
+ * Ability to properly resize nine-patch assets.
+ */
+ FIXED_SCALABLE_NINE_PATCH;
}
diff --git a/layoutlib_api/src/com/android/ide/common/rendering/api/SessionParams.java b/layoutlib_api/src/com/android/ide/common/rendering/api/SessionParams.java
index a620b05..e3edbd2 100644
--- a/layoutlib_api/src/com/android/ide/common/rendering/api/SessionParams.java
+++ b/layoutlib_api/src/com/android/ide/common/rendering/api/SessionParams.java
@@ -52,6 +52,7 @@ public class SessionParams extends RenderParams {
private final ILayoutPullParser mLayoutDescription;
private final RenderingMode mRenderingMode;
+ private final boolean mSoftwareButtons;
private boolean mLayoutOnly = false;
private Map<ResourceReference, AdapterBinding> mAdapterBindingMap;
private boolean mExtendedViewInfoMode = false;
@@ -72,6 +73,7 @@ public class SessionParams extends RenderParams {
* the project.
* @param minSdkVersion the minSdkVersion of the project
* @param targetSdkVersion the targetSdkVersion of the project
+ * @param softwareButtons whether the device use software buttons
* @param log the object responsible for displaying warning/errors to the user.
*/
public SessionParams(
@@ -83,18 +85,21 @@ public class SessionParams extends RenderParams {
RenderResources renderResources,
IProjectCallback projectCallback,
int minSdkVersion, int targetSdkVersion,
+ boolean softwareButtons,
LayoutLog log) {
super(projectKey, screenWidth, screenHeight, density, xdpi, ydpi,
renderResources, projectCallback, minSdkVersion, targetSdkVersion, log);
mLayoutDescription = layoutDescription;
mRenderingMode = renderingMode;
+ mSoftwareButtons = softwareButtons;
}
public SessionParams(SessionParams params) {
super(params);
mLayoutDescription = params.mLayoutDescription;
mRenderingMode = params.mRenderingMode;
+ mSoftwareButtons = params.mSoftwareButtons;
if (params.mAdapterBindingMap != null) {
mAdapterBindingMap = new HashMap<ResourceReference, AdapterBinding>(
params.mAdapterBindingMap);
@@ -110,6 +115,10 @@ public class SessionParams extends RenderParams {
return mRenderingMode;
}
+ public boolean hasSoftwareButtons() {
+ return mSoftwareButtons;
+ }
+
public void setLayoutOnly() {
mLayoutOnly = true;
}