History log of /frameworks/native/libs/ui/Region.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
9ca6491bb701919a3f88fa7c43da284b13822ed6 13-Sep-2012 Mathias Agopian <mathias@google.com> Region::validate() cannot be called from addRectUnchecked()

addRectUnchecked() is allowed to be in an invalid state
temporarily.

Change-Id: I6f5162b5c49f378978c070a77abba35023fe918c
/frameworks/native/libs/ui/Region.cpp
068d47f29dfead847999a7b33b4217ee9514152b 12-Sep-2012 Mathias Agopian <mathias@google.com> strengthen region validation

Change-Id: I75ee7bc4dd7a2f5357ac8994a23bc8b8bfb6eb44
/frameworks/native/libs/ui/Region.cpp
2401ead70099c982796ecc3ec63ec8a5570948fc 01-Sep-2012 Mathias Agopian <mathias@google.com> Add a way to retrieve a Region as a SharedBuffer

Change-Id: Ia53cb905fbc88f899521658545f990fb9217b1e1
/frameworks/native/libs/ui/Region.cpp
3ab68558fa5a4b8f792a54965a010f03385bd271 31-Aug-2012 Mathias Agopian <mathias@google.com> change how we store Region data internally

We used to keep the bounds of the region as a
separate rectangle. Instead we now store it as the last
element of the Vector<> of Rects.

This has the benefit of being slightly more efficient when
copying regions and reduces the overhead of small regions,
but more importantly will allow us to export the underlaying
SharedBuffer (eventually).

Change-Id: I80790e4fb1a09a747a5616000cfef852ac4ce9e9
/frameworks/native/libs/ui/Region.cpp
4c0a170585d5c8a1f3508ac55f799ebaf86e91db 31-Aug-2012 Mathias Agopian <mathias@google.com> don't generate a new Region when translating by 0,0

since regions are copy-on-write, this prevents to
duplicate the region entirely and offseting by 0,0 is
fairly common.

Change-Id: I9b8c286315a2e00dda01c2456397d72b5e12006b
/frameworks/native/libs/ui/Region.cpp
8683fca395d01734ec7946e9f0595ec5d7b754c6 13-Aug-2012 Mathias Agopian <mathias@google.com> improve [un]marshalling of non-binder objects

this change introduces a new class LightFlattenable<> which is
a protocol to flatten simple objects that don't require
binders or file descriptors; the benefit of this protocol is that
it doesn't require the objects to have a virtual table and give us
a consitant way of doing this.

we also introduce an implementation of this protocol for
POD structures, LightFlattenablePod<>.

Parcel has been update to handle this protocol automatically.

Sensor, Rect, Point and Region now use this new protocol.

Change-Id: Icb3ce7fa1d785249eb666f39c2129f2fc143ea4a
/frameworks/native/libs/ui/Region.cpp
3aecbb0715cb6928e0530ff1e4caa9c0993cc371 17-Apr-2012 Mathias Agopian <mathias@google.com> fix Region const_iterator.

- it returned an empty rect when the region was empty, instead
of returning an empty list of rect.

- also fixed an infinite loop when boolean_operation was given
an empty list of rects

Change-Id: I62225c7dcd2832025bb8f12e6cb3762f2a7b36cb
/frameworks/native/libs/ui/Region.cpp
b8a2e98cd7edbe7513543670c94f6b5efa74462f 08-Feb-2012 Romain Guy <romainguy@google.com> Preliminary support for clipRect(Rect, Op)

This adds basic support for clip regions. It is currently disabled at compile
time. Enabling clip regions will require setting up a stencil buffer.

Change-Id: I638616a972276e38737f8ac0633692c3845eaa74
/frameworks/native/libs/ui/Region.cpp
e6f43ddce78d6846af12550ff9193c5c6fe5844b 06-Jan-2012 Steve Block <steveblock@google.com> Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/#/c/157220

Bug: 5449033
Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
/frameworks/native/libs/ui/Region.cpp
9d4536835248525f32f1504a3d28d5bbfa0a2910 20-Dec-2011 Steve Block <steveblock@google.com> Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE

See https://android-git.corp.google.com/g/156016

Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
/frameworks/native/libs/ui/Region.cpp
0857c8f7f1905008b285a5473c906639fdd0288b 27-Sep-2011 Mathias Agopian <mathias@google.com> Region cannot handle malformed Rects. Abort the Region op in that case.

