summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Spilsbury <sam.spilsbury@canonical.com>2011-07-14 05:49:04 +0800
committerSam Spilsbury <sam.spilsbury@canonical.com>2011-07-14 05:49:04 +0800
commita970474eebd2770924d3f1c3286ef6a783215e5f (patch)
treea4e1c55f0ae553980f9f21aa5cde5b6f60b4193a
parentb6b556f9732545997b1c707ffb6baf66dbaca3a2 (diff)
downloadmobilebling-a970474eebd2770924d3f1c3286ef6a783215e5f.tar.gz
mobilebling-a970474eebd2770924d3f1c3286ef6a783215e5f.tar.bz2
Update NEWS for 0.9.5.0
-rw-r--r--AUTHORS114
-rw-r--r--ChangeLog19315
-rw-r--r--NEWS501
3 files changed, 18158 insertions, 1772 deletions
diff --git a/AUTHORS b/AUTHORS
index 1500f90..2c25941 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,29 +1,97 @@
-compiz and the standard set of plugins are designed and written by
-
+Adam Williamson <awilliam@redhat.com>
+Adel Gadllah <adel.gadllah@gmail.com>
+Alyssa Hung <deciare@isisview.org>
+Bellegarde Cedric <gnumdk@gmail.com>
+Bellegarde Cedric <gnumdk@puffy.homelinux.org>
+C-F Language team <i18n@opencompositing.org>
+Cedric <gnumdk@gmail.com>
+Christopher Williams <christopherw@verizon.net>
+Christopher Williams <crdlb@compiz-fusion.org>
+Compiz Fusion l10n team <i18n@opencompositing.org>
+Dan Winship <danw@novell.com>
+Dan Winship <danw@twelve-monkeys.boston.ximian.com>
+Daniel Lea <danlea@gmail.com>
+Daniel Nylander <po@danielnylander.se>
+Danny Baumann <daba@mobilrechner.localdomain>
+Danny Baumann <daba@rechenknecht.peppercon.de>
+Danny Baumann <dannybaumann@web.de>
+David Reveman <c99drn@cs.umu.se>
+David Reveman <david@ion.(none)>
David Reveman <davidr@novell.com>
-
-with additional functionality by
-
-Radek Doulik <rodo@novell.com> IO multiplexing
-Mirco Müller <macslow@bangang.de> Skydome support in cube plugin
-Søren Sandmann <sandmann@redhat.com> plane plugin
-Dan Winship <danw@novell.com> gconf-dump plugin
-Brian Paul <brian.paul@tungstengraphics.com> Matrix functions
-
-and other contributions by
-
-Mike Cook <mcook@novell.com>
-Mike Dransfield <mike@blueroot.co.uk>
-Diogo Ferreira <diogo@underdev.org>
-gandalfn <gandalfn@club-internet.fr>
-Guillaume <ixcemix@gmail.com>
-Kristian Høgsberg <krh@redhat.com>
Dennis Kasprzyk <onestone@beryl-project.org>
+Dennis Kasprzyk <onestone@compiz-fusion.org>
+Dennis Kasprzyk <onestone@opencompositing.org>
+Didier Roche <didrocks@ubuntu.com>
+Diogo Ferreira <diogo@underdev.org>
+Dominique Leuenberger <dimstar@opensuse.org>
+Dominique Leuenberger <dominique@leuenberger.net>
+Dominique Leuenberger <dominique@messiah.leuenberger.net>
+Eduardo Gurgel Pinho <eduardo@mad4.Chagas>
+Erkin Bahceci <erkinbah@gmail.com>
Gerd Kohlberger <lowfi@chello.at>
-Volker Krause <vkrause@kde.org>
-moppsy <moppsy@comcast.net>
+Guillaume <ixcemix@gmail.com>
+Guillaume Seguin <guillaume@segu.in>
+James Jones <jajones@jatest.nvidia.com>
+Jason Smith <jason.smith@canonical.com>
+Jay Catherwood <jay.catherwood@gmail.com>
Jeremy C. Reed <reed@reedmedia.net>
-Thierry Reding <thierry@gilfi.de>
+Jigish Gohil <cyberorg@opensuse.org name = Jigish Gohil>
+Jigish Gohil <cyberorg@prime.cyberorg.info>
+Joel Bosveld <Joel.Bosveld@gmail.com>
+Joel Bosveld <joel.bosveld@gmail.com>
Julian Sikorski <lordzanon@poczta.onet.pl>
+Jürgen Kreileder <jk@blackdown.de>
+Kristian Hogsberg <krh@bitplanet.net>
+Kristian Høgsberg <krh@redhat.com>
+Kristian Lyngstol <kristian@beryl-project.org>
+Kristian Lyngstol <kristian@bohemians.org>
+Kristopher Ives <kris@leetbook2.(none)>
+Kristopher Ives <kristopher.ives@gmail.com>
+Lubos Lunak <llunak@novell.com>
+Michael Vogt <mvo@ubuntu.com>
+Mike Cook <mcook@novell.com>
+Mike Dransfield <mike@blueroot.co.uk>
+Mirco Muller <macslow@bangang.de>
+Nicolas Viennot <nicolas@viennot.biz>
+Owen W. Taylor <otaylor@fishsoup.net>
+Patrick Niklaus <marex@beryl-project.org>
+Patrick Niklaus <marex@opencompositing.org>
+Patrick Niklaus <patrick.niklaus@googlemail.com>
+Per Wigren <per.wigren@gmail.com>
Quinn Storm <livinglatexkali@gmail.com>
-Erkin Bahceci <erkinbah@gmail.com>
+Quinn Storm <quinn@quinn-laptop.(none)>
+Randolph Chung <randolph@tausq.org>
+Rob Taylor <rob.taylor@codethink.co.uk>
+Robert Carr <racarr@gorbie.(none)>
+Robert Carr <robb@gorbachev.(none)>
+Robert Noland <rnoland@rnoland-ibm.acs.internap.com>
+Roi Cohen <racarr@gorbie.(none)>
+Roi Cohen <roico.beryl@gmail.com>
+Roland Baer <roland@Vista.(none)>
+Roland Bar <roland@verifysoft.de>
+Roland Bär <roland@Vista.(none)>
+Roland Bär <roland@verifysoft.de>
+Sam <smspillaz@gmail.com>
+Sam Spilsbury <Sam@XPS-SUSE.site>
+Sam Spilsbury <SmSpillaz@gmail.com>
+Sam Spilsbury <sam.spilsbury@canonical.com>
+Sam Spilsbury <smspillaz@XPS-FEDORA.(none)>
+Sam Spilsbury <smspillaz@XPS-U.(none)>
+Sam Spilsbury <smspillaz@gmail.com>
+Sam Spilsbury <smspillaz@smspillaz-desktop.(none)>
+Scott Moreau <oreaus@gmail.com>
+Sebasian Billaudelle <stein@cream-project.org>
+Steven Robertson <nihilismwow@gmail.com>
+Stjepan Glavina <stjepang@gmail.com>
+Søren Sandmann <sandmann@redhat.com>
+Thierry Reding <thierry@gilfi.de>
+Tomas Carnecky <tom@dbservice.com>
+Travis Watkins <amaranth@ubuntu.com>
+Unity <unity@VB-U1010.(none)>
+Zack Rusin <zack@kde.org>
+dragoran <drago01@gmail.com>
+gandalfn <gandalfn@club-internet.fr>
+mike@blueroot.co.uk <mike@blueroot.co.uk>
+moppsy <moppsy@comcast.net>
+scott <scott@box1.localdomain>
+Δημήτρης (djdoo) <jimdusis@yahoo.gr>
diff --git a/ChangeLog b/ChangeLog
index bbfa473..41cf13c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,1795 +1,18598 @@
-2006-06-21 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-14
- * src/window.c: Add updateTransientHint to protect against circular
- transient dependencies. (bnc 186825)
+ Merge in build fix and debug message removal
-2006-06-20 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-14
- * src/window.c (addWindowSizeChanges): Constrain window
- dimensions if they are too large.
+ Fix for bad merge, unbreak plugin build
- * gnome/window-decorator/gnome-window-decorator.c (get_mwm_prop):
- Trap X errors.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-14
-2006-06-20 Dan Winship <danw@novell.com>
+ Merge in build changes
- * configure.ac (ALL_LINGUAS): Add pl
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-13
-2006-06-16 David Reveman <davidr@novell.com>
+ Disable BUILD_KDE4 in the distcheck target for now as upstream KDE has moved
+ some header files around and this is breaking the build check
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-08
- * plugins/switcher.c:
- * plugins/scale.c: Add modal dialogs and fullscreen windows
- to default window types. (bnc 185749)
+ Merge in fix to ftbfs in some cases
- * gnome/window-decorator/gnome-window-decorator.c: Track motif
- WM hints and disable decorations when application wants no
- titlebar. (bnc 185852)
+Merge: ee98496 e43159f
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-08
-2006-06-15 David Reveman <davidr@novell.com>
+ Merge in lp:~smspillaz/compiz-core/compiz-core.dist-buildsystem and turn
+ CTest on by default for everything
- * plugins/cube.c (cubePaintTransformedScreen): Remove
- PAINT_SCREEN_CLEAR_MASK from mask.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-08
- * plugins/switcher.c (switchPaintScreen): Add PAINT_SCREEN_CLEAR_MASK
- when zooming. (bnc 183676)
+ Nitpicking and fix FTBFS on bzr
- * src/paint.c (paintTransformedScreen): Clear color buffer if
- PAINT_SCREEN_CLEAR_MASK is present.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-08
- * include/compiz.h: Add PAINT_SCREEN_CLEAR_MASK.
+ Drop support for bz2, add targets for release uploads, cleanup
- * gnome/window-decorator/gnome-window-decorator.c: Add DM selection
- support and --repalce option so it's possible to replace an
- existing window decorator in the same way as it's possible to replace
- a window manager. (bnc 185296)
- (close_button_event):
- (max_button_event):
- (min_button_event): De-highlight on NotifyGrab. (bnc 185293)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
-2006-06-12 Dan Winship <danw@novell.com>
+ Add various fixes for distcheck, source distributions without a VCS
+ and non-C sources (eg python bindings where we can't do try_compile
+ because C and CXX are not in the enabled languages)
- * plugins/cube.c:
- * plugins/switcher.c: Mark cube as needing to load before switcher
- rather than marking switcher as requiring cube. bnc #183676.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * plugins/gconf-dump.c (dumpPluginOptions): Output load_before and
- requires for all plugins, even if the list is empty, to ensure
- that an empty value in a new release overrides a non-empty value
- in an older release.
+ Add a proper set of a release targets in the CMake buildsystem for all compiz
+ projects to use
+
+ make release-prep: generates NEWS ChangeLog and AUTHORS file
+ make distcheck: generates a tarball
+ make release-signoff: signs the tarball using the key in RELEASE_KEY and if
+ in a git repository, creates tags and branches for that
- * plugins/compiz.schemas.in.in: regen
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
-2006-06-09 Dan Winship <danw@novell.com>
+ Add VERSION file
- * configure.ac: add translations
+Merge: 0550e09 b9d6583
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
-2006-06-09 David Reveman <davidr@novell.com>
+ Merge in lp:~unity-team/compiz-core/compiz-core.fix_706918 and hook
+ PluginClassHandler tests into make test
- * plugins/move.c (moveHandleMotionEvent): Handle shaded windows
- better.
+Merge: a1268e2 7844ea3
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * src/window.c (maximizeWindow):
- * src/event.c (handleEvent): Allow windows to be both maximized
- and shaded.
+ Merge in lp:~unity-team/compiz-core/compiz-core.fix_722830
- * src/window.c: Update addWindowSizeChanges so it can be used by
- moveResizeWindow.
- (updateWindowAttributes): Add missing sendSyncRequest call.
- (addWindowSizeChanges): Make maximized window placement a bit better.
- (moveResizeWindow): Adjust window geometry using
- addWindowSizeChanges. (bnc 183121)
+Merge: f914d15 ab21ddc
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * src/window.c: Only allow shading on windows with top decoration.
+ Merge in lp:~unity-team/compiz-core/compiz-core.fix_802373
- * src/event.c (handleEvent): Check that shade action is allowed
- before shading a window.
+Merge: faf527f 82a73b8
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
-2006-06-08 David Reveman <davidr@novell.com>
+ Merge in lp:~smpillaz/compiz-core/compiz-core.fix_804683
- * plugins/decoration.c (decorInitWindow):
- * plugins/minimize.c (minInitWindow):
- * src/window.c (addWindow): Handle initially shaded windows
- correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * plugins/switcher.c (switchTerminate): Only use hideWindow
- if switcher window is managed and mapped.
- (switchInitiate): Only use showWindow if switcher window is
- hidden. (bnc 182519)
+ Remove debugging code
- * plugins/minimize.c (minHandleEvent): Make sure we adjust the window
- region correctly when it's being unshaded.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
-2006-06-07 David Reveman <davidr@novell.com>
+ Move timer tests into tests/timer/
- * configure.ac: Bump version to 0.0.13.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * plugins/compiz.schemas.in.in: Regen.
+ Revamp the unit tests, split into four separate tests, one for
+ implicit creation on get, one for construction, one for type names
+ and one for index sanity checking
- * src/window.c: Add window shading support.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-07
- * src/screen.c:
- * src/paint.c:
- * src/event.c: Adjust for window shading support.
- (handleEvent): Handle RESTACK client messages with sibling None
- correctly.
+ Initialize index even if allocating the plugin class failed due to a buggy
+ base class
- * src/event.c:
- * src/display.c: Add toggle window shade binding.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-06
- * plugins/minimize.c: Add window shading animation support.
+ Add missing files
- * plugins/fade.c:
- * plugins/place.c:
- * plugins/resize.c:
- * plugins/scale.c:
- * plugins/switcher.c:
- * plugins/decoration.c: Adjust for window shading support.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-06
- * include/compiz.h: Add window shading support.
+ Remove useless #warning
- * gnome/window-decorator/gnome-window-decorator.c: lower_window ->
- restack_window and change it so it can be used for both
- raising and lowering a window.
- Add support for double_click_titlebar setting.
- (title_event): Don't activate window on titlebar click only
- raise it. Use double_click_action to determine what should be
- done when titlebar is double clicked.
- (update_event_windows): Remove vertical resize event windows
- when top level window is shaded.
- (window_state_changed): Update event windows when window state
- changed.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-06
- * gnome/window-decorator/gnome-window-decorator.c:
- * gnome/compiz-window-manager.c: Add support for shade double click
- setting.
+ Split tests up into files, poke timer.cpp, make test-timer link to the tests
+ and enable CTest
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-06
- * plugins/cube.c (cubePaintTransformedScreen):
- * plugins/wobbly.c (wobblyDrawWindowGeometry):
- * plugins/switcher.c (switchPaintWindow):
- * src/paint.c (drawWindowGeometry): Disable client-side texture
- coordinate arrays that are not used. (bnc #182430)
+ Add missing file
- * plugins/compiz.schemas.in.in:
- * plugins/resize.c:
- * plugins/move.c: Add initiate_keyboard binding which is more
- appropriate for key-binding as it moves the cursor to middle of
- window.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
-2006-06-06 David Reveman <davidr@novell.com>
+ Test for basic value modification
- * plugins/switcher.c: Track thumbnail damage correctly.
- (switchPaintScreen): Only intercept paintScreen when screen is
- grabbed or we're zooming and ss->translate > 0.001.
- (switchPaintScreen): Paint switcher window correctly when we're
- not zooming.
- Add cube as a dependency to make sure background is rendered
- correctly when zooming.
- (bnc #181909)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
- * src/window.c (moveResizeWindow, ensureWindowVisibility):
- Don't make sure fullscreen windows are in workarea.
- (fdo #7115) (bnc #181907)
+ Return 1 on the program if the test fails
- * src/event.c (handleEvent): Track XA_WM_CLASS property changes.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
- * src/window.c:
- * include/compiz.h: remove updateWindowClass and update
- updateWindowClassHints.
+ Add more tests for timers
-2006-06-02 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
- * configure.ac: Bump version to 0.0.12.
+ Add unit tests for timers
- * src/event.c (handleEvent): Fix typo.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
- * gnome/window-decorator/gnome-window-decorator.c:
- Hide tooltips on NotifyGrab. (bnc #180692)
+ Break the dependency between CompTimeoutSource and CompTimer
-2006-06-01 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
- * src/event.c (handleEvent): If we receive a _NET_SHOWING_DESKTOP
- request with no window set, set the flag on all screens. (Fixes
- the KDE "show desktop" applet.) Also, don't allow a client to
- change its _NET_WM_DESKTOP.
+ Use a private implementation for CompTimer
- * src/window.c (addWindow): Set _NET_WM_DESKTOP on all windows to
- 0; KDE's pager and tasklist require this to be set. (bnc 178320)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-05
-2006-06-01 David Reveman <davidr@novell.com>
+ Further break the dependency of timers on screen
- * include/compiz.h:
- * src/window.c: Add updateWindowClass.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-04
-2006-05-31 David Reveman <davidr@novell.com>
+ Break CompTimer's dependency on CompScreen
- * include/compiz.h:
- * src/screen.c:
- * src/display.c: Add hide_skip_taskbar_windows option. (bnc 180055)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-04
- * include/compiz.h:
- * src/window.c: Add getStartupId.
+ Avoid useless calls to ::stop (). Also put ::get_time after ::attach
+ because the source must always be attached before the monotonic
+ time can be retreived
- * src/screen.c: Save initial viewport when startup notification
- is received. Fix implementation of applyStartupProperties.
- (bnc 180224)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-07-04
- * src/event.c (handleEvent): Handle startup ID property changes.
+ Don't use clock_getttime () directly, as there are some cases where
+ that clock can run backwards and cause our timers to mess up. GLib
+ handles this case for us, use Glib::Source::get_time in that case
- * plugins/place.c: Adjust work area to initial viewport.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-29
- * plugins/cube.c (cubePaintTransformedScreen): Disable skydome
- animation while cube is unfolded. (bnc 179833)
+ Added a distcheck target
- * plugins/switcher.c (switchPaintWindow): Make sure selected window is
- not clipped incorrectly when some window is transformed. (bnc 179828)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-29
- * plugins/move.c (moveHandleEvent): Initialize xRoot and yRoot.
- (bnc 179902)
+ Add a more comprehensive dist target which detects running in
+ bzr, git, git with submodules and in no vcs and makes a tarball
+ no matter what and the right way
- * src/Makefile.am (INCLUDES): Add @GL_CFLAGS@. (Eric Work)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-27
-2006-05-30 Dan Winship <danw@novell.com>
+ Convert to bell option
- * configure.ac: Check libwnck for wnck_window_has_name (new in
- HEAD).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-25
- * gnome/window-decorator/gnome-window-decorator.c
- (wnck_window_get_real_name): #if HAVE_WNCK_WINDOW_HAS_NAME,
- redefine wnck_window_get_name to return NULL if the window only
- has a fallback name. bnc 173059.
+ Added PluginClassHandler test
- * src/event.c (handleEvent): call moveInputFocusToOtherWindow()
- before destroyWindow() when processing a DestroyNotify, or else
- the input focus can get stranded.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-25
-2006-05-26 David Reveman <davidr@novell.com>
+ Abstract out CompPrivate storage from CompScreen so we can make it testable
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-24
- * plugins/scale.c (SCALE_SLOPPY_FOCUS_DEFAULT): TRUE.
+ Use priv->border instead of priv->input as the EWMH says that applications
+ which request to move their windows (through a normal ConfigureRequest)
+ should take into account the decoration extents and not the border extents.
+
+ Fixes LP#722830
- * plugins/decoration.c (decorWindowUpdate): No drop-shadow decoration
- on windows with below state.
+Merge: d0f83cc 4d0f3bb
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-23
- * src/window.c (recalcWindowType): Treat dock windows with below state
- as normal windows. (bnc #178316)
+ Merge in fix for LP#800592
- * plugins/cube.c (cubePaintTransformedScreen): Avoid optimized case
- when more than 4 cube sides.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-23
-2006-05-25 David Reveman <davidr@novell.com>
+ Fix double call to ::updateAttributes where raise on click is enabled and
+ grabbing a window to move it would also raise the window
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-23
- * src/window.c (moveResizeWindow): Don't adjust position for NorthWest
- gravity. (bnc 178765) (fdo #6992)
+ Fix warnings
- * plugins/compiz.schemas.in.in:
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/display.c: Add maximize_window_horizontally,
- maximize_window_vertically, toggle_window_maximized,
- toggle_window_maximized_horizontally,
- toggle_window_maximized_vertically.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-23
- * src/event.c (handleEvent): Track changes to maximizeWindow function.
+ Fix typo which caused docks to be stacked relative to override redirect windows
+ and unmapped windows or other docks when shuffling stacking to be below
+ fullscreen windows that are active
- * plugins/move.c (moveHandleMotionEvent): Make sure we have a saved
- width before we use it. Track changes to maximizeWindow function.
+Merge: 291627c 40849c0
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-18
- * plugins/wobbly.c (wobblyHandleEvent): Handle the case where
- window is not both vertically and horizontally maximized better.
+ Merge in fix for bad merge
- * include/compiz.h: Add MAXIMIZE_STATE macro.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-18
- * include/compiz.h:
- * src/window.c: Remove unmaximizeWindow and make maximizeWindow
- take a state mask so it can be used for both maximizing and
- unmaximizing.
+ Fix typo which caused decorations to be updated recursively because
+ CompWindow::resize () would always send fake resize notify events to
+ core which would then cause CompWindow::resize () to be called again
+ with no geometry change etc etc
- * plugins/switcher.c: Don't add windows that appear after the switcher
- is popped up. (bnc 178350)
- (switchWindowRemove): Don't create a new list. Instead remove
- window from the existing list and make sure we're positioned
- correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-17
-2006-05-24 David Reveman <davidr@novell.com>
+ Refactor the code somewhat
- * plugins/scale.c (scaleMoveFocusWindow): When moving to window on
- left, make sure the window we're moving to is completely left of
- currently selected window. And same thing when moving to window on
- right, top, bottom.
- (layoutThumbs): Set slot->x2 and slot->y2 correctly. (bnc 178216)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-17
-2006-05-23 David Reveman <davidr@novell.com>
+ Make ::get () return a new class instance and initialize the index
+ if it hasn't been done already for this particular kind of class.
+
+ Fixes LP#706918
- * plugins/water.c: GL_UNSIGNED_INT_8_8_8_8_REV as pixel data type on
- MSBFirst machines.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-16
- * src/texture.c: Include config.h before compiz.h so that
- IMAGE_BYTE_ORDER is defined correctly. (bnc 178171)
+ Fix typo which caused decorations to be updated recursively because
+ CompWindow::resize () would always send fake resize notify events to
+ core which would then cause CompWindow::resize () to be called again
+ with no geometry change etc etc
- * include/compiz.h: Define LSBFirst, MSBFirst, IMAGE_BYTE_ORDER,
- BITMAP_BIT_ORDER. (bnc 178171)
+Merge: 6fc939d 9dfc108
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
-2006-05-23 Dan Winship <danw@novell.com>
+ Fixes LP#795065
+
+ ------------- This line and the following will be ignored --------------
+
+ modified:
+ src/window.cpp
+ unknown:
+ build/
+ po/compiz.pot
+ pending merges:
+ Sam Spilsbury 2011-05-25 Fix events going to frame windows when they sho...
- * plugins/switcher.c (switchToWindow): use ss->windows here as
- well so that multiple activeNum==0 windows don't get skipped.
- (switchTerminate): Remove the screen grab right away so that
- keystrokes don't get dropped. bnc 177650
- (switchPreparePaintScreen, switchPaintScreen,
- switchDonePaintScreen): update for that
+Merge: 9e6c11d a282aba
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
-2006-05-22 Dan Winship <danw@novell.com>
+ Fixes LP#761616
+
+ ------------ This line and the following will be ignored --------------
+
+ modified:
+ src/screen.cpp
+ src/window.cpp
+ unknown:
+ build/
+ po/compiz.pot
+ pending merges:
+ Sam Spilsbury 2011-05-25 Restore selected event masks already rather tha...
- * src/window.c (moveResizeWindow): deal with both vertical and
- horizontal struts; but not when moving a dock window
+Merge: 79fe2cd 08828ed
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
- * plugins/switcher.c (switchHandleEvent): Check init_all binding
- before init, so you can bind "<Alt>" to init_all and so end up
- with "<Alt>Tab" being init_all rather than init (but with no way
- to get "init"...). bnc 173376
+ Merge in lp:~unity-team/compiz-core/compiz-core.one_property_decor
-2006-05-21 David Reveman <davidr@novell.com>
+Merge: 901d4a1 c6291da
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
- * src/display.c (addDisplay): Select for button events on root windows.
+ Merge in ~unity-team/compiz-core/compiz-core.bits_and_pieces_2011_05_21
- * configure.ac: Bump version to 0.0.11.
+Merge: 2e57966 0545c16
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
- * gnome/window-decorator/gnome-window-decorator.c: Fix shadow
- performance by separating the convolution filter into one vertical and
- one horizontal pass.
+ Merge in dock stacking fix
- * src/window.c (mapWindow): Give sync request on map another try, it
- seems to be working now.
+Merge: 67e833c 32affe0
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
- * src/window.c (addWindow): Allow XGetWindowAttributes to fail.
- (bnc 173416).
+ Merge in emacs fix
- * src/window.c (addWindow): Initialize managed to false. Set managed
- to true if widows is viewable.
+Merge: c6f456e a02b427
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
- * src/event.c (handleEvent): Set managed to false when window
- transitions to withdrawn state.
- (handleEvent): Set managed to true when we get MapRequest.
- (handleEvent): Constrain configure request if window is managed.
+ Merge in Scott's change from upstream
- * include/compiz.h: Add "managed" variable that is true while
- windows is managed.
+Merge: f3a1776 f3a1776
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-09
-2006-05-19 David Reveman <davidr@novell.com>
+ Merge in relevant branches
- * plugins/switcher.c (ICON_SIZE): Allow use of larger window icons.
+Scott Moreau <oreaus@gmail.com> 2011-05-27
-2006-05-18 Dan Winship <danw@novell.com>
+ Redetect devices unconditionally when handling ConfigureNotify event. This fixes the case where an output was moved but outputChangeNotify is not called.
- * plugins/wobbly.c (WOBBLY_FOCUS_DEFAULT): Set this to "None" to
- match wobblyInitScreen() so that it actually works right.
+Merge: 2550d7e e6afcfd
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-01
- * plugins/compiz.schemas.in.in: regen
+ Merge in bell fix
-2006-05-18 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-06-01
- * src/session.c (saveYourselfCallback): if we have a
- RestartCommand registered with the session manager, update the
- --sm-client-id in it to match the id we were assigned. bnc 176746
+ Fix typo in initBellValue which stopped bell actions from working
- * src/main.c (main, usage): remove unused --sm-save-file arg and
- fix documentation of --sm-client-id.
+Merge: 17a6530 b4d9e29
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
-2006-05-17 David Reveman <davidr@novell.com>
+ Merge in from lp:compiz-core
- * plugins/compiz.schemas.in.in: Regen (Overlay Icon).
+Merge: 763acbb 6e4da8c
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
- * plugins/switcher.c (switchPaintScreen): Don't remove switcher
- from window list, just temporarily mark it as destroyed. This fixes
- issue with switcher decorations disappearing when some window is
- unmapped.
+ Merge in frame fix for switcher decorations
- * src/screen.c (updateDefaultIcon): width and height should be
- unsigned.
+Merge: b4d9e29 a9ac70d
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
- * gnome/window-decorator/gnome-window-decorator.c: Add minimal
- option that can be used to run g-w-d with drop-shadows but without full
- window decorations.
+ Merge to fix broken copytex plugin
- * plugins/minimize.c (minHandleEvent): Restore window position
- when transitioning to withdrawn state.
+Merge: 698db76 dd8ec2a
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
- * plugins/scale.c: Remove next_window binding and fix so that arrow
- keys can be used to select window.
- Focus new window when pointer enter window decorations and sloppy focus
- is used.
- Remove scaleSelectWindow.
+ Fix some tray icons appearing at 1px, check the override redirect state
+ and window parent at unreparent and reparent time.
- * plugins/scale.c: Icon support (Nat Friedman).
+Merge: a39f7e3 a39f7e3
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
-2006-05-17 Dan Winship <danw@novell.com>
+ Merge
- * src/display.c (handleSelectionClear, eventLoop): don't process
- exit-on-selection-clear until the event queue is empty, or else
- MapRequest and ConfigureRequest events could get lost. bnc 175558
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-31
-2006-05-14 David Reveman <davidr@novell.com>
+ Fix crash with copytex. Use shared_ptr
- * src/event.c (handleEvent): mapNum might be 0 if we found the window
- unmapped when trying to bind it to a texture.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-30
-2006-05-12 David Reveman <davidr@novell.com>
+ Ensure the switcher window is unmapped after the switcher goes away
- * src/screen.c (enterShowDesktopMode): Only go into show desktop mode
- when some window is being hidden.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-30
- * src/event.c (handleWindowDamageRect): Make sure placed is set to true
- when no plugin is doing placement.
- (handleEvent): Don't set WM_STATE on override redirect windows.
+ Fix windows appearing at small sizes
- * plugins/switcher.c (isSwitchWin): Don't show windows that ask not to
- be in tasklists.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-28
- * plugins/rotate.c (rotateHandleEvent): Only adjust viewport if window
- has been placed.
+ Fix typo in comment
- * plugins/minimize.c (minHandleEvent): Reset everything when going
- into withdrawn state.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-28
- * src/window.c (moveResizeWindow): Handle west and north gravity
- correctly.
+ Typo
-2006-05-11 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-28
- * src/display.c (addDisplay):
- * src/screen.c (addScreen): Move server grab to addDisplay to make
- sure that no windows are created between XSelectInput and XQueryTree
- as that would result in them being added two times.
+ Read the current override redirect state as the client may have
+ changed it while CreateNotify is being processed and thus
+ we could be reparenting and override redirect window.
+
+ Also ensure that when unreparenting windows that their
+ parent is still the wrapper window, otherwise
+ don't bother to reparent them back into the root
+ window, this will only cause trouble.
+
+ Fixes LP#767095
- * src/window.c (moveResizeWindow): Fix typo, CWY should be CWX.
- (moveResizeWindow): Constrain Y position so that window titlebar is
- visible.
- (restoreWindowGeometry): Fix issue with going from maximized state
- to non-maximized state without changing the window size.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-26
- * gnome/window-decorator/gnome-window-decorator.c
- (max_window_name_width): Make sure title text fit in titlebar.
+ XSync right after configureXWindow in cases where we
+ need to immediately reorder the window stack.
+
+ This isn't a real fix, but at least fixes the following situation without
+ breaking the API and ABI
+
+ Windows stacked A, B, C
+
+ Plugin does: C->raise (), B->raise (), A->raise ()
+ Window list should read at this point: ... C, B, A ... (screen->windows ())
+ However, the output buffer hasn't been flushed at this point
+ so server side we will have A, B, C.
+
+ Now if a sneaky client tries to restack A above C, we will get the
+ ConfigureRequest for that, and instead of getting B, C, A like the client
+ expects, we'll actually get C, B, A.
+
+ The real solution is to have a list of windows last sent to the server
+ and a list of windows last recieved by it. That way plugins can
+ mess with the internal stack all they want, but when recieving
+ events for X as to the actual state of things, they can restack relative
+ to the server list.
-2006-05-11 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-25
- * plugins/gconf-compiz-utils.c (gconfStringToBinding): Treat "" as
- meaning "disabled"
+ Fix events going to frame windows when they shouldn't
+ since the client is already unmapped and there is no
+ reason a huge frame window should block input when
+ the client is animating out anyways
-2006-05-11 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-25
- * gnome/window-decorator/gnome-window-decorator.c (action_menu_map):
- Don't show window action menu on desktop and dock windows.
+ Restore selected event masks already rather than using hardcoded ones
+
+ Fixes LP #761616 where edge buttons wouldn't work because we'd select
+ for button events and then they wouldn't get restored at all
- * src/event.c (handleEvent): Allow click on window decorations
- to trigger window action menu.
+Merge: 342ad2f 3ea8ae7
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-20
- * plugins/place.c (placeWindow): Place fullscreen and maximized
- windows correctly.
- (placeWindow): Only clip dialog position to screen if parent is
- visible in current viewport.
+ Merge git://git.compiz.org/compiz/core
-2006-05-09 David Reveman <davidr@novell.com>
+Scott Moreau <oreaus@gmail.com> 2011-05-17
- * plugins/switcher.c (switchPaintThumb): Rearrange code so we handle
- the case when bindWindow fails.
+ Use CMAKE_PREFIX_PATH when searching for libraries.
- * src/paint.c (paintWindow): Bail out if window is not mapped.
+Scott Moreau <oreaus@gmail.com> 2011-05-13
- * src/window.c (bindWindow): Make sure window is mapped when
- getting the window pixmap. (bnc 173248)
+ * Bump version to 0.9.5
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
- * plugins/cube.c (CUBE_MIPMAP_DEFAULT): Enable by default as
- performance seem to be OK now when new mipmaps are only generated
- when necessary.
+ Add hack to allow the KDE4 Window decorator to work correctly with the new
+ decoration interface, until KDE4 Window decorator is re-written to allow
+ for decoration lists.
+
+ Note that this gives public access to KWD::Decorator, which is a bad thing.
+
+ The way this works is to create two separate frames for inactive and active
+ decoration, and when one property is written to update the other.
- * src/texture.c (enableTexture): Don't generate new mipmaps
- every time the texture is used.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
-2006-05-08 David Reveman <davidr@novell.com>
+ Remove setting of "_COMPIZ_WINDOW_DECOR_NORMAL" put decorations with
+ state == ~DECOR_WINDOW_FOCUS in the default decorations list instead
- * plugins/switcher.c: Allow switcher to be initiated with prev
- bindings. (Quinn Storm)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
-2006-05-07 David Reveman <davidr@novell.com>
+ Remove DECOR_NORMAL, just read all default decorations from a property
+ and match the state
- * plugins/compiz.schemas.in.in: Regen.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
- * plugins/switcher.c: Add icon support, minimized windows support
- and allow switcher to show up when only one selectable window exist.
+ Remove DECOR_NORMAL_ATOM_NAME, the API is now to put all default decorations
+ in a list in one property
- * images/Makefile.am: Add default icon image.
+Scott Moreau <oreaus@gmail.com> 2011-05-06
- * include/compiz.h:
- * src/texture.c:
- * src/event.c (handleEvent):
- * src/screen.c:
- * src/display.c:
- * src/window.c: Add WM icon interface.
+ Respect CMAKE_PREFIX_PATH and CMAKE_INCLUDE_PATH when searching for headers.
- * gnome/window-decorator/gnome-window-decorator.c: Compute
- switcher title text width correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
- * src/event.c (handleEvent): Insert windows correctly when
- reparenting.
+ Place relative to frame size
-2006-05-07 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
- * configure.ac: Add --with-scale-corner option and make
- compiz.schemas reflect it; the best corner to use depends on where
- the panels are and what's on them, so distros will want to
- override this to match their default panel layout.
+ Fix variable mismatch
- * src/event.c (eventMatches): Fix the the "water plugin gets
- mysteriously activated when activating some other keybinding" bug.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-08
-2006-05-05 Dan Winship <danw@novell.com>
+ Use bitwise or, not and.
- * Makefile.am:
- * autogen.sh:
- * configure.ac: require intltool for option-description
- translation
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * plugins/Makefile.am: translate compiz.schemas.in into
- compiz.schemas
+ Clean up type detection code, move into its own function
-2006-05-05 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * src/display.c (COMMAND_OPTION): Put numbers into the shortDescs
- of the command and run_command options
+ Check the actual decor properties on the window and not the default ones
- * plugins/wobbly.c (WOBBLY_SNAP_MODIFIERS_DEFAULT): Use Shift
- rather than Control, for consistency with Metacity, and to remove
- the ambiguity about whether Ctrl+Alt+Button1 should be "grab cube"
- or "move with snapping". (bnc 169402)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * plugins/compiz.schemas: regen
+ Support -std=c++0x
-2006-05-05 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * plugins/compiz.schemas: Regen.
+ Support new decoration API
- * gnome/window-decorator/gnome-window-decorator.c: Forward
- metacity's bell settings to compiz.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * plugins/water.c:
- * plugins/wobbly.c:
- * plugins/fade.c: Add visual bell.
+ Support different frame types, states and actions in frame properties
- * include/compiz.h:
- * src/display.c: Add audible bell option.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
-2006-05-04 David Reveman <davidr@novell.com>
+ Support multiple frames and frames of different types, states, etc
+ in the decor plugin
- * src/window.c (getModalTransient): Avoid infinite recursion when more
- than one group transient got modal state.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
-2006-05-03 David Reveman <davidr@novell.com>
+ Bump decoration API
- * plugins/move.c:
- * plugins/resize.c (resizeHandleMotionEvent): Don't constrain the
- cursor.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-07
- * plugins/rotate.c (rotateHandleEvent): Use defaultViewportForWindow
- to figure out which viewport we should move to. (bnc 152677)
+ Update API to allow multiple frames in one property (frame caching,
+ multiple default frame styles) and also to allow decorators to specify
+ in the frame property which window types, states and actions the frames
+ should apply to
- * src/window.c (addWindowSizeChanges): Offset x coordinate with
- default viewport coordinate. (bnc 171465)
- (updateWindowAttributes): Always add windows size changes. (bnc 171465)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-04
- * include/compiz.h:
- * src/window.c (defaultViewportForWindow): Add defaultViewportForWindow
- function that computes the default viewport for a window.
+ Add modal dialog type and also fix typo
-2006-05-02 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-04
- * plugins/cube.c (cubePaintTransformedScreen): Bump up size a bit more
- to make sure the cube unfolds completely.
+ Fix warning
- * src/event.c (handleEvent): Not constraints should be applied to
- ConfigureRequests for withdrawn windows. (bnc 171143)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-04
- * src/window.c (syncWindowPosition): We never need to send synthetic
- ConfigureNotify events as we're not reparenting windows.
+ Restack docks primarily when the focus changes to support cases where we
+ change viewports and dock windows need to be restacked even though the
+ window that we switched to wasn't restacked. Also support always-on-top
+ and fullscreen windows.
-2006-05-02 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-03
- * plugins/gconf-dump.c: rewrite to make compiz.schema regeneration
- a little easier, and to make it possible to generate schema files
- for third-party plugins. Include plugin descriptions and
- dependency information in the schema.
+ Send a fake configure notify event when the window size doesn't change
+ on frame update since other plugins need to know when the client window
+ changed geometry.
- * plugins/Makefile.am: add a rule to generate compiz.schemas
+Scott Moreau <oreaus@gmail.com> 2011-04-30
- * plugins/compiz.schemas: regen
+ Add resize_from_center option.
- * plugins/cube.c, plugins/decoration.c, plugins/fade.c,
- plugins/gconf.c, plugins/minimize.c, plugins/wobbly.c:
- s/expose/scale/ in dependencies
+Scott Moreau <oreaus@gmail.com> 2011-04-30
-2006-05-02 David Reveman <davidr@novell.com>
+ Cleanup resize options.
- * include/compiz.h:
- * configure.ac: Don't require glproto, include necessary enums in
- compiz.h.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-05-01
- * src/texture.c:
- * include/compiz.h: Update to latest EXT_tfp spec. Requires an
- X server that has also been updated.
+ Fix stupid porting bug that allowed windows like emacs to resize themselves
+ off the edge of the screen
- * configure.ac: Require glproto >= 1.4.7 with final EXT_tfp tokens.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
-2006-05-01 David Reveman <davidr@novell.com>
+ Use premultiplied alpha in resize outline and border
- * src/window.c (circulateWindow):
- * src/event.c (handleEvent): Use getTopWindow instead of
- reverseWindows->id as reverseWindows might be a destroyed window.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * include/compiz.h:
- * src/screen.c: Add getTopWindow function that returns top window.
+ Check if ancestor to transient is allowed to have focus before granting focus
+ to it.
+
+ Some stupid apps like thunderbird unmap the transient parent before unmapping
+ the child, so compiz will get all confused and try to give focus to the
+ unmapped window
-2006-04-30 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * plugins/compiz.schemas: Regen.
+ Track windows on CreateNotify again, don't rely on trying to beat the race
+ condition by putting that on MapRequest, instead check at reparent time
+ if the window has already been reparented server-side and don't reparent it
+ again.
- * plugins/decoration.c (decorWindowUpdate): Don't decorate fullscreen
- windows.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * plugins/cube.c: Add initial support for unfolding the cube. Default
- key-binding is <Control><Alt>Down.
+ Don't crash if switch window can't be found
- * plugins/rotate.c (rotateHandleEvent): Fix absolute rotation.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * plugins/switcher.c: Fix so that bring-to-front doesn't change
- the actual stacking order.
- Add zoom option, enable it by default so it gets some testing.
- Made bring-to-front enabled by default as it makes zoom functionality
- more useful.
- Made switcher window always rendered above all other windows and
- not affected by screen transformations.
+ Set correct DISPLAY env when launching commands. Do not force :0
- * src/event.c (handleEvent): Send configure notify before mapping
- window if PPosition or USPosition is set.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * src/screen.c (insertWindowIntoScreen): Sibling above doesn't have to
- be mapped. This change seem to currently by causing the
- stacking order of some override-redirect windows to be incorrect.
- Don't insert window when aboveId doesn't match an existing window.
- (removeScreenGrab): ifdef DEBUG around abort.
+ Also take into account server border geometry when positioning
- * src/event.c (handleEvent): Only update active window property
- when it's changing.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * src/window.c (sendConfigureNotify): Make sure the latest
- window attributes are put in the ConfigureNotify.
- (moveResizeWindow): Only send sync request if window is mapped.
+ Always take into account border geometry when calculating actual window size
+ since we make an XGetGeometry call and take into account the border when
+ comparing sizes there. Fixes resize bugs with xterm
- * plugins/rotate.c: Add support for edge-flipping when using
- drag-and-drop. Remove edge_flip and flip_move options and add
- edge_flip_pointer, edge_flip_move, edge_flip_dnd.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * src/screen.c:
- * src/display.c:
- * include/compiz.h:
- Make screen edges drag-and-drop aware.
+ Release implicit grabs as soon as we handle events.
+
+ Implicit keyboard grabs which are created by the pressing and holding of a key
+ that was passively grabbed by XGrabKey are evil for a number of reasons.First
+ of all, there isn't any way to track them or to track which window they are
+ grabbed on so if a plugin makes an active grab and then releases it, the
+ passive grab is released on release, which means there is an inconsistency
+ between holding the key and having the grab. Secondly, if plugins actually
+ need a grab on all keys, they are better switching to an active grab
+ rather than relying on the passive one. Finally, if there is a passive grab by
+ another application by a key-modifier combo which has the same modifier mask
+ as the currently activated passive grab, then it means that this application
+ won't get its grab activated as long as the modifier is held down.
- * plugins/zoom.c:
- * plugins/water.c:
- * plugins/switcher.c:
- * plugins/scale.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/scren.c:
- * include/compiz.h:
- Variable argument list to otherScreenGrabExist, last argument must
- be 0.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * src/event.c:
- * src/display.c:
- * include/compiz.h: Add raise-on-click option.
+ Also check match options before defaulting to global option
- * gnome/window-decorator/gnome-window-decorator.c (title_event):
- Activate window when clicking titlebar.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
-2006-04-28 David Reveman <davidr@novell.com>
+ Don't ignore the match value when setting centered on xkbevent
- * gnome/window-decorator/gnome-window-decorator.c: Back out last change
- as it clearly didn't fix anything. XFixed being defined as "int"
- is perfectly fine of course. libXrender is currently broken on 64bit.
- See Bug #6774 for a fix.
- (XRenderSetPictureFilter_wrapper): Add workaround for 64bit
- issue in libXrender. (Dan Winship)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * src/event.c (handleEvent):
- * src/display.c:
- * include/compiz.h:
- Add show desktop binding. (Martin Szulecki)
+ Fix indentation
- * plugins/rotate.c: Reset timout handle correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-04-30
- * plugins/move.c:
- * plugins/resize.c:
- * plugins/rotate.c:
- * plugins/scale.c:
- * plugins/switcher.c:
- * plugins/water.c:
- * plugins/zoom.c: Track screen grab changes changes.
+ Always monitor key events even when window isn't grabbed
- * src/screen.c:
- * include/compiz.h: Associate all screen grabs with a name. Add
- otherScreenGrabExist function which can be used to check if screen
- is grabbed by other plugins.
-
-2006-04-28 Dan Winship <danw@novell.com>
-
- * src/event.c (eventMatches): new method that replaces EV_KEY and
- EV_BUTTON. Tests if an event matches a binding, being more precise
- about modifier state than EV_KEY and EV_BUTTON were.
- (eventTerminates): Tests if an event is "the opposite" of a
- binding. (Eg, button or modifier key release.) Replaces
- CompReleaseMask and "terminate" bindings.
- (handleEvent): Use eventMatches
-
- * src/screen.c (addPassiveKeyGrab, removePassiveKeyGrab,
- updatePassiveKeyGrabs): When passed a keybinding containing just
- modifiers, grab/ungrab every keypress event that would result in
- that modifier state (eg, both left and right modifier keys, and
- allow them to be pressed in any order).
-
- * src/display.c: Remove CompPressMask from default bindings.
- (eventLoop): don't add virtual modifiers to event state.
- (updateModifierMappings): store the XModifierKeymap for later
- use.
-
- * plugins/*.c: Use eventMatches and eventTerminates. Remove
- CompPressMask and "terminate" bindings (except from scale, which
- is different from the others).
-
- * plugins/switcher.c: Make initiate_all be just the modifier key
- used in addition to the initiate binding ("<Control>"). Remove
- next_window since it doesn't make a lot of sense to have it be
- different from initiate_all, and make prev_window be just a
- modifier key as well. ("<Shift>").
- (SwitchScreen): add extra options to store the fully-composed
- initiate_all, prev, and prev_all bindings.
- (switchScreenInitOptions, switchSetScreenOption): Generate and
- regenerate initiate_all, prev, and prev_all bindings as needed.
- (switchHandleEvent): update
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-23
- * plugins/gconf-compiz-utils.c: Remove "<Release>" handling.
-
- * plugins/compiz.schemas: regen, dropping the terminate bindings
- and updating a few others.
-
- * include/compiz.h: remove CompPressMask, CompReleaseMask,
- EV_BUTTON, and EV_KEY. Add eventMatches, eventTerminates, and
- keycodeToModifiers. Add modMap field to CompDisplay.
+ Bump core ABI
-2006-04-28 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-23
- * plugins/water.c: Handle enter/leave notify events.
+ Don't treat synthetic UnmapNotify the same as the real UnmapNotify
+
+ ICCCM section 4.1.4 says that applications need to send us a synthetic
+ UnmapNotify to tell us that the window has been withdrawn in all cases
+ to cover the case where a window is already unmapped and then withdrawn.
+
+ In this case we should handle the UnmapNotify as a request to withdraw
+ the window, but we should only handle the *real* UnmapNotify request
+ as a request to actually process the window being unmapped and withdraw
+ it there, rather than processing both twice and withdrawing the window
+ twice
- * plugins/decoration.c (decorInitWindow): Check for window specific
- decoration on both mapped and unmapped windows so that initially
- minimized windows get properly decorated. (Dan Winship)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-22
- * gnome/window-decorator/gnome-window-decorator.c: Use xfixed_16_16_t
- instead of XFixed to avoid 64bit issue with XFixed being defined as
- "int".
+ Revert "If an unexpected window gets focus (e.g. by a client calling XSetInputFocus directly), make sure that moving the input focus to a default window still works when that window is closed."
+
+ This reverts commit 1fb701594b78e950c031974d83c3566d1d648156.
+
+ There are some problems created by this commit, reverting for now until they
+ can be evauluated
+
+ Conflicts:
+
+src/event.cpp
- * configure.ac: xrender 0.8.4 is good enough.
+Scott Moreau <oreaus@gmail.com> 2011-03-18
-2006-04-27 Dan Winship <danw@novell.com>
+ Remove unused macro.
- * plugins/rotate.c (rotateHandleEvent): for the
- rotate-to-specific-face keys, rotate counterclockwise when that's
- faster. (bnc 169427)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-18
- * plugins/scale.c (scaleHandleEvent): Make the corners toggle
- scale mode rather than only activating it. (bnc 169408)
+ Set unmanaging before managed
-2006-04-27 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-18
- * configure.ac: Bump version to 0.0.10.
+ Only set w->unmanaging if the window was actually managed
+
+84a27e08e8e2f6c3a70ee7966624411e0e330db4 to master Forward port
- * plugins/decoration.c: Remove debug variable.
+Merge: 0b2ed28 08ba72d
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-18
- * src/window.c (addWindow): Check if window is minimized. (Dan Winship)
+ Merge https://github.com/robtaylor/compiz
- * plugins/compiz.schemas: Regen (snapoff and maximize_effect).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-18
- * plugins/wobbly.c: Add maximize effect.
+ Fix warning
- * plugins/zoom.c:
- * plugins/water.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/event.c:
- * src/screen.c:
- * src/display.c:
- * include/compiz.h: Add proper warp pointer interface and update
- all plugins to use it.
+Scott Moreau <oreaus@gmail.com> 2011-03-18
-2006-04-26 Dan Winship <danw@novell.com>
+ If the root window gets focus, unset activeWindow before calling focusDefaultWindow to make sure the latter really focusses another window.
+
+ Forward port 33f695e7c6e4fb8ac627df0978fea7771fe1b3d5 to master
- * src/event.c (handleEvent): activate window on Button2 click in
- addition to Button1 and Button3.
+Scott Moreau <oreaus@gmail.com> 2011-03-18
- * plugins/gconf.c (gconfSetOption): gconf_value_compare against
- the old value for list-type options too.
- (gconfInitOption): Change the call to gconf_client_get_entry to
- request the default value again; the fix to gconfSetOption will
- prevent the infinite loops that happened before.
+ If an unexpected window gets focus (e.g. by a client calling XSetInputFocus directly), make sure that moving the input focus to a default window still works when that window is closed.
+
+556b681adaab3fe27fa456037be82e902dd371be to master Forward port
-2006-04-26 David Reveman <davidr@novell.com>
+Scott Moreau <oreaus@gmail.com> 2011-03-18
- * gnome/window-decorator/gnome-window-decorator.c (update_shadow):
- Remove comment that is no longer valid.
+ Don't grant focus to override_redirect windows. Most other window managers don't even track override_redirect windows, so applications relying on the focus being granted to override_redirect windows are broken anyway.
+
+ Forward port 30a92d8a060d79181a28840d7c66428ef431200c to master
- * plugins/move.c: Support for maximized windows snap-off. Based on
- patch by Colin Guthrie.
+Scott Moreau <oreaus@gmail.com> 2011-03-18
- * plugins/rotate.c (rotateHandleEvent): Don't do edge flipping
- when a horizontally maximized or fullscreen window is grabbed.
+ Don't let focus stay on the root window. It may happen that the root window is focussed, e.g. by some client calling XSetInputFocus with the root window as target. As that most likely isn't what the user wants, focus the default window instead.
+
+ Forward port a9a35b6034517404b0c3ed4296f0c33d7d8d1d11 to master
- * plugins/zoom.c:
- * plugins/rotate.c:
- * plugins/resize.c:
- * plugins/move.c:
- * src/screen.c:
- * include/compiz.h: Add warpPointerToScreenPos and use it everywhere
- we want to invisibly warp the pointer.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-18
-2006-04-25 David Reveman <davidr@novell.com>
+ Make sure that window has the correct parent on unmanagement.
+
+ Reparenting the window will cause an UnmapNotify to be sent whcih will cause
+ us to unreparent the window and reparent it into the root window. In the case
+ where the application wanted to reparent a toplevel window we need to make
+ sure that we put the window back in the parent where the client actually requested it to go when we get the ReparentNotify
- * gnome/window-decorator/gnome-window-decorator.c:
- * plugins/decoration.c: Add clamp and min size.
+Rob Taylor <rob.taylor@codethink.co.uk> 2011-03-16
- * plugins/decoration.c (decorReleaseDecoration): Fix memory leak.
+ If there's a sesion manager, ask it to always restart compiz.
- * plugins/scale.c: Click on background leaves scale mode and enters
- show desktop mode. (Dan Winship)
+Rob Taylor <rob.taylor@codethink.co.uk> 2011-03-16
- * plugins/minimize.c (minHandleEvent): Initialize scale and
- translate properly.
+ CompOption::Class had virtual functions without a virtual destructor. That's usually bad.
- * src/window.c (activateWindow):
- * src/event.c (handleEvent):
- * src/screen.c: Add window parameter to leaveShowDesktopMode and
- use this function for making one window leave show desktop mode.
- Fixes so that we're leaving show desktop mode when no windows
- are longer hidden.
+Rob Taylor <rob.taylor@codethink.co.uk> 2011-03-16
- * plugins/scale.c (scaleSetScreenOption): Add missing break statement.
+ Region type in x is typedef struct _XRegion *Region. That means returning a const Regsion makes no sense - that's setting the returned pointer to const.
- * plugins/rotate.c (rotateInitScreen): Initialize rotateHandle.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-16
- * src/paint.c (paintScreen): Only paint windows that have been
- damaged.
+ Also remove windows from createdWindows list if they were reparented into
+ something else
-2006-04-24 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-15
- * plugins/scale.c:
- * plugins/switcher.c: clarify the "initiate" descriptions
+ Reflect difference between actual input frame geometry and border extents
+ in the core API
- * plugins/compiz.schemas: regen
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-13
-2006-04-24 David Reveman <davidr@novell.com>
+ Process changes to edge windows when skipping events on pointer warp
+
+ There's a condition that can happen where we skip the events generated by
+ XWarpPointer and this causes the edge window reference to stay on the same
+ window, which is a problem when using edges since certain button bindings
+ would stop working. The new behaviour is to always update the edge window
+ reference whenever processing enter and leave events caused by pointer
+ warps
- * src/paint.c (paintScreen): Always call paintWindow when window
- is visible. Fixes so that window animations (fade, minimize...) aren't
- paused when if window becomes invisible.
- (paintWindow): Return early if region is empty.
+Merge: f777234 011a611
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-12
- * plugins/switcher.c: Use hideWindow and showWindow so that the
- decoration doesn't have to be redrawn every time the switcher window
- is mapped.
+ Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/core
- * src/window.c:
- * include/compiz.h: Add hidden flag, that can be used to hide windows
- without minimizing them.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-12
- * plugins/compiz.schemas: Regen (drop-shadow options).
+ Add support for a "focus on switch" option which toggles whether or not
+ the window should appear focused when switching between windows
- * configure.ac: xrender 0.9, required for g-w-d.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-12
- * gnome/window-decorator/gnome-window-decorator.c:
- * plugins/decoration.c: Add configurable drop-shadows. A minor issue is
- that shadows around "tiny" windows are not rendered correctly when
- large shadow offsets are used. Solution is to have the decorator set
- a minimum size for which a decoration can be used so that no shadows
- are rendered around "tiny" windows.
+ Don't trash the pixmaps of windows that were hidden but don't have mapNum == 0 since that case only
+ happens where windows are actually closed or unmanaged
-2006-04-20 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-12
- * plugins/rotate.c: add 12 go-directly-to-cube-face and 12
- go-directly-to-cube-face-with-window bindings.
+ Don't need to modify priv->width, priv->height since those are representative of the server side
+ window and not the pixmap size
- * src/display.c (compDisplayInitOptions): fix the binding type on
- WINDOW_MENU.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-11
- * plugins/compiz.schemas: Regen. (lower_window, window_menu,
- scale_image, images, resize, flip_move, move_window_types, and the
- new rotate bindings)
+ Don't unreparent the window until plugins are finished with animations
+ and such (eg, not while an unmap reference is held) and don't dump
+ the pixmap of the window if it is resized and unreparented and the plugins
+ hold a reference to it
-2006-04-20 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-11
- * src/window.c:
- * src/event.c (handleEvent):
- * src/display.c:
- * include/compiz.h:
- * gnome/window-decorator/gnome-window-decorator.c: Add force quit
- dialog.
+ Don't throw out the textures of windows that got resized or re/unreparented
+ while plugins hold an unmap reference to them as it is pretty likely that
+ those plugins need that data for animations
- * plugins/resize.c: Changed default binding to Button2.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-11
- * src/display.c (LOWER_WINDOW_BUTTON_DEFAULT): Button2 -> 6.
+ Don't update windows in some cases where there is an unmap reference since
+ it is likely that plugins are using them for animations. However, do allow
+ decorations to be changed where the dm asks us to.
+
+ Also set frame extents to 0 explicitly when the window is unreparented
- * gnome/window-decorator/gnome-window-decorator.c:
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/display.c: Add window menu binding.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-11
- * gnome/window-decorator/gnome-window-decorator.c: Pick up toolkit
- actions from compiz and send gnome panel actions for "main menu" and
- "run dialog" actions.
+ Revert "Don't refuse to update frame extents for windows that have an unmap reference"
+
+ This reverts commit 86358da783bc7152c8fbe8a39d883ac922de5958.
- * src/event.c (handleEvent):
- * src/screen.c:
- * include/compiz.h:
- * src/display.c (addDisplay): panel action -> toolkit action.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-11
- * src/window.c (getModalTransient): Group transient must not be an
- ancestor to the window we've currently found as the window to focus.
- (getModalTransient): Check for child modal transient.
+ Don't refuse to update frame extents for windows that have an unmap reference
+
+ The previous rationale for not updating these extents is that doing so will
+ cause a resizeNotify on windows that are currently being unmapped or
+ that plugins have delayed from being unmapped and this will cause core
+ to throw out the texture of those windows. A better solution here
+ would be to not throw out the decoration pixmap and texture for windows
+ that are currently being unmapped (and also not throwing out the pixmap
+ in the composite plugin), since it would be likely that plugins are
+ using them for animations
-2006-04-19 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-07
- * gnome/compiz-window-manager.c: Be nice to gnome-theme-manager
- and return a theme even though we currently don't support it.
+ "Update CMake Version"
- * include/compiz.h:
- * src/main.c: Remove window-image option.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-03-07
- * include/compiz.h:
- * plugins/water.c:
- * plugins/cube.c:
- * src/texture.c:
- * src/paint.c:
- * src/main.c: Add strict-binding option.
+ "Update news for 0.9.4 release"
-2006-04-18 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-28
- * src/event.c (handleEvent): Fix a crasher in the screenshot
- binding code (and rename some of the #defines to make them not so
- ridiculously long). Also temporarily hack around a bug in EV_KEY
- by putting the check for WINDOW_SCREENSHOT before the check for
- SCREENSHOT.
+ Fix gtk-w-d crashing when removing decoration.
+
+ Also try to detect when windows are modal and give them modal type
+ decorations and move freedesktop.png to cube where it will actually
+ be used
- * plugins/scale.c: Change the keybinding again, now to "Pause".
- (F11 is the "fullscreen mode" binding for many apps.)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-28
- * plugins/compiz.schemas: update
+ Fix the loading and installation of images - core images should
+ be under the core plugin, freedesktop.png moved to cube
+ and load images based on the actual install dirs
- * plugins/gconf.c:
- * plugins/gconf-compiz-utils.c:
- * plugins/gconf-dump.c: Rearrange #includes to prevent warning
- about TRUE and FALSE being redefined
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-27
-2006-04-18 David Reveman <davidr@novell.com>
+ Don't pass uninitialized value to plugins needing to update output extents
+
+ Plugins need to check against this value in order to see if they should
+ change the extents of the decoration area on windows, don't send them
+ uninitialized garbage when doing that.
- * plugins/rotate.c (ROTATE_FLIPMOVE_DEFAULT): Changed to TRUE.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-24
- * src/window.c (recalcWindowActions): Remove maximize and fullscreen
- actions when resizing isn't allowed.
+ Fix broken build
- * gnome/window-decorator/gnome-window-decorator.c: Dynamic positioning
- of window buttons.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-24
- * plugins/cube.c (readSvgToTexture): Fix typo.
+ Specify plugin name when loading images to find the correct
+ image loading dir for plugins which don't specify absolute
+ paths to their images
- * plugins/resize.c: Constrain cursor movement to min/max window size.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-24
- * src/window.c (constrainNewWindowSize): Fix aspect ratio calculations.
+ Fix mismatched brace
-2006-04-17 David Reveman <davidr@novell.com>
+Merge: 1c9eb6d 9849ca3
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-24
- * plugins/cube.c: Put PNG on top face by default.
+ Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/core
- * images/Makefile.am: Remove window.png.
- Add novell.png.
+Sam Spilsbury <smspillaz@gmail.com> 2011-02-24
- * include/compiz.h:
- * src/readpng.c: Add openImageFile.
+ Remove debugging message
- * plugins/cube.c: Support for PNGs on top face.
- Add scale image option which is used to determine if top face
- image should be scaled or not.
+Sam Spilsbury <smspillaz@gmail.com> 2011-02-24
-2006-04-15 David Reveman <davidr@novell.com>
+ Don't override the user's PKG_CONFIG_PATH with the CMAKE_INSTALL_PATH
+ unless the user explicitly changed the CMAKE_INSTALL_PATH.
+
+ Rationale: If the user has their PKG_CONFIG_PATH set to /foo/bar
+ they would expect that when doing things like, eg installing plugins
+ locally (which ignores CMAKE_INSTALL_PREFIX), that the buildsystem
+ would pick up pkg-config files from their PKG_CONFIG_PATH which they
+ have specified themselves and not the default CMAKE_INSTALL_PREFIX,
+ however when the user changes the CMAKE_INSTALL_PREFIX they need
+ to have that be used for pkg-config purposes.
- * plugins/wobbly.c: Add modal dialog type to default list of windows
- that should be wobbly when moved.
+Sam Spilsbury <smspillaz@gmail.com> 2011-02-24
- * plugins/water.c (SET): +1 for border.
+ Track focus changes for destroyed windows too since we'll change the focus later anyways
-2006-04-14 Dan Winship <danw@novell.com>
+Sam Spilsbury <smspillaz@gmail.com> 2011-02-24
- * plugins/gconf-dump.c: add "water" to gconfDeps
+ Nuke warning
- * plugins/compiz.schemas: regen including the water options
+Sam Spilsbury <smspillaz@gmail.com> 2011-02-24
-2006-04-14 David Reveman <davidr@novell.com>
+ Preprocessor abuse to handle the Gtk+ 2.24 transition
- * src/event.c (handleWindowDamageRect): Ignore damage from windows
- that aren't redirected.
+Merge: a30a8ee 54d17f0
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-23
- * include/compiz.h:
- * src/window.c:
- * src/display.c (eventLoop):
- * src/screen.c: Add support for automatic unredirecting of fullscreen
- windows.
+ Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/core
- * plugins/scale.c (scaleInitiate): Layout thumbnails before we
- grab the screen to make sure some window exist.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-23
- * plugins/resize.c: Allow 4-way resize. (Mike Hearn)
+ Check if we're resizing from a grab handle first (eg isConstrained)
+ before using constraint area. Fixes crash when using alt + button2
+ to resize and hitting an edge
-2006-04-13 Dan Winship <danw@novell.com>
+Travis Watkins <amaranth@ubuntu.com> 2011-02-22
- * src/screen.c (panelAction): take a timestamp and pass that to
- the panel rather than using CurrentTime
+ stop using deprecated gdk functions
- * src/event.c (handleEvent): update for that
+Merge: e2ead0a 3eda41c
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-23
- * src/window.c (moveResizeWindow): fix the gravity handling so
- self-resizing windows don't dance (although I'm pretty sure this
- is a symptom of mishandling gravity somewhere else).
+ Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/core
- * plugins/gconf.c (gconfInitOption): Request the default value of
- the key from gconf, rather than initializing the key to the
- internal default value if it hasn't yet been set by the user.
- Notably, this makes it so that "compiz gconf" on a new account
- will use the default value of active_plugins rather than the
- (effectively empty) list of plugins on the command line. (It also
- makes it so that the sysadmin can override defaults via sabayon or
- whatever.)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-23
-2006-04-13 David Reveman <davidr@novell.com>
+ Fix crash on exit
- * src/window.c (mapWindow): Maybe not, disable it again. :(
+Scott Moreau <oreaus@gmail.com> 2011-02-22
- * src/window.c (mapWindow): Enable draw synchronization on map
- again. Should be working correctly with CVS version of X server.
+ Use glib CLAMP macro.
-2006-04-12 Dan Winship <danw@novell.com>
+Scott Moreau <oreaus@gmail.com> 2011-02-22
- * src/window.c (moveResizeWindow): move duplicated code from
- _NET_MOVERESIZE_WINDOW and ConfigureRequest handlers in event.c to
- here, and handle gravity as well. (Fixes bnc 163058.)
- (updateWindowAttributes): Do nothing if the window is
- override_redirect (and remove a few now-redundant checks of that
- elsewhere). Previously we were forgetting to check
- !override_redirect in the case where the motif hints changed. (bnc
- 163931)
- (getWindowUserTime): fix a cut-and-paste-o that caused a crash on
- 64bit machines.
+ Remove unnecessary definition.
- * src/event.c (handleEvent): fix the _NET_MOVERESIZE_WINDOW bit
- manipulation to correspond to what the EWMH means rather than what
- it says, and use moveResizeWindow for that and for
- ConfigureRequest.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-22
- * plugins/gconf-compiz-utils.c (gconfBindingToString): DTRT with
- "None" bindings.
+ Remove debug message
- * gnome/window-decorator/gnome-window-decorator.c (title_event):
- if the user right-clicks on the titlebar while the context menu is
- popped up, just pop it down and eat the click, like all other
- GNOME context menus do.
- (style_changed, value_changed): Don't add decorations to
- previously-undecorated windows. (bnc 165393)
+Scott Moreau <oreaus@gmail.com> 2011-02-22
-2006-04-11 David Reveman <davidr@novell.com>
+ Avoid using reserved definition.
- * src/screen.c (addScreen): Fix typo.
+Adam Williamson <awilliam@redhat.com> 2011-02-22
-2006-04-10 Dan Winship <danw@novell.com>
+ Generate GConf Schema files even if we don't want to install them
- * src/window.c (focusWindowOnMap): new function to decide whether
- or not to focus a newly-mapped window. In addition to the old
- checks, this also checks that _NET_WM_USER_TIME isn't 0, to allow
- a window to explicitly request to not get focus.
+Adam Williamson <awilliam@redhat.com> 2011-02-22
- * src/event.c (handleEvent): use focusWindowOnMap when processing
- MapRequest.
+ Import CFLAGS and CXXFLAGS env variables
- * plugins/rotate.c (rotateHandleEvent): fix _NET_ACTIVE_WINDOW
- handling so this doesn't interfere with focusable panel applets.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-22
- * plugins/compiz.schemas: regen (fixing cube top/bottom color)
+ s/Novell Inc./Canonical Ltd./ in eventsource.cpp copyright
- * plugins/gconf-dump.c: Handle CompOptionTypeColor.
+Merge: 7c0ba73 96eaecc
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-22
- * configure.ac: Add --enable-gconf-dump so that the gconf-dump
- plugin doesn't get built in normal builds
+ Merge branch 'master' of git://git.compiz.org/compiz/core
+
+ Conflicts:
+gtk/window-decorator/decorator.c
- * plugins/Makefile.am: make gconf-dump optional.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
-2006-04-09 Dan Winship <danw@novell.com>
+ Fix initial stacking issues
- * plugins/gconf-dump.c: add plugin options, and add information
- about restrictions (numeric ranges, specific string values) to the
- long description. Make gconf-dump refuse to run if gconf is
- running (since you want the defaults it writes out to be coming
- from the defaults in the source code, not from any gconf
- overrides).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * plugins/compiz.schemas: regen
+ Fix down-left shift and wrong offsets for default decorations.
+
+ Initialize settings before creating decoration frames
- * plugins/gconf.c (gconfGetOptionValue): don't call gconfSetOption
- from here, or we'll get an infinite loop when anything changes
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
-2006-04-09 David Reveman <davidr@novell.com>
+ Relicence eventsource.cpp to MIT
- * include/compiz.h:
- * src/display.c:
- * src/main.c:
- * src/screen.c:
- * src/texture.c:
- * src/window.c: Remove test mode.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * plugins/Makefile.am: Remove schema from CLEANFILES.
+ Fix memory leaks
+
+ - Use gtk_main_quit ();
+ - Don't create gconf clients where we don't need to
- * plugins/compiz.schemas:
- * src/display.c:
- Improve documentation for runcommand keys slightly. (Mike Hearn)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * include/compiz.h:
- * src/texture.c:
- * src/screen.c (addScreen): Switch to using GLX 1.3 functions.
- (James Jones)
+ Remove dead code
- * src/main.c: Indirect rendering option. (James Jones)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
-2006-04-08 David Reveman <davidr@novell.com>
+ Update copyright info
- * plugins/water.c: Add rain delay option. (Emilie Roberts)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
-2006-04-07 David Reveman <davidr@novell.com>
+ Fix title scales not updating on theme change
- * plugins/gconf-dump.c: Dump list options correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * plugins/rotate.c: Add flip_move option, edge flipping is only
- used when moving windows if this option is enabled.
- (rotateHandleEvent): Make we don't rotate when some other plugin
- has grabbed the screen.
+ Also store correct pointer type and unref on exit
- * plugins/scale.c: Change default key-binding to F11.
- (scaleInitiate): Make sure screen isn't grabbed by some other plugin.
- (scaleInitScreen): Initialize darkenBack properly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * configure.ac: Bump version to 0.0.9.
+ Prevent spurious frame creation and deletion
+
+ Bare, default and switcher decorations never change and they need to
+ come and go, so keep references to them
- * plugins/Makefile.am (CLEANFILES, EXTRA_DIST): Fix.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * plugins/rotate.c (ROTATE_SPEED_DEFAULT): 1.5.
+ Fix 2D Mode.
+
+ Don't refresh shadow info (and check windows in paint list) if
+ compositing is not active and set the border and max border properties
+ for the default window type decoration (Without these properties,
+ CompWindow::input () would return 0,0,0,0 and an output frame wouldn't
+ be created)
-2006-04-07 Dan Winship <danw@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- (Much of this patch was written by Radek Doulik
- <rodo@novell.com>.)
+ Initialize variable. Fixes valgrind warning
- * src/display.c:
- * src/event.c:
- * src/screen.c: Move keybinding stuff to CompDisplay, making it no
- longer settable per-screen. Add bindings for screenshots (for
- compatibility with metacity, which handles that keybinding in
- GNOME for historical reasons).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * include/compiz.h: add an explicit CompBindingTypeNone rather
- than relying on modifiers==0 to mean none. Update bindings stuff.
+ Check if string is empty correctly. Fixes checks for CMAKE_BUILD_TYPE
+ string being empty always returning true and thus the CMAKE_BUILD_TYPE
+ being set to something the user didn't want
- * src/screen.c (removePassiveKeyGrab, removePassiveButtonGrab):
- Fix these to remove the right grab rather than always removing the
- most-recently-added one.
- (addScreenBinding): deal with CompBindingTypeNone
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-21
- * plugins/gconf-dump.c: hacky plugin to dump information about the
- other plugins to a gconf schemas file (used to regenerate
- compiz.schemas)
+ Read w->input () rather than the internal input extents.
+
+ This provides information about the current state of the decoration
+ extents in core, rather than our own information about the window
+ decoration itself.
+
+ Reverts part of 4ae95852e53075caed15586620127f0c1405fe474
+
+ Fixes unresponsive decorations in kde4-window-decorator and decorations
+ initially "not responding" when you click on them (b.c.o #20)
- * plugins/gconf-compiz-utils.c: shared code between gconf.c and
- gconf-dump.c
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-20
- * plugins/Makefile.am: add gconf-dump plugin and compiz.schemas,
- and code to install compiz.schemas.
+ Set default value for vpSize before loading plugins.
+
+ There is a race where vpSize won't be updated to its "true value"
+ until we reach core's option change callback or we read the value
+ from the configuration plugin. Since we load all the plugins at once
+ on screenInitPlugins on the command line, some plugins require that this value
+ be set to *something* (It can be changed later) before they are initialized.
+
+ Fixes incorrect vertex settings with cube, causing it to zoom out infinitely
+ when switching viewports when loaded when compiz starts
- * configure.ac: Update gconf test to set macros needed for schema
- install.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-19
-2006-04-07 David Reveman <davidr@novell.com>
+ Sync after ungrabbing the server.
+
+ Turns out that XUngrabServer is not a synchronous call, so there is a
+ race condition with the new startup order where the ungrab server request
+ will sit in the output buffer waiting to be processed and the server won't
+ actually be ungrabbed when we start loading plugins. This can have all
+ kinds of side effects, for example when initializing GConf with GDBus,
+ there will be a call to dbus-launch --autostart to try and get the
+ session bus ID which will fail if there is still a server grab
+ that hasn't been released (since it attempts to read X11 properties)
+
+ Fixes LP: #691561
- * plugins/rotate.c: Add edge flipping support.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-19
- * plugins/scale.c: Allow corner screen edges to be used for
- initiating scale mode.
+ Map and unmap the switcher window directly
- * src/option.c (compSetBoolOption): Only return TRUE if value changed.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-19
- * src/screen.c:
- * src/window.c:
- * plugins/minimize.c:
- * plugins/decoration.c:
- * include/compiz.h: Add immediate argument to MoveNotify, immediate
- means that any animations should be avoided.
+ Update TODO
- * src/screen.c:
- * plugins/water.c:
- * plugins/resize.c:
- * plugins/place.c:
- * plugins/move.c:
- * plugins/zoom.c:
- * plugins/rotate.c:
- * plugins/scale.c:
- * src/event.c:
- * include/compiz.h:
- Add previous pointer position that can be shared between multiple
- plugins.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-19
-2006-04-06 David Reveman <davidr@novell.com>
+ Cleanup init_settings some more, move the switcher stuff out into the
+ frame ctor and move USE_GCONF into one big ifdef
- * include/compiz.h:
- * src/screen.c: Add screen edges and simple interface for enabling
- and disabling them.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-19
- * plugins/switcher.c (switchDamageWindowRect)
- (switchWindowRemove): Update switcher list even when screen isn't
- grabbed.
+ Store settings data in its own struct
+
+ Prevents namespace issues and makes it more clear where to access this
+ data.
- * plugins/switcher.c (switchDamageWindowRect):
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/window.c: Made it possible to select if window should be
- stacked above fullscreen windows or not.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-18
- * src/window.c (findSiblingBelow): Only find a fullscreen sibling
- if aboveFs is TRUE.
- (activateWindow): Allow stacking of window above fullscreen windows
- when being activated.
+ Cleanup.
+
+ Move things to where they should be, remove dead code
-2006-04-05 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-18
- * plugins/water.c (fboEpilogue): Reset raster position. Avoids
- an FBO/raster-position issue found in newer nvidia drivers.
+ Add memory management to frames
+
+ We don't need to keep all the frame definitions around in memory all the
+ time, so refcount them and only add them if we actually need them.
- * plugins/move.c: Add constrain_y option that constrains window
- movement so that top of window is always visible (on by default).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
- * src/event.c (handleEvent): Change active window property even though
- it's not different than the window we currently have as active.
+ Add frame types system, allocate to hash table and use them to manage
+ frames
- * src/window.c (moveInputFocusToWindow): Set focus even though
- the window is considered the active window.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
-2006-04-03 David Reveman <davidr@novell.com>
+ Add frames refcounting system
- * plugins/water.c: Use char everywhere instead.
- Fix offset direction (P-a Bäckström).
- Add offset scale option.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
- * plugins/water.c: (loadFragmentProgram): GLubyte -> const GLbyte.
- (loadWaterProgram): char -> GLbyte.
- (loadBumpMapProgram): char -> GLbyte.
- Use char everywhere.
+ Cleanup meta_update_border_extents function
+
+ Don't need to retrieve the frame all the time, just get it once
- * configure.ac: Bump version to 0.0.8.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
- * plugins/water.c: Add simple rain effect.
- (loadFragmentProgram): Clear any previous error.
+ Cleanup
+
+ decor_frame_type is available in decor_t now, so no need to get that
+ manually
- * src/display.c: Change so that timeouts are not only triggered
- when we're idle.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
-2006-04-02 David Reveman <davidr@novell.com>
+ Added simple frames management system.
+
+ Right now this just keeps the frames in a private area and returns a
+ pre-allocated frame, but it will be expanded to allow reference counting
+ on frames and allocation on-demand
- * plugins/water.c: Add scale and bias to normal so that light can be
- computed correclty. Offset texture coordinates for nice refraction
- effect. (P-a Bäckström)
- (waterDrawWindowTexture): Add scaling after setting up texture
- coordinate generation.
- Fix up loading of bump map programs.
- (softwareUpdate): Improve performance of software fall-back code a bit.
- (waterDrawWindowTexture): Always use filter for when window is
- transformed.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-17
- * plugins/gconf.c (gconfGetValue): Fix typo that caused color
- parsing to be incomplete (Quinn Storm).
+ Generalize shadow_only decoration into window decorations list
+
+ Remove debug message
-2006-04-01 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-16
- * plugins/switcher.c: Add "initiate all" binding which brings up the
- switcher window with all mapped windows and "initiate" binding will
- now bring up the switcher window with only the visible windows.
+ Remove more dead code
-2006-03-31 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-16
- * plugins/minimize.c (minDamageWindowRect): Never leave windows
- in scaled state.
+ Generalize switcher into another decoration frame type
- * src/screen.c (moveScreenViewport): Move hidden windows as well.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-16
- * src/window.c (addWindow, activateWindow, hideWindow)
- (showWindow):
- * src/screen.c (enterShowDesktopMode, leaveShowDesktopMode):
- * src/event.c (handleEvent):
- * include/compiz.h: Fix up show desktop mode.
+ Move _default_decoration into another decor_frame_t in decor_frames
+
+ No need to have another structure lying around for this ...
- * plugins/water.c (fboVertices): return 1.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-16
-2006-03-30 David Reveman <davidr@novell.com>
+ Fix shadows of non-default frame windows
+
+ Include frame information when drawing the shadow outline and also get
+ the metacity frame type from this information rather than the WnckWindow
- * src/texture.c (enableTexture): Always make sure mipmaps are up to
- date when using GL_LINEAR_MIPMAP_LINEAR filter.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-16
-2006-03-29 David Reveman <davidr@novell.com>
+ Fix cairo mode
+
+ * Make sure we set the theme fptrs for get_title_scale on startup
+ * Use the frame reference in the decor_t since that works for default
+ decorations too
- * gnome/window-decorator/gnome-window-decorator.c: Draw outline around
- window title text and buttons instead of small shadow.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-15
- * src/event.c (handleEvent):
- * include/compiz.h:
- * src/window.c: Set allowed window actions more correctly.
+ Fix crash when changing theme
+
+ Connect up the signal handler for the style change correctly.
- * plugins/move.c: Add opacity option.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-15
- * plugins/Makefile.am: Add water plugin. It's not very useful yet
- and it needs more work but it's a good example of how to use
- GL_ARB_fragment_program and GL_EXT_framebuffer_object for visual
- effects.
+ Make the switcher a decoration frame.
+
+ It is still separate to the normal "window type" decoration, but at
+ least now it has access to everything it needs
- * src/screen.c (addScreen): Fix light position.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-15
- * src/paint.c (paintWindow):
- * plugins/switcher.c (switchPaintThumb):
- * plugins/decoration.c (decorPaintWindow):
- * include/compiz.h: Make drawWindowTexture a screen function so that
- plugins can wrap it.
+ Allow different font types in frames.
+
+ Currently we used a single PangoContext and PangoFontDescription for
+ everything ... this resulted in custom frames having the same titlebar
+ size which wasn't any good. This commit changes a lot, namely:
+
+ * Frame is now linked to the decoration object itself
+ * Moved style windows into the frame
+ * Moved font context and font description into the frame
+ * Added API for getting the titlebar font size: obviously with the
+ cairo decorations there isn't supposed to be any kind of visual
+ difference here but with the metacity decorations we need to get that
+ directly from libmetacity.
+
+ It should be noted that these commits are in need of a cleanup ... which
+ is coming in the next few commits.
- * src/texture.c (enableTexture):
- * src/screen.c (addScreen):
- * include/compiz.h: GL_EXT_framebuffer_object and
- GL_ARB_fragment_program support.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-14
-2006-03-21 David Reveman <davidr@novell.com>
+ Add frame management system
+
+ There are different types of frames that we will need to support - like
+ the GIMP's utility toolbox windows - we need to have stored separate
+ frames in order to support them
- * gnome/window-decorator/gnome-window-decorator.c (lower_window): Don't
- try to lower a window below hidden windows or desktop windows.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-14
-2006-03-20 David Reveman <davidr@novell.com>
+ Add definitions for different border types
- * plugins/wobbly.c (wobblyHandleEvent):
- xunmap -> xmap (François Ingelrest).
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-14
- * src/screen.c (isClientListWindow): All type of windows should go into
- the client lists (Thanks to Quinn Storm).
+ Add support for drawing with different metacity theme types
- * src/window.c (freeWindow): Destroy frame window.
- (mapWindow): Fix so the sync requests are sent correctly when a window
- is mapped but disable it for now as it seems to be causing problems
- with some applications.
- (recalcWindowActions): Allow dialog window actions on util and
- toolbar windows.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-13
- * src/event.c (handleEvent): Remove event mask and button grabs
- when window is reparented.
- (handleEvent): Update client list when window type changes.
- (handleEvent): Use constrainNewWindowSize on move/resize client
- messages and configure requests.
+ Don't catch resize notifications on startup
+
+ DecorWindow::update might call updateWindowOutputExtents which calls
+ ::resizeNotify ... since this loops over all windows it is not safe to
+ have this function called.
- * gnome/window-decorator/gnome-window-decorator.c (window_closed):
- Delete decor property when window is closed.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-12
-2006-03-17 Jeremy C. Reed <reed@reedmedia.net>
+ Remove debugging message
- reviewed by: David Reveman
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-12
- * autogen.sh:
- Be consistent with rest of modular xorg by using same
- autogen.sh. This allows it to be run using a different
- work directory.
+ Slight optimization. Don't recalculate clip region on every paint, but
+ only where it makes sense to.
-2006-03-17 Jeremy C. Reed <reed@reedmedia.net>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-12
- reviewed by: David Reveman
+ Fix artefacts in shadow clipping.
+
+ Intersect the clip region already computed by core with the output
+ region of the window so that we don't display parts of the window that
+ might be occluded
- * INSTALL:
- Mention startup-notification requirement.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-12
-2006-03-17 David Reveman <davidr@novell.com>
+ Clip shadows where it makes sense
- * plugins/scale.c: Add opacity option.
+Merge: a88ce82 e1dc3f2
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-11
- * configure.ac: Bump version to 0.0.7.
+ Merge branch 'master' of git://git.compiz.org/compiz/core
+
+ Conflicts:
+gtk/window-decorator/decorator.c
-2006-03-17 Radek Doulik <rodo@novell.com>
+Merge: bd14afd c68018c
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-11
- * src/session.c: added all mandatory SM client callbacks, handle
- ICE connection and process ICE messages
+ Merge branch 'master' of git+ssh://git.compiz.org/git/users/dbo/compiz-with-glib-mainloop
- * src/display.c (compAddWatchFd): new function, adds new fd watch
- - for poll io multiplexing
- (compRemoveWatchFd): new function, remove fd watch added by
- compAddWatchFd
- (doPoll): new helper function, does call poll and calls callbacks
- for watch fd's. returns the value of poll call
- (eventLoop): use doPoll, we use NULL for display fd watch so that
- it doesn't call anything and just use return value from poll as
- before
+Merge: f5f41b9 09fe54a
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-11
-2006-03-17 David Reveman <davidr@novell.com>
+ Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/core
- * plugins/switcher.c (switchDamageWindowRect): Update window
- attributes for popup window. We never get a MapRequest for this
- window so it most be done here.
- Add "bring to front" option. (Greg)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-11
- * src/window.c (stackAncestors): Never raise desktop windows.
- Made restackWindowAbove and restackWindowBelow smarter.
+ Convert modifier masks from virtual to real ones before grabbing button.
+
+ Also skip ignored modifier if it is also in the cleared ignored bits
-2006-03-16 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-11
- * plugins/minimize.c:
- * src/event.c (handleEvent):
- * src/window.c:
- Handle window state changes correctly.
- (maximizeWindow): Use actions to determine if we're allowed maximize
- window.
+ Remove "semi-tracked" created windows on DestroyNotify.
+
+ Fixes LP: #709461
- * src/event.c (handleEvent):
- * src/window.c: Send configure notifies correctly.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-10
-2006-03-15 David Reveman <davidr@novell.com>
+ Make the switcher window being override redirect.
+
+ Previously the switcher window was a normal managed window (which
+ the switcher plugin actually lied about, see SwitchWindow::managed),
+ such that the decorators could pick it up and draw the switcher
+ decoration. However now with reparenting, this means that whenever
+ we actually manage and unmanage the switcher window (eg with map
+ and unmap) it means we must also reparent the window, which floods
+ the server with requests and makes the switcher slow.
+
+ Since we don't interact with the switcher window, it makes no sense
+ to manage it like this, so make it override redirect
- * plugins/switcher.c (switchPaintWindow): Fix paint attribute
- calculations.
+Jason Smith <jason.smith@canonical.com> 2011-02-05
- * include/compiz.h:
- * src/event.c (handleEvent):
- * src/window.c: Add restackWindowBelow.
+ Minor stacking fix
-2006-03-14 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-03
- * plugins/switcher.c: Opacity, brightness and saturation as adjustable
- options. (Greg)
+ Use autogenerated options code to directly access option values
+ rather than looking up the options
- * src/window.c (syncWindowPosition): Move frame window now instead of
- waiting for client window to change before moving it.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-03
- * plugins/move.c (moveTerminate): Sync window position before
- releasing pointer grab so that the EnterNotify event from the release
- go to the correct window.
+ Be a little bit smarter about that - work with stretched windows too and
+ don't accumulate pointer motion if the window is already constrained
- * src/window.c (unmapWindow): Put window in withdrawn state when
- being unmapped. Should make it work better with KDE. (Tim Northover)
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-03
- * src/screen.c (addScreen): Fix ambient and diffuse light.
+ Take up/down pointer motions as left and right if the cursor is at a screen edge
+
+ This allows the resize borders to extend past the window somewhat and for the
+ user to still resize windows to the edge of the screen
- * src/main.c (main): Add --version command line option.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-03
- * src/event.c:
- * src/screen.c:
- * include/compiz.h: Add bindings for changing window opacity.
+ Explicitly include <gdk/gdk.h> to avoid offset problems on amd64
-2006-03-14 Radek Doulik <rodo@novell.com>
+Travis Watkins <amaranth@ubuntu.com> 2011-02-02
- * src/event.c (handleEvent): handle minimize/maximize/unmaximize
- window keybindings
+ fix bcop code generation for colors
- * src/screen.c: added minimize/maximize/unmaximize window
- options/keybindings
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-02
- * src/window.c (maximizeWindow): new helper function
- (unmaximizeWindow): ditto
+ Initialize border
-2006-03-14 David Reveman <davidr@novell.com>
+Merge: ff085dc 4ae9585
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-01
- * plugins/scale.c: Add darken background option (Daniel G. Taylor).
+ Merge branch 'master' of ../../../core
+
+ Conflicts:
+include/core/core.h
+src/window.cpp
-2006-03-13 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-02-01
- * src/display.c (eventLoop):
- * include/compiz.h:
- * src/screen.c (addScreen): CopySubBufferMESA support.
+ Allow semantic difference between frame window geometry and frame size.
+
+ Rationale: some window decorators or themes might want to specify a border
+ input area that is slightly larger than the visible borders on screen
+ (eg for enhanced resize handles, a11y purposes, etc) or the theme might
+ want to specify some additional decoration which should affect placement
+ but should not be interacted with.
+
+ In this case we have a priv->border and priv->input window property.
+ priv->border specifies the actual semantic size of the window decoration
+ that should affect placement and priv->input specifies the extents of
+ the frame window past the client.
+
+ Fixes LP: #710271
-2006-03-07 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-28
- * gnome/window-decorator/gnome-window-decorator.c (lower_window):
- Remove unused variable tmp.
+ Fix frame reference not going away on unreparent
- * src/event.c:
- * src/display.c:
- * src/window.c:
- * src/screen.c:
- * include/compiz.h: Better window stacking support.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-28
- * gnome/window-decorator/gnome-window-decorator.c: Lower window
- when clicking button 2 on titlebar.
+ Whitespace fix
- * src/window.c (ensureWindowVisibility): Only ensure that window is
- visible if it isn't a override redirect window, dock window or
- window with struts.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-28
-2006-03-06 David Reveman <davidr@novell.com>
+ Whitespace fix
- * configure.ac: Bump version to 0.0.6.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-28
- * plugins/cube.c: Skydome update. (MacSlow)
+ Wait for reparent and configure operations to complete before destroying.
+
+ We don't track frame and wrapper windows like normal windows, so if we want
+ to restack relative to the frame window on unreparent then we need to ensure
+ that the restack operation actually completed before destroying the window.
- * src/window.c: Ensure window visibility when activating window.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-28
-2006-03-05 David Reveman <davidr@novell.com>
+ We don't care about events happening on the wrapper window during unreparent
+
+ Listening for these events is only going to cause UnmapNotifies coming
+ from our own XReparentWindow operation and XUnmapWindow operation on the
+ frame window on the wrapper window, which will be handled by compiz making
+ some windows appear to be unmapped when they were just unreparented.
+
+ Fixes LP #682781
- * src/window.c (closeWindow): Use protocol mask to determine if
- Client Message should be send or if we should kill the client.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-27
- * plugins/decoration.c: Don't draw shadow only decorations around
- windows with alpha channel.
+ Don't track window geometries or properties until they are actually managed.
+
+ The window might get some ConfigureRequests which won't be reflected
+ in PrivateWindow at MapRequest time. Fixes LP #707853
-2006-03-03 David Reveman <davidr@novell.com>
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-26
- * src/texture.c (readImageBufferToTexture):
- (readImageToTexture): Check that returnWidth and returnHeight are
- not NULL.
+ Fix warning
- * plugins/cube.c: Skydome support. Thanks to MacSlow.
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-26
- * plugins/fade.c (fadeHandleEvent): Make sure opacity isn't opaque
- when fading out.
- Stop fading if window is resized.
+ Fix windows jumping around when clicking on parts that trigger move
+
+ Since we no longer have an unconditional passive grab on Button1
+ for active and raised windows, we need to check if a client
+ sent us a _NET_WM_MOVERESIZE ClientMessage and update the pointer
+ buffer on that.
+
+ Also clean up the pointer buffer handling code again - reduce
+ the number of roundtrips required. Remove debug message.
- * src/window.c (resizeWindow): Only verify pixmap size if window is
- mapped.
- (resizeWindow): Check XGetGeometry result.
+Merge: 1c8f44d 6d72a4e
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-26
- * plugins/switcher.c: Make sure switcher is correctly updated
- even though the previously selected window isn't selectable by
- switcher.
+ Merge branch 'master' of git+ssh://git.compiz.org/git/users/dbo/compiz-with-glib-mainloop
- * src/event.c (handleEvent): Avoid panel actions when screen is
- grabbed.
+Merge: 793479d 081e136
+Sam Spilsbury <sam.spilsbury@canonical.com> 2011-01-26
-2006-03-03 Radek Doulik <rodo@novell.com>
+ Merge branch 'master' of git://git.compiz.org/compiz