Commit graph

12378 commits

Author SHA1 Message Date
Martin Gräßlin
ed1e49f204 Fix build
Never push before first coffee!
2014-06-12 07:47:27 +02:00
Martin Gräßlin
983561107a [kcmkwin/compositing] Only store changed Effects
Keep track of which Effect got changed and only sync those to the
config which actually changed.

REVIEW: 118660
2014-06-12 07:26:22 +02:00
Martin Gräßlin
ed747d82ab [kcmkwin/compositing] Use Effect name as configuration window title
REVIEW: 118632
2014-06-12 07:22:17 +02:00
Martin Gräßlin
8919cd5f54 [effects] Simplify supported check in blur and backgroundcontrast
GLSL is always required nowadays on GL compositor.

REVIEW: 118642
2014-06-11 14:50:01 +02:00
Marco Martin
490e733590 Distinguish empty and non existent properties
This restores the behavior on KWin4: if I set an X property that doesn't have any data on a window, it's still information, so this makes the Xcb wrapper return an empty QByteArray that is not null.
EffectWindow::readProperty() now returns an empty QByteArray constructed the same way as it was in KWin4.

REVIEW:118645
BUG:335446
2014-06-11 11:08:02 +02:00
l10n daemon script
ea866906f0 SVN_SILENT made messages (.desktop file) 2014-06-11 08:21:08 +00:00
Martin Gräßlin
a29289ccb3 [kcmkwin/compositing] Remove dead window management special case code 2014-06-11 09:29:12 +02:00
Martin Gräßlin
3420ab17bb [kcmkwin/compositing] Don't load the EffectsModel twice
The model gets initialized from the ::load method, no need to do it
from ctor as well.
2014-06-11 08:32:21 +02:00
Martin Gräßlin
060c93233e Make xcb-icccm truely optional
ICCCM dependency is a beast due to two different existing versions in
different packages. Thus it cannot be a hard dep without causing problems
for our downstreams.

This change ensures that ICCCM is really considered as an optional dep
and that the version we need is found, if not we mark it as non-found.

ICCCM is only used by one test application which can easily be disabled
and some enum values are used in events.cpp. If ICCCM is not found those
are replaced by defines generated in config-kwin.h.

BUG: 336035
2014-06-11 07:51:07 +02:00
Martin Gräßlin
0c4aaaf4ad [scripting] Support loading translations for UI loaded configs
Scripts and scripted effects can provide a ui file which gets loaded at
runtime. Obviously such a ui file is not translated. This introduces
quite a hack to load the translated strings.

In the metadata.desktop file the scripted component can provide a key
X-KWin-Config-TranslationDomain. The genericscriptedconfig tries to
locate the metadata.desktop file and reads this entry. If it is present
we extract all string properties of the loaded UI and pass them through
ki18nd.

REVIEW: 118585
2014-06-10 15:49:19 +02:00
Martin Gräßlin
d0c83ddbf3 [kcmkwin/deco] Support loading translations for UI loaded configs
Qml based Aurorae themes can provided a ui file which gets loaded at
runtime. Obviously such a ui file is not translated. This introduces
quite a hack to load the translated strings.

First of all a new property is added to the service file for
specifying the translation domain to be used for the config UI. If
such a translation domain is set we extract all string properties of
the loaded UI and pass them through ki18nd.
2014-06-10 15:49:19 +02:00
l10n daemon script
e73f6b2278 SVN_SILENT made messages (.desktop file) 2014-06-10 10:37:36 +00:00
Martin Gräßlin
1f4981fc0b [tabbox] Bring back disabled unit tests
SwitcherItem is disabled for the unit test to reduce pulled in deps.
2014-06-10 11:14:59 +02:00
Martin Gräßlin
a290209b3d Create dedicated class for CompositorDBusInterface
Similar to the already existing DBusInterface wrapper for the
org.kde.KWin interface a new CompositorDBusInterface is introduced for
org.kde.kwin.Compositing.

That way the DBus interface is split from the implementation and DBus
specific methods are no longer required in the Compositor class.

The deprecated DBus methods
* toggleCompositing(bool)
* setCompositing(bool)

are removed.

