Commit Graph

149 Commits

Author SHA1 Message Date
sergeyv
a6a8557d6e Turn off simplePath optimization then Path object is used as out param
Change-Id: I4d9ae5c756b2ed1ba30483e8685ce1ad6c1f0c03
fixes:30349106
2016-07-27 14:13:34 -07:00
Richard Uhler
0ebdbb4a84 Hold a ClassLoader reference in NativeAllocationRegistry.
So that the native library isn't unloaded before we have a chance to
call the freeFunction.

Bug: 28406866
Change-Id: I889f1ccd91bba70e31fb8d09c0ec6d471fc35841
2016-05-03 13:06:22 -07:00
sergeyv
3d8298e1a8 DisplayListCanvas: throw exception at attempt to draw bitmap with size > 100MB
bug:26943116
Change-Id: If72c9f21ca2d8eb660ea2db4a42c8199f8d02472
2016-04-21 14:48:04 -07:00
Andreas Gampe
f6765f3965 Frameworks/base: Refactor Paint & Canvas native allocation support
Put the native allocation support into a holder class. This allows
statically initializing the classes in the boot image.

Bug: 27265238
Bug: 23130675
Change-Id: I857aebfdbaec39067a5eb58afceb49630176af98
2016-02-29 10:49:01 -08:00
Richard Uhler
775873a66a Use NativeAllocationRegistry for Paint, Canvas, and Bitmap
Bug: 23130675
Change-Id: I3fbd84ba417ac63df75f87ee2c56e3e7f3c9eb46
2016-01-13 16:14:33 -08:00
Chris Craik
7ee860c416 Merge "Add missing @deprecated comments to canvas methods" 2016-01-06 18:32:50 +00:00
Chris Craik
eda57925ca Add missing @deprecated comments to canvas methods
bug:25311154

Change-Id: Ie89e2160969eb7b4187f28ab4b0342804cf67724
2015-12-17 15:42:51 -08:00
Chris Craik
92c11864c7 Correct drawLines annotations
Change-Id: I161e419a3ce427e10d802ba692679ad671e23dde
2015-12-17 15:11:24 -08:00
Sungsoo Lim
0d3d1f825f Fixed typos: when when
Change-Id: I80c0b8817dcbed45071e42d9ffa88bae52a93a81
2015-12-02 14:50:36 +09:00
Derek Sollenberger
4c5efe9290 Add ninePatch support to Canvas.h
Change-Id: Ic095291fe55911c6501c1bdefa4b8da973c77319
2015-08-18 15:32:57 -04:00
John Reck
773bbe0357 Revert "Add ninePatch support to Canvas.h"
This reverts commit edca320a2b.

Change-Id: I30ee93cfc1cac391ce152f03e9e13a1ad24dc91b
2015-08-17 15:24:09 -07:00
Derek Sollenberger
edca320a2b Add ninePatch support to Canvas.h
Change-Id: Ib3202fd7c5b9f35853f286abe84b3ed009df1a81
2015-08-14 14:59:37 -04:00
Derek Sollenberger
6578a98956 Support High Contrast Text for all canvas types
Change-Id: Iee324446798fe1a1cb32cb991f181a4af24aa93c
2015-07-29 16:02:14 -04:00
Chris Craik
749e67438c Revert "Support High Contrast Text for all canvas types"
bug:22820834

This reverts commit 876d56612a.

Change-Id: I4e07a0894095caaaf2fd36bfa6073d033542bfc4
2015-07-29 18:14:46 +00:00
Derek Sollenberger
876d56612a Support High Contrast Text for all canvas types
Change-Id: Ib46ba3d7c67e081872e6a4b11d294fe9a61f5bbd
2015-07-13 15:13:15 -04:00
Derek Sollenberger
94394b3fb0 Move drawRegion from DisplayList to Canvas
Change-Id: I9f401dc5b24732938ac2ca7ed829796e2d7ef3e8
2015-07-13 13:48:08 -04:00
Derek Sollenberger
cc882b6518 Remove unused functions and variables from DisplayListCanvas
This also moves some functions that are only called when creating/completing
a displayList into the appropriate constructors and endRecording calls.

Change-Id: I9f6add156d7f476a52766934af713b0f852c8dea
2015-07-10 19:32:30 +00:00
Keisuke Kuroyanagi
f2122ef549 Improve boundary check for for Paint#DrawTextRun.
Change-Id: I01027ebb9133240cc1c750824a41dd9fca484c1f
2015-06-11 20:46:53 +09:00
John Reck
7c103a36f6 Remove Bitmap#getSkBitmap
Change-Id: Ifb9047b426122d3e5a445eb7a0eb3fce38dedf27
2015-05-01 14:38:44 -07:00
John Reck
3731dc220e A bunch more cleanups
Switch a few places to using android::canvas
instead of SkCanvas as well which eliminated
some JNI