Bug: 5331198, 5334829
Change-Id: Ib1fdbf6fb291e7f1191ccfe16b5ff29d73e7a474
/frameworks/native/libs/ui/Region.cpp
0450452e8c6ea48341d57d8bc51d56252e9806b8 20-Sep-2011 Mathias Agopian <mathias@google.com> Make sure Region handles invalid rectangles

the boolean operation code assumes rects are valid and
could go into an infinite loop if not. make sure we
abort before that happens.

Bug: 5331198, 5334829
Change-Id: Iee4e3b838ecf504ef21f7447fd2e34a56e7dc3f8
/frameworks/native/libs/ui/Region.cpp
d0b55c011a311b677493ba72804bf1bc4df68224 17-Mar-2011 Mathias Agopian <mathias@google.com> fix [4093196] Device lock up - log spam with SharedBufferStack: waitForCondition(LockCondition) timed out

a memory corruption happned when the buffer pool was resized
(like when playing a video or using camera) and there was
no current active buffer. In this case, the faulty code
would index into an array at position -1 which corrupted
24 bytes of data.

also improved region validation code (ifdef'ed out by default)

Bug: 4093196
Change-Id: I915c581d131148959d720e00e3892e9186ab733d
/frameworks/native/libs/ui/Region.cpp
b801624dc4f03c930ec35f406f07fa5fd8f65dd9 28-Oct-2010 Romain Guy <romainguy@google.com> Optimize FBO drawing with regions.
This optimization is currently disabled until Launcher is
modified to take advantage of it. The optimization can be
enabled by turning on RENDER_LAYERS_AS_REGIONS in the
OpenGLRenderer.h file.

Change-Id: I2fdf59d0f4dc690a3d7f712173ab8db3848b27b1
/frameworks/native/libs/ui/Region.cpp
b6121422ef641dc7317d1c3bf1d38b7d73922250 18-Feb-2010 Mathias Agopian <mathias@google.com> Remove a dependency of Region (libui) on Parcel (libbinder).
/frameworks/native/libs/ui/Region.cpp
72b0ffe4c3776b33844bb00b9be5693bddd391f9 07-Jul-2009 Mathias Agopian <mathias@google.com> should fix sim build
/frameworks/native/libs/ui/Region.cpp
9f96145725ff3f265712d607d19078fb91a5c8ec 30-Jun-2009 Mathias Agopian <mathias@google.com> Region::makeBoundsSelf() efficiently turns a region to its bounds
/frameworks/native/libs/ui/Region.cpp
bed9dd128dfbdc7d9dbca005078536dadc0b9359 28-May-2009 Mathias Agopian <mathias@google.com> make sure the Region code disallows constructs like "(a+b)=c;", which is somewhat meaningless.
/frameworks/native/libs/ui/Region.cpp
20f68782a4ea71c6a977d7f87d8288d3daa265ec 11-May-2009 Mathias Agopian <mathias@google.com> Region now has its own implementation instead of relying on SkRegion, which allows us to break libui's dependency on libcorecg.
/frameworks/native/libs/ui/Region.cpp
0926f50664c739eaee60341f8e8c694dc9a4f3eb 04-May-2009 Mathias Agopian <mathias@google.com> update surfaceflinger, libui and libagl to the new gralloc api

- Currently the lock/unlock path is naive and is done for each drawing operation (glDrawElements and glDrawArrays). this should be improved eventually.
- factor all the lock/unlock code in SurfaceBuffer.
- fixed "showupdate" so it works even when we don't have preserving eglSwapBuffers().
- improved the situation with the dirty-region and fixed a problem that caused GL apps to not update.
- make use of LightRefBase() where needed, instead of duplicating its implementation
- add LightRefBase::getStrongCount()
- renamed EGLNativeWindowSurface.cpp to FramebufferNativeWindow.cpp

- disabled copybits test, since it clashes with the new gralloc api

- Camera/Video will be fixed later when we rework the overlay apis
/frameworks/native/libs/ui/Region.cpp
edbf3b6af777b721cd2a1ef461947e51e88241e1 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/native/libs/ui/Region.cpp
d5193d9394c5e58176d7bcdf50ef017f8a3b9e1e 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/native/libs/ui/Region.cpp
276293246ea9cbc0a578a7697cc48930376ec0e9 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
/frameworks/native/libs/ui/Region.cpp
7c1b96a165f970a09ed239bb4fb3f1b0d8f2a407 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/native/libs/ui/Region.cpp