Commit Graph

11633 Commits (404fc2144c99c7f787e34b2a6a9400727a864459)

Author SHA1 Message Date
Martin Klapetek 404fc2144c [kwin] Make KWin place the OSD
REVIEW: 115334
2014-02-12 10:53:10 +01:00
Martin Gräßlin 3ea8f0c217 [kwin/kcmdesktop] Don't crash if run on platform Wayland
Not much use currently as we don't have any desktops to configure,
but not crashing is nevertheless quite nice.
2014-02-11 15:27:28 +01:00
l10n daemon script f67e67e5f0 SVN_SILENT made messages (.desktop file) 2014-02-09 05:45:40 +00:00
l10n daemon script 0212b9d185 SVN_SILENT made messages (.desktop file) 2014-02-06 04:11:22 +00:00
Martin Gräßlin fdee4ea8c8 Adjust kde-workspace to introduction of flags in NET classes 2014-02-05 17:40:19 +01:00
Martin Gräßlin dc9f613113 [kwin] Do not use camelcase includes for kactivities
Jenkins doesn't like them, so let's try without them.
2014-02-04 09:36:15 +01:00
Martin Gräßlin 93f9918905 [kwin] Change to new connect syntax for KActivities
Just to be sure, that we get a compile error in case it changes.
2014-02-03 13:44:06 +01:00
Martin Gräßlin 9414d8f7f1 [kwin] Re-enable KActivities support
* KWin lists the activities in the Alt+F3 menu
* Kcmrules though looks wrong
2014-02-03 13:40:47 +01:00
Martin Gräßlin a6c47e0314 [kwin] Add ProvidersUrl to *.knsrc
That at least inits the GHNS download dialog.
2014-02-03 13:04:12 +01:00
Martin Gräßlin 16c44810cb [kwin] Drop more unused includes
--warnings
2014-02-03 11:45:35 +01:00
Martin Gräßlin c954a3151c [kwin] Remove another useless kdebug include 2014-02-03 11:40:16 +01:00
Martin Gräßlin fcebfa799f [kwin] Fix ordering
--warnings
2014-02-03 11:37:04 +01:00
Martin Gräßlin f4597a3552 [kwin] Drop unused includes to KDebug 2014-02-03 11:36:46 +01:00
Martin Gräßlin 014cdf9267 [kwin] Mark unused variables as unused
--warnings
2014-02-03 11:36:21 +01:00
Martin Gräßlin a6b12108c9 Merge branch 'KDE/4.11'
Conflicts:
	kwin/clients/oxygen/config/oxygendetectwidget.cpp
2014-02-02 12:01:38 +01:00
Marek Marczykowski-Górecki 2ccf1bc3f0 kwin: fix handling of window size hints with PResizeInc
Use base_width/base_height if provided by the application and fallback to
min_width/min_height only if not (according to ICCCM 4.1.2.3).

This fixes long standing bug with shrinking gnome-terminal window.

REVIEW: 115396
2014-02-02 11:57:19 +01:00
l10n daemon script 7f7fc12a05 SVN_SILENT made messages (.desktop file) 2014-02-02 04:21:17 +00:00
Martin Gräßlin 0b32e5e57d [kwin] Listen to mouse motion events in the screenedge windows
Problem description: if a window decoration is in the screenedge
(not really unlikely for maximized windows) we either did not get
mouse events to the decoration or the screenedge window. E.g. the
enter event didn't reach the approach window which means it doesn't
get unmapped and thus the motion events in that area are not passed
to the decoration below. The same happened for the screenedge window,
the enter event was just not delivered if there is a window decoration
in the edge.

To solve this problem we listen for motion events in the approach and
the edge window and pass them from the event filter to the screen edges.
If one of our windows contains that the position of the motion event
we trigger the edge just in the same way as we do with the enter event.
2014-02-01 10:03:49 +01:00
Martin Gräßlin 7c7f137832 [kwin] Drop handling for mouse motion event compression
Not needed as Qt does it for us in the xcb plugin - see
QXcbConnection::processXcbEvents().
2014-02-01 09:34:40 +01:00
Martin Gräßlin 73e6d9162d [oxygen/config] Use a pointer for the KWindowInfo member variable
The reason for this change is that the default ctor of KWindowInfo
creates a broken object. Calling any method in it will result in a
crush. Thus it is scheduled for removal in kwindowsystem framework
causing this code to no longer compile.

The solution is to use a pointer and set it to null as long as the
window has not been detected yet.

