summaryrefslogtreecommitdiffstats
path: root/libs
Commit message (Collapse)AuthorAgeFilesLines
...
* | Android side of the fix for [2121211] Sholes has stutter during animationsMathias Agopian2009-09-174-3/+16
| | | | | | | | 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
* | add basic time stats for surfaces lock timeMathias Agopian2009-09-172-3/+18
|/
* Overlay could not set position or rotation immediately after created, it ↵Benny Wong2009-09-161-0/+1
| | | | | | should be triggered by signalEvent(). Originally from: https://partner.source.android.com/g/#change,1074
* disable backbuffer preservation when possible, which may improve performance ↵Mathias Agopian2009-09-161-0/+7
| | | | a bit
* fix [2119400] sholes: artifacting when switching orientationMathias Agopian2009-09-161-13/+13
|
* fix again [2102410] Home Screen is not displayed in the background in ↵Mathias Agopian2009-09-163-18/+84
| | | | Landscape Mode
* Fix issue 2123668: Class scope typo in AudioFlinger.cpp.Eric Laurent2009-09-161-8/+8
|
* revert to black video background, since we don't need the color-key anylongerMathias Agopian2009-09-151-1/+2
|
* fix [2122448] android_native_window_t::setUsage() only reallocates the first ↵Mathias Agopian2009-09-151-19/+10
| | | | | | | | buffer Take 2. We needed to check that the usage flags are "good enough" as opposed to "the same". This reverts commit 8f17a762fe9e9f31e4e86cb60ff2bfb6b10fdee6.
* Revert "fix [2122448] android_native_window_t::setUsage() only reallocates ↵Mathias Agopian2009-09-151-8/+18
| | | | | | the first buffer" This reverts commit 486aa963b63e20b7910e1004cebb4f0afabbd80f.
* fix [2122448] android_native_window_t::setUsage() only reallocates the first ↵Mathias Agopian2009-09-151-18/+8
| | | | buffer
* Merge change 25050 into eclairAndroid (Google) Code Review2009-09-152-18/+14
|\ | | | | | | | | * changes: Fix issue 2118464: cannot play ring tones and notifications after disconnecting BT headset while in call.
| * Fix issue 2118464: cannot play ring tones and notifications after ↵Eric Laurent2009-09-152-18/+14
| | | | | | | | | | | | | | | | | | | | disconnecting BT headset while in call. The problem comes from the fact that when the duplicated output is closed after BT headset disconnection, the OUTPUT_CLOSED notification is not sent to AudioSystem. Then the mapping between notification stream and duplicated output cached in AudioSystem is not cleared and next time a notification is played, the duplicated output is selected and the createTrack() request is refused by AudioFlinger as the selected output doesn't exist. The notification is ignored by AudioFlinger because when it is sent by the terminating playback thread, the thread has already been removed from the playback thread list. The fix consists in sending the notification in closeOutput() and not when exiting the playback thread. The same fix is applied to record threads.
* | Fix 2083478: Camera needs an auto-focus cancel APIChih-Chung Chang2009-09-152-0/+26
|/ | | | Change-Id: I13bda991b32aee47e82b5cf9d43b3021c416a9a2
* Merge change 24872 into eclairAndroid (Google) Code Review2009-09-151-2/+3
|\ | | | | | | | | * changes: Fix issue 2115450: a2dp thread is started, even though we are only connected to headset and not playing music.
| * Fix issue 2115450: a2dp thread is started, even though we are only connected ↵Eric Laurent2009-09-141-2/+3
| | | | | | | | | | | | | | to headset and not playing music. This is due to a regression introduced by change 24114: when no audio tracks are ready for mixing, 0s are written to audio hardware. However this should only happen if tracks have already been mixed since the audio flinger thread woke up. Also do not write 0s to audio hardware in direct output threads when audio format is not linear PCM.
* | add support for RGBX_8888 surfaces in SurfaceFlingerMathias Agopian2009-09-143-2/+10
| |
* | fix [2117464] SF can crash when calling dumpsysMathias Agopian2009-09-141-2/+13
| |
* | make sure to update the tail pointer when undoing a dequeueMathias Agopian2009-09-141-5/+15
|/
* Merge change 24337 into eclairAndroid (Google) Code Review2009-09-141-22/+27
|\ | | | | | | | | * changes: Fix issue 2107584: media server crash when AudioFlinger fails to allocate memory for track control block.
| * Fix issue 2107584: media server crash when AudioFlinger fails to allocate ↵Eric Laurent2009-09-091-22/+27
| | | | | | | | | | | | | | | | memory for track control block. AudioFlinger: verify that mCblk is not null before using it in Track and RecordTrack contructors. IAudioFlinger: check result of remote transaction before reading IAudioTrack and IAudioRecord. IAudioTrack and IAudioRecord: check result of remote transaction before reading IMemory.
* | fix [2111536] [FAST BLOCKER] Device is soft rebooted after ending the call ↵Mathias Agopian2009-09-111-3/+22
| | | | | | | | through voice dialer
* | fix [2112575] stuck on DequeueCondition for a surface that doesn't exist anymoreMathias Agopian2009-09-106-34/+74
| | | | | | | | this also fixes part of [2111536] Device is soft rebooted after ending the call through voice dialer
* | make sure conditions will return when the status of a surface is not NO_ERRORMathias Agopian2009-09-101-1/+17
| |
* | add a debug property to disable h/w composition. debug.sf.hw, when set to 0 ↵Mathias Agopian2009-09-091-2/+13
| | | | | | | | will disable h/w composition
* | fix [2102410] Home Screen is not displayed in the background in Landscape ModeMathias Agopian2009-09-092-11/+35
| | | | | | | | the blurring code now handles NPOT textures.
* | Fix sim-eng build.Andy McFadden2009-09-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Appears to have been broken by: commit 9779b221e999583ff89e0dfc40e56398737adbb3 Author: Mathias Agopian <mathias@google.com> Date: Mon Sep 7 16:32:45 2009 -0700 fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly For some reason we don't like to have "-lpthread" globally -- it's a no-op on device builds, but required for many host tools and all sim binaries -- so adding the use of pthread calls requires adding the library explicitly.
* | Merge change 24335 into eclairAndroid (Google) Code Review2009-09-091-2/+7
|\ \ | | | | | | | | | | | | * changes: use broadcast() instead of signal() when signaling the condition-variable Thread::RequestExitAndWait() is waiting for
| * | use broadcast() instead of signal() when signaling the condition-variable ↵Mathias Agopian2009-09-091-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | Thread::RequestExitAndWait() is waiting for we could have several thread waiting on the condition and they all need to wake-up. also added a debug "mTid" field in the class, which contains the tid of the thread (as opposed to pthread_t), this is useful when debugging under gdb for instance.
* | | Merge change 24334 into eclairAndroid (Google) Code Review2009-09-092-33/+29
|\ \ \ | |/ / | | | | | | | | | * changes: fix [2037525] Fail to start camera after adb sync new Camera
| * | fix [2037525] Fail to start camera after adb sync new CameraMathias Agopian2009-09-092-33/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | we ended-up locking a Mutex that had been destroyed. This happened because we gave an sp<Source> to the outside world, and were called after LayerBuffer had been destroyed. Instead we now give a wp<LayerBuffer> to the outside and have it do the destruction.
* | | Merge change 24333 into eclairAndroid (Google) Code Review2009-09-092-19/+21
|\ \ \ | |/ / | | / | |/ |/| * changes: rename Mutexes to make the code easier to follow
| * rename Mutexes to make the code easier to followMathias Agopian2009-09-082-19/+21
| |
* | Fix issue 1992233: DTMF tones on Sholes is really long.Eric Laurent2009-09-081-55/+63
|/ | | | | Add a parameter to ToneGenerator.startTone() allowing the caller to specify the tone duration. This is used by the phone application to have a precise control on the DTMF tone duration which was not possible with the use of delayed messaged. Also modified AudioFlinger output threads so that 0s are written to the audio output stream when no more tracks are ready to mix instead of just sleeping. This avoids an issue where the end of a previous DTMF tone could stay in audio hardware buffers and be played just before the beginning of the next DTMF tone.
* delete old and unused source filesMathias Agopian2009-09-0710-1864/+0
|
* fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properlyMathias Agopian2009-09-0721-1097/+926
| | | | | | | | | | | | | | | Rewrote SurfaceFlinger's buffer management from the ground-up. The design now support an arbitrary number of buffers per surface, however the current implementation is limited to four. Currently only 2 buffers are used in practice. The main new feature is to be able to dequeue all buffers at once (very important when there are only two). A client can dequeue all buffers until there are none available, it can lock all buffers except the last one that is used for composition. The client will block then, until a new buffer is enqueued. The current implementation requires that buffers are locked in the same order they are dequeued and enqueued in the same order they are locked. Only one buffer can be locked at a time. eg. Allowed sequence: DQ, DQ, LOCK, Q, LOCK, Q eg. Forbidden sequence: DQ, DQ, LOCK, LOCK, Q, Q
* attempt to fix [2099362] Possible SurfaceFlinger crashMathias Agopian2009-09-041-2/+6
|
* fix [2098939] Smooth gradients show banding on SholesMathias Agopian2009-09-041-1/+2
|
* fix issue 2096657: Sholes: residue shutter sound heard ONCE while taking a ↵Eric Laurent2009-09-031-6/+7
| | | | | | | picture AFTER the volume is turned off. Do not ramp volume if the first frame of a track is processed after the track was stopped. In the case of very short sounds, the track stop request can be received by AudioFlinger just after the start request before the first frame is mixed by AudioMixer. In this case, the track is already in stopped state and initial volume is applied with a ramp for the first frame processed which should not be the case: initial volume change is always applied immediatelly.
* Merge change 23568 into eclairAndroid (Google) Code Review2009-09-021-5/+12
|\ | | | | | | | | * changes: Work on issue #2079167: Flickering issue across multiple UI
| * Work on issue #2079167: Flickering issue across multiple UIDianne Hackborn2009-09-021-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This addresses a few parts of the bug: - There was a small issue in the window manager where we could show a window too early before the transition animation starts, which was introduced by the recent wallpaper work. This was the cause of the flicker when starting the dialer for the first time. - There was a much larger problem that has existing forever where moving an application token to the front or back was not synchronized with the application animation transaction. This was the cause of the flicker when hanging up (now that the in-call screen moves to the back instead of closing and we always have a wallpaper visible). The approach to solving this is to have the window manager go ahead and move the app tokens (it must in order to keep in sync with the activity manager), but to delay the actual window movement: perform the movement to front when the animation starts, and to back when it ends. Actually, when the animation ends, we just go and completely rebuild the window list to ensure it is correct, because there can be ways people can add windows while in this intermediate state where they could end up at the wrong place once we do the delayed movement to the front or back. And it is simply reasuring to know that every time we finish a full app transition, we re-evaluate the world and put everything in its proper place. Also included in this change are a few little tweaks to the input system, to perform better logging, and completely ignore input devices that do not have any of our input classes. There is also a little cleanup of evaluating configuration changes to not do more work than needed when an input devices appears or disappears, and to only log a config change message when the config is truly changing. Change-Id: Ifb2db77f8867435121722a6abeb946ec7c3ea9d3
* | Merge change 23720 into eclairAndroid (Google) Code Review2009-09-023-4/+17
|\ \ | |/ |/| | | | | * changes: Add colorkey to gl clear operation
| * Add colorkey to gl clear operationRebecca Schultz Zavin2009-09-023-4/+17
| | | | | | | | Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com>
* | Make it an error to use a bare apostrophe in aapt, and adjust warnings/errors.Eric Fischer2009-09-011-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In practice, no one ever writes an apostrophe in an aapt string with the intent of using it to quote whitespace -- they always mean to include a literal apostrophe in the string and then are surprised when they find the apostrophe missing. Make this an error so that it is discovered right away instead of waiting until late in QA or after the strings have already been sent for translation. (And fix a recently-introduced string that has exactly this problem.) Silence the warning about an empty span in a string, since this seems to annoy people instead of finding any real problems. Make the error about having a translated string with no base string into a warning, since this is a big pain when making changes to an application that has already had some translations done, and the dead translations should be removed by a later translation import anyway.
* | Fix issue 2091594: music chirp after disconnecting A2DP.Eric Laurent2009-09-011-1/+4
|/ | | | | In AudioFlinger::MixerThread::putTracks(), change the mFillingUpStatus flag to FS_FILLING for active tracks so that mute request is executed without ramping volume down when the track is moved from A2DP to hardware output. Also modified AudioFlinger::setStreamOutput() so that the notification of the change is sent only once to AudioSystem.
* Fix issue 2085690: AudioFlinger must properly terminate the input and output ↵Eric Laurent2009-08-311-2/+11
| | | | | | threads when destroyed. Call closeInput() for all inputs and closeOutput() for all outputs before deleting audio hardware in AudioFlinger destructor.
* EventHub: Fix file descriptor leak.Mike Lockwood2009-08-281-0/+1
| | | | Signed-off-by: Mike Lockwood <lockwood@android.com>
* Fix issue 2045911: Camera Shutter tone does not play correctly while ↵Eric Laurent2009-08-272-75/+201
| | | | | | listening to music. Add the possibility to delay routing and volume commands in AudioPolicyClientInterface. The delay is not blocking for the caller.
* dumpsys SurfaceFlinger will now always dump SF's state, even if SF is deadlockedMathias Agopian2009-08-262-1/+58
| | | | | | | | (in this case the state is dumped without the proper locks held which could result to a crash) in addition, the last transaction and swap times are printed to the dump as well as the time spent *currently* in these function. For instance, if SF is unresponsive because eglSwapBuffers() is stuck, this will show up here.
* fix [2070341] [FAST BLOCKER] can't successfully setup erc52Mathias Agopian2009-08-211-2/+12
|