Change-Id: I8f98b56442a06362b82b984cd1bd3a92398d8dbc
2015-04-30 14:34:55 -07:00
Raph Levien
c6abf5bff6 Expose drawTextRun publicly
For correct low-level drawing of low level text, a method that
includes context for shaping is necessary, and it's similarly useful
to provide the direction explicitly rather than running the BiDi
algorithm on the text. The drawTextRun method (in both char[] and
CharSequence variants) has provided this functionality for several
major releases but has been internal. This patch exposes the
methods publicly, and also improves the doc strings for both
the new method and some related ones.

Bug: 20193553
Change-Id: I9be33ca5ae3e7db2b69a56298400671d5ef8ad05
2015-04-27 15:33:03 -07:00
John Reck
c1b33d665c GraphicsJNI Canvas cleanup
Change-Id: I72e142986a8bc9f464c1951b6b5187919de3462e
2015-04-22 09:34:34 -07:00
John Reck
9d4efdf280 Revert "A bunch more cleanups"
This reverts commit c294d128d0.

Change-Id: Id1ebb236950f7c36c6d86e1dd95566d3a200748d
2015-04-17 20:47:27 +00:00
John Reck
1ff961dd6d Revert "Remove Bitmap#getSkBitmap"
This reverts commit 4bd981ec53.

Change-Id: I5c92cd955c6e70e197dc5cbc5dfeed8369a24a31
2015-04-17 20:45:15 +00:00
John Reck
4bd981ec53 Remove Bitmap#getSkBitmap
Change-Id: Ifb9047b426122d3e5a445eb7a0eb3fce38dedf27
2015-04-15 15:56:12 -07:00
John Reck
c294d128d0 A bunch more cleanups
Switch a few places to using android::canvas
instead of SkCanvas as well which eliminated
some JNI

Change-Id: I8f98b56442a06362b82b984cd1bd3a92398d8dbc
2015-04-14 15:38:22 -07:00
Chris Craik
3891f3ad59 Add compat path for restore underflow
bug:19829784

Change-Id: Ia761664208ab80c055ca11174db3ddc74457b92b
2015-04-02 15:30:32 -07:00
Tor Norbye
b3ec733bb8 Annotate methods with size and range annotations
Change-Id: I666861f0dfae31402b1280e9a966a583b88e2e1a
2015-03-07 20:49:19 -08:00
Tor Norbye
80756e3888 Annotate ARGB integer parameters with @ColorInt
Change-Id: I307f72a382272cf18ddb6b07d9fcb81228568d9a
2015-03-05 16:34:12 -08:00
John Reck
f4faeac352 Cleanup Bitmap JNI attempt #2
Original version missed a spot

This reverts commit c02977e3bb.

Change-Id: I56244ce10d709fcdef42a001fe4c6ba7b6bbb04d
2015-03-05 13:56:16 -08:00
Chad Jones
c02977e3bb Revert "Cleanup Bitmap JNI"
This reverts commit b2915245b7.

Change-Id: Idd7d7f33eec4ea5024c83de6b10d3d1a6ab2b17a
2015-03-05 19:34:26 +00:00
John Reck
b2915245b7 Cleanup Bitmap JNI
Fix a bunch of places where mNativeBitmap was being
poked at directly, switch them either to the NDK API
or to GraphicsJNI where it made sense

Change-Id: I6b3df3712d6497cba828c2d3012e725cb4ebb64d
2015-03-05 09:55:02 -08:00
Alan Viverette
5dc973cb03 Use text ascent / descent to center SimpleMonthView labels
Also updates Canvas.drawText() docs to clarify that the y-origin is
actually the baseline rather than the top (which is what developers
expect).

BUG: 18864682
Change-Id: Ibfa2a79327d17b5135f90468195fbeca922a25c8
2015-01-08 11:12:39 -08:00
Tom Hudson
8dfaa49042 Make DisplayListRenderer inherit from Canvas, merge JNI
Incrementally unify the upper layers for Skia and HWUI.
Remove redundant code from GLES20Canvas.java; instead
use inherited mNativeCanvasWrapper and superclass method
definitions.

Moves some unrelated SkPaint utility functions from Renderer
to new utils/PaintUtils.

