# The support library contains references to newer platform versions.
# Don't warn about those in case this app is linking against an older
# platform version.  We know about them, and they are safe.

-dontwarn android.support.v4.**
-dontwarn android.support.v13.**
-dontwarn com.android.ex.photo.**

# keep names that are used by reflection, or from javascript

# TODO(skennedy) Remove this when the base file includes it
-keep class * implements android.os.Parcelable {
  public static final ** CREATOR;
}

-keepclasseswithmembers class com.android.mail.ui.LeaveBehindItem {
  *** setAnimatedHeight(...);
}

-keepclasseswithmembers class com.android.mail.ui.ConversationViewFragment$MailJsBridge {
  public <methods>;
}

-keepclasseswithmembers class com.android.mail.browse.ConversationItemView {
  *** setAnimatedHeightFraction(...);
}

-keepclasseswithmembers class * extends com.android.mail.ui.ConversationSpecialItemView {
  *** setAnimatedHeight(...);
}
