Commit graph

526 commits

Author SHA1 Message Date
Luboš Luňák
6b3d8e134a Implemented _NET_MOVERESIZE_WINDOW.
Moved KWin code related to configure request to geometry.cpp to a common function.

svn path=/trunk/kdebase/kwin/; revision=255355
2003-10-01 12:08:53 +00:00
Luboš Luňák
ce37c50587 Small cleanups.
svn path=/trunk/kdebase/kwin/; revision=255049
2003-09-30 10:55:06 +00:00
Luboš Luňák
a406bee353 Let decoration get show/hide events when showing/hiding the frame.
svn path=/trunk/kdebase/kwin/; revision=254814
2003-09-29 11:21:11 +00:00
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
e82bcc09ac Move Client::keyPressEvent() to the source file where it belongs.
svn path=/trunk/kdebase/kwin/; revision=254809
2003-09-29 11:19:39 +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
1e61c406f9 Temporary fix for #64516.
svn path=/trunk/kdebase/kwin/; revision=252394
2003-09-19 14:53:39 +00:00
Luboš Luňák
c433d78a51 Don't use the iconic name when shaded.
svn path=/trunk/kdebase/kwin/; revision=252354
2003-09-19 11:16:40 +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
d5dd99ba82 Ensure that KDecoration::width() etc. and KDecoration::widget()->width are
in sync.

svn path=/trunk/kdebase/kwin/; revision=252350
2003-09-19 11:13:24 +00:00
Luboš Luňák
a8b5c7365c Keep workarea edge distance when turning on/off decoration.
Reduce the maximum distance for keeping it at the edge to 1/10 of workarea size.
Update edge distance when changing geometry.

svn path=/trunk/kdebase/kwin/; revision=252349
2003-09-19 11:13:04 +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
Marc Mutz
ca09935838 gethostname can fail :-)
svn path=/trunk/kdebase/kdm/; revision=239075
2003-07-25 12:35:58 +00:00
Luboš Luňák
caf31eb936 Fix for #54495 in HEAD too.
svn path=/trunk/kdebase/kwin/; revision=231991
2003-06-17 17:23:43 +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
Chris Lee
41f35632d2 HEAD version of my kwin_iii patch that I just committed.
This fixes the mouse cursor when the window is moving.

-clee

svn path=/trunk/kdebase/kwin/; revision=231503
2003-06-15 07:28:38 +00:00
Karol Szwed
cf8e983d87 Do not use saveunder in opaque modes as it slows down
moving/resizing significantly.
(kwin_iii port later)

svn path=/trunk/kdebase/kwin/; revision=231502
2003-06-15 07:19:05 +00:00
Luboš Luňák
6b04039715 r1.344.2.50 from kwin_iii.
svn path=/trunk/kdebase/kwin/; revision=227049
2003-05-21 12:19:50 +00:00
Luboš Luňák
fe48c6cdc2 #57990 too.
svn path=/trunk/kdebase/kwin/; revision=225864
2003-05-14 17:10:50 +00:00
Luboš Luňák
9cb2c00de3 Cleanup of KWin::Info -> KWin::WindowInfo.
Correct detection of minimized windows for KWin HEAD and kwin_iii.
Correct detection of window type even if the list includes unsupported ones.

svn path=/trunk/kdebase/kwin/; revision=219298
2003-04-09 14:20:55 +00:00
Luboš Luňák
52b0c311c5 #54730 too.
svn path=/trunk/kdebase/kwin/; revision=215050
2003-03-19 15:43:41 +00:00
Luboš Luňák
06bc34faab #48836 too.
svn path=/trunk/kdebase/kwin/; revision=214849
2003-03-18 18:24:32 +00:00
Luboš Luňák
bf73b30a62 Another guess at what NET::Override is actually supposed to mean.
CCMAIL: 55515-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=213599
2003-03-13 13:06:57 +00:00
Luboš Luňák
555b5c10b8 #55797
svn path=/trunk/kdebase/kwin/; revision=213364
2003-03-12 14:43:06 +00:00
Luboš Luňák
bc4d2d507a HEAD needs one more fix for #55510.
svn path=/trunk/kdebase/kwin/; revision=212846
2003-03-10 17:36:05 +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
325e45ee26 With 'konqueror --preload', create a KonqMainWindow too.
And KWin related fixes - hack for _KDE_NET_USER_TIME, and don't display
topmenus for non-active windows.

