History log of /frameworks/native/libs/ui/FramebufferNativeWindow.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
747c480b0e3cf9401ff53421be6a82b23fdc04c2 28-Jul-2012 Ed Heyl <ed@google.com> Merge remote-tracking branch 'goog/jb-dev-mako' into jb-mr1-dev

Conflicts:
include/media/hardware/CryptoAPI.h

Change-Id: I84bf34edbef000558f088bbf1d1e5b55d6217d2e
0bc64be3f5198f8dda1ced21bbc957a1d76efbb7 29-Jun-2012 Naseer Ahmed <naseer@codeaurora.org> libs/ui: Add support for triple framebuffers

Change-Id: I90dd38deeeda9a3785b87286cc7d252c6f948750
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
a74cbc06493ed941a8a54f2f1d0074f03fc9aafb 21-Jun-2012 Jesse Hall <jessehall@google.com> Move remaining bits of lockBuffer to dequeueBuffer

FramebufferNativeWindow::dequeueBuffer now waits for the next buffer
to be non-front in addition to being free.

Change-Id: I991f154958cc6b488b1241aba83d1f95a0513b3c
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
d8e812ce6fe9ae0388e98b08456e1d18b9498239 14-Jun-2012 Jamie Gennis <jgennis@google.com> Update ANativeWindow clients for sync

This change updates the uses of ANativeWindow to use the new ANW functions that
accept and return Sync HAL fence file descriptors.

Change-Id: I3ca648b6ac33f7360e86754f924aa072f95242f6
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
5f2165f9455d4893b581b73a67c5431f4344b47e 25-Feb-2012 Mathias Agopian <mathias@google.com> remove dependency on android_native{s_priv|buffer}.h

Change-Id: Ie4b95f7061c240f37c504414259f92d72c4ffc89
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
c6cd27cbf3ddec77cca97e5bd2b257f80ea99706 22-Feb-2012 Dima Zavin <dima@android.com> libui: add ability to force a framebuffer format for EGL's use

This does not actually change the framebuffer format. It merely
fakes this format to surfaceflinger so that when it creates
framebuffer surfaces it will use this format. It's really a giant
HACK to allow interworking with buggy gralloc+GPU driver
implementations. You should *NEVER* need to set this for shipping
devices.

Change-Id: I03eeb5b4d72838ef219df386ecc489fc20ab9cc7
Signed-off-by: Dima Zavin <dima@android.com>
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
55ef343331f5efbfe3e01bc9993d94faea236048 07-Jan-2012 Mathias Agopian <mathias@google.com> remove dead/usnused code

Change-Id: I6fa2bc6ee01790abd2c1533f043d61a5e5c8d26e
/frameworks/native/libs/ui/FramebufferNativeWindow.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/FramebufferNativeWindow.cpp
81a63350527cafce6929309533c58586878f10b5 30-Jul-2011 Mathias Agopian <mathias@google.com> connect/disconnect is now called from our EGL wrapper

the original connect/disconnect hooks are deprecated
and replace by api_connect/api_disconnect. the original
hooks are no no-ops.
api_connect/api_disconnect is now only called from the
android framework.

Bug: 5057915
Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
bb66c9b5a9c16dee93559eb738746a2d0a9b2db3 21-Jul-2011 Mathias Agopian <mathias@google.com> Fix a few issues with NATIVE_WINDOW_TRANSFORM_HINT

- fixed uninitialized variable
- set hint to indentity when transform is too complex
- make sure FrameBufferNativeWindow doesn't fail on needed perform commands

Bug: 4487161
Change-Id: I7cb2b0869b72404732eca7cb2d145ff669e2ed9b
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
97c602c5af5f3ffd69009bf496d86347b71a2b4c 20-Jul-2011 Mathias Agopian <mathias@google.com> implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation"

Bug: 4487161
Change-Id: I883f34efe542c2a566d04966f873374f40c50092
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
7734ebfe47f42f980c1b44c1f284a91d8ad1d6c7 14-Jul-2011 Mathias Agopian <mathias@google.com> Add set_scaling_mode() to ANativeWindow.

This allows to specify the scaling mode independently from
the buffer size.

Change-Id: Iaa2baa660445531a97d3fac192e580f4929c5d3b
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
8f9dbf9e13b927de2524116c30544f7dfbbbf56c 14-Jul-2011 Mathias Agopian <mathias@google.com> move lock/unlock implementaion outside of Surface into SurfaceTextureClient

This makes ANativeWindow_lock/ANativeWindow_unlockAndPost work
with ANativeWindows implemented by Surface and SurfaceTextureClient.

Also, Surface now inherits directly from SurfaceTextureClient.

Bug: 5003724
Change-Id: I9f285877c7bae9a262e9a7af91c2bae78804b2ef
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
bee205fd58a27c10a0895de5339e76025d429d2b 01-Jul-2011 Jamie Gennis <jgennis@google.com> EGL: fix the ANativeWindow size/fmt override

