Commit Graph

8346 Commits (1326316049541c5984b2d29906255f4b2d88a048)

Author SHA1 Message Date
Arthur Arlt 1326316049 Introduce Build Option for Tiling
A build option is introduced to file CMakeLists.txt. Classes Tiling,
Tile and TilingLayouts are only built if the option is set to ON. #ifdef's
are added to the classes where functions of the excluded classes are called.
2011-07-28 13:39:21 +02:00
Arthur Arlt 0c5da9f96f Remove tiling dependency from activation.cpp
Instead of directly calling notifyTilingWindowActivated() the signal
clientActivated() is used and connected. Including tiling.h is no longer
needed in activation.cpp.
2011-07-28 13:06:31 +02:00
Arthur Arlt 85c5439b5d Remove tiling dependency from Client
The direct method calls from class Client were removed and replaced by
connecting to the appropriate signals emitted by class Client. The
affected methods in class Tiling are notifyTilingWindowMinimizeToggle() and
updateAllTiles() which are now private Q_SLOTS.
Including tiling.h in class Client is no longer needed and was removed.
2011-07-28 13:06:30 +02:00
Arthur Arlt b1e3c7ba38 Move initialization of shortcuts to separate method in new Tiling class 2011-07-28 13:06:30 +02:00
Arthur Arlt f29d151220 Use configChanged() signal in TilingLayouts
Since there is a signal triggered if configurations are changed, the
reconfiguration method in TilingLayouts was made a slot and is connected
to the appropriate signal in Workspace.
2011-07-28 13:06:30 +02:00
Arthur Arlt bc4fea10f3 Replace direct method calls with signal and slot mechanism
The direct method calls for createTile(), removeTile() and resizeing the
tiling layouts from class Workspace are replaced by connecting to the
appropriate signal. The methods are slots now and a new slot for resizeing
the tiling layouts was introduced.
2011-07-28 13:06:21 +02:00
Arthur Arlt 3634525613 Refactoring Tiling
This initial commit introduces a new class Tiling. It is provided by
the files tiling/tiling.h and tiling/tiling.cpp. It covers all the
Tiling functionality which was provided by Workspace. In this initial
commit, all the functions were just moved and adjusted.
A  new member variable m_tiling is introduced to Workspace, which
makes the new class Tiling accessible from Workspace.
The Tiling pointer is created in the constructor and deleted in
the deconstructor. Also a getter method tiling() is provided.
All calls from other classes are updated to use the methods in class
Tiling now.
2011-07-28 12:35:51 +02:00
Arthur Arlt 6db74c8d66 Original Tiling.cpp moved to directory tiling/ 2011-07-28 12:31:33 +02:00
Alex Fiestas a2aad27a78 Make sure that not maximized clients are offscreen on xrandr events
Added a small check in Client::checkWorkspacePosition which will assure
us that no window ("client") is left in a offscreen position. this is
more a workaround than a proper fix but is the only thing we can do that
will be backportable to the 4.7 branch.
2011-07-27 20:13:54 +02:00
Martin Gräßlin 68bba98e5f Remove duplicated xfixes include 2011-07-27 18:34:32 +02:00
Martin Gräßlin 997634c813 Remove a not working include directory
The kwin/lib directory does not exist for one
release cycle now.
2011-07-27 18:34:32 +02:00
Martin Gräßlin 92d32de087 Effects do not need kephal 2011-07-27 18:34:32 +02:00
Martin Gräßlin 1493dfd94f Load GLES effects instead of GL effects in GLES build
Just replacing the library name.
2011-07-27 18:34:32 +02:00
Martin Gräßlin af27c83d0a Build an additional kwin_gles binary
KWin gets compiled twice if OpenGL ES is available
and a second binary is created. It is linked against
the GLES effects and kwinglesutils and does not link
against OpenGL. The normal OpenGL variant is still
the "kwin" binary.

This is an intermediate step till we have the scene
as a loadable plugin. Then we will determine whether
OpenGL ES is supported in an external application
and load it as a plugin, otherwise we load the
OpenGL/GLX scene as a plugin.

REVIEW: 101979
2011-07-27 18:34:32 +02:00
Martin Gräßlin 680a0bad64 KCMs need to link kwingl(es)compositing 2011-07-27 18:34:31 +02:00
Martin Gräßlin 808c29109a Build effects twice - once with GL, once with GLES 2011-07-27 18:34:31 +02:00
Martin Gräßlin c807e97e0a Split glutils out of kwineffects
All OpenGL related files are build as a kwinglutils library for OpenGL
and as a kwinglesutils library for OpenGL ES. The appropriate defines
are set using target_properties and removed from kwinconfig.h.cmake.
2011-07-27 18:34:31 +02:00
Martin Gräßlin 7e4e43d203 Make ShowFpsEffectConfig build without GL dep
Forward declarations to the help!
2011-07-27 18:34:31 +02:00
Martin Gräßlin d0664a9c96 Ensure logout compiles with GLES 2011-07-27 18:34:31 +02:00
Martin Gräßlin c3cf4482a3 Move GLX detection from kwinglobals to CompositingPrefs
Removes the Extension::glxAvailable() from kwinglobals and
implements the functionality in CompositingPrefs, where it
is only needed. There used to be one additional check in
scene_opengl_glx.cpp which is moved into composite.cpp
before the OpenGL Scene is created.

