Commit graph

9829 commits

Author SHA1 Message Date
Hugo Pereira Da Costa
30df048632 renamed shadowconfigurationui into shadowconfigwidget, for consistency with rest of the code
fixed updateChanged for closeWindowfromMenuButton
temporarily disabled updateChanged from exceptionLists.
2013-01-07 12:12:12 +01:00
Hugo Pereira Da Costa
ea639a0ec2 renamed ConfigurationUI into ConfigWidget.
moved all ui related stuff from oxygenConfig to oxygenConfigWidget.
Implement clean 'updateChanged' method.
2013-01-07 12:12:12 +01:00
Hugo Pereira Da Costa
fcb275abe7 - use kcfg for shadow configuration
- move Shadow configuration UI to libs
- removed useDropShadow and useOxygenShadow options, and replaced by activeShadow::enable and inactiveShadow::enable
- use kcfg for decoration configuration. The handling of exceptions requires dedicated readConfig and writeConfig methods, implemented in oxygenutils
- changed sizegrip combobox into a check box and rephrased for clarification
2013-01-07 12:12:12 +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
fa3fa8c3ca Port Input Window handling for Effects to XCB
REVIEW: 107817
2013-01-07 10:00:43 +01:00
Martin Gräßlin
dce1817d8e Introduce helper classes to perform common xcb requests
Two helper classes WindowGeometry and WindowAttributes which can be
used to request the geometry and attributes more easily. This is based on
a templated class, taking cookieType, replyType and function pointers to
the request and reply functions as template parameters.

The ctor performs the async request and the reply is stored in a
QSharedPointer. Whenever the reply is needed it is checked whether it
has already been retrieved and if not will block by calling the reply
method. The class provides operator bool() to check whether the reply
succeeded (pointer is not null) and operator->() to directly access the
reply pointer.
2013-01-07 10:00:43 +01:00
Martin Gräßlin
565b4ed6a3 Common way to announce support for specific effects through X11
Instead of each effect, which needs to announce support, having custom
code to create a property and set it on the root window, there is now a
common API in EffectsHandler to take care of this.

The methods takes care of creating the atom if it has not already done
and set the property on the root window. Furthermore it allows multiple
effects to announce the same property without getting in conflict with
each other.

As a further convenience the property is automatically removed when the
effect is unloaded, so less things an effect author has to care about.

REVIEW: 107815
2013-01-07 10:00:01 +01:00
Martin Gräßlin
3ee9869ba0 Move ScreenEdge configuration from Workspace to ScreenEdge
Main motivation for this change except the fact that it doesn't belong
into Workspace is that the screen edges got updated from within setting
the desktop layout which got removed with the introduction of the
VirtualDesktopManager.

The ScreenEdge now keeps some state to be able to correctly unreserve the
electric borders when changes in the configuration are performed. There
is still room for improvement as there are still some deep function calls
from within reconfiguring in Workspace.

REVIEW: 107493
2013-01-07 09:47:59 +01:00
Martin Gräßlin
1d959dea64 Move Desktop Chain management from Workspace into own class
Most recently used virtual desktop chain is only used in the context of
TabBox and therefore moved into this namespace. KWin uses one desktop
chain for each activity. This is mapped by having multiple DesktopChains.
In addition there is a DesktopChainManager which contains all those
chains which are identified by a QString.

The manager gets connected to the signals emitted by VirtualDesktopManager
for changes in virtual desktops and to signals related to Activities
emitted by Workspace. This means the manager is rather generic as it does
not depend on any other components.
2013-01-07 09:47:51 +01:00
Martin Gräßlin
334b4bf622 Move handling of Virtual Desktops into a VirtualDesktopManager
The ownership for virtual desktops is moved from Workspace into a new
VirtualDesktopManager. The manager is responsible for providing the count
of virtual desktops and keeping track of the currently used virtual
desktop.

All methods related to moving between desktops are also moved from
Workspace to the new manager, though all methods related to Clients on
Virtual Desktops remain in Workspace for the time being. This is to have
the new manager as independent from KWin core as possible.

An rather important change for the handling of virtual desktops is that
the count and the id of a desktop is now an unsinged integer instead of
an integer. The reason for that is that we cannot have a negative count
of desktops as well as it is not possible to be on a desktop with a
negative identifier.

In that regard it is important to remember that a Client can be on a
desktop with a negative identifier. The special value for a Client being
on all desktops is handled by using -1 as a desktop. For the time being
this is not adjusted but instead of comparing the virtual desktop ids one
should prefer to use the convenient methods like isOnDesktop and
isOnAllDesktops. This would allow in future to internally change the
representation for on all desktops.
2013-01-07 09:47:51 +01:00
Martin Gräßlin
54479225a3 Application Menu button support for Plastik
New icon with three lines similar to the one used in Oxygen is added
for application menu support.

REVIEW: 107937
2013-01-07 09:46:33 +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
Weng Xuetian
6fd8db7af9 Merge branch 'KDE/4.10' 2013-01-06 23:25:01 -05:00
Script Kiddy
6e544c93ff SVN_SILENT made messages (.desktop file) 2013-01-05 08:24:47 +01:00
Martin Gräßlin
4024c3cb13 Fix broken extended border bottom in Aurorae
Swapped top/bottom.
2013-01-04 15:25:08 +01:00
Script Kiddy
93c9fd0f32 SVN_SILENT made messages (.desktop file) 2013-01-04 07:44:10 +01:00
Script Kiddy
d6dd4308db SVN_SILENT made messages (.desktop file) 2013-01-03 07:40:00 +01:00
Thomas Lübking
fa29b4141b fix dbus service registration/invocation
REVIEW: 108016
2013-01-02 19:05:11 +01:00
Thomas Lübking
8b35d3e34e finish / sync screenshot before calling ksnapshot
BUG: 312209
FIXED-IN: 4.10
REVIEW: 107981
2013-01-02 19:05:11 +01:00
Thomas Lübking
6fa52007ee use synthetic configure notifies when needed
the patch omit them while the user just moves around a window
and adds one that got lost with the deferred XMoveResize patch, causing

