Commit Graph

1567 Commits (b967527db38780d420520fe1a0722b21a7a7ebc5)

Author SHA1 Message Date
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 6b790c1608 Fix incorrect enum name
Sorry for breaking compilation of master...
2013-01-15 15:18:56 +01:00
Martin Gräßlin 6acae45205 Support for new decoration border sizes BorderNoSides and BorderNone
BorderNoSides is what is known from Oxygen as "No Side Borders". The name
should indicate that there is only a border at the bottom. BorderNone is
a mode with no borders at all.

The new enums are added to KDecoration and the KCM so that all decos can
make use of it.

Aurorae is adjusted to support the new sizes for QML themes (it breaks
the old svg based themes) and Plastik makes use of it, by rendering a
one-pixel border around the window, which illustrates that it's still up
to the decoration to decide how to make use of the setting.

REVIEW: 108164
2013-01-15 15:07:22 +01:00
Martin Gräßlin 5f4935fc66 Merge branch 'KDE/4.10'
Conflicts:
	kwin/workspace.cpp
2013-01-14 15:43:01 +01:00
Script Kiddy 88f998a924 SVN_SILENT made messages (.desktop file) 2013-01-14 12:46:29 +01:00
Martin Gräßlin 51ce05e445 Use a more sane default for delay focus and autoraise in FFM
At the same time ensuring that KCM and KWin::Options use the same value.
Should be ported to KConfigXT some day.

REVIEW: 108288
2013-01-11 08:57:42 +01:00
Martin Gräßlin b5ed419ec6 Remove all Q_WS_X11 ifdefs
Not sure why some KCMs used the define, but complete KWin is not compiled
for WIN32 and the define is useless in Qt 5 anyway.

REVIEW: 108319
2013-01-11 08:35:47 +01:00
Weng Xuetian d24ed172cb Merge remote-tracking branch 'origin/KDE/4.10' 2013-01-10 03:04:28 -05:00
Martin Gräßlin be30716c97 Add walk through desktops shortcuts to Virtual Desktops KCM
BUG: 306404
FIXED-IN: 4.11
REVIEW: 108287
2013-01-10 08:27:23 +01:00
Martin Gräßlin 11f9d9f5c1 Use KPushButton for GHNS in Effects KCM
Also rename to proper name "Get New Effects ...".

BUG: 309724
FIXED-IN: 4.11
REVIEW: 108286
2013-01-10 08:25:45 +01:00
Weng Xuetian b266b2fb2d fix kwintabbox kcm layout
gridlayout doesn't work with spacer to center some widget. use BoxLayout
instead.
2013-01-09 15:06:30 -05: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
Martin Gräßlin 7163c9faf4 Support for Application Menu in Aurorae
Aurorae supports in general the Aurorae button. So far themes are not
able to style the button, instead the window's icon is used.
2013-01-07 09:43:30 +01:00
Script Kiddy c6d91ac7eb SVN_SILENT made messages (.desktop file) 2013-01-07 08:11:48 +01:00
Thomas Lübking fa29b4141b fix dbus service registration/invocation
REVIEW: 108016
2013-01-02 19:05:11 +01:00
Thomas Lübking c6d411d939 activate layout, no idea why doesn't happen implicitly
BUG: 311553
FIXED-IN: 4.10
REVIEW: 107851
2013-01-02 18:43:14 +01:00
Martin Gräßlin 533d57da60 Mark most ctors as explicit as reported by Krazy2 checker 2013-01-02 18:35:46 +01:00
Thomas Lübking 2f18371e27 fix dbus service registration/invocation
REVIEW: 108016
2013-01-02 18:25:58 +01:00
Thomas Lübking f2226adca9 activate layout, no idea why doesn't happen implicitly
BUG: 311553
FIXED-IN: 4.10
REVIEW: 107851
2013-01-02 18:23:45 +01:00
Script Kiddy ae597bcb4e SVN_SILENT made messages (.desktop file) 2012-12-28 07:45:01 +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 e3c031824f SVN_SILENT made messages (.desktop file) 2012-12-21 07:05:54 +01:00
Script Kiddy ef0cae8dab SVN_SILENT made messages (.desktop file) 2012-12-18 15:28:22 +01:00
Hugo Pereira Da Costa e883eab762 Fix double vertical separator in Task Switcher KCM
REVIEW: 107778
2012-12-17 17:33:22 +01:00
Hugo Pereira Da Costa 6489b95c2a Fix horizontal extend of horizontal separators in Window Behavior -> Window Actions
REVIEW: 107777
2012-12-17 14:40:55 +01:00
Script Kiddy a2472524c2 SVN_SILENT made messages (.desktop file) 2012-12-17 07:49:07 +01:00
Thomas Lübking 334fc51ef6 fix kwinoptions layouts
THIS INTRODUCES NEW STRINGS, see
http://lists.kde.org/?l=kde-i18n-doc&m=135403060327161&w=2

