Commit graph

12492 commits

Author SHA1 Message Date
Fredrik Höglund
6ac7371113 Remove most calls to checkGLError()
...and rely on KHR_debug/GL_ARB_debug_output instead.
2014-11-25 21:57:57 +01:00
Fredrik Höglund
c0deadfaad Add support for KHR_debug
Register a callback function for debug output when KHR_debug or
ARB_debug_output is supported.

Only error messages and warnings about undefined behavior are
enabled in release builds, while all debug messages are enabled
in debug builds.
2014-11-25 21:57:15 +01:00
Martin Gräßlin
7c62cd19ef Verify Workspace pointer in X11EventFilter::~X11EventFilter
In case the inheriting class of X11EventFilter is a child of
Workspace and deleted by the QObject dtor of Workspace the
Workspace::self() pointer is no longer valid and already set to
nullptr.
2014-11-25 12:57:37 +01:00
Martin Gräßlin
b7a8bb4f52 Drop build option KWIN_BUILD_SCREENEDGES
The build option got introduced for Plasma Active back in a time
when we did not properly aim for convergence. In a Plasma 5 world
we want to have only one shell and one window manager which adjust
itself. This means we don't want a differently compiled kwin for
plasma active, but the same one. Thus the build option doesn't
make much sense any more. A KWin for touch interface needs to support
screenedges for the case that mouse is plugged in.

CCBUG: 340960
REVIEW: 121200
2014-11-24 10:48:49 +01:00
Martin Gräßlin
482f89b91f Fix build without KF5Activities
BUG: 340961
FIXED-IN: 5.2.0
REVIEW: 121202
2014-11-24 10:47:08 +01:00
Martin Gräßlin
26cf3195be [kcmkwin/tabbox] Find all layouts in lnf package
First try to locate all look-and-feel packages and check whether
they provide a WindowSwitcher. If they do they are inserted in
the list with the Package name being the user visible name.
So the good old sidebar is now called "Breeze".

REVIEW: 120914
2014-11-24 10:39:26 +01:00
Martin Gräßlin
0f7a990316 Use Protocol support in NETWinInfo instead of fetching them ourselves
Client does no longer need to track the protocols as this is also
provided by NETWinInfo as of version 5.3.

REVIEW: 120255
2014-11-24 10:37:18 +01:00
Fredrik Höglund
cb39eb0cc5 Use consistent names for the static members in GLTexturePrivate 2014-11-23 20:20:16 +01:00
Fredrik Höglund
854f66c164 Make s_supportsUnpack a static member of GLTexturePrivate 2014-11-23 20:16:02 +01:00
Fredrik Höglund
edb0751cba Remove the NPOT texture support checks
We require OpenGL 2.0 which always supports NPOT textures.
2014-11-22 15:53:15 +01:00
Fredrik Höglund
181afc85fe Remove the saturation support checks
We no longer use texture environment parameters to control saturation.
2014-11-22 15:14:07 +01:00
Fredrik Höglund
978a5e10f3 Remove the #ifdefs for GLES in GLTexture
...and replace them with runtime checks.