REVIEW: 118463
2014-06-10 10:52:25 +02:00
l10n daemon script
9b869958b3 SVN_SILENT made messages (.desktop file) 2014-06-08 08:27:53 +00:00
l10n daemon script
4c49449bcb SVN_SILENT made messages (.desktop file) 2014-06-07 08:25:25 +00:00
l10n daemon script
abe62085e8 SVN_SILENT made messages (.desktop file) 2014-06-06 08:52:09 +00:00
Martin Gräßlin
433850a314 [kcmkwin/compositing] Set translationDomain for KDeclarative 2014-06-06 07:47:25 +02:00
Martin Gräßlin
896b8dcfdd [killer] i18n -> xi18n
It's using markup, so it needs to be xi18n.
2014-06-05 18:02:43 +02:00
Jonathan Riddell
39cf764378 bump version number for beta 2 2014-06-05 12:31:29 +01:00
l10n daemon script
bbcacffd23 SVN_SILENT made messages (.desktop file) 2014-06-05 08:37:44 +00:00
Martin Gräßlin
902e424f81 Fix checking whether ActivityFocusForce is set
BUG: 335770
2014-06-05 09:29:37 +02:00
Martin Gräßlin
f747f370b3 [tabbox] Fix key navigation in icons based tabbox 2014-06-05 08:11:34 +02:00
Martin Gräßlin
d1798202e8 [tabbox] Fix forwarding grabbed key event to QQuickItem
We need to send the event to a QQuickItem which accepts focus. Just
sending it to the Window or to the contentItem doesn't work as there is
no activeFocusItem (might be related to having the keyboard grabbed).

We try to send the event to all children of the Window's content item.
There should hopefully be one item which accepts the event and properly
reacts on cursor keys.

REVIEW: 118471
2014-06-05 08:11:34 +02:00
Thomas Lübking
17ca566154 setup desktopgrid for screencount change
prevents segfaults..

CCBUG: 326032

Forward port of 4fe7460e03f5cd4f64d85d20a6d85ce3a66f4ae8 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
00bb767291 fix dangeling allActivitiesGroup pointer crash
CCBUG: 334152

Forward port of d3fe2391f6b36398ac671fe3cadef667919cc0e5 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
d6ea601005 keep oversized windows in fullscreen area
huge windows are not contrained to their initial screen
(the user might want to move them to the other instead),
but we must not let them drop out of the fullscreen area
either

CCBUG: 335043

Forward port of d7c2434a9e144dd2e7f1519d78b333e7d4d3bfc7 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
eb9671b0b6 allow full range blur strength config in the GUI
CCBUG: 334391

Forward port of faec381d9ffa51e4b3630e7fcac9eeed8bfa3ae8 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
dec218a444 store geometry trail & use the correct oldGeometry
geometryChanged is always executed before maximizeChanged, so we
store the last changed geometry (through regular resize - the current
geometry) and the second last one (used exclusively so far) which is
the old geometry we want to use if the geometry change was caused
by the maximize change

CCBUG: 335023

Forward port of 3c8506992d3a05daa3f0752cc0f5e844acf2a8e2 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
35bfec1511 warp cursor per virtual desktop wrap direction
if there's no desktop toLeft/Right above/below it's wrong
to warp the cursor, branch opens on corner edges

CCBUG: 333341

Forward port of eea4bb81105f2c289831cf1f682c3927a24fd831 from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
5d8ae96a56 take fullscreen windows out of tabbing
it's not been possible to attach tabs to an (undecorated!)
fullscreen window.
now it's neither possible to attach a fullscreen window to
another tabgroup and fullscreening a window will untab it

CCBUG: 332568

Forward port of abf3d200cfc39fcc27a22224512853a96d947add from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
90fb9a5aa9 prevent moving of FS windows on 1-screen setup
CCBUG: 332565

Forward port of 124b6783de6f8f4cfb05289fa3398a7be164691b from kde-workspace
2014-06-04 16:30:29 +02:00
Thomas Lübking
d8c9da0cc7 "fix" activity assignemt by popup menu
problem is that toggleOnActivity interprets "all" as "none" and
subsequent setting of any activity will move the window to that
activity *only* - what's not suggested by the GUI
-> force the user to "hold it correctly" by unchecking all
   individual activities when setting on all - this also matches
   the display when the popup is opened w/ "on all" preselected

CCBUG: 330838

Forward port of 31f9e4cf053f59b7013ff006c86290f86adfcdb5 from kde-workspace
2014-06-04 16:30:29 +02:00
Martin Gräßlin
d8dd369f9e Load Qt's translations 2014-06-04 15:59:53 +02:00
Sebastian Kügler
999baabcfa [kwin] Streamline Comment fields of KCMs
This patch applies a common language and type-setting to the
systemsettings modules in kwin.

Considerations:
- The comment field might repeat the name, or give more detail about the
  specific settings on this page, this makes sense with how
  systemsettings and kcmshell present it