svn path=/trunk/kdebase/kwin/; revision=210251
2003-02-28 14:16:31 +00:00
Luboš Luňák
b511a929bc Fix #54190.
svn path=/trunk/kdebase/kwin/; revision=206821
2003-02-14 08:29:47 +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
Karol Szwed
4577f0f474 Add a checkbox to enable/disable the geometry tip, making it _OFF_ by default,
as was planned. Also, it should never crash now.

Hopefully this will make pmax a bit happier ;-)

svn path=/trunk/kdebase/kwin/; revision=198711
2003-01-10 10:54:57 +00:00
George Staikos
b35e581f69 This GeometryTip is not acceptable.
- Make it "opt-in" configurable, not default to on
   - I have had instances of the widget being stuck on the screen and eventually
     causing a kwin crash
   - It conflicts nicely with konsole's resize widget

svn path=/trunk/kdebase/kwin/; revision=198652
2003-01-10 04:03:57 +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
eca86b5a53 Partially revert r1.333 and generate suitable maximize restore geometry
and position again.

svn path=/trunk/kdebase/kwin/; revision=198015
2003-01-07 14:23:37 +00:00
Karol Szwed
235b534b26 Add a window geometry tip when users move/resize a window. Currently it is
enabled by default, but will be made configurable soon. There is a known
issue with an incorrect geometry shown with konsole, but that's its fault,
and I'll get to that shortly (xterm does the right thing).

Disclaimer:
If it jams - force it. If it breaks, it probably needed replacing anyway.

svn path=/trunk/kdebase/kwin/; revision=197992
2003-01-07 12:42:32 +00:00
Luboš Luňák
a541e25721 Remove the state flags from the window on withdraw too, and do so only
when really withdrawing the window.

svn path=/trunk/kdebase/kwin/; revision=197778
2003-01-06 13:07:30 +00:00
Luboš Luňák
a3bd5ae078 Try to fix #32969 by keeping the mouse grab even for active windows. People
not wanting this can disable click raise. Let's see if it breaks something.
(Related to this: kwin/client.cpp r1.309,r1.308,r1.305,r1.304,r1.303.)
TODO: the grab could be released at least as long as the window is topmost
and active

svn path=/trunk/kdebase/kwin/; revision=196998
2003-01-02 16:36:00 +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
9e3efc9cd9 "implement" NET::Sticky
and ignore client requests to change NET::Hidden

svn path=/trunk/kdebase/kwin/; revision=196522
2002-12-30 20:08:31 +00:00
Luboš Luňák
c595302a1f Don't let normal windows appear out of workarea, even if they're stupid
and ask for it.

svn path=/trunk/kdebase/kwin/; revision=194509
2002-12-17 20:16:04 +00:00
Luboš Luňák
b5e356620a Fix #15016.
svn path=/trunk/kdebase/kwin/; revision=194508
2002-12-17 20:11:59 +00:00
Luboš Luňák
1519056ee1 Grmbl. Make the NET::Menu -> NET::TopMenu hack less strict.
svn path=/trunk/kdebase/kwin/; revision=189732
2002-11-19 14:44:11 +00:00
Luboš Luňák
dfcc58b00f Fix #49369 and generally try to improve window matching.
Use WM_WINDOW_ROLE also for fake sessions (Save window settings).
Remember also window type.

svn path=/trunk/kdebase/kwin/; revision=185456
2002-10-24 16:22:15 +00:00
Luboš Luňák
7c33e280ef Fix #39172. Send the synthetic configure notify event _after_ reparenting
into WindowWrapper (in WindowWrapper::show() triggered by Client::show()).
Some toolkits go up the window hiearchy when finding the "real" position
of the window (i.e. the topleft decoration border corner), and if they
receive the ReparentNotify after the synthetic ConfigureNotify, they'll
miscalculate it. (Hmm, I wonder how Qt does it since it gets it right.)

CCMAIL: 39172-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=185453
2002-10-24 15:47:09 +00:00
Luboš Luňák
4304971dfd Fix #22189.
CCMAIL: 22189-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=185452
2002-10-24 15:39:36 +00:00
Luboš Luňák
a6304cef72 Fix #30506 by handling the desktop and sticky flag together. The is_sticky
flag should go, desk == OnAllDesktops should be the same.

