Commit graph

73 commits

Author SHA1 Message Date
Luboš Luňák
8e09a9bc22 I guess I could finally find some time to work on things for 3.3.
Initial work on kwin rules, i.e. #36377 , per window specific settings.
So far only desktop/above/below work, no GUI, and settings from the old
'Save window settings' are ignored for now.

svn path=/trunk/kdebase/kwin/; revision=315446
2004-05-28 13:51:11 +00:00
Luboš Luňák
5632bb5129 Patch from Christopher J. Suleski (linux tildewave com) implementing #30426.
CCMAIL: 30426-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=315341
2004-05-28 08:53:44 +00:00
Luboš Luňák
4952833028 Fix updateXTime() to make sure the X timestamp doesn't get newer than
timestamp of events still in the X events queue.
CCMAIL: 81693-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=314035
2004-05-24 08:54:04 +00:00
Luboš Luňák
36a1cd4b18 Detect also X focus policy set to PointerRoot, and re-activate the active
window instead of setting focus to null focus window.
CCMAIL: 81145-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=310051
2004-05-10 14:06:32 +00:00
Luboš Luňák
5da0e37909 Handle the case when there's actually no key for 4th modifier.
svn path=/trunk/kdebase/kwin/; revision=306807
2004-04-27 14:59:47 +00:00
Luboš Luňák
6d919922e2 Better implementation for ##36065.
svn path=/trunk/kdebase/kwin/; revision=305578
2004-04-22 12:30:57 +00:00
Luboš Luňák
f0fcba2d6d Oops, fix clickraise.
CCMAIL: 57111-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=304929
2004-04-19 14:29:37 +00:00
Luboš Luňák
f701524d4e Experimental support for #36065 (dragging from a window shouldn't raise it).
Needs a Qt patch.

svn path=/trunk/kdebase/kwin/; revision=304194
2004-04-16 10:23:42 +00:00
Luboš Luňák
1f628f4a5b Support for timestamp in the window restack request.
svn path=/trunk/kdebase/kwin/; revision=304187
2004-04-16 09:43:53 +00:00
Luboš Luňák
a6adcb9056 Ignore FocusIn events for clients which were unmapped by kwin
but had got focus shortly before. Otherwise quick switching between
two virtual desktops with Konsoles can result in demand attention
state.