Reviewed-by: Jeremy Whiting <jpwhiting@kde.org>
2014-11-22 15:11:47 +01:00
Pino Toscano
1884798991 fixuifiles 2014-11-20 08:04:54 +01:00
Martin Gräßlin
09e72ce451 [kwin_wayland] Fix printing out the X11 display
std::endl was missing.
2014-11-07 14:58:21 +01:00
Martin Gräßlin
819c12819b [kwin_wayland] Do not require --display argument for starting X server
If display is not set, it won't be passed to the X command to start and
X will just pick the next free display id.
2014-11-07 14:58:09 +01:00
l10n daemon script
6f0ff3ff7e SVN_SILENT made messages (.desktop file) 2014-11-06 08:51:14 +00:00
Martin Gräßlin
e405f1ca07 Fix --x-server argument of kwin_wayland 2014-11-05 14:41:39 +01:00
l10n daemon script
a010bbc6a7 SVN_SILENT made messages (.desktop file) 2014-11-02 21:49:41 +00:00
Martin Gräßlin
4419b3debf Desktop switchers moved to kdeplasma-addons
Last but not least.
2014-10-31 09:34:48 +01:00
Martin Gräßlin
905c1f8f9d [tabbox/qml] Default desktop switcher moved to look and feel package
REVIEW: 120884
2014-10-31 09:12:56 +01:00
Martin Gräßlin
e79f0d54f2 [tabbox] Get DesktopSwitcher from look and feel package
Like with WindowSwitcher the configured value might be for the
look and feel package and thus we should first try to locate it
from the look and feel package.
2014-10-31 09:11:23 +01:00
Martin Gräßlin
d9dc53e0ed [tabbox] Window Switcher layouts moved to kdeplasma-addons
REVIEW: 120881
2014-10-31 09:10:24 +01:00
Martin Gräßlin
8f1fffb064 Merge branch 'Plasma/5.1' 2014-10-29 11:46:34 +01:00
Johannes Leuschner
9e5f7009b3 Correcting Exec command in kwinscripts.desktop
BUG: 334177
FIXED-IN: 5.1.1
2014-10-29 11:45:57 +01:00
l10n daemon script
45b1af3165 SVN_SILENT made messages (.desktop file) 2014-10-29 08:42:18 +00:00
Martin Gräßlin
6a8d2236eb [tabbox] Sidebar window switcher got moved to plasma-workspace
It's now part of the org.kde.breeze.desktop look and feel package.
2014-10-29 08:29:29 +01:00
Martin Gräßlin
ddc1e6de59 [tabbox] Try locating the WindowSwitcher QML through configured lnf package
We assume the configured layout name is a look and feel package. Thus
the Switcher is located at contents/windowswitcher/WindowSwitcher.qml
of that package.

REVIEW: 120849
2014-10-28 16:53:23 +01:00
Martin Gräßlin
f750fef8b7 Merge branch 'Plasma/5.1'
Conflicts:
	CMakeLists.txt
	kcmkwin/kwincompositing/kcmkwineffects.desktop
	kcmkwin/kwincompositing/kwincompositing.desktop
	kcmkwin/kwindecoration/kwindecoration.desktop
	kcmkwin/kwindesktop/desktop.desktop
	kcmkwin/kwinoptions/kwinactions.desktop
	kcmkwin/kwinoptions/kwinadvanced.desktop
	kcmkwin/kwinoptions/kwinfocus.desktop
	kcmkwin/kwinoptions/kwinmoving.desktop
	kcmkwin/kwinoptions/kwinoptions.desktop
	kcmkwin/kwinrules/kwinrules.desktop
	kcmkwin/kwinscreenedges/kwinscreenedges.desktop
	kcmkwin/kwintabbox/kwintabbox.desktop
	scripts/enforcedeco/metadata.desktop
2014-10-28 15:03:15 +01:00
Martin Gräßlin
4625d0076c [kcm-effects] Use Loader for the Video Item
Currently just opening the Desktop Effects KCM loads QtMultimedia which
in turn loads gstreamer 0.10. If one opens any other KCM in
systemsettings and changes without applying the change, the window
freezes when the warning dialog gets shown, because the warning message
pulls in Phonon with maybe the Gstreamer backend which uses
gstreamer 1.0. This is bad, bad and breaks everything.

By using a Loader the problem scope gets reduced. It still happens but
only if one actually watches a video. Only opening the KCM doesn't
trigger the problem any more.

REVIEW: 120842
2014-10-28 12:57:19 +01:00
l10n daemon script
dcff2f9e6a SVN_SILENT made messages (.desktop file) 2014-10-25 09:39:36 +00:00
l10n daemon script
2798acbf18 SVN_SILENT made messages (.desktop file) 2014-10-25 08:58:29 +00:00
Frank Osterfeld
3945b59ade Add libepoxy's include directory 2014-10-24 21:58:59 +02:00
l10n daemon script
7d9831d8b4 SVN_SILENT made messages (.desktop file) 2014-10-23 08:55:48 +00:00
Martin Gräßlin
0a6a69b2d0 Improve handling of KWIN_HAVE_EGL in CMakeLists.txt
KWIN_HAVE_EGL was set to EGL_FOUND which doesn't make sense as EGL is
marked as a runtime dependency. Instead a new build option KWIN_BUILD_EGL
is added defaulting to ON. If set to OFF neither the X11 nor the Wayland
EGL backend are built.