- Mentioning the words settings, configure, options, etc. is avoided --
  it is clear from the context that these are settings and options.
- Title-case throughout in line with human interface guidelines, see
  http://techbase.kde.org/Projects/Usability/HIG/Capitalization
- The comment ends up being the title, so the
- tech slang is avoided as much as possible, but left in where really
  necessary
- I've left the Name field "mostly untouched", as that one is key for
  the user to find the right module in systemsettings' icon view and in
  the sidebars

The most prominent change is "Compositor" to "Graphics Compositor" (in
the Title field). This is more like a "suggestion", if you don't like
it, I'll take it out again. Reasoning: "Compositor" is a very technical
term, people who know graphics might recognize it. Others might not
understand that "composite" is about graphics -- hence the
specialization. Please enter the commit message for your changes. Lines starting

REVIEW:118338
2014-06-04 13:31:33 +02:00
Martin Gräßlin
53975ccd9c [kcmkwin/scripts] Add missing ki18n_wrap_ui 2014-06-04 09:24:37 +02:00
Martin Gräßlin
76b05f241b Only reparent qwidget based deco to a QWindow wrapper
This partially reverts 8543033d59 which
caused major issues with QWindow based decorations.

BUG: 335762
2014-06-04 09:09:37 +02:00
Martin Gräßlin
c4caf705da Fix build breakage when input module gets compiled 2014-06-03 15:24:49 +02:00
Martin Gräßlin
7910fed659 Improve updating user timestamp
Use the timestamp from the xcb event which triggers the update whenever
possible. If we don't have access to the latest event, let's at least
update our own xTime prior to using it.

Slightly unrelated change included: Group switches the userTime from
XLib datatype to xcb datatype.

BUG: 335637
REVIEW: 118456
2014-06-03 13:59:10 +02:00
Martin Gräßlin
8543033d59 Reparent decoration window by using a QWindow wrapper for the frame
Qt doesn't like that we reparent the decoration using low level xcb
calls. So let's use a QWindow wrapper for the frame and let Qt do
the reparenting itself.

BUG: 334768
REVIEW: 118159
2014-06-03 09:22:18 +02:00
Martin Gräßlin
48c3519390 [aurorae] Reparent main item to the QQuickWindow
This hopefully works around QTBUG-39336.

BUG: 335253
REVIEW: 118416
2014-06-03 09:20:53 +02:00
Martin Gräßlin
c16472e535 [kcmkwin/compositing] Use a classic ui file for the Compositor settings
For a classic user interface like the advanced compositor settings the
good old widgets are still better suited than the new QuickControls.

REVIEW: 118273
2014-06-02 14:58:00 +02:00
Martin Gräßlin
b259dda336 [kcmkwin/compositing] Carry the changed argument in the changed signals 2014-06-02 14:58:00 +02:00
Martin Gräßlin
6afc82196f Fix installing of icons
REVIEW: 118261
2014-06-02 14:56:42 +02:00
Martin Gräßlin
dc37805586 [killer] Use dialog-warning icon as window icon for killer
Based on the discussion on kwin [1] and plasma-devel [2] mailing list.

REVIEW: 118414

[1] http://lists.kde.org/?l=kwin&m=140119827404150&w=2
[2] https://mail.kde.org/pipermail/plasma-devel/2014-May/031749.html
2014-06-02 14:56:03 +02:00
Martin Gräßlin
ec6a1810d4 [tabbox] Drop DBus interface and embedded functionality
Both were only added for the use case of Plasma Active. In the next
iteration we won't need the embedded any more as Plasma is able to draw
thumbnails by itself. So there is neither need for the embedded
functionality nor for the D-Bus interface.

REVIEW: 118464
2014-06-02 10:46:34 +02:00
Martin Gräßlin
4c241f0920 Only connect the Scene::resetCompositing signal when Scene got constructed
SceneOpenGL::createScene() might return a null pointer and in this case
we should not try to connect to it.

REVIEW: 118462
2014-06-02 10:46:34 +02:00
Ivan Čukić
b995c9da23 KWin activities usage ported to the new library paradigm
Since the KActivities library now keeps an internal cache (and is
non-blocking), there is no point in thread-based information
fetching.

BUG: 335396
REVIEW: 118443
2014-06-01 18:58:36 +02:00
Martin Gräßlin
b83f63edf2 [tabbox] Use XCB_CURRENT_TIME for xcb_allow_event
BUG: 335187
2014-06-01 17:20:01 +02:00
l10n daemon script
b70107b463 SVN_SILENT made messages (.desktop file) 2014-06-01 08:11:53 +00:00