svn path=/trunk/kdebase/kwin/; revision=185277
2002-10-23 15:52:18 +00:00
Luboš Luňák
a5e9e177c0 Back to qt_window_role (KWin really shouldn't use Qt's internals :( ).
svn path=/trunk/kdebase/kwin/; revision=185265
2002-10-23 14:38:10 +00:00
Dirk Mueller
9e670223b9 remove debug output I accidentally committed and fix the class documentation
svn path=/trunk/kdebase/kwin/; revision=185193
2002-10-22 20:41:49 +00:00
Dirk Mueller
cb1c1ca86d argh, bloody Qt!!!
they renamed the internal variable we're using here :-)

svn path=/trunk/kdebase/kwin/; revision=185172
2002-10-22 18:17:44 +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
5aaf02f39f Oh boy, was I really so stupid to make assumptions based on what xv does?
svn path=/trunk/kdebase/kwin/; revision=184487
2002-10-18 13:25:19 +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
a8f13c1c9b X resource name is the same for all app's windows, X resource class may
differ for the same app.
David says the correct spelling is 'faux pas' :).

svn path=/trunk/kdebase/kwin/; revision=184347
2002-10-17 14:48:34 +00:00
Luboš Luňák
9003c81c4b Only added a comment.
svn path=/trunk/kdebase/kwin/; revision=181849
2002-10-03 10:04:10 +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
c8c79c3a02 Don't fix the window position if it will be placed using a placement policy.
svn path=/trunk/kdebase/kwin/; revision=181274
2002-09-30 12:00:08 +00:00
Luboš Luňák
826765b1df Don't remove focus from an auto-shaded window. That's the focus policy's
job to do it if it wants.

svn path=/trunk/kdebase/kwin/; revision=181231
2002-09-30 09:34:54 +00:00
Michael Brade
13a6aebdb3 Fixed "KNotes not movable with LMB", ok'ed by Lubos.
@@ -3011,7 +3011,7 @@ bool Client::isMovable() const
 {
     return may_move &&
         ( windowType() == NET::Normal || windowType() == NET::Dialog || windowType() == NET::Toolbar
-            || windowType() == NET::Menu ) &&
+            || windowType() == NET::Menu || windowType() == NET::Override ) &&
         ( !isMaximized() || ( options->moveResizeMaximizedWindows || max_mode != MaximizeFull ) );
 }

svn path=/trunk/kdebase/kwin/; revision=180738
2002-09-27 18:21:45 +00:00
Luboš Luňák
4c9d70a011 Fix #34085.
svn path=/trunk/kdebase/kwin/; revision=180512
2002-09-26 11:56:21 +00:00
Luboš Luňák
827740d489 Fix #47239 - if the window has specified resize increments, don't
remove left/right border for it when it's maximized, that would resize the window

svn path=/trunk/kdebase/kwin/; revision=180151
2002-09-24 17:18:02 +00:00
Aaron J. Seigo
afc58ef42e wrong event raised on shading, bug #21417
-        Events::raise( s ? Events::ShadeDown : Events::ShadeUp );
+        Events::raise( s ? Events::ShadeUp : Events::ShadeDown );

svn path=/trunk/kdebase/kwin/; revision=179541
2002-09-22 03:31:12 +00:00
Matthias Ettrich
251c8ec906 disable the close icon (rather than not-checking it!) on non-closeable
windows. Make toolbars closeable by default (I really love to be able
to close kpager again)

svn path=/trunk/kdebase/kwin/; revision=178978
2002-09-19 17:22:31 +00:00
Luboš Luňák
20f980dff7 Make sure also dialogs are not placed under toplevel menubar or
Kicker at the top edge.

svn path=/trunk/kdebase/kwin/; revision=177159
2002-09-11 13:02:54 +00:00
Matthias Ettrich
7a9e7dbb24 WM applet fixes: ignore withdrawn windows on a few more places, and (slightly hacky)
set the skip-taskbar NETWM hin on windows that have an initial_state of WithDrawn

