Mathias Agopian
6b5513538a
forgot to remove those files
2009-07-02 18:46:57 -07:00
Mathias Agopian
759fdb2ef7
free gralloc buffers as soon as possible (when a surface is not visible any longer), client who have the buffers still mapped won't crash, btu may see garbage data
2009-07-02 18:45:29 -07:00
Mathias Agopian
84d1f7a098
Merge commit 'goog/master' into merge_master
2009-07-01 18:33:18 -07:00
Mathias Agopian
78f1c1949f
Allocate 16MB for surfaces on Firstone, since 8MB is way to small for our bigger screen.
2009-07-01 17:47:38 -07:00
Android (Google) Code Review
99da6dd7f2
am 58ebdcc0: Merge change 5625 into donut
...
Merge commit '58ebdcc06eca06741460a7db2be4b79e3865eb88'
* commit '58ebdcc06eca06741460a7db2be4b79e3865eb88':
fix [1947273] the DimLayer causes the whole screen to update during transactions
2009-07-01 00:06:47 -07:00
Mathias Agopian
2dd6727c46
when there is a choice between UPDATE_ON_DEMAND and SWAP_BUFFER optimizations, choose UPDATE_ON_DEMAND which is often more efficient.
2009-06-29 18:57:42 -07:00
Mathias Agopian
29d06ac9a4
fix a bug that caused artifacts when SWAP_RECTANGLE was enabled
2009-06-29 18:49:56 -07:00
Mathias Agopian
446ff92038
don't use a 1/4th of the screen size texture for the dim layer
...
we can't use a texture of 1/4th of the screen for the dim layer, because the mdp internal input resultion is alwyas integers and for very small blits of a couple pixels the scale factor can get way out of range, for instance for a 7 pixels source, the scale factor would be either 7 (7/1) or 3.5 (7/2) instead of 4 (7/1.75). This caused the mdp to fail in some cases and revert to software. we now always use a texture of the actual screen size, so the problem will never happen. This burns 300KB of pmem instead of 21KB. On devices with a larger screen we might want to use a smaller texture and tile it by hand.
2009-06-29 17:32:20 -07:00
Mathias Agopian
a8d44f75e1
fix [1947273] the DimLayer causes the whole screen to update during transactions
2009-06-29 14:44:11 -07:00
Mathias Agopian
6b3287b5d4
fix [1947273] the DimLayer causes the whole screen to update during transactions
2009-06-28 02:54:16 -07:00
Mathias Agopian
b8a5560e13
fix an update bug with SHOW_UPDATE debug feature. Fix a problem with the debug binder codes too
2009-06-26 19:06:36 -07:00
Mathias Agopian
d512f238a6
add support for out-of-range copybit scaling. camera capture is in color again
2009-06-25 17:41:12 -07:00
Mathias Agopian
958b3cac99
use 1/16 the size (20KB) for the dim texture in the copybit/msm case
2009-06-25 16:21:32 -07:00
Mathias Agopian
240c9fe59e
use copybit for eglSwapBuffers() copy-back operations
2009-06-25 15:39:25 -07:00
Mathias Agopian
2ab55a4e31
make use of new eglGetRenderBufferANDROID extension to clean-up a bit a few hacks added recently
2009-06-25 00:09:27 -07:00
Mathias Agopian
5911aa9510
copybit now uses a native_handle_t* instead of a fd/offset
2009-06-24 20:39:16 -07:00
Mathias Agopian
69029eb5ab
hack copybit back in for video playback on msm7k. we have h/w accelerated video again
2009-06-24 20:39:16 -07:00
Mathias Agopian
2e12324581
fix a bug causing push-buffer surfaces' identity to be garbage, which resulted in some attributes (size/pos) to fail to be set
2009-06-23 20:06:46 -07:00
Mathias Agopian
1fed11c86a
checkpoint. bring back video/camera
2009-06-23 18:08:22 -07:00
Mathias Agopian
cca6b4267d
Merge commit 'goog/master' into merge_master
2009-06-19 17:41:14 -07:00
Mathias Agopian
f9d932774e
fix a memory corruption where a SF Client could be used after it's been destroyed
2009-06-19 17:00:27 -07:00
Mathias Agopian
cd8c5e29c2
release the last reference to surfaces explicitely instead of letting it go implicitely when the message is destroyed
2009-06-19 16:24:02 -07:00
Android (Google) Code Review
05915a4d9d
am c6282977: Merge change 4718 into donut
...
Merge commit 'c6282977180c220b1a68c23a328e7d75a11963ab'
* commit 'c6282977180c220b1a68c23a328e7d75a11963ab':
Fix sim-eng build and simplify previous lcd-density related patch
2009-06-18 19:46:59 -07:00
David 'Digit' Turner
ae71accf63
Fix sim-eng build and simplify previous lcd-density related patch
2009-06-19 04:41:12 +02:00
Mathias Agopian
945ebbfd3d
implement dimming with a texture on msm7k so it uses copybit
2009-06-18 18:48:39 -07:00
Android (Google) Code Review
e2095d0a1c
am b1cdb648: Merge change 4565 into donut
...
Merge commit 'b1cdb64877ebd3b8c5182913ff02edd8b54a6982'
* commit 'b1cdb64877ebd3b8c5182913ff02edd8b54a6982':
Allow the qemu.sf.lcd_density property to override the value of ro.sf.lcd_density
2009-06-18 15:43:28 -07:00
David 'Digit' Turner
694e10ba87
Allow the qemu.sf.lcd_density property to override the value of ro.sf.lcd_density
...
ro.sf.lcd_density is usually defined in the build.prop file which is parsed by init
before anything else. Since its name begins with "ro.", this property is write-once
and cannot later be modified, e.g. in /system/etc/init.goldfish.sh.
In other words, you cannot use "emulator -prop ro.sf.lcd_density=<value>", since
it is impossible to override the value defined in build.prop
This patch modifies the system to recognize "qemu.sf.lcd_density" as an override
value, which can be set with "emulator -prop qemu.sf.lcd_density=<value>", forcing
a specific density.
A later patch will allow the emulator to automatically set this property depending
on AVD hardware configuration settings.
2009-06-19 00:17:31 +02:00
Mathias Agopian
375f56363a
new Permission class used to improve permission checks speed (by caching results)
2009-06-15 21:56:51 -07:00
Mathias Agopian
5e78e09651
protect ANDROID specific egl extension with #define
2009-06-11 17:19:54 -07:00
Mathias Agopian
3d57964a81
fix a bunch of problems with destroying surfaces.
...
now, all destruction path, go through the purgatory which is emptied when ~ISurface is called, but we also make sure to remove the surface from the current list from there (in case a client forgot to request the destruction explicitely).
2009-06-04 18:46:21 -07:00
Mathias Agopian
e92c713cb6
when looking for an EGLConfig always pick the first one that matches, not the last one
2009-06-03 14:49:08 -07:00
Android (Google) Code Review
c20e4ebef2
am b61ae351: Merge change 2747 into donut
...
Merge commit 'b61ae351256518add7bcb40e0bf18337dd87195c'
* commit 'b61ae351256518add7bcb40e0bf18337dd87195c':
log the geomerty of surfaces causing an out of memory in SurfaceFlinger.
2009-05-29 14:57:33 -07:00
Mathias Agopian
3c4d8c83da
log the geomerty of surfaces causing an out of memory in SurfaceFlinger.
2009-05-29 14:55:06 -07:00
Mathias Agopian
310f8da0c3
merge master to master_gl
2009-05-22 02:16:08 -07:00
Android (Google) Code Review
bdbf6b094d
am 69a6c3eb: Merge change 2292 into donut
...
Merge commit '69a6c3ebd46a8de0e896747757f364322c12608d'
* commit '69a6c3ebd46a8de0e896747757f364322c12608d':
split boot animation out of SurfaceFlinger
2009-05-21 19:36:53 -07:00
Mathias Agopian
a1ecca920e
split boot animation out of SurfaceFlinger
...
Conflicts:
data/etc/platform.xml
2009-05-21 19:21:59 -07:00
Mathias Agopian
c5b2c0bf80
move libbinder's header files under includes/binder
2009-05-20 12:55:03 -07:00
Mathias Agopian
208059f67e
checkpoint: split libutils into libutils + libbinder
2009-05-20 12:55:02 -07:00
Mathias Agopian
20f68782a4
Region now has its own implementation instead of relying on SkRegion, which allows us to break libui's dependency on libcorecg.
2009-05-17 23:34:16 -07:00
Mathias Agopian
1e16b13857
add support for update-on-demand in SurfaceFlinger
2009-05-07 17:40:23 -07:00
Mathias Agopian
e6bf8b32b6
fix EGL extension string names
2009-05-07 15:07:52 -07:00
Mathias Agopian
df3ca30bf6
created an new EGL extension called ANDROID_swap_rectangle
...
ANDROID_swap_rectangle allows to specify the rectangle affected by eglSwapBuffers(), anything outside of this rectangle is unchanged. in particular EGL_BUFFER_DESTROYED only applies to that rectangle. This extension as well as EGL_BUFFER_PRESERVED allow major optimizations on surfaceflinger, which can redraw only the dirty area during compositing.
However, ANDROID_swap_rectangle allows further optimizations in EGL by reducing the amount of copy-back needed. ANDROID_swap_rectangle is particularily important for software implementations.
2009-05-07 15:07:33 -07:00
Mathias Agopian
7189c0054e
move opengl/include/EGL/android_natives.h to include/ui/egl/android_natives.h and don't include it from egl.h
...
the android_native_ types are just forward declared in egl.h
2009-05-05 18:11:11 -07:00
Mathias Agopian
e71212ba53
removed the "bits" attribute from android_native_buffer_t.
...
"bits" can never be trusted now that we need to call lock() on the handle to get the virtual address of the buffer.
2009-05-05 00:37:46 -07:00
Mathias Agopian
b2dd686d06
minor clean-up in FramebufferNativeWindow
2009-05-04 19:38:43 -07:00
Mathias Agopian
0926f50664
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
2009-05-04 14:17:04 -07:00
Mathias Agopian
7be3e5d2d8
Merge commit 'goog/master' into merge_master
...
Conflicts:
libs/surfaceflinger/Layer.cpp
libs/surfaceflinger/SurfaceFlinger.cpp
opengl/libagl/egl.cpp
opengl/libs/EGL/egl.cpp
opengl/libs/GLES_CM/gl.cpp
opengl/libs/GLES_CM/gl_api.in
opengl/libs/gl_entries.in
opengl/libs/tools/glapigen
2009-04-30 14:43:18 -07:00
Android (Google) Code Review
3f54b2ae7e
am 0124a15: Merge change 626 into donut
...
Merge commit '0124a150157d69a9f0ea109be2390afb5399b8a7'
* commit '0124a150157d69a9f0ea109be2390afb5399b8a7':
fix 1803886 android15 Translucent GLSurfaceView demo does not display properly
2009-04-29 13:35:37 -07:00
Mathias Agopian
b6683b58a8
make use of the perfectly fine List.h instead of our own reimplementation of a linked list.
2009-04-28 03:17:50 -07:00
Mathias Agopian
2b42fa7fdd
fix 1803886 android15 Translucent GLSurfaceView demo does not display properly
2009-04-27 18:50:06 -07:00
Mathias Agopian
550b79f449
get rid of an old hack to work around a bug around glDeleteTextures() in the adreno drivers
2009-04-24 16:31:11 -07:00
Mathias Agopian
cbc93ca800
get rid of the "show fps" debug option
2009-04-24 16:31:11 -07:00
Mathias Agopian
0aa758d64a
Surfaces are now destroyed properly in SurfaceFlinger.
...
First, the window manager tells us when a surface is no longer needed. At this point, several things happen:
- the surface is removed from the active/visible list
- it is added to a purgatory list, where it waits for all clients to release their reference
- it destroys all data/state that can be spared
Later, when all clients are done, the remains of the Surface are disposed off: it is removed from the purgatory and destroyed.
In particular its gralloc buffers are destroyed at that point (when we're sure nobody is using them anymore).
2009-04-24 16:30:38 -07:00
Mathias Agopian
f1d8e87b09
a brand new MessageQueue for SurfaceFlinger.
2009-04-24 16:22:36 -07:00
Mathias Agopian
9a11206fe7
more Surface lifetime management
...
Surfaces are now destroyed once all references from the clients are gone, but they go through a partial destruction as soon as the window manager requests it.
This last part is still buggy. see comments in SurfaceFlinger::destroySurface()
2009-04-24 15:00:41 -07:00
Mathias Agopian
9f88afb013
Squashed commit of the following:
...
commit e5c24638f98162c3b75b4c67a16b510d38e31341
Author: Mathias Agopian <mathias@google.com>
Date: Fri Apr 17 14:09:03 2009 -0700
oops forgot this file.
commit 282642632d0cb12882eecf42e0fdfb2343275de1
Author: Mathias Agopian <mathias@google.com>
Date: Fri Apr 17 14:07:32 2009 -0700
use a helper macro for creating Singleton<>'s static attributes instances.
2009-04-24 15:00:41 -07:00
Mathias Agopian
01b766839e
more splitting of Surface/SurfaceControl. Surface.java is now implemented in terms of Surface and SurfaceControl.
...
The WindowManager side of Surface.java holds a SurfaceControl, while the client-side holds a Surface. When the client is in the system process, Surface.java holds both (which is a problem we'll try to fix later).
2009-04-16 20:04:08 -07:00
Mathias Agopian
62b74444be
fix a few typos in comments. this is really intended as a git pull/push test.
2009-04-16 12:29:34 -07:00
Mathias Agopian
4243e66621
fix a rookie mistake causing Singleton<> to be a "multiton". Also improve the BufferMapper's debugging, but turn it off.
...
Squashed commit of the following:
commit 04e9cae7f806bd65f2cfe35c011b47a36773bbe5
Author: Mathias Agopian <mathias@google.com>
Date: Wed Apr 15 18:30:30 2009 -0700
fix and improve BufferMapper's tracking of mapped buffers.
commit 1a8deaed15811092b2349cc3c40cafb5f722046c
Author: Mathias Agopian <mathias@google.com>
Date: Wed Apr 15 00:52:02 2009 -0700
fix some bugs with the Singleton<> class. untested.
commit ed01cc06ad70cf640ce1258f01189cb1a96fd3a8
Author: Mathias Agopian <mathias@google.com>
Date: Tue Apr 14 19:29:25 2009 -0700
some work to debug the Singleton<> template.
2009-04-15 18:34:24 -07:00
Mathias Agopian
8b765b7f5e
more debugging tools around BufferMapper
2009-04-10 20:34:46 -07:00
Mathias Agopian
0308739d0b
Merge commit 'goog/master' into master_gl
...
Conflicts:
libs/utils/Parcel.cpp
2009-04-10 14:36:33 -07:00
Mathias Agopian
076b1cc3a9
Integrate from //sandbox/mathias/donut/...@145728
...
SurfaceFlinger rework for new EGL driver model support.
2009-04-10 14:24:30 -07:00
Mathias Agopian
253ed06781
AI 143321: am: CL 143172 am: CL 142875 [1732012] for some reason these files didn't go through in the preview check-in.
...
Original author: mathias
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...
Automated import of CL 143321
2009-03-27 18:12:49 -07:00
Mathias Agopian
c08731e756
AI 143320: am: CL 143171 am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor
...
Original author: mathias
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...
Automated import of CL 143320
2009-03-27 18:11:38 -07:00
Mathias Agopian
0d1318b974
AI 143309: am: CL 143160 am: CL 142856 new-new-new-new rotation animation. it may still change one more time.
...
Original author: mathias
Merged from: //branches/cupcake/...
Original author: android-build
Merged from: //branches/donutburger/...
Automated import of CL 143309
2009-03-27 17:58:20 -07:00
Mathias Agopian
816c5e2314
AI 143172: am: CL 142875 [1732012] for some reason these files didn't go through in the preview check-in.
...
Original author: mathias
Merged from: //branches/cupcake/...
Automated import of CL 143172
2009-03-27 16:13:24 -07:00
Mathias Agopian
24fd77d440
AI 143171: am: CL 142873 fix [1732012] Only show screen rotation animation when triggered by sensor
...
Original author: mathias
Merged from: //branches/cupcake/...
Automated import of CL 143171
2009-03-27 16:10:37 -07:00
The Android Open Source Project
06ee417bc5
Merge commit 'korg/cupcake'
...
Conflicts:
core/java/android/webkit/WebView.java
core/java/android/widget/TwoLineListItem.java
preloaded-classes
2009-03-27 15:38:40 -07:00
Mathias Agopian
ecbeaa0cf1
AI 143160: am: CL 142856 new-new-new-new rotation animation. it may still change one more time.
...
Original author: mathias
Merged from: //branches/cupcake/...
Automated import of CL 143160
2009-03-27 15:36:09 -07:00
Mathias Agopian
192f79fe71
Automated import from //branches/cupcake/...@142875,142875
2009-03-25 23:26:39 -07:00
Mathias Agopian
ceff6e1874
Automated import from //branches/cupcake/...@142873,142873
2009-03-25 23:18:56 -07:00
Mathias Agopian
262453cecb
Automated import from //branches/cupcake/...@142856,142856
2009-03-25 21:42:35 -07:00
Mathias Agopian
7c143aab44
Automated import from //branches/master/...@142447,142447
2009-03-24 22:50:50 -07:00
Mathias Agopian
b535e58351
Automated import from //branches/master/...@142432,142432
2009-03-24 22:49:21 -07:00
Mathias Agopian
74c770be33
Automated import from //branches/donutburger/...@142446,142446
2009-03-24 22:43:22 -07:00
Mathias Agopian
6219dd7d3a
Automated import from //branches/donutburger/...@142430,142430
2009-03-24 22:42:15 -07:00
Mathias Agopian
e74be0afd9
Automated import from //branches/master/...@141504,141504
2009-03-24 20:25:55 -07:00
Mathias Agopian
3df5e433a2
Automated import from //branches/donutburger/...@141502,141502
2009-03-24 20:25:29 -07:00
Mathias Agopian
0348218e93
Automated import from //branches/cupcake/...@142445,142445
2009-03-24 19:43:24 -07:00
Mathias Agopian
2ed5f739eb
Automated import from //branches/cupcake/...@142427,142427
2009-03-24 19:41:37 -07:00
Mathias Agopian
38c89491e4
Automated import from //branches/donutburger/...@140807,140807
2009-03-24 18:34:22 -07:00
Mathias Agopian
7a7af5c866
Automated import from //branches/master/...@140808,140808
2009-03-24 18:34:16 -07:00
The Android Open Source Project
0c2bcbc6cc
auto import from //branches/cupcake_rel/...@141571
2009-03-19 23:08:54 -07:00
Jean-Baptiste Queru
732ca39b70
Merge commit 'remotes/korg/cupcake' into merge
...
Conflicts:
core/java/android/view/animation/TranslateAnimation.java
core/jni/Android.mk
core/res/res/values-en-rGB/strings.xml
libs/audioflinger/AudioFlinger.cpp
libs/surfaceflinger/LayerScreenshot.cpp
packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
2009-03-18 11:33:14 -07:00
The Android Open Source Project
bcef13b666
auto import from //branches/cupcake/...@137873
2009-03-11 12:11:56 -07:00
The Android Open Source Project
edbf3b6af7
auto import from //depot/cupcake/@135843
2009-03-03 19:31:44 -08:00
The Android Open Source Project
d5193d9394
auto import from //depot/cupcake/@135843
2009-03-03 18:28:45 -08:00
Adrian Taylor
f18936cbf4
Fixing LayerScreenshot bitmap config value.
2009-03-02 12:11:47 -08:00
The Android Open Source Project
ac65e0b172
auto import from //branches/cupcake/...@131421
2009-02-13 12:57:50 -08:00
The Android Open Source Project
a6938bab1f
auto import from //branches/cupcake/...@130745
2009-02-10 15:44:00 -08:00
Jean-Baptiste Queru
a837ba778f
Add missing <limits.h> include
...
This should fix the build for gcc 4.3.2
2009-01-26 12:11:20 -08:00
The Android Open Source Project
5f78a48bb8
auto import from //branches/cupcake/...@127101
2009-01-20 14:03:58 -08:00
The Android Open Source Project
8a7a67538a
auto import from //branches/cupcake/...@126645
2009-01-15 16:12:10 -08:00
The Android Open Source Project
276293246e
auto import from //branches/cupcake/...@125939
2009-01-09 17:51:23 -08:00
The Android Open Source Project
e09fd9e819
Code drop from //branches/cupcake/...@124589
2008-12-17 18:05:43 -08:00
The Android Open Source Project
7c1b96a165
Initial Contribution
2008-10-21 07:00:00 -07:00