bug: 15672762
Change-Id: I4ddd4214b8e9eeb95289d054ef423f2542bb5fa5
2015-01-05 15:25:41 -08:00
Chris Craik
6bcf223bf6 Merge "Revert "Add a way to override Xfermode"" 2014-11-21 22:11:14 +00:00
Chris Craik
da3198a550 Revert "Add a way to override Xfermode"
Feature no longer needed.

bug:18448377

This reverts commit c495e611b9.

Change-Id: Ia3e37f06953ffd81ca3fac367ee790d26b1b5d29
2014-11-21 22:05:46 +00:00
Raph Levien
0a39f8ffe0 am 7010d0b6: am 505ffe36: Merge "Check bounds on CharSequence drawText methods" into lmp-mr1-dev automerge: 58fa003
* commit '7010d0b6c398cb03b4be43a547921c3e9a95eeb0':
  Check bounds on CharSequence drawText methods
2014-11-14 22:00:49 +00:00
Raph Levien
505ffe3633 Merge "Check bounds on CharSequence drawText methods" into lmp-mr1-dev 2014-11-14 20:54:29 +00:00
Rob Tsuk
95e5a82e1d Merge "Add a way to override Xfermode" 2014-11-13 17:17:06 +00:00
Chris Craik
e8a39f5960 am b71be9c3: am 9750c696: am 075b2b4f: Merge "Add details and performance warnings to save flag docs" into lmp-mr1-dev
* commit 'b71be9c3523adef99b42833e974b6f61369a24b0':
  Add details and performance warnings to save flag docs
2014-11-13 02:16:58 +00:00
Chris Craik
075b2b4ff9 Merge "Add details and performance warnings to save flag docs" into lmp-mr1-dev 2014-11-13 00:05:59 +00:00
Rob Tsuk
c495e611b9 Add a way to override Xfermode
Add a non-public API to Canvas/GLES20Canvas to provide a way to draw
the touch ripple animation without using a save layer.

Bug: 18226391
Change-Id: I6f8fb8938505e976892c4e14f6f864362c43e73c
2014-11-12 15:49:45 -08:00
Raph Levien
d82f8a9a38 Check bounds on CharSequence drawText methods
The canvas drawText() methods on CharSequence arguments didn't check
whether the start and end offsets were within bounds, which triggered
native crashes. This patch checks the bounds and throws
IndexOutOfBoundsException when invalid.

Bug: 18282500
Change-Id: I1935bf21f828b960c817b40ebce6affd4ce8bb99
2014-11-12 15:05:16 -08:00
Rob Tsuk
4678dcc552 Add a way to override Xfermode DO NOT MERGE
Add a non-public API to Canvas/GLES20Canvas to provide a way to draw
the touch ripple animation without using a save layer.

Change-Id: I6e2095adffe515194f669fb75bb67abf813bd518
2014-11-12 12:25:24 -08:00
Chris Craik
f37a364a53 Add details and performance warnings to save flag docs
bug:18239290

Change-Id: I5f73bf3f1bf01c8db6ab085b182b14348e47fb3e
2014-11-11 17:37:04 -08:00
Derek Sollenberger
dfba4d3d11 Mutable Java Shaders with Immutable Native Shaders
bug: 17641888
Change-Id: I0f05387423cde185dab1a1453f89d5251ca1a4f9
2014-10-06 13:04:45 -04:00
Chris Craik
9bc13a353f Fix null rect parameter for saveLayer / saveLayerAlpha
bug:17476559
Change-Id: I3ba43c9eed8f6fc455eb41e0990e75e0f4c7b648
2014-09-11 16:55:10 -07:00
Chris Craik
96890564bd Replace native crash with IAE when calling picture.draw() w/ a HW canvas
bug:17397958
Change-Id: I75f942db0e604f9fd6ab31e6c81f718c0f57b16a
2014-09-05 10:33:39 -07:00
Chris Craik
8afd0f245c Create z reordering boundaries around dispatchDraw
bug:16012254

This means rendernodes with a Z will no longer be drawn at the end of
their parent's DisplayList, but at the end of the associated reorder
region (DisplayListData::Chunk).

Change-Id: Ia033fee9d9a4db567b2a8d5e90fc57a4d0a64544
2014-08-25 15:35:40 -07:00
Chris Craik
a753f4c6cb Move ClipBounds to native
bug:15698973

Also simplifies RenderNode LTRB properties

Change-Id: I09263a697b71d325a46b57cd5250a2b165f251c8
2014-07-25 20:56:50 +00:00