svn path=/trunk/kdebase/kwin/; revision=176459
2002-09-08 15:45:26 +00:00
Matthias Ettrich
e579db0c68 better fix for the click-raise problem (one that actually keeps the taskbar functional...)
svn path=/trunk/kdebase/kwin/; revision=176420
2002-09-08 12:57:41 +00:00
Matthias Ettrich
b301468a80 in takeFocus, do not suppress the activation of dock windows when
those are not stays on top

svn path=/trunk/kdebase/kwin/; revision=176411
2002-09-08 12:09:55 +00:00
Luboš Luňák
3d3c5fa658 Fix #47434 .
svn path=/trunk/kdebase/kwin/; revision=175815
2002-09-05 07:57:53 +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
Matthias Ettrich
9edf8b7563 Release the passive button grab for active inner windows, essentially
reverting the last two patches.

Releasing the grab was actually a _feature_, not a bug. This is
necessary to keep legacy applications running (e.g. some Motif apps).
Unfortunately a replayed mouse event sometimes is not the same as the
original event!

This has the other nice benefit that you can activate a window without
raising it by clicking onto the titlebar with LMB and use the window
without it being raised.

If this has problems with some new kicker behaviour, it's kicker that needs
to be adjusted, not kwin.

svn path=/trunk/kdebase/kwin/; revision=174276
2002-08-28 12:24:10 +00:00
John Firebaugh
94dda57f2c Fix for the fix: pass clicks for Activate actions when we are already active.
svn path=/trunk/kdebase/kwin/; revision=173645
2002-08-25 01:04:42 +00:00
John Firebaugh
944e892c9b Make sure active but not topmost windows get raised appropriately on inner-
window clicks.

CCMAIL:45021-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=173636
2002-08-24 22:03:49 +00:00
Luboš Luňák
0714a8d003 Get rid of client_popup, as (not) discussed on kwin@.
This patch should fix such interesting things like closing the toplevel
menubar with Alt+F4 or moving Kicker to a different desktop using
keyboard shortcuts.

svn path=/trunk/kdebase/kwin/; revision=170646
2002-08-06 07:45:29 +00:00
Luboš Luňák
487f30a4ec Some fixes for the NET::TopMenu/NET::Menu hack.
svn path=/trunk/kdebase/kwin/; revision=168742
2002-07-25 20:08:09 +00:00
Luboš Luňák
a815fc2f6e It wasn't an over-optimization, there was just a small bug elsewhere.
svn path=/trunk/kdebase/kwin/; revision=168568
2002-07-24 19:46:20 +00:00
Karol Szwed
7c72db2685 Make the mouse cursor change again when resizing or hovering over the window border
by removing an over-optimisation.

svn path=/trunk/kdebase/kwin/; revision=166431
2002-07-13 14:44:01 +00:00
Luboš Luňák
1fab5c76ce NET::Menu -> NET::TopMenu, and make NET::Menu mean what it is supposed to mean.
+ backward compatibility hack

svn path=/trunk/kdebase/kwin/; revision=165076
2002-07-05 20:05:22 +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
9b03ba50c2 CT: two new non-placement policies. No GUI config.
Edit kwinrc and use either of:

Placement=StupidlyCentered
Placement=StupidlyZeroCornered

and then, at a prompt:

dcop kwin KWinInterface reconfigure

svn path=/trunk/kdebase/kwin/; revision=163755
2002-06-29 06:31:33 +00:00
Anders Widell
f1638b1238 Fixed null pointer segfault
svn path=/trunk/kdebase/kwin/; revision=158475
2002-05-29 19:11:01 +00:00
Matthias Ettrich
509022ea62 be less agressive in not stealing focus. This makes xv (among others)
usable with KDE again