svn path=/trunk/kdebase/kwin/; revision=295169
2004-03-11 13:15:04 +00:00
Luboš Luňák
ff081c36a0 Fix #76394,
svn path=/trunk/kdebase/kwin/; revision=293762
2004-03-05 14:22:11 +00:00
Luboš Luňák
458573e997 Oops, clicking on the titlebar started drag, broken by last commit.
svn path=/trunk/kdebase/kwin/; revision=293758
2004-03-05 14:07:11 +00:00
Luboš Luňák
e329c3d872 Use a separate InputOnly window covering whole screen because it
reportedly improves move/resize performance on some systems
for some reason which I fail to see, but oh well.
(http://lists.kde.org/?t=107302193400001&r=1&w=2)

svn path=/trunk/kdebase/kwin/; revision=293755
2004-03-05 13:39:27 +00:00
Luboš Luňák
aa8f2d6607 Fix some focus stealing prevention problems when timestamp is not
explicitly specified.

svn path=/trunk/kdebase/kwin/; revision=293135
2004-03-02 16:43:29 +00:00
Luboš Luňák
d2e94b988e Watch properties also on the group leader window, for now only
the startup notification property, but it could be extended
to read icons etc. as well if needed (ICCCM 4.1.2.7).

svn path=/trunk/kdebase/kwin/; revision=291218
2004-02-25 09:51:47 +00:00
Luboš Luňák
53eefc6ed3 Before getting event about focus being set to None, really check if it's
still so before reseting it. Fixes problem with kview run from konsole,
set to fullscreen, set back to normal, closed -> konsole doesn't become
active.

svn path=/trunk/kdebase/kwin/; revision=290622
2004-02-23 17:09:47 +00:00
Peter Rockai
2eb784cf35 Support for NETWM partial struts (_NET_WM_STRUT_PARTIAL, we call them
extended here, ask Lubos why :>). This patch also includes workaround
for kicker (in its current state, without extended-strut support), so it
works in xinerama setups as expected. Thanks go to Lubos for help with
implementation and for review.

svn path=/trunk/kdebase/kwin/; revision=288758
2004-02-17 17:34:00 +00:00
Luboš Luňák
0c051481e9 Fix #74063 - if there's a restacking operation, cancel pending autoraise
for the window.

svn path=/trunk/kdebase/kwin/; revision=286801
2004-02-10 14:46:03 +00:00
Luboš Luňák
5f079f5e3d Fix for #67416 by Martin Koller + my grab code changes to get mouse
clicks even for the active window.

svn path=/trunk/kdebase/kwin/; revision=286702
2004-02-10 09:24:57 +00:00
Luboš Luňák
b525af029e Avoid sending synthetic configure notify events with user moving/resizing
when a real one will be sent.

svn path=/trunk/kdebase/kwin/; revision=284785
2004-02-03 15:18:15 +00:00
Luboš Luňák
10405ee978 Optimize MotionNotify discarding while moving/resizing.
svn path=/trunk/kdebase/kwin/; revision=284784
2004-02-03 15:16:58 +00:00
Luboš Luňák
e5d090ff4d When the X focus gets set to None, reset it to the null focus window,
so that keyboard shortcuts still work.

svn path=/trunk/kdebase/kwin/; revision=284489
2004-02-02 14:17:01 +00:00
Luboš Luňák
52be7d1164 Fix last commit.
svn path=/trunk/kdebase/kwin/; revision=277199
2004-01-06 09:42:00 +00:00
Luboš Luňák
981e44f780 Fix leaking of button grabs.
http://lists.kde.org/?l=kwin&m=107297332416607&w=2

svn path=/trunk/kdebase/kwin/; revision=276957
2004-01-05 13:29:00 +00:00
Luboš Luňák
5a171eac2b If there's a MapRequest in the wrapper window, this means something
has reparented an unknown window inside the wrapper, and wants to show it.
This is either somebody doing something stupid, or it's a save-set saved
window from some crashing application. And save-set is a bit flawed,
as it in fact should reparent to root, not to the closest existing ancestor.
Therefore, act like if it was reparented to root, and manage the window.
Takes care of #68241.

svn path=/trunk/kdebase/kwin/; revision=273671
2003-12-18 12:25:22 +00:00
Luboš Luňák
05b1897258 Make it possible for Client to pass an XEvent to Workspace for handling
it (will be needed for the following MapRequest handling for save-sets).

svn path=/trunk/kdebase/kwin/; revision=273669
2003-12-18 12:20:22 +00:00
Luboš Luňák
c84b674e6a Pass also the currently active window in the _NET_ACTIVE_WINDOW message.
svn path=/trunk/kdebase/kwin/; revision=273668
2003-12-18 12:16:30 +00:00
Luboš Luňák
569224d117 Replace the temporary MousePosition enum naming with something that
doesn't look so silly and doesn't conflict with Qt.

svn path=/trunk/kdebase/kwin/; revision=273144
2003-12-15 15:10:17 +00:00
Luboš Luňák
ba3e612f68 There should be some isMoveResizeMode().
svn path=/trunk/kdebase/kwin/; revision=272513
2003-12-11 18:00:01 +00:00
Luboš Luňák
897e67f79a Partially revert the recent xinerama commit - !isMapped == useCursorPos
was always true, no need for another argument.

svn path=/trunk/kdebase/kwin/; revision=269308
2003-11-24 15:05:50 +00:00
Luboš Luňák
5bbec2c584 Compress MotionNotify events while user moving/resizing, this should
make opaque resizing acceptable again, close #67471, and stop people
complaining.

svn path=/trunk/kdebase/kwin/; revision=269302
2003-11-24 14:38:03 +00:00
Luboš Luňák
162c76cf46 Reset Client::buttonDown if startMoveResize() failed
due to not being able to grab input. Visible with
resizing the shortcut configure dialog, which has grab.

svn path=/trunk/kdebase/kwin/; revision=269293
2003-11-24 14:24:34 +00:00
George Staikos
f859769bb3 use the settings for xinerama placement
svn path=/trunk/kdebase/kwin/; revision=268721
2003-11-21 23:05:35 +00:00
George Staikos
875fc62836 Reimplement Xinerama placement. Patch from Balaji Ramani.
CCMAIL: balaji@yablibli.com

svn path=/trunk/kdebase/kwin/; revision=268719
2003-11-21 23:00:38 +00:00
Luboš Luňák
528b0ed6d7 Fix #65279 - make sure windows hidden by apps are really hidden.
The problem was visible even with { widget.show(); widget.hide(); }.

svn path=/trunk/kdebase/kwin/; revision=268645
2003-11-21 16:46:57 +00:00
Luboš Luňák
1f4cc0d542 Fix problem with kppp's systray icon reappearing
(http://lists.kde.org/?l=kde-core-devel&m=106931968918881&w=2).

svn path=/trunk/kdebase/kwin/; revision=268359
2003-11-20 11:56:01 +00:00
Luboš Luňák
b55f71dcb7 Debug output not necessary anymore.
svn path=/trunk/kdebase/kwin/; revision=268009
2003-11-18 17:07:40 +00:00
Luboš Luňák
d369e69db0 KWin controls showing/hiding of topmenus, block requests for it.
svn path=/trunk/kdebase/kwin/; revision=266171
2003-11-10 18:50:38 +00:00
Luboš Luňák
0d96e60c81 Yet another workaround for the crappy systray mechanism, looking forward
to deprecate it. The tray should work again now.

svn path=/trunk/kdebase/kwin/; revision=263494
2003-10-31 17:56:10 +00:00
Luboš Luňák
240ad036d0 Make system tray temporarily set _KDE_SYSTEM_TRAY_EMBEDDING property on
windows while embedding them, allowing KWin to figure out it's being used
and that it's not going away. This hack avoids the reparenting fight
between KWin and QXEmbed where QXEmbed started to loose after the recent
fixes.
In order to make systray really work, QXEmbed still needs some fixes
related to not destroying the embedded window.

svn path=/trunk/kdebase/kwin/; revision=263178
2003-10-30 10:10:54 +00:00
Luboš Luňák
20ffdc2263 Send synthetic configure notify event when manually moving/resizing.
svn path=/trunk/kdebase/kwin/; revision=258903
2003-10-14 15:33:05 +00:00
Luboš Luňák
984c76f0c1 More shade related changes.
svn path=/trunk/kdebase/kwin/; revision=257727
2003-10-10 13:00:26 +00:00
Luboš Luňák
83835a8757 Small cleanup related to timestamp handling.
svn path=/trunk/kdebase/kwin/; revision=257715
2003-10-10 12:48:09 +00:00
Luboš Luňák
52b2452085 Catch all events related to clients, even if they're not e->xany.window .
svn path=/trunk/kdebase/kwin/; revision=255661
2003-10-02 12:33:51 +00:00
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
ca3a1382f2 Drop configure events compression
a) it's wrong (it may e.g. miss gravity change)
b) I doubt it improves anything

svn path=/trunk/kdebase/kwin/; revision=255354
2003-10-01 12:08:09 +00:00
Luboš Luňák
90281645bf As KPassivePopup shows, things can be annoying even if they don't steal
the focus and just are there. Therefore, as a part of focus stealing
prevention, let's also block raising of windows. Also added special
request for Kicker, as taskbar requests for raising should be obeyed.
(Not that this does anything to KPassivePopup.)

svn path=/trunk/kdebase/kicker/taskmanager/; revision=255070
2003-09-30 12:49:23 +00:00
Luboš Luňák
0050bd7155 Don't miss synhetic UnmapNotify from XWithdrawWindow() sent
to the root window.

svn path=/trunk/kdebase/kwin/; revision=254877
2003-09-29 14:39:02 +00:00
Luboš Luňák
79796b2fb7 Make keyboard move/resize faster with Alt pressed.
svn path=/trunk/kdebase/kwin/; revision=254811
2003-09-29 11:19:55 +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