[compiz] [ANNOUNCE] compiz-0.7.6
onestone at opencompositing.org
Thu May 29 05:26:18 PDT 2008
A new compiz release 0.7.6 is now available from:
which can be verified with:
(signed by Dennis Kasprzyk)
Additionally, a git clone of the source tree:
git clone git://git.freedesktop.org/git/xorg/app/compiz
will include a signed compiz-0.7.6 tag which points to a commit named:
which can be verified with:
git verify-tag compiz-0.7.6
and can be checked out with a command such as:
git checkout -b build compiz-0.7.6
Rewrite of place plugin, which significantly improves multi-output
Configurable multi-output behaviour in place.
Removed plane plugin. Former plane plugin users are encouraged to use
the wall plugin of Compiz Fusion.
Removed cube wallpaper painting. Users are encouraged to use the Compiz
Fusion wallpaper plugin instead.
Place plugin viewport placement viewport numbers are now 1-based.
Panel and desktop selection mode in switcher plugin.
Improved painting behaviour when using overlapping outputs.
Gtk-window-decorator now emits accessibility events when switching.
Gtk-window-decorator behaviour when using Metacity themes has been
improved to match Metacity better.
KDE4-window-decorator has been adapted to current KDE4 API.
Changes since compiz-0.7.4:
C-F Language team (2):
Daniel Lea (1):
Fix skydome animation tilt behaviour.
Danny Baumann (71):
Always also add the opposite button when adding a stick/above/shade
Also set shaded flag.
If we got an empty rect, assume the button is not present.
Keep Valgrind silent.
Above, shade, stick buttons are not available in Metacity <= 2.16.
Factor out adjustment of configure requests for gravity in a separate
function and use this function to also adjust ConfigureRequest events of
unmanaged windows for gravity.
Remove unused code.
Better function grouping / ordering.
Improve define order.
Replace get_window_[width|height] functions by helper macros.
Improve macro usage.
window -> w
Improve looping over all visible windows.
Consistently use Compiz coding style.
Skip override_redirect windows during smart placement.
Factor out cascade placement into separate function.
Drop glib dependency of place plugin.
Replace placeWin function by a better structured placeDoWindowPlacement
function. Placement strategy ("What should placement do to this window?") and
output determination as well as work area constraining have been factored out
to separete functions.
Pass work area into cascade placement functions.
Add helper macro for looping over all placement relevant windows.
Initialize count variable correctly.
Improve readability of placement relevance helper macro.
Added option for multi output behaviour of place and added a "Place on
output which has the pointer" mode.
Place dialogs centered on current output device rather than centered on
Make the placeGetPlacementOutput function return a CompOutput pointer.
Clamp new position if a viewport match was given. If the new position
was outside the visible screen area before, the window would be placed on a
viewport different to the one specified otherwise.
Move style window offscreen to make sure it never is visible on screen.
Added panel selection mode to switcher plugin.
Update default window match to account for panel selection mode.
Reduce code duplication.
Properly destroy popup windows on unload.
Keep switcher window property at an invalid value as long as the
switcher is not active.
Only update accessibility helper label if switched window has actually
Only accept USPosition on non-normal windows during validation if
workarounds are disabled.
Also use the multi output mode selection option when placing centered.
Disable resize handles for the directions the window is maximized to
(leave only left and right enabled for vertically maximized windows, top and
bottom for horizontally maximized windows).
Remove plane plugin.
Don't allow to minimize/showdesktop unmanaged windows.
Don't prevent focus for windows on other viewports if they are excluded
from focus stealing prevention.
Only set CWX / CWY if the position was actually changed.
Don't adjust configure requests of unmapped windows for gravity.
Added sane minimum / maximum values for viewport placement.
Make viewport placement options 1-based.
Make adjustConfigureRequestForGravity return only the bits that were
Always accept PPosition hint.
Added option for overriding USPosition and/or PPosition on certain
Allow minimizeWindow to minimize windows that don't have the minimize
action set as this is desired e.g. for minimizing transients.
Added missing action check.
Only initiate window menu if we don't have an active grab.
Don't set demands attention state on the active window.
Initialize starting position correctly.
Allow keyboard and window menu initiated resize being ended by a mouse
Make corner resize behaviour consistent to Metacity.
Make edge button bindings behave more meaningfully:
Treat edge button bindings like edge bindings.
Minor coding style cleanup.
Don't touch ConfigureRequest events of dock and desktop windows.
Don't place windows that have dock or desktop type hint set.
Added optional placement to fullscreen output, which makes sense
especially for smart window placement.
Added option to place on output the focussed window is on.
Try to follow multi output option as close as possible when placing
centered on screen.
Coding style fixes.
Remove useless checks.
Dennis Kasprzyk (37):
Post release version increment.
Leave one free texture coordinate unit for fragment.position and use it
also again in the blur shader. This should fix plugins that require
fragment.position, if "independet texture fetch" is enabled in the blur
C style comment.
Calulate cube opacity correctly on zoom out of manual rotation.
Calculate rotation progress up to a finer level and damage screen if
process is not zero.
Added glGetProgramiv to screen sturct to be able to get fragment program
Fetch blur texture in multiple indirection steps, if there aren't enough
fragment shader temporaries.
Increased first pass shader buffer, to fix buffer overflows with
gaussian shader radius bigger than 12.
Flip cull face instead of disabling it.
Moved viewport paint check into a wrapable function.
Disable backface culling during blur first pass rendering.
Combine projection results into one big rectangle, if vertex z values
differ and only the vertex region extents get projected.
Added screen mask to disable occlusion detection.
Create vertices in different order to save some computations in other
plugins (expo, cubeaddon).
Paint a viewport in cubePaintViewport instead of calling
paintTransformedOutput and postPaintViewport. This allows plugins to do
things before and after viewport painting.
Use fragment shader if a slightly saturated window texture is painted
and lighting is enabled, because both can't be done with texture environments
at the same time.
Do not try to generate mipmaps for TEXTURE_RECTANGLE targets, because
the ext_frambuffer_object extension only allows this for TEXTURE_2D targets.
Follow the "texture from pixmap" specification more strictly to avoid
unnecessary calls to glxQueryDrawable during pixmap binding.
Removed background painting. The compiz fusion wallpaper plugin provides
a better and more flexible for viewport independent background image
Removed wrapable background painting. The core part of the background
painting code stays as a fallback, if no desktop window is present and no
other plugin provides a different background solution. Plugins can use the
PAINT_SCREEN_NO_BACKGROUND_MASK screen mask to disable this fallback.
Use PAINT_SCREEN_NO_BACKGROUND_MASK instead of wraping paintBackground.
Use full screen output if overlapping output devices have been detected.
This prevents that parts of the screen get painted twice (xrandr clone
Bump core ABI.
Fallback to old texture target selection, to fix current broken tfp
implementations. This workaround will be removed after the 0.8.0 release.
Reset zoomout instead of progress for inside cube.
Paint cube caps if a plugin wishes it by setting cs->paintAllViewports.
Applied plasma API changes.
Fixed cube skydome rotation.
Disable Qt 4.4 "window less child widgets" feature to make button
drawing work correctly again.
Removed debug output code.
The decorator won't get a button release event after resize and move, so
we have to fake one to make qt act correctly.
Use CompTransform for rectangle/outline painting.
Merged decor_blend_(top|bottom|left|right)_border_picture function into
one common function.
Applied libdecoration changes to kde3 window decorator.
Applied libdecoration changes to kde4 window decorator.
Applied libdecoration changes to gtk window decorator.
Add NEWS entry and bump version for 0.7.6 release.
Guillaume Seguin (1):
Make gtk-window-decorator switcher window accessibility friendly
Jigish Gohil (1):
remove plane from POTFILES.in
Lubos Lunak (1):
Save program name to session manager.
Owen W. Taylor (1):
Fix initial map handling of opacity/brightness/saturation Make the
handling of properties for opacity, brightness, and saturation consistent
between initial map and subsequent updates: honor the properties even when
the window has the DOCK type or is override redirrect.
Roland Bär (1):
Simplified, realloc on NULL is same as malloc
More information about the compiz