svn path=/trunk/kdebase/kwin/; revision=149865
2002-04-16 19:23:45 +00:00
Stephan Kulow
c19eca1a32 rearranged bit field initialization, so valgrind has not to guess
svn path=/trunk/kdebase/kwin/; revision=143392
2002-03-17 13:32:05 +00:00
Cristian Tibirna
e517337e8d CT: in show(), unshade only when deiconifying. Fixes #38983
svn path=/trunk/kdebase/kwin/; revision=141328
2002-03-06 11:20:13 +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
Stephan Kulow
cc754a1eb1 reset user time stamp on withdraw (makes reuse of dialogs possible). Great stuff!
svn path=/trunk/kdebase/kwin/; revision=140743
2002-03-03 23:12:51 +00:00
Cristian Tibirna
186b4b54ac CT: no electric borders when resizing. Done by Matthias Ettrich, reviewed and tested by me.
svn path=/trunk/kdebase/kwin/; revision=140610
2002-03-03 16:30:33 +00:00
Cristian Tibirna
daee285811 CT: abort moving with Escape. Reviewed by M.Ettrich
svn path=/trunk/kdebase/kwin/; revision=140567
2002-03-03 13:59:50 +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
Cristian Tibirna
78dde9c675 CT: even better fix for bogus unshades during fast move
svn path=/trunk/kdebase/kwin/; revision=140397
2002-03-03 00:21:56 +00:00
Cristian Tibirna
bf0cffbf81 CT: fix bogus shades with hover_unshade and fast mouse moving.
svn path=/trunk/kdebase/kwin/; revision=140376
2002-03-02 23:23:52 +00:00
Matthias Ettrich
5af9e44aa6 be more conservative with not stealing focus, basically do not not steal
focus for transient windows.

There have been issues with some konqueror dialogs on some machines, and
this is the safest solution for now.

svn path=/trunk/kdebase/kwin/; revision=140339
2002-03-02 21:18:45 +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
Matthias Ettrich
6c9397cc51 do not stack under desktops
svn path=/trunk/kdebase/kwin/; revision=140195
2002-03-02 15:00:59 +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
c33c06217d do not do the stackUnder magic when restoring the session
svn path=/trunk/kdebase/kwin/; revision=139918
2002-03-01 16:28:32 +00:00
Matthias Ettrich
324dc14432 handle inner-application dialogs more safely
svn path=/trunk/kdebase/kwin/; revision=139914
2002-03-01 16:21:38 +00:00
Luboš Luňák
d0dc9e979d Make Alt+left mouse move windows only when no other keyboard modifier is
pressed.

svn path=/trunk/kdebase/kwin/; revision=139841
2002-03-01 11:11:31 +00:00
Matthias Ettrich
f55f2682cf make kwintv happy: send synthetic configure notify events when
doing opaque moves

svn path=/trunk/kdebase/kwin/; revision=139708
2002-03-01 00:43:29 +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
7d50916939 CT: fix moving with all mouse buttons for ClickToFocus
svn path=/trunk/kdebase/kwin/; revision=139639
2002-02-28 22:08:07 +00:00
Cristian Tibirna
b1707e20c1 CT: fix a stupid jdk-1.3.1 bug. When hiding a dialog and showing it again, the dialog was gaining iconic state.
svn path=/trunk/kdebase/kwin/; revision=139610
2002-02-28 20:29:13 +00:00
Cristian Tibirna
f13d425d59 CT: closes #38320 (I didn't manage to reproduce it though)
svn path=/trunk/kdebase/kwin/; revision=139498
2002-02-28 15:41:22 +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
Cristian Tibirna
e953d5e559 CT: move window by titlebar with any mouse button (approved by Matthias Ettrich)
svn path=/trunk/kdebase/kwin/; revision=139239
2002-02-27 21:01:01 +00:00
Luboš Luňák
6d3a097842 Fix #16742 .
svn path=/trunk/kdebase/kwin/; revision=139224
2002-02-27 20:32:49 +00:00
Luboš Luňák
64901d9315 Call setShade() after maximize() when restoring windows ( maximize() calls
setShade( false ) ). Fixes #38700 and #36995 .

svn path=/trunk/kdebase/kwin/; revision=138771
2002-02-26 17:30:33 +00:00
Matthias Ettrich
8c368ed7bb support the ksmserver fix: treat fullscreen windows that explicitely
ask for stays-on-top slightly different (meaning to not lower them when
another window gets activated)

svn path=/trunk/kdebase/kwin/; revision=134903
2002-02-01 11:51:40 +00:00
Matthias Ettrich
1c3a77ac96 set (and reset) the right mouse cursor when resizing with Alt-RMB shortcuts
svn path=/trunk/kdebase/kwin/; revision=132928
2002-01-21 15:34:15 +00:00
Ellis Whitehead
f15d5c7205 Clean-up wrt KKeyNative.
svn path=/trunk/kdebase/kwin/; revision=132461
2002-01-19 04:53:13 +00:00
Dirk Mueller
375f175fbb CVSSILENT: fixincludes
svn path=/trunk/kdebase/khotkeys/; revision=129081
2001-12-29 17:33:05 +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
Carsten Pfeiffer
cc92607174 allow dialogs to be maximized.
fixes #17564 and #30326

