Commit graph

514 commits

Author SHA1 Message Date
Martin Gräßlin
98b5f64c38 [kwinrules] Adjust linking of kwinrules KCM to Qt5/KF5 2013-09-30 09:56:35 +02:00
Martin Gräßlin
dd0537fd49 [kwinrules] kcmshell4 -> kcmshell5 2013-09-30 09:55:38 +02:00
Martin Gräßlin
689b221583 [kwinrules] workaround for assert in QFormLayout 2013-09-30 09:55:13 +02:00
Martin Gräßlin
5b1f4a4131 [kwinrules] Use KWin::Cursor to map Qt::CursorShape to an X cursor
Needed for grabbing the pointer.
2013-09-30 09:53:56 +02:00
Martin Gräßlin
7d21d612fe [kwinrules] Use native event filter for mouse button release detection
The event filtering on Qt level does not work any more. The information
is not updated properly. Grabbing the mouse through QWidget resets the
cursor shape to the default shape, so it cannot be used.

As we don't want Qt to ever see the events it's a good idea to use a
native event filter to filter the events away before they are delivered
to Qt.

To simplify the handling the grabber widget is put into a QScopedPointer.
2013-09-30 09:53:01 +02:00
Martin Gräßlin
3956c73c53 [kwinrules] KIcon -> QIcon::fromTheme 2013-09-30 08:44:57 +02:00
Martin Gräßlin
6dd47092f7 [kwinrules] drop componentData() 2013-09-30 08:44:16 +02:00
Martin Gräßlin
e2afaacdb6 [kwinrules] Adjust to new KAboutData 2013-09-30 08:43:40 +02:00
Martin Gräßlin
e8e8c210b6 [kwinrules] KFileDialog -> QFileDialog 2013-09-30 08:43:09 +02:00
Martin Gräßlin
5eb7a22ef8 [kwinrules] slots/signals -> Q_SLOTS/Q_SIGNALS 2013-09-30 08:01:46 +02:00
Sebastian Kügler
08a53e6a11 Remove K_EXPORT_PLUGIN macros
Include .moc file in configs_builtins.cpp, and reenable the build of the
configs.

REVIEW:111940
2013-08-08 13:47:25 +02:00
Martin Gräßlin
9291b18cee Merge branch 'master' into frameworks-scratch
Conflicts:
	CMakeLists.txt
	kwin/effects.cpp
	kwin/effects/logout/logout.cpp
	kwin/effects/presentwindows/main.qml
	kwin/effects/presentwindows/presentwindows.cpp
	kwin/effects/presentwindows/presentwindows.h
	kwin/effects/zoom/zoom_config.cpp
	kwin/libkwineffects/kwinglutils_funcs.cpp
	kwin/libkwineffects/kwinxrenderutils.cpp
	kwin/nvidiahack.cpp
	kwin/xcbutils.h
	plasma/desktop/containments/desktop/plasma-containment-desktop.desktop
	plasma/generic/wallpapers/image/image.cpp
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
2013-08-07 10:10:06 +02:00
Thomas Lübking
10e7ef75ba harmonize combo/lineedit enabling connections
BUG: 322650
FIXED-IN: 4.11
REVIEW: 111627
2013-07-24 21:04:08 +02:00
Martin Gräßlin
9ab751042a Drop X11_XCB library dependency
We don't need it anymore - the xcb connection is also provided by
QX11Info.
2013-07-24 09:58:43 +02:00
l10n daemon script
dcd670692b SVN_SILENT made messages (.desktop file) 2013-07-01 03:54:58 +00:00
l10n daemon script
a2e9957860 SVN_SILENT made messages (.desktop file) 2013-06-10 03:46:39 +00:00
Martin Gräßlin
dfec59c60e Port getStringProperty to XCB 2013-05-13 08:48:19 +02:00
Script Kiddy
dfd72523b1 SVN_SILENT made messages (.desktop file) 2013-05-02 09:17:01 +02:00
Thomas Lübking
4ec1a9bb3a rules kcm, detection use X11 to grab the pointer
BUG: 318437
REVIEW: 110078
FIXED-IN: 4.11
2013-04-28 17:39:16 +02:00
Thomas Lübking
adf3509647 fix initial tabs in rules kcm 2013-04-16 22:07:05 +02:00
Àlex Fiestas
8116322f93 Make activities really optional in KWin
KWin is already able to work without activities but there was some code
left in the rules GUI.

REVIEW: 109815
2013-04-08 17:43:57 +02:00
Thomas Lübking
158d060b5f turn "ignore geometry" forcerule into a setrule
and btw. replace legacy "ignoreposition" by "ignoregeometry"

this will allow to use "apply initially" as "force" used to act
(ignore position on placement) and "force" to prevent clients
from reconfiguring themselves (to not break a tabgroup or to just
not be annoying)

BUG: 311720
CCBUG: 252314
REVIEW: 109691
FIXED-IN: 4.11
2013-03-28 20:31:08 +01:00
Martin Gräßlin
60c42b7a34 s/KLocale/KLocalizedString/g
Many headers included KLocale to use i18n and co. But those methods are
defined in KLocalizedString and not in KLocale.

With KF5 klocale.h does no longer include KLocalizedString causing lots
of compile errors.
2013-03-07 13:59:15 +01:00
Martin Gräßlin
3809f58dbb Store multiple shortcuts separated by " - " instead of space
Space is a valid shortcut part. E.g. "Volume Up".

KConfig update script for 4.11 is added to migrate existing and erroneous
rules taking into account that space is a valid key.