CCBUG: 340171
2014-10-21 16:06:58 +02:00
l10n daemon script
87878572de SVN_SILENT made messages (.desktop file) 2014-10-21 11:18:35 +00:00
Martin Gräßlin
706e22a12b Do not find OpenGL or OpenGLES
As we use epoxy we don't need them any more. KWin compiles, links and
runs just fine without ever trying to find OpenGL or OpenGLES.

BUG: 340170
FIXED-IN: 5.2.0
2014-10-21 08:33:51 +02:00
Martin Gräßlin
015c59d9fd Fix build if there is no libinput 2014-10-20 15:01:12 +02:00
Martin Gräßlin
da5ee2ba93 Add sanity checks before updating pointer position and on screen changes
We don't want the cursor to leave the visible area, so better check that
the cursor doesn't leave it. And when the screens changes better check
that the cursor is still on a visible screen. If not: put it back to the
center of the closest screen.
2014-10-20 14:51:24 +02:00
Martin Gräßlin
ff87c989ba Center initial pointer position on screen in libinput mode 2014-10-20 14:51:24 +02:00
Martin Gräßlin
2a6cd5010a Set a default cursor when creating the WaylandCursor 2014-10-20 14:51:24 +02:00
Martin Gräßlin
f545eeb087 Connect pointer events from libinput 2014-10-20 14:51:24 +02:00
Martin Gräßlin
96d6a55ea8 Do not create a WaylandSeat if we use libinput 2014-10-20 14:51:24 +02:00
Martin Gräßlin
15a1a5b70f Add command line option to enable libinput support
kwin_wayland gains a new command line option to enable libinput support.
This is needed as logind blanks the VT when the session controller
releases the control. So a nested compositor can seriously affect the
primary session. Thus it needs a dedicated command line switch to
enable it.

By default libinput support is disabled for kwin_x11 and can be enabled
for kwin_wayland in case KWin is compiled with libinput support.
2014-10-20 14:51:24 +02:00
Martin Gräßlin
6a032e78b7 Suspend/Resume libinput when logind session Active changes
LogindIntegration starts monitoring the Active property on the session
and emits a signal when the state changes. The LibInput::Connection
connects to this signal during the setup and uses it to suspend/resume
the libinput context.
2014-10-20 14:51:24 +02:00
Martin Gräßlin
a918591fef Use Logind to open/close devices needed by libinput
With libinput we have the problem that we need to have privileges to
open the device files. In order to not need wrappers or suid bits, we
use logind. This means that kwin_wayland has to be the session controler.

A LogindIntegration is added to connect to logind and wrap the dbus
calls. This is based on the logind integration done for ksld in
ksmserver. The LogindIntegration is started by Workspace and the
InputRedirection tries to become the session controller and starts the
libinput integration only after this succeeded.
2014-10-20 14:51:24 +02:00
Martin Gräßlin
c4bb3d11fc Initial support for libinput
Libinput is an optional dependency for getting low level input events.
As opening the input devices requires root privs this is rather
pointless in the current state. But there is a small added test app which
can be executed with root privs to demonstrate the functionality. To
properly get input events we need a wrapper like it's used in weston.

So far the following is setup:
* opening devices found by udev
* forwarding keyboard events to InputRedirection
* forwarding pointer button events to InputRedirection
* forwarding pointer axis events to InputRedirection
* signals emitted for pointer motion events

Pointer motion events need some further work as they are provided
as delta events. We need to track that and map them properly.

Also missing are touch events due to me not having a touch screen.
It should be fairly simple to setup the touch events, though.

Also hotplugging of devices is not yet implemented.
2014-10-20 14:51:24 +02:00
Martin Gräßlin
075422fc5e [effects] Add type property to StartupFeedback Effect
Allows to read the configured type in support information.
2014-10-20 14:50:41 +02:00
l10n daemon script
dbdcb9938c SVN_SILENT made messages (.desktop file) 2014-10-18 09:33:15 +00:00
l10n daemon script
5288363274 SVN_SILENT made messages (.desktop file) 2014-10-17 09:07:36 +00:00
Martin Gräßlin
c2185c9530 Drop check whether WAYLAND_DISPLAY env is set
It was used to check whether we should create the Wayland interaction,
but now that is in kwin_wayland and kwin_x11 doesn't even try to create
the WaylandBackend.
2014-10-17 09:28:15 +02:00