svn path=/trunk/kdebase/kwin/; revision=121879
2001-11-11 18:39:07 +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
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
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
Matthias Ettrich
827e9b92be completed fullscreen fix
svn path=/trunk/kdebase/kwin/; revision=113471
2001-09-06 09:21:19 +00:00
Matthias Ettrich
9388aeba3d fixed maximization handling
svn path=/trunk/kdebase/kwin/; revision=113436
2001-09-05 20:40:04 +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
Waldo Bastian
1fe4d5fbff This supposed "safety check" doesn't work. Do the "Right Thing" instead.
-    if (workspace()->activeClient() == this)
-       workspace()->setFocusChangeEnabled(true); // Safety
+    if (moveResizeMode)
+       workspace()->setFocusChangeEnabled(true);

svn path=/trunk/kdebase/kwin/; revision=112142
2001-08-27 21:16:39 +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
18c0f2687a fixed bug 19369@bugs.kde.org
svn path=/trunk/kdebase/kwin/; revision=109466
2001-08-07 09:21:09 +00:00
Matthias Ettrich
c130a8cb4d CurrentTime instead of kwin_time to help David's laptop. Does this help?
svn path=/trunk/kdebase/kwin/; revision=104405
2001-06-29 11:55:24 +00:00
Matthias Ettrich
b7b0f427b0 made full_screen windows work again (there's now a namespace around
NoBorderClient) and define them to stay on top (works now with qt 2.3.1 as
well)

svn path=/trunk/kdebase/kwin/; revision=103793
2001-06-25 15:52:58 +00:00
bhughes
934bd760cb compile fixes for FreeBSD
svn path=/trunk/kdebase/ksysguard/; revision=103271
2001-06-21 08:46:44 +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
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
Luboš Luňák
7afe6d11c7 Reverting r1.242 - WM_NAME is ICCCM, not NET_WM , and it's not UTF8.
svn path=/trunk/kdebase/kwin/; revision=100452
2001-06-04 21:55:14 +00:00
Stephan Kulow
b16109eb07 NET_WM saves in utf-8:
-               s = QString::fromLocal8Bit( (const char*) tp.value );
+               s = QString::fromUtf8( (const char*) tp.value );

svn path=/trunk/kdebase/kwin/; revision=99426
2001-05-30 09:38:18 +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
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
b90a69abc9 Add support for [MR]MB-n-titlebar windowshade
svn path=/trunk/kdebase/kcontrol/; revision=89895
2001-04-02 08:31:58 +00:00
Matthias Ettrich
57e86d69be pretend to be CDE to improve interoperability with Sun's latest JDK.
svn path=/trunk/kdebase/kwin/; revision=89307
2001-03-29 17:21:53 +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
Matthias Ettrich
74b28e4418 better to send some anyway
svn path=/trunk/kdebase/kwin/; revision=88714
2001-03-26 08:31:54 +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
68285bb415 treat "AWTapp" special: obey xSizeHint.x/y
svn path=/trunk/kdebase/kwin/; revision=87985
2001-03-20 21:05:57 +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
Waldo Bastian
00eb8e6c57 Fix for --enable-final
svn path=/trunk/kdebase/kwin/; revision=87826
2001-03-19 21:03:44 +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
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
Wilco Greven
002f6b83c9 Don't unshade shaded windows before minimizing.
svn path=/trunk/kdebase/kwin/; revision=85565
2001-03-06 09:17:43 +00:00
Thomas Leitner
26772fa04e need to specify external references before the "using namespace" directive
to allow the linker to resove them!

svn path=/trunk/kdebase/kwin/; revision=83967
2001-02-22 09:45:19 +00:00
Matthias Ettrich
6b9f88256e Index: client.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/client.cpp,v
retrieving revision 1.222
diff -d -u -r1.222 client.cpp
--- client.cpp  2001/02/19 12:17:03     1.222
+++ client.cpp  2001/02/21 13:39:25
@@ -1152,7 +1152,7 @@
            if ( e.data.l[1] )
                blockAnimation = TRUE;
            iconify();