REVIEW: 102002
2011-07-27 18:34:31 +02:00
Script Kiddy ff5707c91b SVN_SILENT made messages (.desktop file) 2011-07-27 09:34:28 +02:00
Raymond Wooninck 7951d66ae4 Fix the includes (due to removal of libs/kworkspace as includedir) 2011-07-26 07:50:58 +02:00
Aaron Seigo 7eb18d9fd5 turn the plasma active build on in kwin by default if building for non-desktop profiles 2011-07-25 19:07:54 +02:00
Arthur Arlt 04fd63b201 Move scene->windowAdded() to Toplevel's setupCompositing() function
Moved the function call of scene->windowAdded() to setupComposition() of
Toplevel. The function calls from Workspace were removed, since
windowAdded() is called by setupCompositing() now, which is called anyway.

REVIEW: 102047
2011-07-25 12:27:43 +02:00
Script Kiddy 6df618e94b SVN_SILENT made messages (.desktop file) 2011-07-25 09:33:28 +02:00
Alex Fiestas fa199457af Try to call desktopRezie once intead of doing it in all XRandR events.
When a screen is disconnected XRandR emits 3 events instead of just one:
1-Disconnected screen resized
2-Disconnected screen moved
3-Disconnected screen removed

Before this commit we were calling desktopResize on each event which
between other things restart the composite (not necessarily the faster
thing to do...).

So, in order to be able to call desktopResize only once, now we're
handling individually each event, when one of them happens a QTimer is
started/restarted on each event and desktopResized is called owhen
QTimer.timeout

    The current interval is 100msec
2011-07-24 22:57:33 +02:00
Script Kiddy 30de988de8 SVN_SILENT made messages (.desktop file) 2011-07-24 09:25:34 +02:00
Martin Gräßlin 787b2bf8cc Fix regression introduced with 909b4efa
I still don't understand how I actually tested my patch
before committing. It was working, sigh. That were
several hours of annoyance including a git bisect presenting
my own commit I assumed to be correct. Sigh.
2011-07-23 21:32:12 +02:00
Martin Gräßlin 2fc1ed25a5 Add a define KWIN_SHADER_DEBUG to all shaders
If the environment variable KWIN_GL_DEBUG is set to 1
the define KWIN_SHADER_DEBUG is added to the glsl
source code allowing to add some custom ifdefed
visual debug handling.

As an example it's added to scene-fragment.glsl to
paint everything in a greenish way.
2011-07-23 18:57:50 +02:00
Hugo Pereira Da Costa 6d96696898 Merge branch 'master' of git.kde.org:kde-workspace 2011-07-21 16:07:31 +02:00
Hugo Pereira Da Costa 14e876e4b6 changed animation text, for clarity. 2011-07-21 16:06:58 +02:00
Script Kiddy 9b8404279b SVN_SILENT made messages (.desktop file) 2011-07-21 09:27:01 +02:00
Martin Gräßlin 9c9ed80a2b Add environment variable to enforce Lanczos Filter
By setting KWIN_FORCE_LANCZOS=1 the settings and
driver check are overwritten.

This should help to test mesa bug 33275
(https://bugs.freedesktop.org/show_bug.cgi?id=33275)
2011-07-20 22:41:58 +02:00
Script Kiddy 2566d184c4 SVN_SILENT made messages (.desktop file) 2011-07-20 09:24:14 +02:00
Hugo Pereira Da Costa bb769a9eb6 moved method from private to protected. 2011-07-18 12:20:58 +02:00
Hugo Pereira Da Costa 3637caf68c minor code cleanup. 2011-07-18 10:21:17 +02:00
Hugo Pereira Da Costa 43cae07762 fixed saving of animations configuration based on expertMode(). 2011-07-18 10:09:22 +02:00
Hugo Pereira Da Costa 9f12ecd91d fix updateChanged() method. 2011-07-18 10:06:13 +02:00
Hugo Pereira Da Costa 4e7364d9df nothing. 2011-07-18 10:06:05 +02:00
Hugo Pereira Da Costa a6ffa920e4 implemented individual animations configuration. 2011-07-18 09:49:15 +02:00
Hugo Pereira Da Costa 92f9181db9 tabulations. 2011-07-18 07:55:17 +02:00
Hugo Pereira Da Costa f75111622b added animation config widget to allow individual animation configuration. 2011-07-18 07:53:41 +02:00
Hugo Pereira Da Costa c21122c863 added necessary options to configure all type of animations individually. 2011-07-18 07:36:44 +02:00
Hugo Pereira Da Costa 6c235bbe1e removed unused header. 2011-07-17 17:55:28 +02:00
Hugo Pereira Da Costa 31d6f0e7ac tabulations. 2011-07-17 16:27:51 +02:00
Hugo Pereira Da Costa 0ae4d9489f always enable window grouping, when available.
removed corresponding config option.
2011-07-17 16:12:30 +02:00
Hugo Pereira Da Costa 7ca4d15919 use QWeakPointer (and explicit deletion, if needed) instead of QSharedPointer
CCBUG: 277925
2011-07-17 15:49:16 +02:00
Hugo Pereira Da Costa 5c95478e56 removed shadowCacheMode option.
Default mode (variable) is what's kept.
2011-07-17 13:13:44 +02:00
Thomas Lübking 335dd073cd emit clientFinishUserMovedResized when a client is closed during moveResize
BUG: 277784
2011-07-16 14:23:54 +02:00
Arthur Arlt 5d2f8356f4 Make reconfigure() a Q_SLOT
make reconfigure() a Q_SLOT and connect to the signal configChanged()
of class Workspace.

REVIEW: 101942
2011-07-15 22:23:29 +02:00