Commit graph

10412 commits

Author SHA1 Message Date
Martin Gräßlin
cd025c7526 Make Outline a KWIN_SINGLETON
Given that Outline is now a QObject hold by Workspace, but not used in
Workspace, it can also be a KWIN_SINGLETON.

REVIEW: 110146
2013-04-25 09:04:02 +02:00
Martin Gräßlin
1a3bc3f60c Split Outline in a composited and non-composited part
The non-composited part handles the showWithX case with the four small
windows. The composited part shows a translucent QWidget with the
FrameSvg as done by the selection effect frame.

Outline connects to the Compositor toggled signal to switch the mode if
compositing gets suspended/resumed. This works fine also in the case that
the switch happens while the outline is shown. To support this Outline
is now a QObject and created with Workspace as a parent.

Given that the Outline handles both cases by itself, the outline effect
is no longer needed and is dropped together with all the hooks into the
effect system.
2013-04-25 09:04:02 +02:00
Martin Gräßlin
83e3f18014 Drop BoxSwitch Effect
BoxSwitch effect has been obsoleted by QML based
Window and Desktop Switchers.

FEATURE: 296071
FIXED-IN: 4.11.0
REVIEW: 104454
2013-04-24 12:03:58 +02:00
Martin Gräßlin
8c4d695907 Remove thumbnail bar from CoverSwitch Effect
The usage has always been questionable as the thumbnails are
too small to properly recognize something.

Now BoxSwitch Effect has reach its end of life which would have
required to keep most of the code just for this thumbnail bar.

If required it would be better to integrate the normal QML based
TabBox to be rendered together with an effect.

BUG: 296070
FIXED-IN: 4.11.0
2013-04-24 12:03:46 +02:00
Martin Gräßlin
5046345da0 New desktop switcher layout showing previews of the desktops
Inspired by the desktop switching mode of the boxswitch effect.

REVIEW: 110037
BUG: 296069
FIXED-IN: 4.11
2013-04-24 11:47:26 +02:00
Martin Gräßlin
0eff8a81c1 Role names for Desktop Tabbox model 2013-04-24 11:47:15 +02:00
Martin Gräßlin
466bef3a6d Adding a DesktopThumbnailItem declarative item
Similar to WindowThumbnailItem for rendering a desktop thumbnail.
Uses the new paintDesktop hook.

FEATURE: 296067
FIXED-IN: 4.11.0
REVIEW: 104441
2013-04-24 11:45:47 +02:00
Martin Gräßlin
ae7be07d0f Effects Hook to paint a desktop
A specialised paintScreen method to render all windows of one
desktop. It's intended to be called during an already started
paintScreen process to get e.g. a thumbnail of a desktop.

Currently not yet exported to the Effects.
2013-04-24 11:43:23 +02:00
Martin Gräßlin
8037e6529c Rename ThumbnailItem to WindowThumbnailItem
This is for discrimination from the to be added DesktopThumbnailItem.
The name for QML is unchanged to keep the public API stable.
2013-04-24 11:43:22 +02:00
Martin Gräßlin
db91db3a4f Refactoring: break out a base class for ThumbnailItem
Everything that has nothing to do with rendering the window thumbnail
goes into an AbstractThumbnailItem.

This is a preparation step for adding a DesktopThumbnailItem.
2013-04-24 11:43:22 +02:00
Martin Gräßlin
7c489e43d9 Plasma Package support for desktop switcher layouts
The existing desktop switcher becomes the first available layout called
"informative". For both variants of desktop switchers a new config key is
introduced to define the desktop switcher layout.

Desktop layouts are installed into a different directory than window
switcher layout and use a different service type.

For the moment it's basically a hidden config option as there are no
further layouts yet.

BUG: 296068
FIXED-IN: 4.11
REVIEW: 110021
2013-04-24 11:33:06 +02:00
Martin Gräßlin
badc7a2bc4 Remove show outline from TabBox
It's an option doing pretty much the same as the highlight of selected
window option. But it is known to conflict especially with some Plasma
themes.

BUG: 310935
FIXED-IN: 4.11
REVIEW: 110140
2013-04-24 10:02:57 +02:00
Martin Gräßlin
6d0d9cfe43 Remove KWin::Notifications
Overall all notifications except compositing suspended by DBus were
configured by default to not have any action. This means all the time we
emit a notification we keep DBus and KDED busy for nothing.

All the cases when a notification is triggered ire also exported to
KWin scripting, so if one really needs to handle something in case a
window is moved, it could be done through a KWin script with much more
context about the event.