This is the same change as done for kcm kwinrules. And here we se
why copying code is bad ;-)
2014-02-01 08:58:26 +01:00
Hugo Pereira Da Costa 1e44f3edc8 fix includes 2014-01-31 15:24:13 +01:00
Thomas Lübking 66375ad741 Merge branch 'KDE/4.11'
Conflicts:
	kwin/effects/mouseclick/mouseclick.cpp
	plasma/generic/scriptengines/python/plasma-scriptengine-dataengine-python.desktop
	plasma/generic/scriptengines/python/plasma-scriptengine-runner-python.desktop
	plasma/generic/scriptengines/ruby/plasma-scriptengine-ruby-applet.desktop
	plasma/generic/scriptengines/ruby/plasma-scriptengine-ruby-dataengine.desktop
2014-01-30 20:55:35 +01:00
Thomas Lübking 62b277ad9f depend noborder on motif_noborder after reshape
app_noborder shall be the determined noborder (shape, type)
but relevant noborder shall be determined by rules and respect the
motif hint

BUG: 330573
FIXED-IN: 4.11.6
REVIEW: 115402
2014-01-30 20:25:09 +01:00
Thomas Lübking 34ecf8970e mouseclick FX, don't collect clicks unless active
BUG: 328010
FIXED-IN: 4.11.6
REVIEW: 115389
2014-01-30 20:23:42 +01:00
Martin Gräßlin ae3cbca5f6 [kwin] Add a test application for testing size increment
The test application can verify that KWin correctly interprets the
WM_NORMAL_HINTS as described in ICCCM section 4.1.2.3 for the
combination of min size, base size and size increment.

Introduces an optional dependency to xcb-icccm library. It's optional
as the last time we tried to use it build.kde.org didn't like it at
all. Thus it should be possible to disable building this test app if
the dependency is not found.
2014-01-30 15:28:12 +01:00
Martin Gräßlin 2a5a89a0e4 [kwin] Remove b2 and laptop window decorations
They have been unmaintained for a long time and nobody stepped up to
port them to the changes in the decoration API. If at some time someone
wants to bring them back it's still in the git history.
2014-01-30 11:03:39 +01:00
Martin Gräßlin 04716ae5e3 [kwin] Rename tests subdirectories to autotests
Follows the naming schemes in frameworks and opens up the possibility
to include test applications for KWin in the tests subdirectory.
2014-01-30 11:01:59 +01:00
Martin Gräßlin 981e7afa96 [kwin/kcmrules] Call setupUi before accessing the ui widgets
This caused a crash with Qt 5.3 dev branch as the widgets are null
before setupUi is called. Might be a bug in Qt but still it makes
sense to first call setupUi and then do further changes to the Ui.
2014-01-30 10:39:40 +01:00
Martin Gräßlin 823222567e [kwin/kcmrules] Use a pointer for the KWindowInfo member variable
The reason for this change is that the default ctor of KWindowInfo
creates a broken object. Calling any method in it will result in a
crush. Thus it is scheduled for removal in kwindowsystem framework
causing this code to no longer compile.

The solution is to use a pointer and set it to null as long as the
window has not been detected yet. To ensure that this doesn't fail
badly an assert is added to the getter in DetectWidget.
2014-01-30 10:35:35 +01:00
l10n daemon script 8bd7159ebc SVN_SILENT made messages (.desktop file) 2014-01-30 06:49:57 +00:00
l10n daemon script c96df87475 SVN_SILENT made messages (.desktop file) 2014-01-30 04:16:08 +00:00
Thomas Lübking ffaa9d336e Merge branch 'KDE/4.11'
Conflicts:
	kcontrol/workspaceoptions/workspaceoptions.desktop
	kwin/sm.cpp
2014-01-29 20:28:27 +01:00
Thomas Lübking 23ae01ffd9 full repaints in logout effect
REVIEW: 115276
2014-01-29 19:58:54 +01:00
Thomas Lübking 6bd74cebf3 no autogrouping if deco doesn't support it
BUG: 328272
FIXED-IN: 4.11.6
REVIEW: 115308
2014-01-29 19:58:32 +01:00
Thomas Lübking 374ea9091e remove clientMachine from session handling
since the hostname is resolved asynchronous, testing it can easily fail

CCBUG: 326893
FIXED-IN: 4.11.6
REVIEW: 114963
2014-01-29 19:58:15 +01:00
Thomas Lübking 5032520920 cut spurious \0 byte from string properties
added with 26c263cc1de9cf0af66c12d0d746cd8ae7b1744a