BUG: 305434
FIXED-IN: 4.11
REVIEW: 108942
2013-02-25 13:30:17 +01:00
Martin Gräßlin
fcae2f3c12 Merge branch 'KDE/4.10' 2013-02-06 09:27:00 +01:00
Martin Gräßlin
511d490d42 Remove obsoleted moveresizemode from KCM Rules
BUG: 313826
FIXED-IN: 4.10.1
REVIEW: 108669
2013-02-06 09:22:58 +01:00
Script Kiddy
ca2cf4d697 SVN_SILENT made messages (.desktop file) 2013-01-31 12:00:36 +01:00
Script Kiddy
1416c8d62c SVN_SILENT made messages (.desktop file) 2013-01-30 16:27:26 +01:00
Thomas Lübking
e642c5cb9d Use the NULL Uuid instead of "ALL"
to indicate "on all activities"

REVIEW: 107855
2013-01-23 21:27:45 +01:00
Martin Gräßlin
5cd223f051 Improved resolving whether a window is on local machine
Most windows use the hostname in WM_CLIENT_MACHINE, but there are windows
using the FQDN (for example libreoffice). So instead of "foo" it is
"foo.local.net" or similar. The logic so far has been unable to properly
determine whether windows with FQDN are on the local system.

In order to solve this problem the handling is split out into an own
class which stores the information of hostname and whether it is a local
machine. This is to not query multiple times. To determine whether the
Client is on the local system getaddrinfo is used for the own hostname
and the FQDN provided in WM_CLIENT_MACHINE. If one of the queried
names matches, we know that it is on the local machine. The old logic to
compare the hostname is still used and getaddrinfo is only a fallback in
case hostname does not match.

The problem with getaddrinfo is, that it accesses the network and by that
could block. To circumvent this problem the calls are moved into threads
by using QtConcurrent::run.

Obviously this brings disadvantages. When trying to resolve whether a
Client is on the local machine and a FQDN is used, the information is
initially wrong. The new ClientMachine class emits a signal when the
information that the system is local becomes available, but for some
things this is just too late:
* window rules are already gathered
* Session Management has already taken place

In both cases this is an acceptable loss. For window rules it just needs
a proper matching of the machine in case of localhost (remote hosts are
not affected). And the case of session management is very academic as it
is unlikely that a restoring session contains remote windows.

BUG: 308391
FIXED-IN: 4.11
REVIEW: 108235
2013-01-21 16:00:49 +01:00
Aaron Seigo
de008fe200 Merge branch 'KDE/4.10' 2013-01-16 16:17:20 +01:00
Script Kiddy
3cddfdecff SVN_SILENT made messages (.desktop file) 2013-01-16 12:37:47 +01:00
Martin Gräßlin
ad65af23d7 Remove unused code
SVN_SILENT
2013-01-08 11:08:56 +01:00
Albert Astals Cid
dec63fb987 Merge remote-tracking branch 'origin/KDE/4.10' 2013-01-07 11:04:39 +01:00
Script Kiddy
c6d91ac7eb SVN_SILENT made messages (.desktop file) 2013-01-07 08:11:48 +01:00
Martin Gräßlin
533d57da60 Mark most ctors as explicit as reported by Krazy2 checker 2013-01-02 18:35:46 +01:00
Script Kiddy
12f341712c SVN_SILENT made messages (.desktop file) 2012-12-24 09:05:36 +01:00
Script Kiddy
d7316b9fcb SVN_SILENT made messages (.desktop file) 2012-12-23 08:01:50 +01:00
Script Kiddy
dc5da9b081 SVN_SILENT made messages (.desktop file) 2012-12-22 08:12:14 +01:00
Script Kiddy
ef0cae8dab SVN_SILENT made messages (.desktop file) 2012-12-18 15:28:22 +01:00
Script Kiddy
49a373b681 SVN_SILENT made messages (.desktop file) 2012-12-01 08:03:43 +01:00
Thomas Lübking
850c1e6f0d add screen rule 2012-09-19 20:21:43 +02:00
Script Kiddy
31464244e1 SVN_SILENT made messages (.desktop file) 2012-09-18 19:14:07 +02:00
Martin Gräßlin
97fb722757 Merge branch 'KDE/4.9'
Conflicts:
	kwin/tabbox/tests/CMakeLists.txt
2012-08-02 10:53:00 +02:00
Script Kiddy
52404247f3 SVN_SILENT made messages (.desktop file) 2012-08-01 11:40:14 +02:00
Martin Gräßlin
b734c03346 Merge branch 'KDE/4.9' 2012-07-22 10:07:40 +02:00
Script Kiddy
88710b0f60 SVN_SILENT made messages (.desktop file) 2012-07-19 10:14:19 +02:00
Script Kiddy
6c572929d8 SVN_SILENT made messages (.desktop file) 2012-07-18 10:04:35 +02:00
Martin Gräßlin
a394fade64 Remove Tiling support from KWin
As discussed on the mailinglist [1] the tiling support is
removed from KWin. The main reasons for this step are:
* it is unmaintained
* it is a mode not used by any of the core KWin team
* original developer said at Akademy 2012 that he is not
  interested in picking up the work again
* tiling has quite some bugs, e.g. multi screen not supported
* is conflicting with other concepts in KWin, e.g. activities

There is ongoing work to get tiling supported through a KWin
script, which is a preferred way as it does not influence the
existing C++ code base.

[1] http://lists.kde.org/?l=kwin&m=133149673110558&w=2
BUG: 303090
FIXED-IN: 4.10
REVIEW: 105546
2012-07-14 11:18:06 +02:00
Script Kiddy
836c2b41b3 SVN_SILENT made messages (.desktop file) 2012-06-20 11:19:37 +02:00