-       } else if ( e.data.l[1] == NormalState && isIconified() ) {
+       } else if ( e.data.l[0] == NormalState && isIconified() ) {
            if ( e.data.l[1] )
                blockAnimation = TRUE;
            // only show window if we're on current desktop

svn path=/trunk/kdebase/kwin/; revision=83908
2001-02-21 13:41:28 +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
5651bcb69d reenabled maximize smartness
svn path=/trunk/kdebase/kwin/; revision=83642
2001-02-19 12:17:03 +00:00
Matthias Ettrich
aa219e51db Fixed Antonio's focus follows mouse problem:
Index: main.cpp
===================================================================
RCS file: /home/kde/kdebase/kwin/main.cpp,v
retrieving revision 1.42
diff -r1.42 main.cpp
157a158,160
>     case EnterNotify:
>     case LeaveNotify:
>       kwin_time = e->xcrossing.time;

svn path=/trunk/kdebase/kwin/; revision=83624
2001-02-19 09:27:26 +00:00
Waldo Bastian
6f55f7337a Update icon when WMIcon changes.
svn path=/trunk/kdebase/kwin/; revision=83169
2001-02-16 20:58:33 +00:00
Daniel M. Duley
1bc44d136d Commentting out evil maximize behavior ;-)
svn path=/trunk/kdebase/kwin/; revision=82564
2001-02-13 00:46:45 +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
bhughes
d3944b3934 allow kpager/kminipager to see window moves/resizes
@@ -1198,7 +1198,7 @@
     c.width = windowWrapper()->width();
     c.height = windowWrapper()->height();
     c.border_width = 0;
-    XSendEvent( qt_xdisplay(), c.event, TRUE, NoEventMask, (XEvent*)&c );
+    XSendEvent( qt_xdisplay(), c.event, TRUE, StructureNotifyMask, (XEvent*)&c );
 }

svn path=/trunk/kdebase/kwin/; revision=80826
2001-01-31 15:14:40 +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
Matthias Ettrich
440ed4d27f don't set framestrut on move, but on manage
svn path=/trunk/kdebase/kwin/; revision=78846
2001-01-18 16:21:00 +00:00
Matthias Ettrich
87b6129e3f fixed small off-by-one error (shade/unshade)
svn path=/trunk/kdebase/kwin/; revision=78542
2001-01-17 11:40:25 +00:00
Matthias Ettrich
01241073b6 make xswallow work
svn path=/trunk/kdebase/kwin/; revision=78458
2001-01-16 21:29:36 +00:00
Matthias Elter
684fa4983f void Client::setShade( bool s, int hus ):
+     if(!hus)
+       info->setState( shaded?NET::Shaded:0, NET::Shaded );

Actually tell the world that the client got (un)shaded.

svn path=/trunk/kdebase/kwin/; revision=78158
2001-01-15 13:25:39 +00:00
Matthias Ettrich
ef97333d15 small fix
svn path=/trunk/kdebase/kwin/; revision=78049
2001-01-14 20:48:00 +00:00
Matthias Ettrich
927ab8b735 make netwm dialogs movable and give them tab-focus
svn path=/trunk/kdebase/kwin/; revision=78045
2001-01-14 20:25:32 +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
Waldo Bastian
54a5d1b900 Fix (t.i. update) taskbar window-titles when changing window-decorations.
svn path=/trunk/kdebase/kwin/; revision=77928
2001-01-14 06:24:49 +00:00
Matthias Ettrich
cf23bd927c minor iconify/deiconify fix (previous commit broke w2k plugin)
svn path=/trunk/kdebase/kwin/; revision=77557
2001-01-12 01:20:07 +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
a189cb2c45 some attempt for dirk
svn path=/trunk/kdebase/kwin/; revision=76503
2001-01-05 18:28:24 +00:00
Matthias Ettrich
4ec61ec284 small replay issue (exclude desktop and dock)
svn path=/trunk/kdebase/kwin/; revision=76122
2001-01-02 16:30:37 +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
ccc84f2cfe some cleanups
svn path=/trunk/kdebase/kwin/; revision=73923
2000-12-08 11:57:09 +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
641b90f2fa maximize stuff seems to work now
svn path=/trunk/kdebase/kwin/; revision=72980
2000-12-01 20:10:05 +00:00
Matthias Ettrich
c45c162ab0 some more maximize stuff .... I really need to test that myself...
svn path=/trunk/kdebase/kwin/; revision=72975
2000-12-01 18:27:26 +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
40d428b47b more masking
svn path=/trunk/kdebase/kwin/; revision=71173
2000-11-17 18:11:24 +00:00
Matthias Ettrich
5b8bc65b2b more state/mask confusion
svn path=/trunk/kdebase/kwin/; revision=71153
2000-11-17 14:18:44 +00:00
Matthias Ettrich
9c5a135b26 fixed maximization once again
svn path=/trunk/kdebase/kwin/; revision=71051
2000-11-16 19:16:51 +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
8fbc21d202 MouseActivateAndPassClick should not do raise
svn path=/trunk/kdebase/kwin/; revision=68949
2000-10-26 13:44:05 +00:00
Matthias Ettrich
2d59aac1c8 small fix for mac menu when using focus follows mouse (even though this
combination does not make sense at all)