REVIEW: 110113
BUG: 258097
FIXED-IN: 4.11
2013-04-23 16:23:55 +02:00
Martin Gräßlin
a836612a92 Move Composite suspended by dbus notification directly to where it's used 2013-04-23 16:21:30 +02:00
Martin Gräßlin
5b56cff520 Remove demands attention notification 2013-04-23 16:21:30 +02:00
Martin Gräßlin
dca341994f Remove window activated notification 2013-04-23 16:21:30 +02:00
Martin Gräßlin
2151382cf1 Remove (un)fullscreen window notification 2013-04-23 16:21:30 +02:00
Martin Gräßlin
466acb7c80 Remove Move/Resize Start/End notifications 2013-04-23 16:21:30 +02:00
Martin Gräßlin
c9bfecc12b Remove dialog close notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
a82689a2d2 Remove new dialog notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
5db4923598 Remove (not) on all desktops notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
54a12641ae Remove window (un)maximized notifications 2013-04-23 16:21:29 +02:00
Martin Gräßlin
2a2632ee76 Remove Window Unminimize Notification
Fun fact: it was configured to play the Unmaximize sound.
2013-04-23 16:21:29 +02:00
Martin Gräßlin
d6c4fc4f86 Remove Window Minimized Notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
6c0a35d0e0 Remove Shade Up/Down Notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
88c77db4b8 Remove window close notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
5d303e0fee Remove delete window notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
c8c2550eb6 Remove new window notification 2013-04-23 16:21:29 +02:00
Martin Gräßlin
af673c11d7 Remove the Change Desktop Notifications 2013-04-23 16:21:28 +02:00
David Faure
2b3cf17649 Merge remote-tracking branch 'origin/KDE/4.10'
Conflicts:
	solid/modemmanager-0.4/solid_modemmanager04.desktop [deleted]
	solid/networkmanager-0.7/solid_networkmanager07.desktop [deleted]
2013-04-23 10:50:37 +02:00
Script Kiddy
88f3f67cbe SVN_SILENT made messages (.desktop file) 2013-04-22 13:47:24 +02:00
Script Kiddy
71d0e363d3 SVN_SILENT made messages (.desktop file) 2013-04-22 09:03:09 +02:00
Script Kiddy
d2b718ac0d SVN_SILENT made messages (.desktop file) 2013-04-20 09:51:27 +02:00
Script Kiddy
71743ba5cb SVN_SILENT made messages (.desktop file) 2013-04-18 09:41:16 +02:00
Script Kiddy
041ee1ac71 SVN_SILENT made messages (.desktop file) 2013-04-17 09:15:50 +02:00
Thomas Lübking
2742f6747f Merge branch 'KDE/4.10' 2013-04-16 22:07:22 +02:00
Thomas Lübking
1bda85f9f5 resize effect: use preMultiply function for color 2013-04-16 22:07:07 +02:00
Thomas Lübking
3faecf5075 fix effect script parsing
REVIEW: 109987
2013-04-16 22:07:07 +02:00
Thomas Lübking
8cf6e39eab general tabbox support for screenedges
REVIEW: 109362
BUG: 316288
FIXED-IN: 4.11
2013-04-16 22:07:07 +02:00
Thomas Lübking
c6ff7932c2 Tabbox: ask kwin about compositing
REVIEW: 109983
2013-04-16 22:07:06 +02:00
Thomas Lübking
70f9bc29f3 support bordersnapping per axis
a partially max'd client shall only receive aggressive snapping in
the max'd dimension

BUG: 318105
REVIEW: 109951
2013-04-16 22:07:06 +02:00
Thomas Lübking
56d39cb327 remove moveResizeMaximized GUI
REVIEW: 110000
2013-04-16 22:07:05 +02:00
Thomas Lübking
adf3509647 fix initial tabs in rules kcm 2013-04-16 22:07:05 +02:00
Thomas Lübking
5d530a64fb don't setMaximize if whe only want changeMaximize
BUG: 318275
FIXED-IN: 4.10.3
REVIEW: 110006
2013-04-16 20:23:28 +02:00
Ralf Jung
84c904d6f9 EGL backend: Check if implementation supports swap interval of 1 before setting it
REVIEW: 110023
2013-04-16 19:00:52 +02:00
Ralf Jung
c9f852a73f Fix tearing in video playback when using kwin_gles
REVIEW: 109973
2013-04-16 16:16:13 +02:00
Feng Chao
7854d12743 Fix Bug 316877 - Description text for the Slide Back effect is incorrect
Change "Slide back windows losing focus" to
"Slide back windows when another window is raised"

BUG: 316877
2013-04-16 20:44:49 +08:00
Martin Gräßlin
b88f7ad8ce Remove QDeclarativeView from DeclarativeScript
The view is never shown or used in any way except to create the
QDeclarativeEngine. So instead of using a view as a wrapper, let's create
a QDeclarativeEngine and a Component and create the script from the
Component.

To have Plasma.Dialog working we also need to add the created script item
to a QGraphicsScene.
2013-04-16 08:10:15 +02:00
Martin Gräßlin
edb074cbc2 Split out screen handling from Workspace into own class Screens
Following the approaches of other split out functionality Screens is a
singleton class created by Workspace.

The class takes over the responsibility for:
* screenChanged signal delayed by timer
* number of screens
* geometry of given screen
* active screen
* config option for active screen follows mouse

The class contains a small abstraction layer and has a concrete subclass
wrapping around QDesktopWidget, but the idea is to go more low level and
interact with XRandR directly to get more detailed information.

All over KWin the usage from QDesktopWidget is ported over to the new
Screens class.

REVIEW: 109839
2013-04-15 10:25:10 +02:00
Martin Gräßlin
27627bdccb Move killWindowId(Window) from Workspace to KillWindow
Only used from KillWindow and does not operate on private data of
Workspace.

At the same time port to XCB.

REVIEW: 109911
2013-04-15 10:09:04 +02:00