Commit graph

105 commits

Author SHA1 Message Date
Luboš Luňák
4cd961af56 When the original request causing removal of a decoration comes
from the decoration, use delayed delete.

svn path=/trunk/kdebase/kwin/; revision=254813
2003-09-29 11:20:32 +00:00
Luboš Luňák
0be0f139fa This shouldn't happen at all anymore, so make it fatal.
svn path=/trunk/kdebase/kwin/; revision=253815
2003-09-25 10:36:31 +00:00
Luboš Luňák
2fdf81d4c6 Don't resize frame to the full size when shaded.
svn path=/trunk/kdebase/kwin/; revision=253542
2003-09-24 11:01:14 +00:00
Luboš Luňák
592a92f00b Move code related to mouse window resizing to geometry.cpp .
svn path=/trunk/kdebase/kwin/; revision=253538
2003-09-24 10:55:54 +00:00
Luboš Luňák
1e61c406f9 Temporary fix for #64516.
svn path=/trunk/kdebase/kwin/; revision=252394
2003-09-19 14:53:39 +00:00
Luboš Luňák
84dc01a473 Since Workspace::workspaceEvent() now checks also for windowwrapper
and frame events, it's not necessary to handle them specially
there. Also move DestroyNotify handling to windowEvent().

svn path=/trunk/kdebase/kwin/; revision=252355
2003-09-19 11:16:57 +00:00
Luboš Luňák
d8406cf439 Cleanup of Motif hints. Ignore hints forbidding minimize/maximize.
Fix using isResizable()/isMovable() instead of only checking the Motif hint.

svn path=/trunk/kdebase/kwin/; revision=252351
2003-09-19 11:14:16 +00:00
Luboš Luňák
9fac9d2a43 Fixes for mousePosition().
Since Qt propagates mouse events up the widget hierarchy, it's better
to filter out Qt events rather than X events for the decoration.

svn path=/trunk/kdebase/kwin/; revision=252346
2003-09-19 11:11:07 +00:00
Luboš Luňák
10f405c73d Merging kwin core from kwin_iii back to HEAD.
svn path=/trunk/kdebase/kwin/; revision=251608
2003-09-16 19:28:03 +00:00
Luboš Luňák
71d30b5813 At least very basic support for _NET_WM_WINDOW_TYPE_SPLASHSCREEN also in HEAD.
svn path=/trunk/kdebase/kwin/; revision=239649
2003-07-28 13:26:08 +00:00
Dirk Mueller
6bbbe69c0e unbreak compilation (gcc 3.4+)
svn path=/trunk/kdebase/kcontrol/; revision=239225
2003-07-26 10:41:28 +00:00
Luboš Luňák
6dc2810d6a Support NET::DemandsAttention in HEAD too.
svn path=/trunk/kdebase/kwin/; revision=231921
2003-06-17 09:24:14 +00:00
Luboš Luňák
25ccdb783f #55510
svn path=/trunk/kdebase/kwin/; revision=211733
2003-03-06 12:12:02 +00:00
Luboš Luňák
1f87831837 XRANDR support in HEAD too, so that curious people don't have to use
kwin_iii. It's still #ifdef-ed out by XRANDR_SUPPORT, just like elsewhere
in kdelibs/kdebase.

svn path=/trunk/kdebase/kwin/; revision=211041
2003-03-03 14:03:56 +00:00
Luboš Luňák
c72c64e4f3 Only one place where WM_TRANSIENT_FOR is read + fix a bug in mainClient().
svn path=/trunk/kdebase/kwin/; revision=198740
2003-01-10 12:39:27 +00:00
Luboš Luňák
09e06d30c1 Try to have the grab for clickraise only when necessary (VisibilityNotify
based), and clean up the grab handling a bit.

svn path=/trunk/kdebase/kwin/; revision=198017
2003-01-07 14:26:58 +00:00
Luboš Luňák
5100e63107 Client::is_sticky_ is dead and would be gone, if it weren't for BIC.
No need to this duplication of Client::desk == NET::OnAllDesktops.
It's simple, desk == NET::OnAllDesktops - sticky
             desk == 0 - not mapped yet
             desk something else - the desktop the window is on

svn path=/trunk/kdebase/kwin/; revision=196529
2002-12-30 20:34:38 +00:00
Luboš Luňák
9711f8b576 Workaround for stupid xv not setting WM_CLASS correctly.
svn path=/trunk/kdebase/kwin/; revision=185132
2002-10-22 11:57:43 +00:00
Luboš Luňák
a508895993 Damn, I hate keeping BC in an application.
svn path=/trunk/kdebase/kwin/; revision=184470
2002-10-18 11:13:30 +00:00
Luboš Luňák
1a598b9bc0 Fix #33146 - don't create KNotify events e.g. for toplevel menubar.
Introduced Client::isDialog() and Client::isNormalWindow() checking
for NET::Dialog and NET::Normal, including NET::Unknown and workaround
for Qt<3.1 not setting NET::Dialog.