svn path=/trunk/kdebase/kwin/; revision=68919
2000-10-26 08:26:05 +00:00
Matthias Ettrich
144182101d configurable minimize animation
svn path=/trunk/kdebase/kwin/; revision=68794
2000-10-24 14:54:23 +00:00
Nikita V. Youshchenko
c88fc0bc77 Added "IgnorePositionClasses" configuration option to set X classes of windows for which PPosition hint should be ignored. This should lastly solve the invalid Motif windows placement problem
svn path=/trunk/kdebase/kwin/; revision=68724
2000-10-23 18:27:23 +00:00
Matthias Ettrich
7090777e51 reverted latest commit
svn path=/trunk/kdebase/kwin/; revision=68482
2000-10-21 14:26:05 +00:00
Nikita V. Youshchenko
bf97a2aeec Applied motif windows placement workaround from kwm 1.1.2, and added a personal workaround for Netscape
svn path=/trunk/kdebase/kwin/; revision=68436
2000-10-20 21:28:43 +00:00
Matthias Ettrich
cbfa5b50d1 more sane "delete" and "transdelete" events (where missing in many
cases)

svn path=/trunk/kdebase/kwin/; revision=68283
2000-10-19 15:21:00 +00:00
Matthias Ettrich
80b57294e1 my "no unmanaged windows" fix broke the unminimize animation. Works now
again.

svn path=/trunk/kdebase/kwin/; revision=68107
2000-10-17 15:59:10 +00:00
Matthias Ettrich
0b4ba11c29 removed debug out, small fix for mac menu
svn path=/trunk/kdebase/kwin/; revision=68088
2000-10-17 13:09:59 +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
Antonio Larrosa Jimenez
d5ff78e16d Fixes the automatic resizing of windows to a 10x10 rectangle
when pressing Alt and clicking inside the window (just a click)

svn path=/trunk/kdebase/kwin/; revision=68059
2000-10-16 22:01:16 +00:00
Matthias Ettrich
26ee3808bd make verifyTransient() more defensive to help mac menus
svn path=/trunk/kdebase/kwin/; revision=68012
2000-10-16 12:48:36 +00:00
Matthias Ettrich
caf8fda461 no weird desktop switching with race conditions when enabling the mac menu
svn path=/trunk/kdebase/kwin/; revision=68003
2000-10-16 12:08:54 +00:00
Matthias Ettrich
3c8525c963 fix auto raise once again
svn path=/trunk/kdebase/kwin/; revision=68000
2000-10-16 12:00:22 +00:00
Matthias Ettrich
1266db9901 fixed transient_for handling for embedded main windows
Patch reviewed by Lars.

svn path=/trunk/kdebase/kwin/; revision=67756
2000-10-15 14:19:15 +00:00
Rik Hemsley
6ff8139d9e Making NETWinInfo visible.
It's actually a derived class, but we can safely static_cast it back
to NETWinInfo. Makes it easier for clients to use it.

svn path=/trunk/kdebase/kwin/; revision=67689
2000-10-14 23:44:24 +00:00