Commit graph

436 commits

Author SHA1 Message Date
Matthias Ettrich
a99e99eacc restore legacy session after notifying ksplash that we are up and running
svn path=/trunk/kdebase/kwin/; revision=149562
2002-04-15 13:06:01 +00:00
Waldo Bastian
ca1a4a27fa (BR40234)
Fixes disappearing kdesktop-menubar in combination with "desktop icons disabled"

svn path=/trunk/kdebase/kwin/; revision=148030
2002-04-08 23:43:19 +00:00
Cristian Tibirna
6f14920e91 CT: fix for bug:28599 (by M. Ettrich). Update copyright
svn path=/trunk/kdebase/kwin/; revision=147882
2002-04-08 12:58:27 +00:00
Cristian Tibirna
de30273aad CT: fix the desktop cascading (got broken sometime during my 2 years sleep).
Closes bug:5370, the oldest kwin bug (filed as a wish, but really a bug).

svn path=/trunk/kdebase/kwin/; revision=147571
2002-04-07 06:55:48 +00:00
Cristian Tibirna
e104c57e6a GUI:
CT: close bug:40009

svn path=/trunk/kdebase/kwin/; revision=147552
2002-04-07 02:22:25 +00:00
Alexander Kellett
d343b3a1a3 Recommiting PopupInfo after several thousand cleanups inspired by CT
svn path=/trunk/kdebase/kwin/; revision=147307
2002-04-05 19:54:21 +00:00
Matthias Ettrich
789bb8c535 1. fix the "kill kicker with -9 and loose system tray icons" problem:
// If the system tray gets destroyed, the system tray
	    // icons automatically get unmapped, reparented and mapped
	    // again to the closest non-client ancestor due to
	    // QXEmbed's SaveSet feature. Unfortunatly with kicker
	    // this closest ancestor is not the root window, but our
	    // decoration, so we reparent explicitely back to the root
	    // window.


2. Removed popupinfo feature for now. The feature is a great idea, but the
implementation was too much copy&paste and code duplication with the
tab box. Plus it was buggy (no vertical center alignment) and contained
many unused codelines.

3. Fixed and simplified the session management handling (thanks to
KSessionManaged in libkdecore). This way we actually get a proper
discardCommand generated by KApplication, something that was missing
previously.

svn path=/trunk/kdebase/kwin/; revision=146580
2002-04-02 12:36:24 +00:00
Alexander Kellett
3e43789786 "wmaker-like" popup messages on desktop switch.
svn path=/trunk/kdebase/kwin/; revision=146349
2002-04-01 02:54:00 +00:00
Waldo Bastian
a0ca762edd * Do not use config.h in header files.
* Throw out unused Xinerama code.

svn path=/trunk/kdebase/kwin/; revision=143596
2002-03-18 08:30:50 +00:00
Stephan Kulow
1b6bb5f2f2 paranoia mode
-    int boundingShaped, clipShaped;
+    int boundingShaped = 0, clipShaped = 0;

svn path=/trunk/kdebase/kwin/; revision=143391
2002-03-17 13:31:35 +00:00
Karol Szwed
e9b984e3f8 - Make KApp's "appearanceChanged()" signal properly reconfigure the window
decoration's colors by calling the reset() cdecl.
- Change the options::reload() slot into a public method, as the slot is no
  longer required.

Reviewed by Matthias Elter

svn path=/trunk/kdebase/kwin/; revision=143232
2002-03-16 09:26:49 +00:00
Karol Szwed
42d7554980 Don't crash when closing a window :-)
-    if (c == popup_client)
+    if (c == popup_client && popup)
        popup->close();

svn path=/trunk/kdebase/kwin/; revision=142399
2002-03-11 13:09:56 +00:00
Cristian Tibirna
d36b5b10da CT: 2-line modif. Fixes a bad crash.
svn path=/trunk/kdebase/kwin/; revision=142312
2002-03-11 05:02:50 +00:00
Ilya Konstantinov
305331deca Use the new DCOP signals API.
svn path=/trunk/kdebase/kwin/; revision=141700
2002-03-08 07:14:30 +00:00
Ellis Whitehead
779bac3917 Get Win+Tabbing to work when it's associated with Super instead of Meta.
svn path=/trunk/kdebase/kwin/; revision=140912
2002-03-04 12:37:56 +00:00
Cristian Tibirna
1e3bfadcd2 CT: client menu doesn't appear if client isDesktop()
svn path=/trunk/kdebase/kwin/; revision=140749
2002-03-03 23:28:04 +00:00
Matthias Ettrich
e264ffa6bb removed unused signal. We can always add it later if we need it. Avoids
qWarning message

svn path=/trunk/kdebase/kwin/; revision=140746
2002-03-03 23:19:56 +00:00
Cristian Tibirna
c125fb612d CT: we _really_ don't want to show an operations menu if the active
client is the desktopWidget. Checked by Lubos Lunak

