Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 49224acd authored by John Hoford's avatar John Hoford Committed by Android (Google) Code Review
Browse files

Merge "add Dynamic Drawable (vector graphics for Icons)"

parents 2cd84701 abb7d134
Loading
Loading
Loading
Loading
+42 −2
Original line number Diff line number Diff line
@@ -287,6 +287,7 @@ package android {
    field public static final int alwaysDrawnWithCache = 16842991; // 0x10100ef
    field public static final int alwaysRetainTaskState = 16843267; // 0x1010203
    field public static final int angle = 16843168; // 0x10101a0
    field public static final int animate = 16843794; // 0x1010412
    field public static final int animateFirstView = 16843477; // 0x10102d5
    field public static final int animateLayoutChanges = 16843506; // 0x10102f2
    field public static final int animateOnClick = 16843356; // 0x101025c
@@ -373,6 +374,7 @@ package android {
    field public static final int clipChildren = 16842986; // 0x10100ea
    field public static final int clipOrientation = 16843274; // 0x101020a
    field public static final int clipToPadding = 16842987; // 0x10100eb
    field public static final int clipToPath = 16843793; // 0x1010411
    field public static final int codes = 16843330; // 0x1010242
    field public static final int collapseColumns = 16843083; // 0x101014b
    field public static final int color = 16843173; // 0x10101a5
@@ -471,6 +473,7 @@ package android {
    field public static final int dropDownWidth = 16843362; // 0x1010262
    field public static final int duplicateParentState = 16842985; // 0x10100e9
    field public static final int duration = 16843160; // 0x1010198
    field public static final int durations = 16843786; // 0x101040a
    field public static final int editTextBackground = 16843602; // 0x1010352
    field public static final int editTextColor = 16843601; // 0x1010351
    field public static final int editTextPreferenceStyle = 16842898; // 0x1010092
@@ -515,9 +518,11 @@ package android {
    field public static final int fastScrollTextColor = 16843609; // 0x1010359
    field public static final int fastScrollThumbDrawable = 16843574; // 0x1010336
    field public static final int fastScrollTrackDrawable = 16843577; // 0x1010339
    field public static final int fill = 16843781; // 0x1010405
    field public static final int fillAfter = 16843197; // 0x10101bd
    field public static final int fillBefore = 16843196; // 0x10101bc
    field public static final int fillEnabled = 16843343; // 0x101024f
    field public static final int fillOpacity = 16843780; // 0x1010404
    field public static final int fillViewport = 16843130; // 0x101017a
    field public static final int filter = 16843035; // 0x101011b
    field public static final int filterTouchesWhenObscured = 16843460; // 0x10102c4
@@ -721,6 +726,7 @@ package android {
    field public static final int layout_x = 16843135; // 0x101017f
    field public static final int layout_y = 16843136; // 0x1010180
    field public static final int left = 16843181; // 0x10101ad
    field public static final int limitTo = 16843795; // 0x1010413
    field public static final int lineSpacingExtra = 16843287; // 0x1010217
    field public static final int lineSpacingMultiplier = 16843288; // 0x1010218
    field public static final int lines = 16843092; // 0x1010154
@@ -823,6 +829,7 @@ package android {
    field public static final int parentActivityName = 16843687; // 0x10103a7
    field public static final deprecated int password = 16843100; // 0x101015c
    field public static final int path = 16842794; // 0x101002a
    field public static final int pathData = 16843782; // 0x1010406
    field public static final int pathPattern = 16842796; // 0x101002c
    field public static final int pathPrefix = 16842795; // 0x101002b
    field public static final int permission = 16842758; // 0x1010006
@@ -832,7 +839,7 @@ package android {
    field public static final int persistent = 16842765; // 0x101000d
    field public static final int persistentDrawingCache = 16842990; // 0x10100ee
    field public static final deprecated int phoneNumber = 16843111; // 0x1010167
    field public static final int pinned = 16843778; // 0x1010402
    field public static final int pinned = 16843797; // 0x1010415
    field public static final int pivotX = 16843189; // 0x10101b5
    field public static final int pivotY = 16843190; // 0x10101b6
    field public static final int popupAnimationStyle = 16843465; // 0x10102c9
@@ -887,6 +894,7 @@ package android {
    field public static final int readPermission = 16842759; // 0x1010007
    field public static final int repeatCount = 16843199; // 0x10101bf
    field public static final int repeatMode = 16843200; // 0x10101c0
    field public static final int repeatStyle = 16843788; // 0x101040c
    field public static final int reqFiveWayNav = 16843314; // 0x1010232
    field public static final int reqHardKeyboard = 16843305; // 0x1010229
    field public static final int reqKeyboardType = 16843304; // 0x1010228
@@ -896,7 +904,7 @@ package android {
    field public static final int required = 16843406; // 0x101028e
    field public static final int requiredAccountType = 16843734; // 0x10103d6
    field public static final int requiredForAllUsers = 16843728; // 0x10103d0
    field public static final int requiredForProfile = 16843777; // 0x1010401
    field public static final int requiredForProfile = 16843796; // 0x1010414
    field public static final int requiresFadingEdge = 16843685; // 0x10103a5
    field public static final int requiresSmallestWidthDp = 16843620; // 0x1010364
    field public static final int resizeMode = 16843619; // 0x1010363
@@ -960,6 +968,7 @@ package android {
    field public static final int selectableItemBackground = 16843534; // 0x101030e
    field public static final int selectedDateVerticalBar = 16843591; // 0x1010347
    field public static final int selectedWeekBackgroundColor = 16843586; // 0x1010342
    field public static final int sequence = 16843787; // 0x101040b
    field public static final int settingsActivity = 16843301; // 0x1010225
    field public static final int shadowColor = 16843105; // 0x1010161
    field public static final int shadowDx = 16843106; // 0x1010162
@@ -1031,6 +1040,10 @@ package android {
    field public static final int streamType = 16843273; // 0x1010209
    field public static final int stretchColumns = 16843081; // 0x1010149
    field public static final int stretchMode = 16843030; // 0x1010116
    field public static final int stroke = 16843783; // 0x1010407
    field public static final int strokeLineCap = 16843792; // 0x1010410
    field public static final int strokeOpacity = 16843784; // 0x1010408
    field public static final int strokeWidth = 16843785; // 0x1010409
    field public static final int subtitle = 16843473; // 0x10102d1
    field public static final int subtitleTextStyle = 16843513; // 0x10102f9
    field public static final int subtypeExtraValue = 16843674; // 0x101039a
@@ -1171,6 +1184,10 @@ package android {
    field public static final int translationX = 16843554; // 0x1010322
    field public static final int translationY = 16843555; // 0x1010323
    field public static final int translationZ = 16843769; // 0x10103f9
    field public static final int trigger = 16843777; // 0x1010401
    field public static final int trimPathEnd = 16843790; // 0x101040e
    field public static final int trimPathOffset = 16843791; // 0x101040f
    field public static final int trimPathStart = 16843789; // 0x101040d
    field public static final int type = 16843169; // 0x10101a1
    field public static final int typeface = 16842902; // 0x1010096
    field public static final int uiOptions = 16843672; // 0x1010398
@@ -1195,6 +1212,8 @@ package android {
    field public static final int verticalGap = 16843328; // 0x1010240
    field public static final int verticalScrollbarPosition = 16843572; // 0x1010334
    field public static final int verticalSpacing = 16843029; // 0x1010115
    field public static final int viewportHeight = 16843779; // 0x1010403
    field public static final int viewportWidth = 16843778; // 0x1010402
    field public static final int visibility = 16842972; // 0x10100dc
    field public static final int visible = 16843156; // 0x1010194
    field public static final int vmSafeMode = 16843448; // 0x10102b8
@@ -10842,6 +10861,27 @@ package android.graphics.drawable {
    method public void startTransition(int);
  }
  public class VectorDrawable extends android.graphics.drawable.Drawable {
    ctor public VectorDrawable();
    method public void draw(android.graphics.Canvas);
    method public float geAnimationFraction();
    method public int getOpacity();
    method public int getRepeatCount();
    method public void setAlpha(int);
    method public void setAnimationFraction(float);
    method public void setColorFilter(android.graphics.ColorFilter);
    method public void setDuration(long);
    method public void setIntrinsicHeight(int);
    method public void setIntrinsicWidth(int);
    method public void setPadding(android.graphics.Rect);
    method public void setPadding(int, int, int, int);
    method public void setRepeatCount(int);
    method public void setRepeatMode(int);
    method public void start();
    method public void stop();
    field public static final int INFINITE = -1; // 0xffffffff
  }
}
package android.graphics.drawable.shapes {
+139 −0
Original line number Diff line number Diff line
@@ -4540,6 +4540,145 @@
        <attr name="dither" />
    </declare-styleable>

    <!-- ========================== -->
    <!--   Vector drawable class   -->
    <!-- ========================== -->
    <eat-comment />

    <!-- Drawable used to draw Vector Drawables. -->
    <declare-styleable name="VectorDrawable">
           <!-- What event triggers the animation -->
        <attr name="trigger" format="enum">
            <enum name="state_pressed" value="1" />
            <enum name="state_focused" value="2" />
            <enum name="state_hovered" value="3" />
            <enum name="state_selected" value="4" />
            <enum name="state_checkable" value="5" />
            <enum name="state_checked" value="6" />
            <enum name="state_enabled" value="7" />
            <enum name="state_activated" value="8" />
            <enum name="state_window_focused" value="9" />
        </attr>
    </declare-styleable>

    <!-- Define the virtual size of the drawing surface paths will draw to. -->
    <declare-styleable name="VectorDrawableViewport">
        <!-- The width of the canvas the drawing is on. -->
        <attr name="viewportWidth" format="float"/>
        <!-- The height of the canvas the drawing is on. -->
        <attr name="viewportHeight" format="float"/>
    </declare-styleable>

    <!-- Define the size of the drawable -->
    <declare-styleable name="VectorDrawableSize">
        <!-- Width of the Vector Drawable. -->
        <attr name="width" />
        <!-- Height of the Vector Drawable. -->
        <attr name="height" />
    </declare-styleable>

    <!-- Define the animations of drawable -->
    <declare-styleable name="VectorDrawableAnimation">
        <!-- Configures this animation sequence between the named paths  -->
        <attr name="sequence" format="string"/>
        <!-- Limits an animation to only interpolate the selected variable  -->
        <attr name="limitTo" format="enum">
            <enum name="unlimited" value="0"/>
            <enum name="path" value="1"/>
            <enum name="rotation" value="2"/>
            <enum name="trimPathStart" value="3"/>
            <enum name="trimPathEnd" value="4"/>
            <enum name="trimPathOffset" value="5"/>
        </attr>
        <!-- Number of times to loop this aspect of the animation -->
        <attr name="repeatCount"/>
        <!-- A list of times in milliseconds to transision from on path to another.
         List must contain one less than the number of named paths
         e.g. given sequence="A,B,C,D" durations="100,0,100" implies 100ms for the
         "A" to "B" transision instantanious switch to "C" and 100ms for "C" to "D". -->
        <attr name="durations" format="string" />
        <!-- The delay before stating this aspect of the animation in milli seconds -->
        <attr name="startDelay" />
        <!-- when repeating how does it repeat back and forth or a to b -->
        <attr name="repeatStyle" format="enum">
            <enum name="forward"  value="0"/>
            <enum name="reverse"  value="1"/>[]
        </attr>
        <!-- how does the animation progress from start to finish -->
        <attr name="animate" format="enum">
            <enum name="linear"  value="0"/>
            <enum name="easeIn"  value="1"/>
            <enum name="easeOut"  value="2"/>
            <enum name="easeInOut"  value="3"/>
        </attr>
    </declare-styleable>

    <!-- Defines the path used in Vector Drawables. -->
    <declare-styleable name="VectorDrawablePath">
        <!-- The Name of this path -->
        <attr name="name" />
        <!-- The width a path stroke -->
        <attr name="strokeWidth" format="float" />
        <!-- The opacity of a path stroke -->
        <attr name="strokeOpacity" format="float" />
        <!-- The amount to rotate the path stroke -->
        <attr name="rotation" />
        <!-- The X coordinate of the center of rotation of a path -->
        <attr name="pivotX" />
        <!-- The Y coordinate of the center of rotation of a path -->
        <attr name="pivotY" />
        <!-- The color to stroke the path if not defined implies no stroke-->
        <attr name="stroke" format="color" />
        <!-- The color to fill the path if not defined implies no fill-->
        <attr name="fill" format="color" />
        <!-- The level of opacity of the filled area of the path -->
        <attr name="fillOpacity" format="float" />
        <!-- The specification of the operations that define the path  -->
        <attr name="pathData" format="string" />
        <!-- The fraction of the path to trim from the start from 0 to 1 -->
        <attr name="trimPathStart" format="float" />
        <!-- The fraction of the path to trim from the end from 0 to 1  -->
        <attr name="trimPathEnd" format="float" />
        <!-- Shift trim region (allows visible region to include the start and end) from 0 to 1  -->
        <attr name="trimPathOffset" format="float" />
        <!-- Path will set the current clip path -->
        <attr name="clipToPath" format="boolean" />
        <!-- sets the linecap for a stroked path -->
        <attr name="strokeLineCap" format="enum">
            <enum name="butt" value="0"/>
            <enum name="round" value="1"/>
            <enum name="square" value="2"/>
        </attr>
        <!-- sets the lineJoin for a stroked path -->
        <attr name="strokeLineJoin" format="enum">
            <enum name="miter" value="0"/>
            <enum name="round" value="1"/>
            <enum name="bevel" value="2"/>
        </attr>
        <!-- sets the Miter limit for a stroked path -->
        <attr name="strokeMiterLimit" format="float"/>
        <!-- sets a condition to be met to draw path -->
        <attr name="state_pressed" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_focused" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_selected" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_window_focused" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_enabled" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_activated" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_accelerated" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_hovered" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_checked" />
        <!-- sets a condition to be met to draw path -->
        <attr name="state_checkable" />
    </declare-styleable>

    <!-- ========================== -->
    <!-- Animation class attributes -->
    <!-- ========================== -->
+19 −0
Original line number Diff line number Diff line
@@ -2113,6 +2113,25 @@
  <public type="attr" name="controlY2" />
  <public type="attr" name="sharedElementName" />
  <public type="attr" name="transitionGroup" />
  <public type="attr" name="trigger" />
  <public type="attr" name="viewportWidth" />
  <public type="attr" name="viewportHeight" />
  <public type="attr" name="fillOpacity" />
  <public type="attr" name="fill" />
  <public type="attr" name="pathData" />
  <public type="attr" name="stroke" />
  <public type="attr" name="strokeOpacity" />
  <public type="attr" name="strokeWidth" />
  <public type="attr" name="durations" />
  <public type="attr" name="sequence" />
  <public type="attr" name="repeatStyle" />
  <public type="attr" name="trimPathStart" />
  <public type="attr" name="trimPathEnd" />
  <public type="attr" name="trimPathOffset" />
  <public type="attr" name="strokeLineCap" />
  <public type="attr" name="clipToPath" />
  <public type="attr" name="animate" />
  <public type="attr" name="limitTo" />
  <public type="attr" name="requiredForProfile"/>
  <public type="attr" name="pinned" />
  <public type="attr" name="colorControlNormal" />
+2 −0
Original line number Diff line number Diff line
@@ -1062,6 +1062,8 @@ public abstract class Drawable {
            drawable = new ColorDrawable();
        } else if (name.equals("shape")) {
            drawable = new GradientDrawable();
        } else if (name.equals("vector")) {
            drawable = new VectorDrawable();
        } else if (name.equals("scale")) {
            drawable = new ScaleDrawable();
        } else if (name.equals("clip")) {
+1955 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading