aboutsummaryrefslogtreecommitdiff
path: root/annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java
diff options
context:
space:
mode:
Diffstat (limited to 'annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java')
-rw-r--r--annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java b/annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java
new file mode 100644
index 000000000..06f785a4c
--- /dev/null
+++ b/annotations/src/main/java/org/robolectric/annotation/GraphicsMode.java
@@ -0,0 +1,27 @@
+package org.robolectric.annotation;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * A {@link org.robolectric.pluginapi.config.Configurer} annotation for controlling which graphics
+ * shadow implementation is used for the {@link android.graphics} package.
+ */
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target({ElementType.PACKAGE, ElementType.TYPE, ElementType.METHOD})
+public @interface GraphicsMode {
+
+ /** Specifies the different supported graphics modes. */
+ enum Mode {
+ /** Use legacy graphics shadows that are no-ops and fakes. */
+ LEGACY,
+ /** Use graphics shadows libraries backed by native Android graphics code. */
+ NATIVE,
+ }
+
+ Mode value();
+}