This change fixes how the Android EGL layer overrides the size and
format of an ANativeWindow in eglCreateWindowSurface. The new behavior
is to leave the size untouched when overriding the format. The previous
behavior was to reset the ANativeWindow to use the default size set by
the ANativeWindow implementation.

It also adds two new 'perform' methods to the ANativeWindow interface:
set_buffers_dimensions and set_buffers_format, and redefines the
behavior of set_buffers_geometry to be the combination of these two new
methods.

Additionally, this change adds an error check for the return value of
the new native_window_set_buffers_format call, which required adding a
(stub) handler for to FramebufferNativeWindow.

Change-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
697526bc9e44ce61c88614f98387ae8bbf0a187e 01-May-2011 Iliyan Malchev <malchev@google.com> frameworks/base: android_native_buffer_t -> ANativeWindowBuffer

Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417
Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
41abd67302b52aefadc2b3dea42226f16bf6d9ba 15-Apr-2011 Iliyan Malchev <malchev@google.com> frameworks/base: make the ANativeWindow query() method const

query() does not modify the object's data, so it needs to be a const method

Change-Id: I67c40a3c865461e6f1cc2193fd2d74286ff6ac8f
Signed-off-by: Iliyan Malchev <malchev@google.com>
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
391bbe2246a7547dbf3460c231b3c5ba691d4eb1 14-Mar-2011 Jamie Gennis <jgennis@google.com> ANativeWindow: add query for the concrete type.

This change adds a query to the ANativeWindow interface for getting the
concrete type of the ANativeWindow.

Bug: 4086509
Change-Id: I64aa86d72fbca3b52a98e1fc35608737781a3178
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
1d21a9cafc534c34a2f28c985c4c7aa176d0e67b 02-Dec-2010 Erik Gilling <konkers@android.com> surfaceflinger: add support for gralloc dump hooks

Change-Id: Ib6f539ed0132b70d040d653c03d52cc04249ac3c
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
af1097658321bfdfaf0cc65214a94bfcdee372ce 18-Nov-2010 Jean-Baptiste Queru <jbq@google.com> am a15e4886: Merge "Framebuffer: Support variable number of framebuffers in the UI"

* commit 'a15e4886de8f75f3cb137f51743d330414c910e8':
Framebuffer: Support variable number of framebuffers in the UI
71484f2f76457287a1fbf5791f530c2b2459aa0c 03-Nov-2010 Rodrigo Obregon <robregon@ti.com> Framebuffer: Support variable number of framebuffers in the UI

This change defines a macro NUM_FRAME_BUFFERS to set
the desired number of framebuffers to be used by the UI,
instead of hard-coding 2 framebuffers.

Aditional logic has been added to handle the initialization
and destruction of NUM_FRAME_BUFFERS buffers.

Change-Id: I3a4bfec3e0f453432f2ffebf084c00f574d3be46
Signed-off-by: Rodrigo Obregon <robregon@ti.com>
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
35b48d10bc9e064201d3d54d2d476314684a7a05 14-Sep-2010 Mathias Agopian <mathias@google.com> Add logging of various important graphics events

There are 16 events logged in the event log:
SF_APP_DEQUEUE_BEFORE
SF_APP_DEQUEUE_AFTER
SF_APP_LOCK_BEFORE
SF_APP_LOCK_AFTER
SF_APP_QUEUE

SF_REPAINT
SF_COMPOSITION_COMPLETE
SF_UNLOCK_CLIENTS
SF_SWAP_BUFFERS
SF_REPAINT_DONE

SF_FB_POST_BEFORE
SF_FB_POST_AFTER
SF_FB_DEQUEUE_BEFORE
SF_FB_DEQUEUE_AFTER
SF_FB_LOCK_BEFORE
SF_FB_LOCK_AFTER

all events log the buffer conserned and a timestamp in microseconds.

by default the logging is not enabled, to turn it on:
adb shell service call SurfaceFlinger 1006 i31 1
adb shell setprop debug.graphic_log 1

The effect is immediate in SurfaceFlinger, but applications need to be
restarted.

Change-Id: Ifc2e31f7aed072d9a7dede20ff2ce59231edbec1
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
4b5e91e4820f03dba7dcc36e4b148331bc964b4b 30-Jun-2010 Dianne Hackborn <hackbod@google.com> Introduce official public NativeWindow type.

Not yet hooked up to anything in the NDK, but requires renaming
the existing android_native_window_t type everywhere.

Change-Id: Iffee6ea39c93b8b34e20fb69e4d2c7c837e5ea2e
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
55fa25161a7626ae6a15bc2cc46e22771455ed80 12-Mar-2010 Mathias Agopian <mathias@google.com> implement connect/disconnect in our native_window_t implementations

the framebuffer implementation doesn't do anything special with this
but the surfaceflinger implementation makes sure the surface is not used
by two APIs simultaneously.