svn path=/trunk/kdebase/kwin/; revision=181308
2002-09-30 13:32:58 +00:00
Luboš Luňák
3b57952b03 Take care of #46042. [...resisted to say here something about Motif >;> ]
svn path=/trunk/kdebase/kwin/; revision=174310
2002-08-28 15:17:31 +00:00
Luboš Luňák
78a7c08049 Since some of the .h files are installed ...
Prefix all the #ifndef #define ... #endif symbols with KWIN_ , just in case
somebody uses CLIENT_H or so too.
And don't include config.h .

svn path=/trunk/kdebase/kwin/; revision=168940
2002-07-26 20:30:36 +00:00
Till Krech
7c1d536ad3 make it compile again...
RCS file: /home/kde/kdebase/kwin/client.h,v
retrieving revision 1.82
diff -u -p -r1.82 client.h
--- client.h    2002/07/05 20:00:02     1.82
+++ client.h    2002/07/06 02:04:23
@@ -155,7 +155,7 @@ public:
     bool isDesktop() const;
     bool isDock() const;
     bool isTool() const;
-    bool isMenu() const;
+    bool isTopMenu() const;

     bool isResizable() const;

Index: plugins.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/plugins.cpp,v
retrieving revision 1.30
diff -u -p -r1.30 plugins.cpp
--- plugins.cpp 2002/07/05 20:05:22     1.30
+++ plugins.cpp 2002/07/06 02:04:23
@@ -119,7 +119,7 @@ bool PluginMgr::loadPlugin(QString nameS

     void* create_func = library->symbol("create");
     if(create_func) {
-        create_ptr = (Client* (*)(Workspace *ws, WId w, NET::WindowType, NET::WindowType))create_func                                   ;
+        create_ptr = (Client* (*)(Workspace *ws, WId w, NET::WindowType))create_func;
     }
     create_func = library->symbol("allocate");
     if(create_func) {

svn path=/trunk/kdebase/kwin/; revision=165118
2002-07-06 02:05:46 +00:00
Luboš Luňák
6d7f113304 Implemented _NET_WM_MOVERESIZE.
Fixed some minor bugs with resizing.

svn path=/trunk/kdebase/kwin/; revision=165071
2002-07-05 20:00:02 +00:00
Cristian Tibirna
d546d25e68 CT: - consistently maximize (and unshade) and restore (and unshade) shaded windows
- don't allow resizing of shaded windows
    - unshade windows on minimize
    - clean up an unused method

svn path=/trunk/kdebase/kwin/; revision=140800
2002-03-04 02:20:26 +00:00
Cristian Tibirna
efb48f70ef CT: fix my fix for Ctrl+ArrowKeys moving. Reviewed by Matthias Ettrich
svn path=/trunk/kdebase/kwin/; revision=140544
2002-03-03 12:39:31 +00:00
Cristian Tibirna
e5e8ee00c1 CT: fix compilation
svn path=/trunk/kdebase/kwin/; revision=140438
2002-03-03 04:02:11 +00:00
Cristian Tibirna
e0a42fc063 CT: fix the move with keyboard with Ctrl (smaller steps).
Add the missing signal in KWinInterface (to be used in the redesigned client notification)

svn path=/trunk/kdebase/kwin/; revision=140436
2002-03-03 03:31:52 +00:00
Matthias Ettrich
83f58ed248 gracefully handle more than one desktop client application (which
happens triggered by a kdesktop bug on David Faure's machine).

You can now launch additional desktop applications with

     kstart --type Desktop konqueror
or
     kstart --type Desktop konsole

and toggle between them with

    dcop kwin default circulateDesktopApplications

svn path=/trunk/kdebase/kwin/; revision=140330
2002-03-02 21:03:49 +00:00
Cristian Tibirna
05129f3b19 CT: fix for gravitate moving non-NW windows on session restore. Many thanks to Matthias Ettrich for saving my day
svn path=/trunk/kdebase/kwin/; revision=140048
2002-03-02 01:34:31 +00:00
Matthias Ettrich
e34a6ee283 second half of the "avoid stealing focus if possible" fix
svn path=/trunk/kdebase/kwin/; revision=139642
2002-02-28 22:11:43 +00:00
Waldo Bastian
8f1f5f1b45 * Clean up move/resize code.
* Make moving/resizing work with keyboard.

svn path=/trunk/kdebase/kwin/; revision=113548
2001-09-06 22:54:31 +00:00
Simon Hausmann
9782f0f0f8 - darn, I hate X
svn path=/trunk/kdebase/kwin/; revision=110966
2001-08-18 23:27:05 +00:00
Simon Hausmann
c8f1508b36 - moved netwm.h inclusions after indirect qvariant.h inclusions
(fixes Bool clash)
- missing includes (qcursor,qstyle,qpainter,qvaluelist)
- minor qstyle api fixlet

svn path=/trunk/kdebase/kwin/; revision=110958
2001-08-18 23:06:16 +00:00
Luboš Luňák
0827825fcb Use debug area for the debug info.
Explicitly note in the headers that the classes have to keep BC ( after KDE2.2 ).
Fixed index in walking through desktops.

svn path=/trunk/kdebase/kwin/; revision=101972
2001-06-13 15:47:54 +00:00
Luboš Luňák
e0dbc88040 Implemented NET::SkipPager in kwin, kpager, the pager applet and kstart.
Not that I really understand why's there both SkipTaskbar and SkipPager ...

svn path=/trunk/kdebase/kwin/; revision=94832
2001-05-02 20:37:30 +00:00
Luboš Luňák
4eb2dfa0ee shadeChange() ( for the icewm plugin )
svn path=/trunk/kdebase/kwin/; revision=94149
2001-04-27 08:38:44 +00:00
Luboš Luňák
18d2c93cea Added private data pointer members to classes which might be accessed
by style plugins ( KWin has to keep BC for these ). I hope these are
all classes that need it.
And of course, this change is not binary compatible, but it fortunately
doesn't matter much for KWin these days.

svn path=/trunk/kdebase/kwin/; revision=90127
2001-04-03 14:40:34 +00:00
Matthias Ettrich
5cf8a3c9fd some attempts to fix Sun's latest Java, no success so far. Giving up.
svn path=/trunk/kdebase/kwin/; revision=88713
2001-03-26 08:10:31 +00:00
Matthias Ettrich
9b24d884bf legacy session management support (WM_COMMAND) for emacs-lovers.
Many thanks to Leon Bottou <leonb@research.att.com> for this one.

svn path=/trunk/kdebase/kwin/; revision=87737
2001-03-19 15:35:07 +00:00
Luboš Luňák
8b6478aeda Applying #19154 ( together with #19158 fixes #13794 #17915 #17698 )
svn path=/trunk/kdebase/kwin/; revision=86664
2001-03-12 21:32:13 +00:00
Waldo Bastian
2f90225543 Put stuff in KWinInternal namespace.
Export client.h, workspace.h and options.h so that people can write plugins.

svn path=/trunk/kdebase/kwin/; revision=83707
2001-02-20 01:20:38 +00:00
Matthias Ettrich
7ba861c71d avoid shading for no-border cliens
Index: client.h
===================================================================
RCS file: /home/kde/kdebase/kwin/client.h,v
retrieving revision 1.62
diff -d -u -r1.62 client.h
--- client.h    2001/01/16 21:29:36     1.62
+++ client.h    2001/02/19 22:25:13
@@ -449,7 +449,7 @@
 public:
     NoBorderClient( Workspace *ws, WId w, QWidget *parent=0, const char *name=0 );
     ~NoBorderClient();
-
+    void setShade( bool , int ){}
 };

 #endif

svn path=/trunk/kdebase/kwin/; revision=83691
2001-02-19 22:25:34 +00:00
Matthias Ettrich
01241073b6 make xswallow work
svn path=/trunk/kdebase/kwin/; revision=78458
2001-01-16 21:29:36 +00:00
Matthias Ettrich
e9d30a20d7 Balaji Ramani <balaji@spinnakernet.com>: shadeHover support
GUI: new operation popup item: "Store Settings"

svn path=/trunk/kdebase/kwin/; revision=78043
2001-01-14 20:16:04 +00:00
Matthias Ettrich
33f78a855b some more keybindings
less race conditions with map/unmap thanks to BlackboxTechnology(tm)

svn path=/trunk/kdebase/kwin/; revision=77544
2001-01-11 23:41:07 +00:00
Matthias Ettrich
45f2bbd3d3 smarter autoRaise, wondering what it breaks this time
svn path=/trunk/kdebase/kwin/; revision=76893
2001-01-08 09:52:44 +00:00
Matthias Ettrich
287b654d39 an attempt to reduce the slowliness of opaque resize with non-Qt application
svn path=/trunk/kdebase/kwin/; revision=73641
2000-12-06 15:03:59 +00:00
Matthias Ettrich
6babb311ca more clever maximize(ver, hor, full) stuff
svn path=/trunk/kdebase/kwin/; revision=71188
2000-11-17 19:43:20 +00:00
Matthias Ettrich
8ba0c8171f fixed unmanaged windows on subsquent desktop switches
svn path=/trunk/kdebase/kwin/; revision=68087
2000-10-17 12:51:39 +00:00