- mostly was visible in Settings apps / Wi-Fi networks summary info for each network
- correctly setup the local SkPaint for advances computation
- improve test app for adding live resizing
Change-Id: Ia031fe1b115b521ba55c7e68f2a26300f02e48ca
Bug #4170455
The state tracking whether the Paint's shader should be rebuilt was kept in the
wrong class. This lead to the Drawable keeping track of the dirty status of the
Paint stored in the ConstantState. This of course does not work properly when
several drawables are inflated form the same ConstantState. This change fixes
the issue by moving the dirty Paint state to the ConstantState class. This is
allowed to work because of the single-thread rule enforced by the UI toolkit.
Change-Id: I9bb31d8e7335d6bb418470b59ae25d9085d7bd23
this is the first step in unifying surfacetexture and surface.
for this reason the header files were not moved, as most of them
will eventually go away.
NOTE: currently we keep libsurfaceflinger_client.so as an empty
library to workaround prebuilt binaries wrongly linking against
it.
Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
- use Harfbuzz shaper for shaping and getting glyphs
- add test app for showing result of drawText() and drawGlyphs()
- add private API in Canvas and Paint for test app
Change-Id: Ia15be216f8636d2d864066e9b7de2f53008c30f6
Like getTransformMatrix, getTimestamp provides a timestamp for the
OpenGL texture produced by the latest call to updateTexImage().
Timestamps are measured in nanoseconds, and are monotonically
increasing. Other properties of the timestamps (zero point,
comparability) depend on the source providing frames to the
SurfaceTexture, and need to be documented by the source.
bug:3300707
Change-Id: I380d94926d0e9f1c77bb5c1576b72d5ef4e2eba1
API addition: The timestamps are represented as nanoseconds from some
arbitrary time point. Like the SurfaceTexture transform matrix, the
timestamp retrieved by getTimestamp is for the last frame sent to the
GL texture using updateTexImage().
Camera HAL change: Expect vendors to set these timestamps using
native_window_set_buffers_timestamp(). For now, they are
autogenerated by SurfaceTextureClient if set_buffers_timestamp() is
never called, but such timing is likely not accurate enough to pass a
CTS test.
bug:3300707
Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
This change adds additional documentation explaining how a
SurfaceTexture should be used in OpenGL ES. It describes some of the
limitations of using the GL_TEXTURE_EXTERNAL_OES texture target.
Change-Id: I7424c1b422e4f402e87372e8b361391fbec82c5c
This change enables the use of a SurfaceTexture in place of a Surface
as the video sink for an android.media.MediaPlayer. The new API
MediaPlayer.setTexture is currently hidden.
This includes:
- New Java and C++ interfaces
- C++ plumbing and implementation (JNI, Binder)
- Stagefright AwesomePlayer and NuPlayer use ANativeWindow
(either Surface or SurfaceTextureClient)
Change-Id: I2b568bee143d9eaf3dfc6cc4533c1bebbd5afc51
This change adds additional documentation explaining how a
SurfaceTexture should be used in OpenGL ES. It describes some of the
limitations of using the GL_TEXTURE_EXTERNAL_OES texture target.
Change-Id: I9d3446a012376166b6c598b827a0aa0e9585d00f
The JavaDoc says that if the "...count is negative then the
characters before index are measured in reverse order. This
allows for measuring the end of string."
However, the native code doesn't work its way backwards
from the given index when the count is negative. It always
passes Skia the substring starting from index and the
absolute value of count.
Its better to fix the JavaDoc rather than the behavior, since
this API is public and has been this way for some time. It
is also used by TextUtils.ellipsize indirectly, so its best
to avoid breaking that sensitive code.
Change-Id: I8bd51def6ec98251e355370710eb44f58fb737c4
It looks awful.
Don't use it.
Use ARGB_8888, it's much better.
If you think you need ARGB_4444, you are wrong.
You are.
Change-Id: I4d6963cf98b6a8fb34cebcd0d24b9fd66b5a0fbf
Bug #3408073
Bitmap.setHasAlpha() in particular is very useful for applications that use
ARGB_8888 bitmaps but want/need to benefit from an extra speed boost.
Change-Id: I73d081b7e43bd725baffd1a9892c72d8729816f7