REVIEW: 107083
BUG: 310623
2012-12-14 22:36:39 +01:00
Script Kiddy dda5cbea69 SVN_SILENT made messages (.desktop file) 2012-12-13 07:29:15 +01:00
Script Kiddy 068419656f SVN_SILENT made messages (.desktop file) 2012-12-03 07:26:16 +01:00
Script Kiddy 49a373b681 SVN_SILENT made messages (.desktop file) 2012-12-01 08:03:43 +01:00
Script Kiddy 5fc8da9ad7 SVN_SILENT made messages (.desktop file) 2012-11-30 07:40:50 +01:00
Martin Gräßlin bcfc0269ae Create the decoration listing after the KCModule has been shown
If the decoration listing gets initialized directly in the ctor as it
used to be, there is the chance of the list being not rendered in case
that there are multiple KCMs in one container and one has to switch to
the decoration KCM. This is the case for e.g. opening the KWin
configuration through the Alt+F3 menu. But that never happened when
going through Systemsettings as there (at least with English) it is
listed as the first module.

BUG: 310613
FIXED-IN: 4.10
2012-11-26 10:05:17 +01:00
Script Kiddy e6f0f5bcf7 SVN_SILENT made messages (.desktop file) 2012-11-26 07:08:50 +01:00
Script Kiddy 2b0453d82c SVN_SILENT made messages (.desktop file) 2012-11-17 07:39:31 +01:00
Casian Andrei 01adbe6dc5 Implement color correction (per output)
Add an option to kcmcompositing in the 'Advanced' tab, to enable or
disable color correction. It is specified that it's experimental and it
needs Kolor Manager.

Before painting for a particular screen, ColorCorrection::setupForOutput
should be called.

A screen property is added for WindowPaintData.

In kwinglutils, The fragment shaders are intercepted before being
compiled and they get a couple of lines of code inserted in order to do
the color correction. This happens only when color correction is enabled, of
course.

For D-Bus communication with KolorServer, everything is async.

The implementation basically manages a set of color lookup tables for
different outputs and for different window regions. These are taken via
D-Bus. Each lookup table has around 700 KB.

This commit reintroduces the changes from the former merge with the
"color2" branch. In this form, it can be easily reverted.

REVIEW: 106141
2012-11-13 22:47:09 +02:00
Casian Andrei a46d247702 Revert "Merge branch 'color2'"
This merge is incomplete and it does not include the review number of
the associated review request. It should have been pushed as a single
commit, because the merged commits were not intended to be published in
their form.

This reverts commit dcba90263069a221a5489b1915c5cf1ca39d090c, reversing
changes made to 50ae07525c7fde07794e7548c3d6e5a69cb1a89d.

Conflicts:
	kwin/scene_opengl.cpp
	kwin/scene_opengl.h
2012-11-13 22:19:32 +02:00
Cedric Bellegarde 53ae2b91e2 GUI: Kwin appmenu support:
- Add support for application menu button in Kwin
- Add kded appmenu configuration in kcm_style
2012-11-09 13:44:50 +01:00
Kai-Uwe Behrmann 479be668d7 Merge branch 'color2'
Conflicts:
	kwin/libkwineffects/kwinglplatform.cpp
2012-11-07 23:54:18 +01:00
Script Kiddy 17ddc517b7 SVN_SILENT made messages (.desktop file) 2012-10-29 09:53:30 +01:00
Martin Gräßlin 6417246358 Add GHNS support for Scripted KWin Effects
BUG: 296773
FIXED-IN: 4.10
REVIEW: 107051
2012-10-28 09:49:02 +01:00
Martin Gräßlin aa34dbd059 Remove the fallback to Platik in case defaultDepth is < 8
Plastik has been removed and the new Aurorae has the same requirement as
Oxygen. This fallback was anyway useless given that KWin nowadays uses
raster paint engine by default and hardly anything would work with such a
small QPixmap::defaultDepth().

REVIEW: 106613
2012-10-25 11:19:26 +02:00
Martin Gräßlin 5a33974bca Merge branch 'KDE/4.9'
Conflicts:
	plasma/desktop/shell/activitymanager/package/contents/ui/ActivityDelegate.qml
2012-10-24 20:40:07 +02:00
Martin Gräßlin 8176c91b2f Enable GHNS for Window Switcher
Thanks to the new category on kde-look.org we can now show the GHNS
button inside the KCM.

BUG: 297636
FIXED-IN: 4.9.3
REVIEW: 106991
2012-10-24 20:36:05 +02:00
Martin Gräßlin 7f26069f25 Enable GHNS button for KWin scripts
Functionality had already been present for quite some time and now that
the category on kde-look exists, we can just show the button.

BUG: 296774
FIXED-IN: 4.9.3
REVIEW: 106963
2012-10-24 20:35:12 +02:00
Script Kiddy f476d76ece SVN_SILENT made messages (.desktop file) 2012-10-17 00:53:14 +02:00