diff options
4 files changed, 25 insertions, 16 deletions
diff --git a/core/java/android/view/animation/AnimationSet.java b/core/java/android/view/animation/AnimationSet.java index 58373bcd7d4e..2cf8ea88cc95 100644 --- a/core/java/android/view/animation/AnimationSet.java +++ b/core/java/android/view/animation/AnimationSet.java @@ -89,19 +89,19 @@ public class AnimationSet extends Animation {          if (context.getApplicationInfo().targetSdkVersion >=                  Build.VERSION_CODES.ICE_CREAM_SANDWICH) { -            if (a.hasValue(com.android.internal.R.styleable.Animation_duration)) { +            if (a.hasValue(com.android.internal.R.styleable.AnimationSet_duration)) {                  mFlags |= PROPERTY_DURATION_MASK;              } -            if (a.hasValue(com.android.internal.R.styleable.Animation_fillBefore)) { +            if (a.hasValue(com.android.internal.R.styleable.AnimationSet_fillBefore)) {                  mFlags |= PROPERTY_FILL_BEFORE_MASK;              } -            if (a.hasValue(com.android.internal.R.styleable.Animation_fillAfter)) { +            if (a.hasValue(com.android.internal.R.styleable.AnimationSet_fillAfter)) {                  mFlags |= PROPERTY_FILL_AFTER_MASK;              } -            if (a.hasValue(com.android.internal.R.styleable.Animation_repeatMode)) { +            if (a.hasValue(com.android.internal.R.styleable.AnimationSet_repeatMode)) {                  mFlags |= PROPERTY_REPEAT_MODE_MASK;              } -            if (a.hasValue(com.android.internal.R.styleable.Animation_startOffset)) { +            if (a.hasValue(com.android.internal.R.styleable.AnimationSet_startOffset)) {                  mFlags |= PROPERTY_START_OFFSET_MASK;              }          } diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml index f90d67bc9833..0fbb19a1954a 100755 --- a/core/res/res/values/attrs.xml +++ b/core/res/res/values/attrs.xml @@ -3949,10 +3949,6 @@      <!-- ========================== -->      <eat-comment /> -    <declare-styleable name="AnimationSet"> -        <attr name="shareInterpolator" format="boolean" /> -    </declare-styleable> -      <declare-styleable name="Animation">          <!-- Defines the interpolator used to smooth the animation movement in time. -->          <attr name="interpolator" /> @@ -4002,6 +3998,15 @@          <attr name="detachWallpaper" format="boolean" />      </declare-styleable> +    <declare-styleable name="AnimationSet"> +        <attr name="shareInterpolator" format="boolean" /> +        <attr name="fillBefore" /> +        <attr name="fillAfter" /> +        <attr name="duration" /> +        <attr name="startOffset" /> +        <attr name="repeatMode" /> +    </declare-styleable> +      <declare-styleable name="RotateAnimation">          <attr name="fromDegrees" />          <attr name="toDegrees" /> diff --git a/services/java/com/android/server/wm/ScreenRotationAnimation.java b/services/java/com/android/server/wm/ScreenRotationAnimation.java index 3c475a0cf2c0..e25638f24888 100644 --- a/services/java/com/android/server/wm/ScreenRotationAnimation.java +++ b/services/java/com/android/server/wm/ScreenRotationAnimation.java @@ -304,8 +304,12 @@ class ScreenRotationAnimation {          }          if (!mStarted) { -            mEnterAnimation.setStartTime(now); -            mExitAnimation.setStartTime(now); +            if (mEnterAnimation != null) { +                mEnterAnimation.setStartTime(now); +            } +            if (mExitAnimation != null) { +                mExitAnimation.setStartTime(now); +            }              mStarted = true;          } diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 211c4dae4672..df9698eab926 100644 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -774,7 +774,7 @@ public class WindowManagerService extends IWindowManager.Stub              // The window manager only throws security exceptions, so let's              // log all others.              if (!(e instanceof SecurityException)) { -                Slog.e(TAG, "Window Manager Crash", e); +                Log.wtf(TAG, "Window Manager Crash", e);              }              throw e;          } @@ -7096,7 +7096,7 @@ public class WindowManagerService extends IWindowManager.Stub                  }              }          } catch (RuntimeException e) { -            Slog.e(TAG, "Unhandled exception while force removing for memory", e); +            Log.wtf(TAG, "Unhandled exception while force removing for memory", e);          }          try { @@ -7131,7 +7131,7 @@ public class WindowManagerService extends IWindowManager.Stub              }          } catch (RuntimeException e) {              mInLayout = false; -            Slog.e(TAG, "Unhandled exception while layout out windows", e); +            Log.wtf(TAG, "Unhandled exception while laying out windows", e);          }      } @@ -8397,7 +8397,7 @@ public class WindowManagerService extends IWindowManager.Stub                  }              }          } catch (RuntimeException e) { -            Slog.e(TAG, "Unhandled exception in Window Manager", e); +            Log.wtf(TAG, "Unhandled exception in Window Manager", e);          }          Surface.closeTransaction(); @@ -9179,7 +9179,7 @@ public class WindowManagerService extends IWindowManager.Stub              if (windows == null || windows.contains(w)) {                  pw.print("  Window #"); pw.print(i); pw.print(' ');                          pw.print(w); pw.println(":"); -                w.dump(pw, "    ", dumpAll); +                w.dump(pw, "    ", dumpAll || windows != null);              }          }          if (mInputMethodDialogs.size() > 0) {  |