Change-Id: Id4ca8ef7093d68846abc2ac814327cc40a64b66b
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
9cce325fae8adcf7560a28eef394489f09bad74d 10-Feb-2010 Mathias Agopian <mathias@google.com> split libsurfaceflinger_client and libcamera_client out of libui
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
092fa4beaf6ca214d88f657a8b233ad0f3fd6a10 06-Nov-2009 Romain Guy <romainguy@android.com> Revert change incorrectly submitted as part of change #32153.

Change-Id: I31c52beff03c0d038a257fc151eff3b8da60eddc
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
471afca7fce7db8dfb4b59d10f9e699a6b951cb5 05-Nov-2009 Romain Guy <romainguy@android.com> Prevent crash in Home when using widgets whose ids collide with Home's
resources.

Bug #2228943.

Approved by mcleron, triaged by ryanpc.

Change-Id: Idf40f3b09502ae5d0d3b9a6a72c265a2de2ffca2
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
a455793a8d068a06ae65e1e04170eb24851c0eb1 23-Sep-2009 Marco Nelissen <marcone@google.com> fbDev wasn't initialized of hw_get_module failed, but was then used anyway.
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
74faca212e2675aa55a30235c77cb6403471a4b9 18-Sep-2009 Mathias Agopian <mathias@google.com> Android side of the fix for [2121211] Sholes has stutter during animations

a new method, compostionComplete() is added to the framebuffer hal, it is used by surfaceflinger to signal the driver that the composition is complete, BEFORE it releases its client. This gives a chance to the driver to
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
5221271375f361b84a6eeec3d7086f223997fbb3 12-Aug-2009 Mathias Agopian <mathias@google.com> second take, hopefully this time it doesn't break one of the builds: "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything."
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
b2fd4665e66fe81969f1f07fd724c6f68dd8f7f1 12-Aug-2009 Fred Quintana <fredq@google.com> Revert "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything."

This reverts commit 8b76a0ac6fbf07254629ed1ea86af014d5abe050.
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
df37b62c62f8efd3b5a433f9b4d40d30cec13a31 11-Aug-2009 Mathias Agopian <mathias@google.com> SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything.

This change makes SurfaceHolder.setType(GPU) obsolete (it's now ignored).
Added an API to android_native_window_t to allow extending the functionality without ever breaking binary compatibility. This is used to implement the new set_usage() API. This API needs to be called by software renderers because the default is to use usage flags suitable for h/w.
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
42db9dcea2e6b9f60f07a3e9e2d6fbc196082284 07-Aug-2009 Mathias Agopian <mathias@google.com> better error handling
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
6b1f41004fa48e96bab61f508867314261de660b 07-Aug-2009 Mathias Agopian <mathias@google.com> added NATIVE_WINDOW_FORMAT attribute to android_native_window_t
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
cb6b9041647b4f080324742eee5ce709960ff610 31-Jul-2009 Mathias Agopian <mathias@google.com> fixed some issues with the software renderer when surfaces are made current.

there was several issues:
- when a surface was made non-current, the last frame wasn't shown and the buffer could stay locked
- when a surface was made current the 2nd time, it would not dequeue a new buffer

now, queue/dequeue are done when the surface is made current.

for this to work, a new query() hook had to be added on android_native_window_t, it allows to retrieve some attributes of a window (currently only width and height).
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
2ab55a4e31c37d74abdd85486e1f4045c7f708e2 25-Jun-2009 Mathias Agopian <mathias@google.com> make use of new eglGetRenderBufferANDROID extension to clean-up a bit a few hacks added recently
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
69029eb5abfaeb52716b84db89e32dc742551508 24-Jun-2009 Mathias Agopian <mathias@google.com> hack copybit back in for video playback on msm7k. we have h/w accelerated video again
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
1e16b13857809eaa9bd17fb60ac0a471dc92844b 08-May-2009 Mathias Agopian <mathias@google.com> add support for update-on-demand in SurfaceFlinger
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
aa8c0ff7a36b4840dcf3e72c9696b86d192c4314 06-May-2009 Mathias Agopian <mathias@google.com> get rid off unneeded flags
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
58a79f47457e9cae2f6880653b581fe3170b0b1f 06-May-2009 Mathias Agopian <mathias@google.com> move android_native_buffer_t declaration into its own private/ui/android_native_priv.h header, since user code should never have access to it.
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
7189c0054e29a66d945f5657c48d5ecf538ea511 06-May-2009 Mathias Agopian <mathias@google.com> 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
/frameworks/native/libs/ui/FramebufferNativeWindow.cpp
b2dd686d06a608ee40285b93bc0217cf26c2b035 05-May-2009 Mathias Agopian <mathias@google.com> minor clean-up in FramebufferNativeWindow
/frameworks/native/libs/ui/FramebufferNativeWindow.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/FramebufferNativeWindow.cpp