svn path=/trunk/kdebase/kwin/; revision=140684
2002-03-03 21:13:03 +00:00
Matthias Ettrich
3038d6f96b remove skip_taskbar windows from the focus chain after manage
svn path=/trunk/kdebase/kwin/; revision=140616
2002-03-03 16:56:41 +00:00
Cristian Tibirna
be3a8384f3 CT: don't warp mouse if we didn't change the desktop (in electric borders). Reviewed by Matthias Ettrich
svn path=/trunk/kdebase/kwin/; revision=140608
2002-03-03 16:29:29 +00:00
Cristian Tibirna
53c0a8100e CT: place the cursor in the center of the window when moving by mouse
svn path=/trunk/kdebase/kwin/; revision=140566
2002-03-03 13:56:55 +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
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
c981ba005c fixed spelling error. QT is quick time video, the beloved toolkit is
spelled Qt (note the lowercase 't')

svn path=/trunk/kdebase/kwin/; revision=140332
2002-03-02 21:05:35 +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
dd29e3723c faster configuration changes. No crashes when reconfiguring kwin
several times with invalid plugin strings (happens when running
today's kpersonalizer)

svn path=/trunk/kdebase/kwin/; revision=139725
2002-03-01 01:34:54 +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
Cristian Tibirna
51268a6d18 CT: make it possible to stop desktop switching when the edge of the desktops group is reached.
Just add RollOverDesktops=false to your kwinrc/[Windows] config file and restart your kwin.
	Thanks to Carsten Pfeiffer for the suggestion

svn path=/trunk/kdebase/kwin/; revision=139620
2002-02-28 21:04:36 +00:00
Luboš Luňák
883950b506 #15829 and #15741
svn path=/trunk/kdebase/kwin/; revision=139496
2002-02-28 15:39:40 +00:00
George Staikos
1cde570a88 Fix behaviour of windows when changing styles on Xinerama. Now they don't
magically fly to other screens.

svn path=/trunk/kdebase/kwin/; revision=139300
2002-02-28 00:43:23 +00:00
Matthias Ettrich
7686ee5f9a almost flicker-free style switches (behind the curtain, at least ;-)
svn path=/trunk/kdebase/kwin/; revision=139288
2002-02-27 23:02:40 +00:00
Ellis Whitehead
ee8cafc0f2 Cleanup: remove some commented-out code.
svn path=/trunk/kdebase/kwin/; revision=139264
2002-02-27 21:59:59 +00:00
Luboš Luňák
a05c9193da Fix #22403. Also set change current desktop to the last one existing, if
it would be out of bounds.

svn path=/trunk/kdebase/kwin/; revision=139159
2002-02-27 16:17:45 +00:00
Luboš Luňák
994148efcf Fix #25010.
Revision 1.96 was IMHO not the right fix for what it did,
and it's not needed anymore anyway.

svn path=/trunk/kdebase/kwin/; revision=139130
2002-02-27 15:16:43 +00:00
Luboš Luňák
bde9fb3af5 Make 'Window to Desktop X' actions work only for NET::Normal and NET::Dialog
windows ... sending Kicker between desktops is fun, but I guess it's better
without this feature.

svn path=/trunk/kdebase/kwin/; revision=135385
2002-02-08 13:25:09 +00:00
Stephan Kulow
f92f6d8b4f including config.h so I have a reason to close #34334 :)
svn path=/trunk/kdebase/kwin/; revision=133662
2002-01-24 21:52:11 +00:00
Ellis Whitehead
c798226b77 Clean-up, and fix so that Alt+Tabbing works with NumLock or CapsLock on.
svn path=/trunk/kdebase/kwin/; revision=132462
2002-01-19 04:55:32 +00:00
Ellis Whitehead
0fa8002e0d Updates necessary for changes made in the K*Accel* and KKey* classes.
svn path=/trunk/kdebase/kcontrol/; revision=129003
2001-12-29 04:19:24 +00:00
Ellis Whitehead
72b0d20ccc - Pass QString::null for help string of KAccelAction where necessary
- Remove references to KAccelBase

svn path=/trunk/kdebase/klipper/; revision=126545
2001-12-11 04:47:07 +00:00
Cristian Tibirna
3bae17a9bc CT: focus [strictly] under mouse, current active client sticky
(mouse pointer on it), preserve focus while changing desktops
    Thanks to Volker Schatz <V.Schatz at thphys.uni-heidelberg.de>
      for patch

svn path=/trunk/kdebase/kwin/; revision=126219
2001-12-09 04:17:36 +00:00
Ellis Whitehead
7960d9b776 - Remove obsolete slots
- Add detection of shortcut configuration changes

svn path=/trunk/kdebase/kwin/; revision=124812
2001-11-30 08:04:17 +00:00
Waldo Bastian
8c5a34d322 Take into account a wide range of pager-layouts, the pager can set the
required layout via DCOP. Used for desktop left/right/up/down.

svn path=/trunk/kdebase/kwin/; revision=124773
2001-11-29 23:59:54 +00:00
Luboš Luňák
eb3d34ed2b I guess my last commit actually broke the placement.
svn path=/trunk/kdebase/kwin/; revision=123264
2001-11-19 22:34:20 +00:00
Luboš Luňák
e5b822cc9b This seems to fix the problem with reseting maximized windows during KWin
reset.

svn path=/trunk/kdebase/kwin/; revision=123201
2001-11-19 15:35:26 +00:00
Luboš Luňák
3d0378be0e Fix placement when placing windows on desktop that's not current.
svn path=/trunk/kdebase/kwin/; revision=123194
2001-11-19 14:48:54 +00:00
Ellis Whitehead
e2997d6bc4 Lots and lots and lots of changes all over the place for shortcut changes. Including new KAccel and KGlobalAccel classes.
svn path=/trunk/kdebase/kcontrol/; revision=122759
2001-11-16 23:21:43 +00:00
Alexander Neundorf
36542d8eb5 commented unused mapList and unmapList out
Alex

svn path=/trunk/kdebase/kwin/; revision=122561
2001-11-15 23:02:40 +00:00
Waldo Bastian
a29eb333d0 Don't crash when you happen to select a window with alt-tab that has just
disappeared. (forward port)

svn path=/trunk/kdebase/kwin/; revision=121076
2001-11-07 01:09:29 +00:00
Waldo Bastian
2076b00f61 Make active borders working when moving a window.
Make it configurable (disabled, only when moving, always enabled)

svn path=/trunk/kdebase/kwin/; revision=120497
2001-11-03 00:05:33 +00:00
Stephan Binner
9b12dc1a16 Revoked KIPC message addition, will use kWinModule::currentDesktopChanged(int).
svn path=/trunk/kdebase/kwin/; revision=117871
2001-10-14 13:04:49 +00:00
Stephan Binner
82c0178a80 Send KIPC:BackgroundChanged only when desktop is not common (part for
#33348). Still no perfect solution for "sticky transparent Konsole" problem.

svn path=/trunk/kdebase/kwin/; revision=117021
2001-10-09 06:53:26 +00:00
Fredrik Höglund
7497342101 Made KWin compile when QT_NO_COMPAT is defined.
svn path=/trunk/kdebase/kwin/; revision=115985
2001-09-30 21:22:20 +00:00
Ellis Whitehead
0223deb116 Call string <=> key conversion functions in KKey & KKeyX11 instead of KAccel
svn path=/trunk/kdebase/kcontrol/; revision=115761
2001-09-28 12:31:48 +00:00
Stephan Binner
aac86d915d Menu capitalization fixes
svn path=/trunk/kdebase/kwin/; revision=114950
2001-09-21 09:32:44 +00:00
Karol Szwed
890e9d257a - Hopefully fixes bug 31655
svn path=/trunk/kdebase/kwin/; revision=113874
2001-09-10 06:12:58 +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
Waldo Bastian
7d5e50bab8 Tune electric borders...
svn path=/trunk/kdebase/kwin/; revision=113523
2001-09-06 19:44:06 +00:00
Matthias Ettrich
827e9b92be completed fullscreen fix
svn path=/trunk/kdebase/kwin/; revision=113471
2001-09-06 09:21:19 +00:00
Matthias Ettrich
87d25e94c5 include desktop widgets
svn path=/trunk/kdebase/kwin/; revision=113438
2001-09-05 20:48:16 +00:00
Matthias Ettrich
9388aeba3d fixed maximization handling
svn path=/trunk/kdebase/kwin/; revision=113436
2001-09-05 20:40:04 +00:00
Dirk Mueller
df7c4fb8b6 kdesktopwidget -> qdesktopwidget
svn path=/trunk/kdebase/kwin/; revision=112863
2001-09-01 12:52:41 +00:00
Waldo Bastian
83cbfe3acb Window follows mind^H^H^H^Hdesktop.
svn path=/trunk/kdebase/kwin/; revision=112163
2001-08-27 23:56:15 +00:00
Stephan Binner
21a2a14edd Fix Konsole transparent background problems when window is sticky or sent to other desktop (#24178)
svn path=/trunk/kdebase/kwin/; revision=112136
2001-08-27 21:02:33 +00:00
Waldo Bastian
aedc59bde7 Ported from KDE 1.1.2: Electric Borders are back!
svn path=/trunk/kdebase/kwin/; revision=112025
2001-08-27 05:42:32 +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
Matthias Ettrich
bb34fb1c55 fixed hanging keyboard in CDE-style Alt-Tab
svn path=/trunk/kdebase/kwin/; revision=109474
2001-08-07 11:15:12 +00:00
Waldo Bastian
d07cce76b9 Less debug output
svn path=/trunk/kdebase/kwin/; revision=108939
2001-08-02 18:31:37 +00:00
Matthias Ettrich
6847f73526 cleaned grabbing up a bit
svn path=/trunk/kdebase/kwin/; revision=107986
2001-07-27 12:48:30 +00:00
Ellis Whitehead
c06084d21b Make switching box disappear on mouse click, and release keyboard and pointer grabs.
Before, a mouse-click would cause a partial lock-up (global shortcuts could still be activated).

svn path=/trunk/kdebase/kwin/; revision=105788
2001-07-12 17:16:04 +00:00
Matthias Ettrich
a325dd9966 make focusEnsurance() multi-screen capable (at least I hope it works this
way)

svn path=/trunk/kdebase/kwin/; revision=105769
2001-07-12 13:50:19 +00:00
Ellis Whitehead
24ede41380 Make sure that Window/Desktop popup (e.g. Alt+Tab) isn't shown if modifier key has already been released before switch is processed.
svn path=/trunk/kdebase/kwin/; revision=105392
2001-07-09 03:10:16 +00:00
Ellis Whitehead
3e604d14b0 Remove "Window iconify all" since we now how "Toggle Show Desktop".
Index: kwinbindings.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/kwinbindings.cpp,v
retrieving revision 1.24
diff -u -3 -d -p -r1.24 kwinbindings.cpp
--- kwinbindings.cpp	2001/06/26 23:30:52	1.24
+++ kwinbindings.cpp	2001/06/29 04:29:14
@@ -22,7 +22,7 @@
  keys->insertItem(i18n("Window Maximize Vertical"), "Window maximize vertical", KKey(), KKey("Meta+Bar"));
  keys->insertItem(i18n("Window Maximize Horizontal"), "Window maximize horizontal", KKey(), KKey("Meta+Equal"));
  keys->insertItem(i18n("Window Iconify"), "Window iconify", KKey(), KKey("Meta+Minus"));
- keys->insertItem(i18n("Window Iconify (All)"), "Window iconify all", KKey(), KKey("Meta+Ctrl+Minus"));
+ //keys->insertItem(i18n("Window Iconify (All)"), "Window iconify all", KKey(), KKey("Meta+Ctrl+Minus"));
  keys->insertItem(i18n("Window Shade"), "Window shade", KKey(), KKey("Meta+Underscore"));
  keys->insertItem(i18n("Window Move"), "Window move", 0);
  keys->insertItem(i18n("Window Resize"), "Window resize", 0);
@@ -113,6 +113,6 @@ This belongs in taskbar rather than here
 #endif
  keys->insertItem(i18n("Mouse Emulation"), "Mouse emulation", KKey("ALT+F12"), KKey());
  keys->insertItem(i18n("Kill Window"), "Kill Window", KKey("CTRL+ALT+Escape"), KKey("Meta+Ctrl+Delete"));
- keys->insertItem(i18n("Window Screenshot"), "Screenshot of active window", KKey("Print"), KKey());
- keys->insertItem(i18n("Desktop Screenshot"), "Screenshot of desktop", KKey("CTRL+PrtSc"), KKey());
+ keys->insertItem(i18n("Window Screenshot"), "Screenshot of active window", KKey("Print"), KKey("Alt+Print"));
+ keys->insertItem(i18n("Desktop Screenshot"), "Screenshot of desktop", KKey("CTRL+Print"), KKey("Meta+Print"));

Index: workspace.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/workspace.cpp,v
retrieving revision 1.263
diff -u -3 -d -p -r1.263 workspace.cpp
--- workspace.cpp	2001/06/29 00:16:26	1.263
+++ workspace.cpp	2001/06/29 04:29:24
@@ -2553,7 +2553,7 @@ void Workspace::createKeybindings(){
     keys->connectItem( "Window maximize horizontal", this, SLOT( slotWindowMaximizeHorizontal() ) );
     keys->connectItem( "Window maximize vertical", this, SLOT( slotWindowMaximizeVertical() ) );
     keys->connectItem( "Window iconify", this, SLOT( slotWindowIconify() ) );
-    keys->connectItem( "Window iconify all", this, SLOT( slotWindowIconifyAll() ) );
+    //keys->connectItem( "Window iconify all", this, SLOT( slotWindowIconifyAll() ) );
     keys->connectItem( "Window shade", this, SLOT( slotWindowShade() ) );
     keys->connectItem( "Window move", this, SLOT( slotWindowMove() ) );
     keys->connectItem( "Window resize", this, SLOT( slotWindowResize() ) );
@@ -2744,6 +2744,7 @@ void Workspace::slotWindowIconify()
     performWindowOperation( popup_client, Options::IconifyOp );
 }

+// This should probably be removed now that there is a "Show Desktop" binding.
 void Workspace::slotWindowIconifyAll()
 {
     int iDesktop = currentDesktop();

svn path=/trunk/kdebase/kwin/; revision=104351
2001-06-29 04:30:25 +00:00
Richard J. Moore
649c822bc2 Include window frame when grabbing snapshots
svn path=/trunk/kdebase/kwin/; revision=104328
2001-06-29 00:16:26 +00:00
Richard J. Moore
2cd059894a Window grabbing stuff for linuxtag
svn path=/trunk/kdebase/kwin/; revision=104070
2001-06-26 23:30:52 +00:00
Matthias Ettrich
ab5b07786a more alt-tab hanging fixes. Requires update in libkdecore/kglobalaccel.cpp
svn path=/trunk/kdebase/kwin/; revision=103034
2001-06-19 15:05:03 +00:00
Matthias Ettrich
6413e1dd8f Fixed hanging Alt-Tab under heavy load (Part II, first part was in
kdelibs/kdecore/kglobalaccel.cpp)

svn path=/trunk/kdebase/kwin/; revision=102912
2001-06-18 20:18:32 +00:00
Ellis Whitehead
c77c63a6d3 Forgot to connect.
===================================================================
RCS file: /home/kde/kdebase/kwin/workspace.cpp,v
retrieving revision 1.258
diff -u -3 -d -p -r1.258 workspace.cpp
--- workspace.cpp	2001/06/13 15:47:54	1.258
+++ workspace.cpp	2001/06/13 18:46:54
@@ -2562,6 +2562,8 @@ void Workspace::createKeybindings(){

     keys->connectItem( "Walk through desktops", this, SLOT( slotWalkThroughDesktops()));
     keys->connectItem( "Walk back through desktops", this, SLOT( slotWalkBackThroughDesktops()));
+    keys->connectItem( "Walk through desktop list", this, SLOT( slotWalkThroughDesktopList()));
+    keys->connectItem( "Walk back through desktop list", this, SLOT( slotWalkBackThroughDesktopList()));
     keys->connectItem( "Walk through windows",this, SLOT( slotWalkThroughWindows()));
     keys->connectItem( "Walk back through windows",this, SLOT( slotWalkBackThroughWindows()));

@@ -2571,6 +2573,8 @@ void Workspace::createKeybindings(){
     keys->readSettings();
     walkThroughDesktopsKeycode = keys->currentKey( "Walk through desktops" );
     walkBackThroughDesktopsKeycode = keys->currentKey( "Walk back through desktops" );
+    walkThroughDesktopListKeycode = keys->currentKey( "Walk through desktop list" );
+    walkBackThroughDesktopListKeycode = keys->currentKey( "Walk back through desktop list" );
     walkThroughWindowsKeycode = keys->currentKey( "Walk through windows" );
     walkBackThroughWindowsKeycode = keys->currentKey( "Walk back through windows" );
 }

svn path=/trunk/kdebase/kwin/; revision=101992
2001-06-13 18:48:23 +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
Ellis Whitehead
9e0653455e kdebase/kcontrol/keys/: add ability to separate between 'normal' shortcuts and a shortcut series
kdebase/kwin/tabbox: allow for choosing between switching between desktops in focus order versus numeric order.

kdebase/kwin/workspace: add key bindings for focus-order-desktop-walking and sending a window to a specific desktop.

*bindings.cpp: add labels for kcontrol

svn path=/trunk/kdebase/kwin/; revision=101281
2001-06-10 04:10:42 +00:00
Malte Starostik
f8c8380275 Expose int currentDesktop() const via DCOP
and added void nextDesktop() and void previousDesktop(), also available
via DCOP.
This makes it possible to use KGesture to cycle through desktops :)

svn path=/trunk/kdebase/kwin/; revision=101071
2001-06-09 05:00:46 +00:00
Ellis Whitehead
a9c55776ae KAccel: allow for 4-modifier setup defaults, check whether Qt supports the
Meta key.

KGlobalAccel: improve X key ungrabbing for key map changes.

KKeyDialog: Allow caller to specify whether normal keys (i.e., 'A', 'B') can
be used as shortcuts and whether the Meta key can be used in a shortcut.

KeyConfog: Add support for a second default configuration. Add support for a
user with a Meta key not to default to 4-modifier setup (not yet working
completely).

Workspace: Added 'Window iconify all'.  Still speed work -- best might be to
merge this with 'Show Desktop'

kcontrol/keys/main.cpp: a bit of capitalization

kcontrol/kwm/mouse, kwin/client, kwin/options: Let user use Meta key for
window resizing/moving/etc

*bindings.cpp: add 4-modifier setup defaults

svn path=/trunk/kdebase/kcontrol/; revision=100877
2001-06-07 18:17:24 +00:00
Karol Szwed
9c0f71e601 Making reconfigure() timer buffered so that we don't get flooded with
too many reconfigure events at once, which would re-client all windows
multiple times and cause lots of ugly flicker.

svn path=/trunk/kdebase/kwin/; revision=100375
2001-06-04 14:01:00 +00:00
Ellis Whitehead
e2b6a56386 Compared a Qt key code to an X key code and lost the ability to use Escape
to abort switch between programs/desktops mode.  Fixed.

svn path=/trunk/kdebase/kwin/; revision=100319
2001-06-04 06:43:31 +00:00
Ellis Whitehead
b4a70d38fe A couple simplifications in the Program/Desktop switching routine.
svn path=/trunk/kdebase/kwin/; revision=100272
2001-06-03 22:29:12 +00:00
Dirk Mueller
5a49a411dd whoops, restoring binary compatibility in case we want it (SC was given)
svn path=/trunk/kdebase/kwin/; revision=100140
2001-06-03 09:30:19 +00:00
Dirk Mueller
8e8dce5e64 Xinerama support, patch by Balaji Ramani <balaji@spinnakernet.com>
svn path=/trunk/kdebase/kwin/; revision=100136
2001-06-03 09:04:03 +00:00
Ellis Whitehead
1a3f866309 When switching between programs, Workspace was calling KGlobalAccel::setEnabled(false) and then KGlobalAccel::setEnabled(true), causing hundreds of XGrabKey and XUngrabKey calls. This problem was multiplied by four times by mods i made to KGlobalAccel allowing it to ignore the ModeSwitch and ScrollLock keys. The sluggishness became apparent, so now it calls KGlobalAccel::setKeyEventEnabled( bool ), which merely disables processing, rather than changing any X-server behavior. Much faster.
svn path=/trunk/kdebase/kwin/; revision=99589
2001-05-31 06:22:52 +00:00
Luboš Luňák
0603cb240d 'Logout' and 'Lock screen' keybindings don't really belong to kwin, they
belong to kdesktop.

svn path=/trunk/kdebase/kwin/; revision=99466
2001-05-30 13:23:53 +00:00
Helge Deller
6536d083a0 added global "Lock Screen" key-binding (CTRL-ALT-L)
svn path=/trunk/kdebase/kwin/; revision=99436
2001-05-30 10:31:03 +00:00
Ellis Whitehead
03d449b0b8 Add flag for working with Meta-key
svn path=/trunk/kdebase/kcontrol/; revision=99403
2001-05-30 05:57:16 +00:00
Luboš Luňák
322eaa8daa Use the new app startup info stuff to implement start_on_desktop.
svn path=/trunk/kdebase/kwin/; revision=98620
2001-05-24 21:01:09 +00:00
Luboš Luňák
10672210ae Better focus handling when sending windows to other desktops.
svn path=/trunk/kdebase/kwin/; revision=98455
2001-05-23 20:39:28 +00:00
Dirk Mueller
e3766f1c3b Xinerama support (patch by Balaji Ramani <balaji@spinnakernet.com>)
svn path=/trunk/kdebase/kwin/; revision=96584
2001-05-12 00:33:43 +00:00
Henrik Johnson
10baa96bc7 Add key bindings to move current window to next/previous desktop
svn path=/trunk/kdebase/kwin/; revision=96538
2001-05-11 21:38:00 +00:00
Carsten Pfeiffer
3e28074e23 Configure WindowManager
svn path=/trunk/kdebase/kwin/; revision=96232
2001-05-10 17:54:57 +00:00
Luboš Luňák
1034a53451 Make KWinModule::activeWindowChanged() emit with 0 when there's no window
active - no need to try to focus windows that don't accept it anyway unless
forced to.

svn path=/trunk/kdebase/kwin/; revision=96046
2001-05-09 20:06:46 +00:00
Martijn Klingens
c0d943b01a Added some icons to the popup menus
svn path=/trunk/kdebase/kwin/; revision=95333
2001-05-05 18:28:41 +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
Matthias Ettrich
d9a7551774 window snapping for all windows, including dialogs (suggestion by Melchior Franz)
svn path=/trunk/kdebase/kwin/; revision=93936
2001-04-25 16:15:54 +00:00
Waldo Bastian
42291d5b87 Make Workspace a singleton, accesible via Workspace::self()
svn path=/trunk/kdebase/kwin/; revision=93375
2001-04-22 06:51:07 +00:00
Waldo Bastian
57f4808d0f Make resource management in clients easier with these three functions:
init() called after client got loaded
deinit() called when client is about to get unloaded
reset() called once before Options::resetClients() is emitted

svn path=/trunk/kdebase/kwin/; revision=93372
2001-04-22 05:39:17 +00:00
Daniel Molkentin
5c63088d15 - popup->insertItem(i18n("&Decoration"), deco );
+       // danimo: Tackat says: use kcontrol!
+       // Will remove the stuff behind later
+       // popup->insertItem(i18n("&Decoration"), deco );

svn path=/trunk/kdebase/kwin/; revision=92401
2001-04-16 22:03:28 +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
Luboš Luňák
d194f74314 Reduce wallpaper repaints during desktop switching.
svn path=/trunk/kdebase/kwin/; revision=90111
2001-04-03 12:50:32 +00:00
Luboš Luňák
6261311a69 I think I've finally found the right place for the propagateClients() call.
Now KWinModule will emit windowAdded() after all properties are set
correctly, but still before activeWindowChanged().
If it breaks something, beat me.

svn path=/trunk/kdebase/kwin/; revision=90016
2001-04-02 22:12:54 +00:00
Adriaan de Groot
2b0e89325f Added window raise-or-lower
svn path=/trunk/kdebase/kwin/; revision=89959
2001-04-02 16:17:06 +00:00
Leon Bottou
715dcc3beb Workspace::storeLegacySession() now uses kwin_time.
svn path=/trunk/kdebase/kwin/; revision=89469
2001-03-30 19:37:40 +00:00
Luboš Luňák
c125639ccb Make KWinModule first emit windowAdded(), then activeWindowChanged().
svn path=/trunk/kdebase/kwin/; revision=89414
2001-03-30 11:50:22 +00:00
Luboš Luňák
4c03fa5c6f Less flickering when switching virt. desktops.
svn path=/trunk/kdebase/kwin/; revision=89410
2001-03-30 11:15:15 +00:00
Matthias Ettrich
9547820ecc re-enabled the nice feature that Alt-Tab and Ctrl-Tab won't do anything
if there are popup windows open (that is, if we cannot obtain a mouse pointer
grab). Avoids "hanging" Window or Desktop boxes.

This broke when the (otherwise very nice) transition to KGlobalAccel was
introduced.

svn path=/trunk/kdebase/kwin/; revision=89105
2001-03-28 12:44:31 +00:00
Karol Szwed
fe44db9631 Added a dcop signal "dcopResetAllClients()" to allow other apps to be notified
when the user has changed the current kwin client decoration via the titlebar.

svn path=/trunk/kdebase/kwin/; revision=88294
2001-03-23 09:28:40 +00:00
Leon Bottou
41e4bffe40 Removed possibility of X errors in the Client::staticXXXX() functions.
Cosmetic changes to Workspace::storeLegacySession().

svn path=/trunk/kdebase/kwin/; revision=87983
2001-03-20 20:48:40 +00:00
Luboš Luňák
944967a8e1 Made Alt+Tab , Ctrl+Tab configurable. Also added in kcontrol module missing option
to make Alt+Tab to go either through all windows or only the ones on the current
desktop. If you get keyboard lock-ups because of this, yell.
I wonder how many bugreports I will be able to close because of this :).

svn path=/trunk/kdebase/kwin/; revision=87801
2001-03-19 20:05:36 +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
George Staikos
a888d424c6 The new refresh code. This will refresh the entire desktop for you,
background, icons and windows!

svn path=/trunk/kdebase/kwin/; revision=86920
2001-03-14 10:16:08 +00:00
Matthias Ettrich
11f1ab2b60 reduce the number of X-errors. Thanks to Lars Hete for this one.
svn path=/trunk/kdebase/kwin/; revision=86918
2001-03-14 09:21:16 +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
Matthias Ettrich
33c69f053c small activation state fix (thanks to Simon Hausmann for the bugreport)
svn path=/trunk/kdebase/kwin/; revision=86636
2001-03-12 18:03:17 +00:00
Wilco Greven
8e8341d6ec GUI: Resolve conflicting accelerators. Fixes #20579. I assigned r as
accelerator for "Store settings" instead of t which was already used by
     "To Desktop".

svn path=/trunk/kdebase/kwin/; revision=84957
2001-03-02 10:35:25 +00:00
Waldo Bastian
d577f604e2 It's slashdot feature request time!
+       HMaximizeOp,
+       VMaximizeOp,
+       LowerOp,

svn path=/trunk/kdebase/kwin/; revision=84551
2001-02-27 07:19:52 +00:00
Matthias Elter
c48346551b Patch by Matthias Ettrich:
Changing the focus policy does not reset all client styles.

svn path=/trunk/kdebase/kwin/; revision=83927
2001-02-21 18:29:24 +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
Cristian Tibirna
5db5950bc1 CT: kill off-by-one bug in smart placement. Thanks to Michael Driscoll for
bug report, bug analysis and patch review.

svn path=/trunk/kdebase/kwin/; revision=83151
2001-02-16 18:05:27 +00:00
David Faure
f14bbd47a4 - area = QApplication::desktop()->geometry();
+    area = QRect( 0, 0, 0, 0 ); // bogus value so that updateClientArea does the right thing
This fixes the icons being put on the topleft corner on startup.
updateClientArea wasn't setting the values in NETWM because it didn't detect
a change (until kicker started).

svn path=/trunk/kdebase/kwin/; revision=82160
2001-02-10 00:27:26 +00:00
bhughes
7a9862f4ee multihead in kdebase
svn path=/trunk/kdebase/kcontrol/; revision=81587
2001-02-06 18:32:07 +00:00
Matthias Ettrich
f788868318 fixed focus problems with qt-2.2.4 (see separate mail on kde-core-devel)
svn path=/trunk/kdebase/kwin/; revision=81151
2001-02-03 12:30:46 +00:00
Matthias Ettrich
3deaa52496 cooperate with qt-2.2.4 (the deadkey popup fix) and qt-copy.
Don't update the frame decoration if it didn't change, I don't want
flicker when changing the focus policy.

svn path=/trunk/kdebase/kwin/; revision=80891
2001-02-01 01:13:44 +00:00
Matthias Ettrich
8ba06abb33 loadFakeSessionInfo() in initialization
svn path=/trunk/kdebase/kwin/; revision=80299
2001-01-27 19:24:15 +00:00
Waldo Bastian
03fc02caf3 Delay resetting client decorations a bit in some cases, maybe we have to do
it anyway later on in which case we can save some flicker & CPU by doing it
only once.

svn path=/trunk/kdebase/kwin/; revision=80040
2001-01-25 19:17:17 +00:00
Matthias Ettrich
d2e0e0529b disabled the special treatment of system-tray parents for iconify()
Reason: it didn't work. This is the least intrusive and cleanest fix for it.

svn path=/trunk/kdebase/kwin/; revision=79884
2001-01-24 16:47:44 +00:00
Rik Hemsley
5198b0b270 Don't change maximise mode of windows when resetting
svn path=/trunk/kdebase/kwin/; revision=79285
2001-01-20 21:03:12 +00:00
Waldo Bastian
8190667206 Let reconfigure() reparse plugin setting.
svn path=/trunk/kdebase/kwin/; revision=78491
2001-01-16 23:54:45 +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 Elter
e048421030 Workspace::activateClient does not flicker any more now.
The problem was that when switching to a window on a different desktop via the taskbar setCurrentDesktop made a different window active for a second.

svn path=/trunk/kdebase/kwin/; revision=77821
2001-01-13 14:57:16 +00:00
bhughes
96c420e927 kwin supports a good chunk of the NETWM spec... let's report it
svn path=/trunk/kdebase/kwin/; revision=77691
2001-01-12 19:44:40 +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
a189cb2c45 some attempt for dirk
svn path=/trunk/kdebase/kwin/; revision=76503
2001-01-05 18:28:24 +00:00
Waldo Bastian
f21e0fd688 Send notifications on desktop changes.
svn path=/trunk/kdebase/kwin/; revision=75432
2000-12-21 21:04:52 +00:00
Cristian Tibirna
37ef0caae2 CT: handle Control-Tab at run time, not only at start time. This should
silence a few bug reports from Emacs users

svn path=/trunk/kdebase/kwin/; revision=75146
2000-12-17 21:57:52 +00:00
Dirk Mueller
bd3140b6b7 try not to place windows behind always on top windows in smart
placement code. Fix found by Cristian Tibirna

svn path=/trunk/kdebase/kwin/; revision=75050
2000-12-17 03:23:34 +00:00
Matthias Ettrich
c1eac4d5d0 hopefully less frame drawing
svn path=/trunk/kdebase/kwin/; revision=74802
2000-12-14 11:35:12 +00:00
Matthias Ettrich
2d401d3acc more netwm details
svn path=/trunk/kdebase/kwin/; revision=71162
2000-11-17 16:39:47 +00:00
Matthias Ettrich
258a7be78a make kwin adjust to shape changes
svn path=/trunk/kdebase/kwin/; revision=71049
2000-11-16 19:08:05 +00:00
Matthias Ettrich
8dde856133 small fix for >= 10 desktops (thanks to Keunwoo Lee)
svn path=/trunk/kdebase/kwin/; revision=70816
2000-11-14 14:12:54 +00:00
Richard J. Moore
99fa5f16ed Added a new method to the DCOP interface that displays the window menu
for a specified WId.

svn path=/trunk/kdebase/kwin/; revision=70680
2000-11-12 20:25:21 +00:00
Alexander Neundorf
285841c790 some minor changes in adjustClientPos(), so that the flag set via the
new checkbox in the control center is honored

alex

svn path=/trunk/kdebase/kwin/; revision=69737
2000-11-02 18:15:39 +00:00
Alexander Neundorf
ac87507e17 And here we go, now we have to snapping styles in kwin, the classic
"magnetic" style and the new "barrier" style.
To enable the new style insert MagneticBorders=off in your kwinrc.
The gui for the control center will follow the next days.
Anybody a good idea how to call it ?
Two radiobuttons, one "Magnetic borders", the other one "Barrier Borders" ?

Alex

svn path=/trunk/kdebase/kwin/; revision=69692
2000-11-02 08:33:00 +00:00
Matthias Ettrich
25c292f3a1 removed sticky again.
"sticky" is the wrong term. In order to make it easier to combine
different window managers, we removed it. In the NET specs, sticky
means something entirely different.

What you want is "On All Desktops" and it's already available in
the menu under ToDesktop->AllDesktops

svn path=/trunk/kdebase/kwin/; revision=69381
2000-10-30 09:58:08 +00:00
Wilco Greven
2e93aab89b GUI Add 'Sticky' to the window operations menu.
svn path=/trunk/kdebase/kwin/; revision=69290
2000-10-29 14:06:12 +00:00