Commit graph

19457 commits

Author SHA1 Message Date
Luboš Luňák
b74a977626 Fix #67032.
svn path=/trunk/kdebase/kwin/; revision=273899
2003-12-19 18:10:04 +00:00
Luboš Luňák
2d272e0a87 In r1.395, I forgot to unmap the wrapper window too. As it has no background
set, it remembers the contents of the unmapped client window, therefore
the ugly effect actually stayed.

svn path=/trunk/kdebase/kwin/; revision=273891
2003-12-19 17:05:50 +00:00
Benjamin Meyer
2635bda927 Added ifdef around the x11 includes when building --without-x
svn path=/trunk/kdebase/kwin/; revision=273871
2003-12-19 14:01:43 +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
Script Kiddy
0fcb47d23d CVS_SILENT made messages
svn path=/trunk/kdebase/kwin/; revision=273635
2003-12-18 06:59:57 +00:00
Luboš Luňák
097e307b40 Oops, support window has to be always first in XRestackWindow(), everything
else is restacked relatively to it.

svn path=/trunk/kdebase/kwin/; revision=273327
2003-12-16 12:25:42 +00:00
Luboš Luňák
997f45b25e Show the topmenu_space window reserving the space for standalone menubars
only if there's no menubar active. Helps Fredrik to have the menu shadow
exactly in the color he wants :).

svn path=/trunk/kdebase/kwin/; revision=273185
2003-12-15 18:30:14 +00:00
Luboš Luňák
2197c646eb Reserve one virtual function in the interface that I plan to use after 3.2.
svn path=/trunk/kdebase/kwin/; revision=273149
2003-12-15 15:18:10 +00:00
Luboš Luňák
7224e77a6b MousePosition renaming updates.
svn path=/trunk/kdeartwork/kwin-styles/plastik/; revision=273146
2003-12-15 15:14:45 +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
c26c55787f Remove some obsolete comments.
svn path=/trunk/kdebase/kwin/; revision=273143
2003-12-15 14:44:17 +00:00
Luboš Luňák
92390e6d86 These options are not used anymore.
svn path=/trunk/kdebase/kwin/; revision=273142
2003-12-15 14:43:44 +00:00
Luboš Luňák
b2b86e00e9 Remove duplicated and scary code.
svn path=/trunk/kdebase/kwin/; revision=273128
2003-12-15 13:36:27 +00:00
Luboš Luňák
f4b4647fc3 kwinrc option for listing applications for which focus stealing prevention
should not be used. I have a strange feeling it will come handy :-/.

svn path=/trunk/kdebase/kwin/; revision=273127
2003-12-15 13:33:29 +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
Fredrik Höglund
0f1aecf06b Make sure that the right visual is used for the frame when embedding
an ARGB window.

Reviewed by Seli and Keith Packard.

svn path=/trunk/kdebase/kwin/; revision=272507
2003-12-11 17:41:47 +00:00
Luboš Luňák
ab07ba1c70 Don't try to restack a window below itself.
CCMAIL:70004-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=272436
2003-12-11 09:48:37 +00:00
Luboš Luňák
338593f621 This must have been a typo.
svn path=/trunk/kdebase/kwin/; revision=272432
2003-12-11 09:11:52 +00:00
Luboš Luňák
bcd0bb4113 Fix finding of mainwindows.
svn path=/trunk/kdebase/kwin/; revision=272430
2003-12-11 09:09:38 +00:00
Luboš Luňák
55f1a65613 More debug functions.
svn path=/trunk/kdebase/kwin/; revision=272429
2003-12-11 09:09:05 +00:00
Luboš Luňák
2f948d2fc0 Remove obsolete todo.
svn path=/trunk/kdebase/kwin/; revision=272428
2003-12-11 09:08:43 +00:00
Script Kiddy
085796a15c CVS_SILENT made messages
svn path=/trunk/kdebase/kwin/; revision=272419
2003-12-11 06:44:40 +00:00
Luboš Luňák
2488a7c674 Add some stuff that should be most probably done but I'm afraid to do
it now in the freeze.

svn path=/trunk/kdebase/kwin/; revision=272282
2003-12-10 11:28:31 +00:00
Luboš Luňák
78b84121d7 Make group transients transient only for windows in the same group that
were mapped before it, not for new ones. This greatly minimizes
the posibility of loops and avoids all those problems in #67914
causes by so many dialogs not having their parent specified.

svn path=/trunk/kdebase/kwin/; revision=272281
2003-12-10 11:27:20 +00:00
Luboš Luňák
afee9ba0fb Default to low level of focus stealing prevention, at least for some time.
svn path=/trunk/kdebase/kwin/; revision=272145
2003-12-09 14:10:13 +00:00
Luboš Luňák
af9c3b8e85 Fix #66065 - OpenOffice.org claims that its utility windows are dialogs
-> it's better to treat no window from OO.org as dialog :-/.

svn path=/trunk/kdebase/kwin/; revision=272143
2003-12-09 13:58:51 +00:00
Luboš Luňák
9326a7f008 Fix #69787 - off-by-one error when checking top position.
CCMAIL: 69787-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=271907
2003-12-08 12:50:32 +00:00
Luboš Luňák
c151780247 Fix #69721. Also, set the move cursor before input grabs, so the grab
uses the new cursor.

