OSDN Git Service

Encapsulate Canvas.mNativeCanvas
authorFlorin Malita <fmalita@google.com>
Wed, 7 May 2014 01:07:19 +0000 (21:07 -0400)
committerFlorin Malita <fmalita@google.com>
Wed, 7 May 2014 01:07:19 +0000 (21:07 -0400)
commitc677675e9c465dc1de21ecf2e0421835c7eb55b4
treebdb808cb1dfa475ee1440a6331b3a27b379bcc54
parentae949571f0eb08294489770ee5f361001899b90e
Encapsulate Canvas.mNativeCanvas

Currently, the native canvas is accessed/manipulated from several
unrelated classes.

In order to facilitate SaveFlags emulation, this CL encapsulates
the field and refactors its external users.

Two main changes:

* new getNativeCanvas() getter for use in Java-level clients.
* JNI canvas swappers (GraphicsBuffers, Surface, TextureView &
  AssetAtlasService) are refactored based on the exising/equivalent
  safeCanvasSwap() Canvas method.

Change-Id: I966bd4898f0838fb3699e226d3d3d51e0224ea97
core/jni/android_view_GraphicBuffer.cpp
core/jni/android_view_Surface.cpp
core/jni/android_view_TextureView.cpp
graphics/java/android/graphics/Camera.java
graphics/java/android/graphics/Canvas.java
graphics/java/android/graphics/NinePatch.java
graphics/java/android/graphics/Picture.java
services/core/jni/com_android_server_AssetAtlasService.cpp
tools/layoutlib/bridge/src/android/graphics/Canvas_Delegate.java