From 295ef6be084d1c2f22ef25a87e508c1f5c14ee5a Mon Sep 17 00:00:00 2001 From: Deepanshu Gupta Date: Mon, 6 Jul 2015 18:27:00 -0700 Subject: Add roundess to configuration Change-Id: Icc85b38dd091fc5aa13092d6abb06ac169f7b0b5 --- .../android/layoutlib/bridge/impl/RenderAction.java | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'tools') diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java index de77d57..9380ca7 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java @@ -27,6 +27,7 @@ import com.android.layoutlib.bridge.android.BridgeContext; import com.android.resources.Density; import com.android.resources.ResourceType; import com.android.resources.ScreenOrientation; +import com.android.resources.ScreenRound; import com.android.resources.ScreenSize; import android.content.res.Configuration; @@ -378,6 +379,25 @@ public abstract class RenderAction extends FrameworkReso config.orientation = Configuration.ORIENTATION_UNDEFINED; } + try { + ScreenRound roundness = hardwareConfig.getScreenRoundness(); + if (roundness != null) { + switch (roundness) { + case ROUND: + config.screenLayout |= Configuration.SCREENLAYOUT_ROUND_YES; + break; + case NOTROUND: + config.screenLayout |= Configuration.SCREENLAYOUT_ROUND_NO; + } + } else { + config.screenLayout |= Configuration.SCREENLAYOUT_ROUND_UNDEFINED; + } + } catch (NoSuchMethodError ignored) { + // getScreenRoundness was added in later stages of API 15. So, it's not present on some + // preview releases of API 15. + // TODO: Remove the try catch around Oct 2015. + } + // TODO: fill in more config info. return config; -- cgit v1.1