svn path=/trunk/kdebase/kwin/; revision=271904
2003-12-08 12:42:18 +00:00
Script Kiddy
7a3e77449d CVS_SILENT made messages
svn path=/trunk/kdebase/kwin/; revision=271298
2003-12-05 06:52:31 +00:00
Luboš Luňák
0ba12a0837 Perform whole new window managing with X server grab, in order to prevent
"smart" apps from doing stupid things before they get MapNotify.
This avoids the recent Java+OracleInstaller strange problem too.
The patch may look huge, but it's only adding two KWin wrappers
for X(Un)GrabServer() and uncommenting the calls in Client::manage().

svn path=/trunk/kdebase/kwin/; revision=271152
2003-12-04 13:54:10 +00:00
Luboš Luňák
e7d3ffaceb Fix the loop described in #69238 - don't raise special windows if they
become active if autoraise is turned off. It's possible this only fixes
a symptom instead of the problem, but oh well.

svn path=/trunk/kdebase/kwin/; revision=271137
2003-12-04 12:23:49 +00:00
Luboš Luňák
9e1586ba73 Fix Oracle Installer using 'Java(tm): Write once, run somewhere'.
It looks like if _KWIN_RUNNING atom is detected, then it does some strange
XTranslateCoordinate stuff and gets it wrong with current KWin
(and even with FVWM, if the atom exists). However, if _ICEWM_WINOPTHINT
atom also exists, it works fine *shrug*.
CCMAIL: 67283-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=271135
2003-12-04 12:20:34 +00:00
Luboš Luňák
1a852fe8dc When unmapping, unmap from outside(frame->wrapper->window), this prevents
frame from getting EnterNotify after unmapping the window.

svn path=/trunk/kdebase/kwin/; revision=270953
2003-12-03 12:24:56 +00:00
Luboš Luňák
2e1bd0e762 I forgot to #undef one #define.
svn path=/trunk/kdebase/kwin/; revision=270837
2003-12-02 18:14:56 +00:00
Luboš Luňák
74741dee7e The change done in r2.9 made the test for two windows belonging to the same
app too restrictive, now it fails e.g. with xmms equivalizer and playlist.

svn path=/trunk/kdebase/kwin/; revision=270836
2003-12-02 18:11:24 +00:00
Luboš Luňák
6d7e93267d If an application is refused to be raised, but it's above the active client
for some reason, don't restack it below the active one as a result of its
requrest to be raised.

svn path=/trunk/kdebase/kwin/; revision=270832
2003-12-02 17:54:42 +00:00
Luboš Luňák
0b8ee9a5e4 When comparing window requesting activation (i.e. focus stealing prevention),
don't use Workspace::activeClient() as the active client, but instead
the most recent should_get_focus client - that may make a difference
if a window was just activated, but the matching FocusIn event that'll
make it to be activeClient() wasn't yet processes. Visible with apps
that show several windows at the same time after startup.

svn path=/trunk/kdebase/kwin/; revision=270831
2003-12-02 17:52:10 +00:00
Luboš Luňák
962f313ada Since Qt has apparently wrapping still broken, better force it at a reasonable
place.

svn path=/trunk/kdebase/kwin/; revision=270600
2003-12-01 12:01:32 +00:00
Script Kiddy
da6c908254 CVS_SILENT made messages
svn path=/trunk/kdebase/kwin/; revision=270558
2003-12-01 07:07:34 +00:00
Luboš Luňák
358e648501 When releasing a window, hide it before removing decoration, otherwise
it would be moved, causing ugly visual effect.

svn path=/trunk/kdebase/kwin/; revision=269901
2003-11-27 14:54:16 +00:00
Luboš Luňák
8f181d8b52 checkGroupTransients() uses hasTransient() to break loops, so it must detect them,
fixes #69094

svn path=/trunk/kdebase/kwin/; revision=269892
2003-11-27 14:37:55 +00:00
Luboš Luňák
965a44962e Don't keep group transients above topmenus.
svn path=/trunk/kdebase/kwin/; revision=269885
2003-11-27 14:05:42 +00:00
Luboš Luňák
4ee178b277 Fix #69005 - make it possible to differentiate between a window really
being shaded and being set to be shaded (which may differ with hover unshade).

svn path=/trunk/kdebase/kwin/; revision=269526
2003-11-25 15:26:50 +00:00
Luboš Luňák
693d7d77c1 People have strange ideas ... filter out unprintable characters from window
captions.
CCMAIL: 68882-done@bugs.kde.org

svn path=/trunk/kdebase/kwin/; revision=269522
2003-11-25 14:55:15 +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
f30a41aaa6 Oops.
svn path=/trunk/kdebase/kwin/; revision=269305
2003-11-24 14:55:22 +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
0cf7454675 And eventually user moving/resizing seems to work, even with aspect ratios.
When moving/resizing, first do the operation unconstrained, then snap
(now it should be even simple to implement snapping while resizing),
then check workarea bounds and finally check constrains, while keeping
the respective fixed order for the resize operation at the same position.
Also geometry() -> initialMoveResizeGeometry, as geometry() may change
with opaque move/resize.

svn path=/trunk/kdebase/kwin/; revision=269301
2003-11-24 14:31:02 +00:00