BUG: 312346
FIXED-IN: 4.10
REVIEW: 108013
2013-01-02 19:05:11 +01:00
Thomas Lübking
dcab3d44f3 snaphelper: repaint center rect on resizing client
BUG: 311551
FIXED-IN: 4.10
REVIEW: 108005
2013-01-02 19:05:10 +01:00
Thomas Lübking
708df9b564 NULL Compositor global static on deletion
what moc can do any time for the Workspace deconstructor
BUG: 308040
FIXED-IN: 4.10
REVIEW: 108007
2013-01-02 19:05:10 +01:00
Thomas Lübking
b301c357d5 disconnect all client signals when it's closed
the client can still live on and emit stuff, but the
compositing has been fininshed for it, so the effect window is NULL

BUG: 310142
FIXED-IN: 4.10
REVIEW: 108008
2013-01-02 19:05:10 +01:00
Thomas Lübking
62c62e4336 skip reset states if client untabbed for release
BUG: 310142
FIXED-IN: 4.10
REVIEW: 108003
2013-01-02 19:04:52 +01:00
Thomas Lübking
7ca47bdd36 support brightness > 1 for XRender backend
REVIEW: 107854
2013-01-02 18:43:14 +01:00
Thomas Lübking
cfda9e240d collect shadows of existing clients when toggling the compositor
REVIEW: 107965
2013-01-02 18:43:14 +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
d02405aa51 Remove duplicated include
REVIEW: 107998
2013-01-02 18:36:49 +01:00
Martin Gräßlin
71d5acca00 Fix spelling 2013-01-02 18:35:46 +01:00
Martin Gräßlin
47ddf1384c Fix non-const ref iterator issues reported by Krazy2 checker foreach 2013-01-02 18:35:46 +01:00
Martin Gräßlin
533d57da60 Mark most ctors as explicit as reported by Krazy2 checker 2013-01-02 18:35:46 +01:00
Martin Gräßlin
a084d34ccb Fix Krazy2 issues reported by doublequote_chars 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
75e87a44ce finish / sync screenshot before calling ksnapshot
BUG: 312209
FIXED-IN: 4.10
REVIEW: 107981
2013-01-02 18:25:45 +01:00
Thomas Lübking
683aa55957 use synthetic configure notifies when needed
the patch omit them while the user just moves around a window
and adds one that got lost with the deferred XMoveResize patch, causing

BUG: 312346
FIXED-IN: 4.10
REVIEW: 108013
2013-01-02 18:25:33 +01:00
Thomas Lübking
d83d4a7977 snaphelper: repaint center rect on resizing client
BUG: 311551
FIXED-IN: 4.10
REVIEW: 108005
2013-01-02 18:25:24 +01:00
Thomas Lübking
8239c686f6 NULL Compositor global static on deletion
what moc can do any time for the Workspace deconstructor
BUG: 308040
FIXED-IN: 4.10
REVIEW: 108007
2013-01-02 18:25:09 +01:00
Thomas Lübking
1e4d1347d6 disconnect all client signals when it's closed
the client can still live on and emit stuff, but the
compositing has been fininshed for it, so the effect window is NULL

BUG: 310142
FIXED-IN: 4.10
REVIEW: 108008
2013-01-02 18:24:58 +01:00
Thomas Lübking
1727ab1211 skip reset states if client untabbed for release
BUG: 299333
FIXED-IN: 4.10
REVIEW: 108003
2013-01-02 18:24:42 +01:00
Thomas Lübking
ad451beae2 support brightness > 1 for XRender backend
REVIEW: 107854
2013-01-02 18:24:26 +01:00
Thomas Lübking
b61f7c7cc2 collect shadows of existing clients when toggling the compositor
REVIEW: 107965
2013-01-02 18:24:15 +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
Christophe Giboudeaux
e79997c9bf Add a fixme 2013-01-01 15:01:16 +01:00
Martin Gräßlin
a9bec311c2 Extended Border support in Aurorae
Aurorae Themes can make use of the extended borders feature to allow
resizing outside the window decoration area. So far only Plastik makes
use of it in the Tiny border case.

This should be extended in future by adding generic NoSideBorders and
NoBorders sizes as used by Oxygen.

FEATURE: 308992
FIXED-IN: 4.11
REVIEW: 107936
2012-12-30 09:54:43 +01:00
Martin Gräßlin
67174bbf69 Remove outdated and not very useful comment sections
If a section of comments consists of a list of links and all are broken
it's a sign that nobody has used these comments for a long time...

REVIEW: 107933
2012-12-30 09:52:42 +01:00
Martin Gräßlin
a0e8987adb Port Logout Effect to KConfigXT
REVIEW: 107935
2012-12-30 09:51:01 +01:00
Marco Martin
34f7127c80 Merge branch 'KDE/4.10' 2012-12-28 14:52:05 +01:00
Script Kiddy
ae597bcb4e SVN_SILENT made messages (.desktop file) 2012-12-28 07:45:01 +01:00
Martin Gräßlin
8ea46b7f2d Fix narrowing conversion warnings
With this change KWin core is free of narrowing conversion warnings.

SVN_SILENT
2012-12-27 11:14:08 +01:00