External bug: http://code.google.com/p/android/issues/detail?id=49379
Drawing was previously wrapped in a try/finally block which was silently
swallowing user code exceptions. For instance, if a View throws a
NullPointerException in its onDraw() method, the previous implementation
would silently crash in native code.
This change extracts the section that builds display lists into a new
method that does not contain any try/finally block.
In addition, this change logs any exception thrown while drawing
display lists.
Change-Id: I0abffa4c9183d41aac8b0f8442813e56b957f08f
The exposed APIs are slightly simpler than the full APIs used internally.
Only APIs useful to applications are exposed.
Change-Id: Ie03014628d40ad5ef63dedbc52ce3def84429d54
In previous setup, synthesizeToFile method relied on synthesizer
service to create world readable output file. This is potential
source of vulnerabilities.
This change moves output file creation to the client side, and
synthesizer service receives already opened file descriptor.
This change may break applications that are creating files in
now unaccessible locations, like /sdcard/.
Bug: 8027957
Change-Id: I97351be5d2f2f8ef9aa43d0ab08c4b825ca4c22b
To avoid angle calculation changed the logic to use virtual areas.
When try to drag or pan, check where the current touch point locates
and determine how to drag a page.
Change-Id: Id9bd08a69c4ac93ff385c8088e6c16bed5dc5f88
Signed-off-by: kiwon <kiwon98.lee@samsung.com>
Provides uniform interface to ask about low disk thresholds; can
be mocked by other tests. Opens door to adjust thresholds based on
disk type.
Switch monitor service to using new API, and use filesystem paths
from Environment instead of hard-coding.
Change-Id: Ifdb536e36a453f1b67bc65849037ec3cc0232cf2
Reading empty and not updating was resulting in retaining old values
in a config. Also, fix matching phase2 entries.
Additionally, allow configuring subset of enterprise fields. Necessary
since password cannot be read back from supplicant.
Change-Id: I83a01690a0cf7cad1457a674f50f1e3a1a0441b5
bug:8114304
The original .375 was chosen to make GL_LINES align with Skia drawing.
The new value of .065 is chosen to be as small as possible to make
triangle-based lines align with Skia, while keeping lines drawn on
integer coordinates unambiguous as to which column/row they draw on.
Also adds more lines in CanvasCompare test to highlight the difference
Change-Id: If578684f2db320682219c3caa625cf79bc62d88f
bug:8037003
The reordering enables similar operations to draw together, minimizing the
OpenGL state change operations that go inbetween draws. Eventually, multiple
complete canvas draw operations will be merged (into a single glDrawArrays call,
for example)
Reorders DisplayList draw operations when:
-They can move backwards in the command stream to be after similar
operations without violating draw ordering
-The OpenGLRenderer is in a simple, replayable state (no complex clip,
or filter/shadow etc)
Also adds two system properties to control the deferral/reordering:
"debug.hwui.disable_draw_defer"
"debug.hwui.disable_draw_reorder"
which can be set to "true" to control the display list manipulation
Change-Id: I5e89f3cb0ea2d2afd3e15c64d7f32b8406777a32