CCBUG: 326893
FIXED-IN: 4.11.6
REVIEW: 114963
2014-01-29 19:57:53 +01:00
Thomas Lübking edf0ed895f 1-pass change maximized <-> quicktiled geometry
REVIEW: 115307
2014-01-29 19:57:32 +01:00
Thomas Lübking 79c3fa55f2 merge buffer_age render into general render code
avoiding the blocking swapinterval detection causes
issues in the timing strategy and prevents protection
against CPU overload on the nvidia blob

BUG: 329821
FIXED-IN: 4.11.6
REVIEW: 115306
2014-01-29 19:56:14 +01:00
l10n daemon script 1000f99072 SVN_SILENT made messages (.desktop file) 2014-01-29 04:18:42 +00:00
Martin Gräßlin fc9b7442da Merge branch 'KDE/4.11'
Conflicts:
	kwin/atoms.cpp
	kwin/atoms.h
	kwin/toplevel.cpp
	kwin/toplevel.h
2014-01-28 09:47:53 +01:00
Martin Gräßlin 882d55f1b5 Allow windows to specify that they should not get animated on window close
By setting the X property _KDE_NET_WM_SKIP_CLOSE_ANIMATION to 1 a window
can request to be excluded from any close animation. This property is
read in Toplevel, so that it is available to both Client and Unmanaged.

If the window has this property set the Scene suppresses the paintWindow
loop of the Deleted. Thus no effect needs to be adjusted. But an effect
using drawWindow directly would still be able to render the Deleted as
there is no suppression.

Furthermore the property is passed to the EffectWindow so that an
Effect can make use of this functionality and not start the animation
in the first place.

REVIEW: 115288
CCBUG: 279615

Backported from 9497b4ddb681ac50dbe9c015e05a3f12fd496da8
2014-01-28 09:01:55 +01:00
Martin Gräßlin 5b07d4c2a1 Merge branch 'KDE/4.11'
Conflicts:
	kwin/egl_wayland_backend.cpp
	kwin/eglonxbackend.cpp
	kwin/glxbackend.cpp
	kwin/scene_opengl.cpp
	plasma/generic/wallpapers/color/plasma-wallpaper-color.desktop
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
2014-01-28 08:18:41 +01:00
James Jones 6acef12932 Don't call into GL without a context
After losing current from the EGL or GLX
context, calls to the GL or GLES functions
have undefined behavior.  Perform all
cleanup that may touch OpenGL and check for
GL errors before losing current from the
context.

REVIEW: 115311
2014-01-28 07:54:32 +01:00
Martin Gräßlin 2fbc8414a7 Allow windows to specify that they should not get animated on window close
By setting the X property _KDE_NET_WM_SKIP_CLOSE_ANIMATION to 1 a window
can request to be excluded from any close animation. This property is
read in Toplevel, so that it is available to both Client and Unmanaged.

If the window has this property set the Scene suppresses the paintWindow
loop of the Deleted. Thus no effect needs to be adjusted. But an effect
using drawWindow directly would still be able to render the Deleted as
there is no suppression.

Furthermore the property is passed to the EffectWindow so that an
Effect can make use of this functionality and not start the animation
in the first place.

REVIEW: 115288
2014-01-28 07:43:35 +01:00
Martin Gräßlin 29af52fbf1 Keep KWin responsive while loading all effects
Loading all effects during startup can take some time[1] and during
that time the screen is frozen as the loading blocks the compositor.

This change doesn't load effects directly but puts them into a queue.
The loading is controlled by invoking the dequeue through a queued
connection. Thus we get a firing compositing timer in between and can
ensure that a frame is rendered when needed and also react to X events
during the loading.

[1] On my high-end system the set of effects I use take about 200 msec
    to load.

REVIEW: 115297
2014-01-28 07:41:57 +01:00
Martin Gräßlin 1576c55cd2 [kwin] Add better support for Notification windows
KWin starts to support the Notification window type and has an own
layer for all notification windows. They are kept above the above
layer but do not go over active fullscreen windows.

REVIEW: 115298
2014-01-28 07:40:34 +01:00
l10n daemon script 99bd9490b5 SVN_SILENT made messages (.desktop file) 2014-01-27 06:37:40 +00:00
l10n daemon script 253c2dab5a SVN_SILENT made messages (.desktop file) 2014-01-27 04:08:32 +00:00
l10n daemon script e12bd6cffc SVN_SILENT made messages (.desktop file) 2014-01-26 04:10:18 +00:00
l10n daemon script 0ee6e4b422 SVN_SILENT made messages (.desktop file) 2014-01-25 03:39:46 +00:00