Commit Graph

62 Commits

Author SHA1 Message Date
Christopher Jeffrey 6c9166c36f major refactor, removed other shadow modes 2011-11-04 03:44:48 -05:00
Christopher Jeffrey 4c3bf853f3 whitespace 2011-11-04 02:08:34 -05:00
Javeed Shaikh e89fafef57 Allow the user to specify offsets for server-side (hard) shadows. 2008-02-20 15:45:48 -05:00
Dana Jansens c69769f0ae More fixing for fade-outs.
When a window is destroyed, always override the fade out so that the finish_destroy_win function can be called.
When a ConfigureNotify event is processed on an unmapped window, don't set the clipChanged = True.  Fixes unmap->configure causing flashing during the fade-out.
2008-02-20 11:35:44 -05:00
Dana Jansens f717d14a38 Ignore some X errors that can occur in normal use 2008-02-20 11:35:40 -05:00
Dana Jansens 9339584771 Fix races that occur when a window id is destroyed and recreated very quickly. This behaviour happens when restarting the window manager.
Don't use windows that are destroyed when restacking other windows or when handling events on a window id.  It is possible for the same window id to appear in the window list multiple times if it is destroyed then created before the destroy fade-out completes.
2008-02-20 00:42:46 -05:00
Dana Jansens dde2509cdc Plug 3 memory leaks, and make fading windows always draw so that fast desktop changing doesn't make windows become invisible. 2008-02-15 19:01:37 -05:00
Dana Jansens 27ca5f291c Save ConfigureNotify events for unmapped windows until the window maps. If a window moves while it is unmapped, it should not affect its fade-out.
A window can move/resize while it is fading out.  Even if you don't delete the pixmap in that case, the fade-out will be shown in the wrong place and the wrong area on screen will be marked damaged when the window is gone without this patch.
2008-02-15 11:12:54 -05:00
Dana Jansens db45bafdc4 register the _NET_WM_CM_S hint with the correct screen number 2008-02-15 10:46:01 -05:00
Dana Jansens c213ab27ff Remove some spurious code
If the window is fading out, then the new fade-in will execute the finish_unmap/destroy, and that will kill the pixmap already.
2008-02-15 10:46:01 -05:00
Dana Jansens 873402251a Make shadows, fading, and opacity based on the window type. Add support for the extended window type atoms. Add a "-m" option to set opacity for menu windows. 2008-02-15 10:45:55 -05:00
Dana Jansens 398f722ce1 Fix some rare memory leaks and behaviour when a mapped window is reparented away from root
When a window that is mapped is reparented away from root, that is the same as it being completely unmapped+destroyed from our persective.  The window will no longer be in the same position on screen, and we will no longer want to listen to events on it.
Prior to this, the w->pixmap would not be freed when a mapped window was reparented away from root, and damage would not be updated for the screen correctly.
2008-02-14 17:35:55 -05:00
Dana Jansens 2c1a928e59 Fixes for window fade-outs
When a window resizes while it is unmapped, don't destroy it's pixmap, as that kills and fade going on.
If a window is already unmapped (and therefore already fading out, don't override the fadeout with a new one when the window is destroyed.
When a window maps, if it already has a pixmap, this is stale data, so free it so that a new pixmap can be retrieved from the newly mapped window.
2008-02-14 17:13:05 -05:00
Dana Jansens 73f6ed3310 Fix a server resource leak on destroying windows. 2008-02-13 11:24:32 -08:00
Tilman Sauerbeck de60732aff Make this loop slightly easier to read. 2007-03-12 14:44:31 +01:00
Tilman Sauerbeck fa689d8b38 Constified some variables. 2007-03-12 14:24:33 +01:00
Tilman Sauerbeck 7409bb892a Include getopt.h for getopt().
I think this should be portable. If it isn't, please yell at me and
I'll add the necessary autoconf magic.
2007-03-12 14:18:25 +01:00
Tilman Sauerbeck 491aa4b9a7 Fixed a bunch of warnings. 2007-03-12 13:37:32 +01:00
Mark Tiefenbruck 08c9ac6cbb Bug #9762: Fix opacity changes on unmapped windows. 2007-01-25 15:05:02 -05:00
Dave Airlie 1783d3bd50 increase version number to 1.1.3 2006-12-21 18:36:33 +11:00
Tilman Sauerbeck 6c539182a5 Bug #2703: Fixed a memory leak in the fading code. 2006-12-03 13:15:39 +01:00
Tilman Sauerbeck d75fd64f7a Set the _NET_WM_CM_S* atom on the screen we're running on. 2006-09-06 19:04:47 +02:00
Eric Anholt f5fe54f5fd Make a dummy window with a name, so xrestop can point its finger at
xcompmgr for being such a pig.
2005-10-07 00:08:02 +00:00
Adam Jackson ea0f58928c Bug #2391: Fix a use-after-free in run_fades. (Jonathan Briggs) 2005-01-27 21:03:39 +00:00
Eric Anholt f931341d9a Make xcompmgr distcheck and have a sane package name/version, and bump
version to 1.1.1.
2004-10-16 22:53:09 +00:00
dolio 2427e4ea66 Modified paint_all so that it doesn't draw off-screen windows, and doesn't
draw shadows on desktop 'root' windows.
2004-09-29 18:33:42 +00:00
Adam Jackson c262e75a82 bump version number 2004-09-27 18:06:03 +00:00
dolio fd2dc3730c Added command-line options for changing values relevant to fading. 2004-09-23 07:17:48 +00:00
dolio 4d85ae8dbc Miscellaneous code cleanup and failed allocation checks. 2004-09-23 01:56:00 +00:00
dolio 26fd15f06b Added shadow precomputation for large-enough windows. 2004-09-21 22:59:38 +00:00
Adam Jackson b73a269bf2 Print the version number in the usage summary. 2004-09-20 21:36:07 +00:00
dolio 34c09f7b7f Added various options for client-side shadows (offset, opacity,
blur-radius) based on the work of Thomas Luebking, along with the man
    entries and usage information to go along with them.
2004-09-18 00:13:15 +00:00
dolio 76e259ed57 Changed the usage function to display information on the available options. 2004-09-17 23:51:48 +00:00
dolio ed88a47468 Added allocation failure checks in shadow_picture and caused it to exit
gracefully rather than writing to unallocated memory.
2004-09-17 05:20:35 +00:00
Adam Jackson 7abdf973ea Bug #1360: Fix a segfault by checking the return value of XQueryTree.
(Johan Kiviniemi)
2004-09-14 19:01:16 +00:00
Adam Jackson 36005e53a5 More effects, bug fixes, doc updates. 2004-09-10 05:55:19 +00:00
Keith Packard 576c3c435c Remove abort call as it's just annoying. Add -a flag to just use Automatic
compositing. No glitz, but no screen mangling either.
2004-08-14 21:39:51 +00:00
Keith Packard 018fc12ad4 Add name window pixmap support 2004-08-13 08:25:51 +00:00
Keith Packard 4b34993c83 Eliminate 'struct timezone tz' as it isn't used.
reviewed by: Keith Packard
2004-07-08 16:30:59 +00:00
Keith Packard cd952da085 Add fade-in/fade-out support (-f option). Clean up leak of solid alpha
picture per redraw of constant-alpha windows.
2004-07-08 07:07:26 +00:00
Keith Packard d140d97616 Only use XCompositeNameWindowPixmap when the library provides it 2004-06-27 21:29:23 +00:00
Keith Packard 9616aa5ba6 Make composite manager mode run-time selectable with command line option:
-s: server-side shadows (sharp, but follows window alpha)
-c: client-side shadows (blurred, but uses window extents only)
-n: no shadows (this is the default mode)
2004-06-27 05:08:33 +00:00
Keith Packard def454cc5a Ok, this synchronizes all of my changes for the last many months. Has code
to do server-based shadows (SHARP_SHADOW). Has code to try and ignore
    appropriate errors (helps somewhat). Has code to handle global window
    translucency. Lots of other minor changes.
2004-06-27 04:48:37 +00:00
Keith Packard 10d93f24f0 Track whether cliplists have changed and avoid computation when not. Shrink
shadows. Speed up shadow construction a bit by using memset. Eliminate
    useless INTERVAL code. Use XSync after paint_all to gather more events
    per update.
2003-12-02 09:51:12 +00:00
Keith Packard 0963afc29c Add support for CM_TRANSLUCENT property.
reviewed by: Keith Packard <keithp@keithp.com>
2003-11-24 17:11:00 +00:00
Keith Packard df3dc087f8 Rename gussianMap to gaussianMap (who the heck is gus?) Allow for other
names for the root pixmap Handle non-zero border widths better (need
    Composite change to display them though). Add MONITOR_UPDATE mode that
    eliminates double buffering and blanks the screen to make sequence of
    update operations visible. Leave damage object around to catch map
    damage right. Add CirculateNotify support.
2003-11-23 23:20:42 +00:00
Eric Anholt c676d32456 Fix for latest Xfixes changes.
Submitted by: <stephan@wilkogazu.nl>
2003-11-23 21:10:34 +00:00
Carl Worth 9f3bc6c073 Eliminate several compiler warnings: missing includes, static functions,
unused variables. Remove confusing informational messages with the word
    "error" in them.
2003-11-19 16:12:15 +00:00
Matthew Allum 03e138e205 Made gussian_map get called just once rather than N times 2003-11-14 19:27:00 +00:00
Keith Packard f0000349e7 Eliminate all delays in updates; let the X server scheduling handle things. 2003-11-14 08:29:37 +00:00