Commit graph

928 commits

Author SHA1 Message Date
Martin Gräßlin
698eb631cd ClientGroup becomes scriptable (again)
For this properties are defined in ClientGroup and several methods
are changed to be slots (to be invokable from scripts). On Client
the clientGroup is exported as a property.

The existing wrapper around ClientGroup is dropped as it is no
longer needed. Interestingly it was wrong anyway as it allowed to
construct a new ClientGroup, which has to be done internally.

At the same time the meta declarations get cleaned up a little bit.
2012-01-01 14:43:32 +01:00
Martin Gräßlin
1953deab15 Drop "Chelate"
Whatever it was, we cannot need a "Lazy Logic (TM)" which is not
documented. And even if it were useful, KWin is not the right place
to develop language extensions to ECMAScript.
2011-12-31 14:22:22 +01:00
Martin Gräßlin
f47e7bb5ef KWin scripting goes properties
Dropping the wrapper around Client and just exporting the Client's
properties. This breaks all existing scripts as it's now e.g.:
client.caption
instead of
client.caption()

But the first one is the more natural one for JavaScript and also
for everyone writing QML as well.

Setters and signals are mostly still missing in client. Other parts
like ClientGroup must be converted to properties, too.
2011-12-31 08:58:40 +01:00
Martin Gräßlin
6f9f736973 Merge branch 'kwin/tabbox-window-strip' into integration 2011-12-21 07:45:52 +01:00
Aaron Seigo
a7ed191184 Merge branch 'libkactivities'
Conflicts:
	kwin/CMakeLists.txt
	libs/kworkspace/CMakeLists.txt
	libs/kworkspace/kactivityconsumer.h
	libs/kworkspace/kactivitycontroller.h
	libs/kworkspace/kactivityinfo.h
	plasma/desktop/shell/activitymanager/activityicon.cpp
2011-12-05 00:33:25 +01:00
Martin Gräßlin
12b7bdfcb1 Plasma Active needs TabBox now 2011-12-01 13:16:21 +01:00
Martin Gräßlin
efe439e2bc Include WindowStrip as TabBox layout 2011-11-27 14:05:44 +01:00
Martin Gräßlin
4e8a0fcaec Declarative is a dependency of KWin in general and not just TabBox
Fixes broken build without TabBox since
8f569072db2fa6421f331a7d06b4c926d56081a9.
2011-11-11 12:47:31 +01:00
Martin Gräßlin
f98593d3fb Window Thumbnail support for QML
A new QML item "ThumbnailItem" is registered to the TabBox. The
C++ implementation finds the EffectWindow of the TabBox and adds
itself to the EffectWindow.

While rendering the EffectWindow the information for all registered
ThumbnailItems are extracted and the thumbnail is rendered on top
of the EffectWindow.

This has obvious limitations like you cannot put other QML items
on top of the thumbnail. Nevertheless it works well enough to
be a possible replacement for e.g. BoxSwitch effect.

When compositing is disabled an icon is rendered instead of the
Thumbnail.

One TabBox Layout inspired by BoxSwitch Effect is added. For the
KCM small pre-rendered items are used.

REVIEW: 103039
2011-11-10 14:28:06 +01:00
Aaron Seigo
dde6a17a0f use libkactivities 2011-11-04 23:23:52 +01:00
Martin Gräßlin
aa17081fe8 TabBox in QML
All the default layouts (informative, compact, text, small and big icons)
are rewritten in QML and replace the ListView used before. The old code
is still around for the desktop switching modes which are not yet ported.

Next steps include to update the configuration module to not show now
obsoleted settings as well as providing a better way to choose the layout.

REVIEW: 102948
2011-10-30 16:07:14 +01:00
Martin Gräßlin
9bdea8740e Don't set KWIN_HAVE_OPENGL(ES) CMake Variables
Those are set as target properties only.
2011-08-13 16:46:43 +02:00
Martin Gräßlin
0c47ca5e97 Remove defines for X extensions
The following dependencies have become mandatory build deps:
* XRandR
* XRender
* XFixes
* XDamage
* XComposite
2011-08-13 16:46:43 +02:00
Martin Gräßlin
987bc837d9 Remove define KWIN_HAVE_OPENGL_COMPOSITING
Due to changes in build system we have always either OpenGL or OpenGL ES.
This allows to remove the KWIN_HAVE_OPENGL_COMPOSITING define. In the
effects the define is kept as KWIN_HAVE_OPENGL which can be used in
future to build also an XRender only effect system.
2011-08-13 16:46:43 +02:00
Martin Gräßlin
b7d2b16b8d Remove define KWIN_HAVE_COMPOSITING
Building the workspaces requires to have all the build dependencies
which were required for KWIN_HAVE_COMPOSITING to be set. This allows
us to remove all the ifdefs for this and gives us a cleaner code.
2011-08-13 16:46:43 +02:00
Philipp Knechtges
09a6222f86 kwin: prefer the local header files to the installed ones 2011-08-11 18:03:01 +02:00
Allen Winter
8584104bf0 Improve Find OpenGLES.cmake a bit by only setting the FOUND varaible
if both the GLES and EGL libs and headers are found.
Fold all the includes and libraries into 1 varaible each and use those.

in other words, you need to have both OpenGLES and EGL to do a successful build.
2011-08-06 09:29:20 -04:00
Martin Gräßlin
df75644817 Fix compilation with OpenGL ES and without OpenGL
If we have OpenGL ES but not OpenGL the KWIN_HAVE_OPENGL is set
causing the first compile pass to fail as it tries to build
against OpenGL. As a solution the first pass links against
OpenGL ES if OpenGL is not found.

This means both kwin and kwin_gles are built against GLES.
2011-08-03 16:39:36 +02:00
Arthur Arlt
8c3a0e218a Move tile.cpp, tile.h, tilinglayout.cpp and tiling.h to directory tiling/
The three files are moved to the directory tiling/ and the includes were
adjusted as well as the CMakeLists.txt file.
2011-07-28 13:39:28 +02:00
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
6db74c8d66 Original Tiling.cpp moved to directory tiling/ 2011-07-28 12:31:33 +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
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
7b86e7f1c3 Introduce a build option for DesktopChangeOSD
A build option is introduces whether the DesktopChangeOSD functionality
should be built or not. It is set to ON by default.
2011-07-15 21:58:30 +02:00
Martin Gräßlin
f89ba7a382 Move tabbox.(h|cpp) to tabbox sub directory 2011-07-15 17:22:41 +02:00
Martin Gräßlin
32a82141f0 Adding a build option for KWin Scripting
It is possible that adding this build option broke the Scripting
component. This is something that should not happen. Unfortunately
by just ifdefing everything scripting related with scripting enabled
we have build errors. These are caused by the fact that the scripting
code includes e.g. client.h through "./../client.h". At one offending
place I changed that to "client.h", but there is also a client.h in
the scripting directory.

The includes and naming of the scripting files clearly have to be fixed!
2011-07-10 10:48:25 +02:00
Martin Gräßlin
062b117919 QtXML library only needed by tabbox 2011-07-10 10:02:46 +02:00
Arthur Arlt
d8072be54d Move OverlayWindow from Workspace to its own class
All the functionality of Overlay Window is moved to its own class
OverlayWindow. It is created and owned by class Scene, since almost
all function calls are called from this class.

REVIEW: 101866
2011-07-09 19:08:48 +02:00
Martin Gräßlin
2d9e588051 Add build option to suppress building of XRender Compositing 2011-07-07 19:17:00 +02:00
Martin Gräßlin
039c025bfb Add a build option for screen edge support 2011-07-07 18:29:11 +02:00
Martin Gräßlin
f1e23b100c New build option KWIN_PLASMA_ACTIVE
This build option can be used to simplify the build settings for
the usage of KWin in Plasma Active. It includes:
* no decorations
* no kcms
* no tabbox
* only mobile effects
* turns on OpenGL ES (if available)

CCMAIL: sebas@kde.org
2011-07-06 17:53:33 +02:00
Martin Gräßlin
399da3ee92 Move kwin build options to top of CMakeLists.txt 2011-07-06 17:52:59 +02:00
Arthur Arlt
903bcb42fb Provide build option for TabBox functionality
Since the TabBox functionality is not feasible for any platform KWin is
used on (e.g. tablet PCs), a build option is added to decide, if the
TabBox functionality should be build or not.

REVIEW: 101511

@Sebastian: Martin wanted me to let you know that it is now possible
to disable building Tabbox
CCMAIL: sebas@kde.org
2011-07-05 11:00:23 +02:00
Arthur Arlt
55cbff052f Refactor Screen Edge Handling
This initial commit introduces a two new files screenedge.h and screenedge.cpp which cover a new
class ScreenEdge. The code for screen edge handling was copied from Workspace to this class.
Workspace had to be extended by a getter for movingWindow. CMakeList was updated to build the
new class.
2011-07-04 13:24:51 +02:00
Martin Gräßlin
55bcd2ed10 Add new build option KWIN_MOBILE_EFFECTS
The new build option restricts the building of effects to those
useable for Plasma Active:
* blur
* dialogparent
* fade
* login
* outline
* presentwindows
* slidingpopups
* taskbarthumbnails
* screenshot

Additionally all effect KCMs are excluded from building in the
assumption that when building with this option, KWIN_BUILD_KCMS
is turned off.
CCMAIL: sebas@kde.org
2011-05-10 18:28:53 +02:00
Martin Gräßlin
2e7116f126 Build option to enable building of KCMs
New build option KWIN_BUILD_KCMS to control whether to build
all KWin kcms or not. By default kcms are built.
CCMAIL: sebas@kde.org
2011-05-01 13:27:13 +02:00
Christoph Feck
24b9a8c9db Move decoration option
It is needed in the config_kwin.h file, so it must be declared before.
2011-04-29 15:33:52 +02:00
Martin Gräßlin
ecf9d6e989 Conditionally build all window decorations
Adding a new CMake option KWIN_BUILD_DECORATIONS to conditionally
build all window decorations. By default build is enabled.
CCMAIL: sebas@kde.org
2011-04-28 16:18:15 +02:00
Martin Gräßlin
ff3900d825 Refactor KWin Outline code into an own class
This change unduplicates some code and merges it into one class
allowing us to use an replacement effect for the outline in
future.
CCMAIL: a.arlt@stud.uni-heidelberg.de
REVIEW: 100848
2011-04-28 11:19:05 +02:00
Martin Gräßlin
12220a0d59 Initial implementation of new Shadows in KWin
For a complete documentation of new functionality refer to:
http://community.kde.org/KWin/Shadow

The current implementation includes a new Shadow class and Toplevel
holds a pointer to an instance of this class. The Shadow class reads
the data from the X11 Property. There is one extended class located
in SceneOpenGL to render the shadow.

Compositor is adjusted to include the shadow region into the painting
passes.

Implementation for XRender still missing and Shadow needs to respond
to size changes of the Toplevel to update cached shadow region and
WindowQuads.
2011-03-27 12:33:07 +02:00
Martin Gräßlin
57d11c134a Move kwineffects library into own directory
Second part of cleaning up the lib directory: the effects library
now lives in libkwineffects/ directory.

For existing effects nothing changes as the install path is unchanged.
The change obsoletes the lib/ directory.

As glplatform.h has not yet been exported I dared to export it and
adjust the places where it is used.
CCMAIL: kwin@kde.org
2011-02-19 10:01:31 +01:00
Martin Gräßlin
fa5ab21002 Move kdecorations library into an own subdirectory
The KDecoration library lives in libkdecorations/ now.

Installation pathes are unchanged, so this does not influence 3rd party
decorations.

The changes in the KWin main directory are required due to incorrect
includes.
CCMAIL: kwin@kde.org
2011-02-19 10:01:31 +01:00
Martin Gräßlin
979490c134 Adding an option to enable building for mobile.
Needs a change to workspace CMakeLists.txt
2011-01-30 14:11:58 +01:00
Martin Gräßlin
d31c00ed0e Better CMake detection for building ES or desktop 2011-01-30 14:11:58 +01:00
Martin Gräßlin
ae81f23fbc Building effects on ES.
Only effects using OpenGL are excluded
2011-01-30 14:11:57 +01:00
Martin Gräßlin
aef6208fdc Fix compiling 2011-01-30 14:11:57 +01:00
Martin Gräßlin
8d7a861928 Fix build system for ES 2011-01-30 14:11:57 +01:00
Martin Gräßlin
1947f67e80 Temporarily disable building of effects in ES mode 2011-01-30 14:11:56 +01:00
Martin Gräßlin
8f2f126c31 CMake check to find OpenGLES 2011-01-30 14:11:55 +01:00
Luboš Luňák
1bee9e378f use NAMELINK_SKIP for libkwinnvidiahack, it is not meant as a development
library


svn path=/trunk/KDE/kdebase/workspace/; revision=1181585
2010-10-01 12:36:28 +00:00
Rohan Ramdas Prabhu
2aec750ebf Trembles the weave as the clock ticks, attain another microstate.
Every disorder causes every duration, which ensures the one that stays.
reality is relative. natural is disorder.
[R]obinhood[P]andey

Merging scripting from
^/branches/work/kwin_scripting TO
^/trunk

svn path=/trunk/KDE/kdebase/workspace/; revision=1177865
2010-09-21 14:31:40 +00:00
Luboš Luňák
fd0a31c3bf suspend ksmserver's startup during kwin's startup too,
just in case, to make sure kwin is really ready before other
desktop components


svn path=/trunk/KDE/kdebase/workspace/; revision=1137061
2010-06-11 14:26:41 +00:00
Martin Gräßlin
191435d425 Move Lanczos filter from taskbarthumbnail effect into the scene and use it also in boxswitch, presentwindows and thumbnailaside effects.
svn path=/trunk/KDE/kdebase/workspace/; revision=1133901
2010-06-02 20:04:54 +00:00
Rohan Ramdas Prabhu
4f10c8fc39 Accidentally broke tunk in my previous commit. I was supposed to commit
to a branch, but instead committed to the trunk. Well, the trunk was
broken because not all files were committed and hence anyone who checked
out of the trunk during this time could not have built kwin.

From what I can gather, the trunk has been broken for around 45 minutes
now. I didn't realize all that while that the trunk was broken. I
apologize for the inconvinience and I deeply regret my actions which
were clearly not well-thought.

Sorry,
Rohan


svn path=/trunk/KDE/kdebase/workspace/; revision=1133013
2010-05-31 22:18:41 +00:00
Rohan Ramdas Prabhu
d8daff5162 In this commit, the following files are updated:
main.cpp : Added a command argument. If 'stest' is set, then a testing
environment is setup which is used to test scripting for kwin.
Currently, the test setup only consists of loading a default script, but
in the feature it is expected to run a small text editor kind of thing
for testing.
       Usage:
         kwin --stest

CMakeLists.txt : Add the files corresponding to kwin_scripting the main
intention of which is to provide scripting support for kwin.

kwintabbox.desktop : An unintentional edit. Mostly harmless.


svn path=/trunk/KDE/kdebase/workspace/; revision=1133002
2010-05-31 21:24:40 +00:00
Chani Armitage
f26519c8d0 sorry, that wasn't supposed to go in.
svn path=/trunk/KDE/kdebase/workspace/; revision=1126335
2010-05-13 17:59:34 +00:00
Chani Armitage
30313d2869 take advantage of the cached currentActivity
svn path=/trunk/KDE/kdebase/workspace/; revision=1126054
2010-05-13 03:10:31 +00:00
Chani Armitage
a9ad071575 Activity association for windows.
ok'd by fredrikh.
this code is buggy right now, but I promise to squash the bugs by the 19th :)


svn path=/trunk/KDE/kdebase/workspace/; revision=1125614
2010-05-11 20:30:20 +00:00
Christoph Feck
03f5e6f019 SVN_SILENT cmakelint
svn path=/trunk/KDE/kdebase/workspace/; revision=1118678
2010-04-25 16:51:33 +00:00
Nikhil Marathe
5fc7e93d69 Tiling is here!
This commit merges the kwin-tiling branch. Ideally it shouldn't break anything and add a few features ;-)
It was applied as a patch. Do not attempt to merge the branch directly, it has a few issues.
This feature is currently experimental, although it hasn't crashed in quite a long time. It lacks some features and probably leaks some memory. Fixes will be on the way.

Season Of KDE 2009 project by Nikhil Marathe

svn path=/trunk/KDE/kdebase/workspace/; revision=1118677
2010-04-25 16:43:14 +00:00
Benjamin Reed
dc233bdcd5 merge 1099530 from 4.4: add some missing include_directories
svn path=/trunk/KDE/kdebase/workspace/; revision=1099533
2010-03-05 18:30:04 +00:00
Fredrik Höglund
bcd8d3f476 - Add an external helper program that initializes GLX and checks if kwin can
use direct rendering.
- Move the LIBGL_ALWAYS_INDIRECT code to CompositingPrefs::detect(), and use
  the external helper program to determine if the variable needs to be set.

svn path=/trunk/KDE/kdebase/workspace/; revision=1096554
2010-02-26 20:47:00 +00:00
Lucas Murray
a0d07d12a2 Merged r970865:1049322 from /branches/work/kwin-tabbing
Adds window tabbing support to KWin.
FEATURE: 42023

svn path=/trunk/KDE/kdebase/workspace/; revision=1049334
2009-11-15 03:24:04 +00:00
Martin Gräßlin
76f17e6de1 Here comes the new TabBox. It is a complete rewrite using a MVC approach. Here some highlights:
* Models and Delegates for Clients and Desktops
 * Horizontal, vertical and tabular layout
 * Layout of one item can be configured by an XML definition
 * A desktop item can include a client list
 * An optional second list view showing only the selected item
 * A new KCM "kwintabbox"
 * An alternative TabBox with independent settings and keybindings
 * Optional Highlight Windows effect integration
 * List scrolls instead of removing items
 * Scroll wheel support
 * Cursor key support
 * Middle click on item closes window
BUG: 195745
BUG: 197187
BUG: 201103
FEATURE: 118184
FEATURE: 156723
FEATURE: 177441
FEATURE: 182897
FEATURE: 193882
GUI:

svn path=/trunk/KDE/kdebase/workspace/; revision=1022861
2009-09-13 11:36:45 +00:00
Fredrik Höglund
e92aab0518 Implement initial support for ARGB window decorations.
Based on earlier work done by Lubos Lunak and ideas by Lucas Murray.

svn path=/trunk/KDE/kdebase/workspace/; revision=957680
2009-04-22 17:29:56 +00:00
Martin Gräßlin
3d5ad590e2 New on-screen-display for desktop change. It highlights the new desktop and shows arrows from the old to the new desktop. It replaces the popupinfo which only showed the desktop name. Nevertheless keeping popupinfo in svn so if wanted we can add an option to select between osd and popupinfo.
FEATURE: 185799

svn path=/trunk/KDE/kdebase/workspace/; revision=950182
2009-04-06 16:09:34 +00:00
Martin Gräßlin
d8f8cca5c8 Tabbox uses Plasma theme. That is the background is painted using the dialog background and selected item uses the focus background of task applet. Additional a smaller font is used and text is aligned to bottom instead of center. Thanks to Nuno for going through the design steps.
svn path=/trunk/KDE/kdebase/workspace/; revision=934532
2009-03-03 11:45:39 +00:00
Lucas Murray
4681129e4b Move desktop layout code into a separate file and class. This will allow
adding more complex desktop layout features (Such as desktop
rearranging, and non-rectangular layouts) easier in the future.
Workspace::calcDesktopLayout() has been deprecated.

svn path=/trunk/KDE/kdebase/workspace/; revision=925812
2009-02-14 09:46:12 +00:00
Andreas Pakulat
001ad181d0 Link against kephal as its beeing used now in kwin.
svn path=/trunk/KDE/kdebase/workspace/; revision=885619
2008-11-17 15:02:28 +00:00
Pino Toscano
9064682be8 correct find the kephal include dir when compiling "workspace" alone
svn path=/trunk/KDE/kdebase/workspace/; revision=884624
2008-11-15 15:31:07 +00:00
Tim Beaulen
aecb24a89d And another one where kwin didn't find kephal/screens.h
svn path=/trunk/KDE/kdebase/workspace/; revision=884617
2008-11-15 15:13:33 +00:00
Allen Winter
b703dc91a5 make the macro_log_message for compositing a little nicer
svn path=/trunk/KDE/kdebase/workspace/; revision=821279
2008-06-17 00:43:34 +00:00
Luboš Luňák
4fc3d50790 Properly #ifdef OpenGL-only and XRender-only stuff.
svn path=/trunk/KDE/kdebase/workspace/; revision=817585
2008-06-06 11:07:15 +00:00
Alexander Neundorf
84664f2ba6 cosmetics: lowercasing, no tabs, indentation, etc.
Alex



svn path=/trunk/KDE/kdebase/workspace/; revision=801170
2008-04-25 20:37:59 +00:00
Laurent Montel
778c869e40 Commit patch from Alex
(He didn't have time to make it yesterday and will able to commit it next thursday)
This patch clean up some :
target_link_libraries(kfoo kdeinit_kfoo) which is already done in kde4_add_kdeinit_executable()
macro 	and use "INSTALL_TARGETS_DEFAULT_ARGS" in other place.
I tested all compile file, all works fine but if there is a pb send me a mail.

CCMAIL: neundorf@kde.org 

svn path=/trunk/KDE/kdebase/workspace/; revision=795711
2008-04-11 06:52:03 +00:00
Christian Ehrlicher
d91c540b61 LIB_INSTALL_DIR -> INSTALL_TARGETS_DEFAULT_ARGS
svn path=/trunk/KDE/kdebase/workspace/; revision=792590
2008-04-01 16:42:27 +00:00
Luboš Luňák
e173b1c8d3 Make the cmake feature message match too.
svn path=/trunk/KDE/kdebase/workspace/; revision=756686
2008-01-03 15:32:37 +00:00
Luboš Luňák
f97bd45da9 Redo checks for KWIN_HAVE(_XXX)_COMPOSITING again, in order
to have it the same also in makefiles.


svn path=/trunk/KDE/kdebase/workspace/; revision=756678
2008-01-03 15:22:19 +00:00
Luboš Luňák
bb97953656 Hacks for specific driver systems:
- setting LIBGL_ALWAYS_INDIRECT=1, as that seems to be required for texture_from_pixmap
    to work with AIGLX
- setting __GL_YIELD=NOTHING to noticeably improve smoothness with nVidia


svn path=/trunk/KDE/kdebase/workspace/; revision=749631
2007-12-17 14:19:41 +00:00
Luboš Luňák
d6b7ef180d No kde3/qt3 support in kwin core. Saves about 150M of memory in gdb
by not loading the support libraries and the complete kdelibs stack it depends
on. Gdb taking 0.5M and lousy handling of near-OOM in Linux kernel
can be a pretty bad combination :(.


svn path=/trunk/KDE/kdebase/workspace/; revision=741856
2007-11-26 15:42:44 +00:00
Oswald Buddenhagen
17972a2917 add some kde3support following k3proc move
svn path=/trunk/KDE/kdebase/workspace/; revision=720171
2007-10-02 16:03:50 +00:00
Rivo Laks
59f21e39fe Add automatic driver detection for compositing options.
This is used to set sane defaults and work around possible driver bugs.
Also, if you have a "whitelisted" driver (nvidia >= 96.39 or intel >= 20061017)
  then compositing will be enabled by default for you.

svn path=/trunk/KDE/kdebase/workspace/; revision=714004
2007-09-18 13:59:06 +00:00
Laurent Montel
5ebb9b37f8 change XDG_APPS_DIR -> XDG_APPS_INSTALL_DIR, XDG_DIRECTORY_DIR->XDG_DIRECTORY_INSTALL_DIR, DBUS_INTERFACES_DIR->DBUS_INTERFACES_INSTALL_ DIR, DBUS_SERVICES_DIR->DBUS_SERVICES_INSTALL_DIR to have same naming convention as discussed with Alex.
svn path=/trunk/KDE/kdebase/workspace/; revision=691218
2007-07-23 07:01:14 +00:00
Allen Winter
5c93175949 remove kde4_automoc()
svn path=/trunk/KDE/kdebase/workspace/; revision=685984
2007-07-10 09:14:12 +00:00
Luboš Luňák
afa2ed19cb Detect all that's needed for compositing support.
svn path=/trunk/KDE/kdebase/workspace/; revision=684195
2007-07-06 10:44:03 +00:00
Dirk Mueller
39a8350a99 remove redundant project declarations
svn path=/trunk/KDE/kdebase/workspace/; revision=683437
2007-07-04 18:20:57 +00:00
Dirk Mueller
1e3214ed73 include cleanup to separate workspace
svn path=/trunk/KDE/kdebase/workspace/; revision=678951
2007-06-22 16:32:06 +00:00
Rivo Laks
1c214273ed Output whether or not KWin's compositing support will be built
svn path=/trunk/KDE/kdebase/workspace/; revision=675595
2007-06-14 13:44:40 +00:00
Harri Porten
f15f97785b much better. suggested by David.
svn path=/trunk/KDE/kdebase/workspace/; revision=663183
2007-05-10 12:49:57 +00:00
Harri Porten
f18bd0b02d Patch by Frerich to fix linking for poor BSD users.
This cries out to a CMake expert for a configure check.

svn path=/trunk/KDE/kdebase/workspace/; revision=663171
2007-05-10 11:35:45 +00:00
Luboš Luňák
4fb1428df8 This seems to be used only by kwmtheme decoration.
svn path=/trunk/KDE/kdebase/workspace/; revision=659594
2007-04-30 12:59:19 +00:00
Luboš Luňák
76c7e1445e Merging from old trunk:
r616668 | mlaurent | 2006-12-26 13:30:52 +0100 (Tue, 26 Dec 2006) | 2 lines

Install dbus interface


svn path=/trunk/KDE/kdebase/workspace/; revision=659497
2007-04-30 10:01:55 +00:00
Luboš Luňák
2c539daa5d Merging from old trunk:
r598290 | mlaurent | 2006-10-23 08:53:27 +0200 (Mon, 23 Oct 2006) | 5 lines

Apply Alex patch (now we can use enable-final argument
some module compiles with enable-final now)
As discussed with Alex it's not necessary to have program name
into automoc macro


svn path=/trunk/KDE/kdebase/workspace/; revision=659295
2007-04-29 22:04:13 +00:00
Luboš Luňák
f52b8e48cd branches/work/kwin_composite becomes new trunk kwin.
svn path=/trunk/KDE/kdebase/workspace/; revision=659202
2007-04-29 17:35:43 +00:00
Luboš Luňák
2b7e1f4993 Remove kwin, kwin_composite will become new trunk kwin, missing merges
from trunk will be merged in.


svn path=/trunk/KDE/kdebase/workspace/; revision=659200
2007-04-29 17:34:49 +00:00
Laurent Montel
1adecf7737 Fix install icons
Fix install lib under x86_64
Fix install include (remove deprecated cmake macro)
Cleanup

svn path=/branches/work/kwin_composite/; revision=655792
2007-04-19 11:52:53 +00:00
Laurent Montel
cc8e2c73cb Not necessary to keep it into svn
svn path=/branches/work/kwin_composite/; revision=654956
2007-04-17 12:26:38 +00:00
Luboš Luňák
67fdfa03e7 Add effect that highlights the mouse when one
presses left and right mouse button. There needs to be
found a better way of activating this though :-/.


svn path=/branches/work/kwin_composite/; revision=654750
2007-04-16 21:15:15 +00:00
Laurent Montel
6baede1a4f Fix install icons
svn path=/branches/work/kwin_composite/; revision=654192
2007-04-15 11:39:18 +00:00
Luboš Luňák
8973e88245 Convert zoom and videorecord to plugins.
svn path=/branches/work/kwin_composite/; revision=652616
2007-04-11 15:22:36 +00:00
Rivo Laks
0353f3376e Make effects actual plugins, so it's possible to load them on runtime.
There's also a kwineffects library now, containing the effects API, which makes it possible to write
  third-party effects.
API isn't complete yet and for now just two effects have been converted but I'm working on it :-)

svn path=/branches/work/kwin_composite/; revision=652226
2007-04-10 13:02:08 +00:00
Luboš Luňák
2c928221a4 namespace KWinInternal -> KWin - shorter typing of names in gdb, yay
svn path=/trunk/KDE/kdebase/workspace/; revision=650773
2007-04-05 12:12:10 +00:00
Luboš Luňák
e3b865cd5f namespace KWinInternal -> KWin - shorter typing of names in gdb, yay
svn path=/branches/work/kwin_composite/; revision=650770
2007-04-05 12:07:35 +00:00
Luboš Luňák
faadbf6920 r650430 from trunk (qt3_support)
svn path=/branches/work/kwin_composite/; revision=650436
2007-04-04 15:08:00 +00:00
Pino Toscano
a0aaeeeed1 move the QT3_SUPPORT definition only where it's needed
svn path=/trunk/KDE/kdebase/workspace/; revision=650430
2007-04-04 14:47:36 +00:00
Rivo Laks
56a2a995d1 Add an effect to render live thumbnails of windows next to their taskbar entries when the cursor is
above the corresponding taskbar entry.
It's a "demo" effect because in the future the taskbar itself (or any other application) should be able to
  request a window's thumbnail to be rendered at a specified position. So once we'll support such
  functionality, the taskbar will replace this effect.

svn path=/branches/work/kwin_composite/; revision=647144
2007-03-27 14:26:30 +00:00
Luboš Luňák
8b5b40e4e8 Shadows. Right not it's only flat black rectangle, but otherwise
everything should work.


svn path=/branches/work/kwin_composite/; revision=646315
2007-03-25 10:48:07 +00:00
Luboš Luňák
d09096a784 The window-burning-down effect (gee), except that there's no actual
flame, since I'm lame at graphics. Should be easy to add anyway.
Besides the apparent unusefulness this effect should be for testing
some new changes to the core.


svn path=/branches/work/kwin_composite/; revision=645111
2007-03-21 17:35:48 +00:00
Rivo Laks
aae967c5f9 Make your windows explode!
Add ExplosionEffect which makes the windows blow up into small pieces when they're closed.
  In the future this could be used only when user kills (an unresponsive) window.

svn path=/branches/work/kwin_composite/; revision=643135
2007-03-16 13:02:47 +00:00
Luboš Luňák
d4fbab83d1 No splash dbus interface.
svn path=/trunk/KDE/kdebase/workspace/; revision=643112
2007-03-16 12:11:19 +00:00
Luboš Luňák
5cabf743ae The official excuse for this effect is that I wanted to try
drawing a window several times.


svn path=/branches/work/kwin_composite/; revision=642577
2007-03-14 18:21:11 +00:00
Luboš Luňák
de8f39accf Hmm, I think I now understand this vertices stuff. Added a silly
effect that destroys a window by spliting it into many small pieces.


svn path=/branches/work/kwin_composite/; revision=642152
2007-03-13 13:42:01 +00:00
Philip Falkner
6f122ecd3e Add BoxSwitch effect: a tabbox replacement. It's still rough, but works reasonably well.
svn path=/branches/work/kwin_composite/; revision=640630
2007-03-08 16:52:09 +00:00
Luboš Luňák
f6ad1881e1 Support for window thumbnails.
svn path=/branches/work/kwin_composite/; revision=640344
2007-03-07 17:50:33 +00:00
Luboš Luňák
5f02d68fb9 FadeIn/FadeOut effects are succeeded by Fade.
CCMAIL: philip.falkner@gmail.com


svn path=/branches/work/kwin_composite/; revision=636634
2007-02-23 16:34:57 +00:00
Luboš Luňák
0498cd7785 Add VideoRecordEffect for saving video captures.
Requires external lib to compile, see the videorecord.cpp .


svn path=/branches/work/kwin_composite/; revision=636625
2007-02-23 16:20:22 +00:00
Philip Falkner
8299541652 Add build checks for XComposite, XDamage, XRender, OpenGL, and XShm.
KWin should now build and run with/without any or all of the above.

svn path=/branches/work/kwin_composite/; revision=633387
2007-02-13 23:28:36 +00:00
Philip Falkner
2fdc57ccd6 Fade effect. Unified version of FadeIn and FadeOut; also fades on window opacity changes.
The fade_in_speed and fade_out_speed settings work like they did in kompmgr, but aren't currently configurable.

svn path=/branches/work/kwin_composite/; revision=632583
2007-02-11 17:41:21 +00:00
Rivo Laks
1cdcd8956f Move OpenGL defines, function prototypes and function resolving to a separate file.
Update copyright years.

svn path=/branches/work/kwin_composite/; revision=630583
2007-02-05 19:57:05 +00:00
Luboš Luňák
63a97b7d3d Add DesktopChangeSlideEffect, an effect that on virtual desktop
change slides the old desktop out and the new one in. Should not
be really technically different from the cube.


svn path=/branches/work/kwin_composite/; revision=629163
2007-02-01 17:20:48 +00:00
Rivo Laks
445ab8ca7a Add MinimizeAnimation effect which makes the window move onto/from its taskbar
entry when minimized/restored

svn path=/branches/work/kwin_composite/; revision=627003
2007-01-25 11:48:07 +00:00
Rivo Laks
adb35ae446 Adding WavyWindows effect which makes all windows wavy.
Meant to demonstrate possibilities of vertex transforming and for cool screenshots ;-)

svn path=/branches/work/kwin_composite/; revision=626815
2007-01-24 17:19:00 +00:00
Luboš Luňák
77f803a563 Instead of the somewhat fragile way of trying to clean up Client/Unmanaged
instances and keeping them around after the window is closed, create
class Deleted as a representation of a closed window.


svn path=/branches/work/kwin_composite/; revision=626356
2007-01-22 22:51:30 +00:00
Luboš Luňák
ff6f889ffc Add support for showing effects for windows which have already been deleted.
Add a fade-out effect.


svn path=/branches/work/kwin_composite/; revision=623872
2007-01-15 18:03:04 +00:00
Rivo Laks
33f8a0758c Add Expose-like effect to show all windows of active desktop side by side.
Another window can then be activated by clicking on it.
Also add interpolate() utility function to Effect

svn path=/branches/work/kwin_composite/; revision=622634
2007-01-12 14:14:53 +00:00
Luboš Luňák
1765551277 Support for "input windows" that let effects intercept mouse events
when they e.g. want to let the user select from window thumbnails.


svn path=/branches/work/kwin_composite/; revision=620305
2007-01-05 16:45:56 +00:00
Luboš Luňák
f52407b829 Merge in compilation fixes from trunk.
svn path=/branches/work/kwin_composite/; revision=619536
2007-01-03 16:53:26 +00:00
Olivier Goffart
c584b831e7 port to KNotification
svn path=/trunk/KDE/kdebase/workspace/; revision=617455
2006-12-29 09:58:51 +00:00
Laurent Montel
2f328e778c Install dbus interface
svn path=/trunk/KDE/kdebase/workspace/; revision=616668
2006-12-26 12:30:52 +00:00
Laurent Montel
150699179d Use dbus interface
svn path=/trunk/KDE/kdebase/workspace/; revision=615442
2006-12-21 14:53:38 +00:00
Luboš Luňák
19b9b0cd09 svn merge -r614882 from trunk (autogenerated kwinadaptor)
svn path=/branches/work/kwin_composite/; revision=614905
2006-12-19 12:53:26 +00:00
Laurent Montel
c5efec7d9c Now kwinadaptor is autogenerated and adaptor is registred
now we can use dbus interface to change it.
CCMAIL: l.lunak@kde.org
(Lubos could you merge it with your branch please .Thanks)

svn path=/trunk/KDE/kdebase/workspace/; revision=614882
2006-12-19 10:43:49 +00:00
Luboš Luňák
6bf5d12108 Zoom effect, i.e. magnifying glass. The zoom is hardcoded
for now.


svn path=/branches/work/kwin_composite/; revision=610134
2006-12-03 13:36:40 +00:00
Luboš Luňák
38f4f76b31 Detect screen refresh rate for finding out optimal compositing
redraw speed. Patch by Philip Falkner.


svn path=/branches/work/kwin_composite/; revision=607253
2006-11-23 21:16:49 +00:00
Luboš Luňák
4efa523375 A simple attempt at a showfps effect. OpenGL-only, only lame graphs,
still many TODO's.


svn path=/branches/work/kwin_composite/; revision=605497
2006-11-16 22:46:14 +00:00
Luboš Luňák
91872885ff Explicitly link against libdl, the build breaks for some people without it
for some reason.


svn path=/branches/work/kwin_composite/; revision=603677
2006-11-09 18:01:45 +00:00
Luboš Luňák
aeafa63a94 Move some OpenGL code to glutils.* .
Add support for changing window brightness.
Add DialogParent effect that makes windows that are unaccessible because
of modal dialogs darker.
Patch by Rivo Laks.


svn path=/branches/work/kwin_composite/; revision=603384
2006-11-08 19:10:07 +00:00
Luboš Luňák
0f03921271 Add a commented howto effect.
svn path=/branches/work/kwin_composite/; revision=600553
2006-10-30 22:49:59 +00:00
Luboš Luňák
5f03c77514 Move effects to their own directory.
svn path=/branches/work/kwin_composite/; revision=600157
2006-10-29 19:08:09 +00:00
Laurent Montel
b1ce3b0b9e Apply Alex patch (now we can use enable-final argument
some module compiles with enable-final now)
As discussed with Alex it's not necessary to have program name
into automoc macro

svn path=/trunk/KDE/kdebase/workspace/; revision=598290
2006-10-23 06:53:27 +00:00
Luboš Luňák
c16d2e1dff svn merge r595039 from trunk
svn path=/branches/work/kwin_composite/; revision=597698
2006-10-21 12:01:53 +00:00
Laurent Montel
01f2a3a9f2 Necessary to change KDE4_AUTOMOC macro to support
enable-final argument

(there was not a dependancy between <name>_final.cpp file and
moc generated files => moc files were never created)

Not necessary to rebuild all kdelibs just cp kdelibs/cmake/modules/KDE4Macros.cmake <path_kde4>/share/apps/cmake/modules

I ported and tested all kde module (without enable-final argument, it compiles fines (test and program))
Don't try to use enable-final argument for the moment it doesn't compile (but dependancy works)

Regards

svn path=/trunk/KDE/kdebase/workspace/; revision=595039
2006-10-13 07:55:37 +00:00
Luboš Luňák
efff218441 A very crude OpenGL-based compositing code.
svn path=/branches/work/kwin_composite/; revision=590265
2006-09-29 16:49:34 +00:00
Laurent Montel
4f5267e8f8 Clean up
Use cmake macro
Remove not necessary files

svn path=/trunk/KDE/kdebase/workspace/; revision=578784
2006-08-30 08:33:11 +00:00
Laurent Montel
48fd383949 Adapt with new KDE4_INSTALL_ICONS
(automatic detect of icons theme)


svn path=/trunk/KDE/kdebase/workspace/; revision=572961
2006-08-14 13:27:48 +00:00
Luboš Luňák
fa8cd7541f It wasn't a very good idea to do even compositing-unrelated
work in the work/kwin_composite branch.
svn merge revs 558154,558180,558236,558243,558258,562201


svn path=/trunk/KDE/kdebase/workspace/; revision=571776
2006-08-10 17:00:14 +00:00
Laurent Montel
e2696da8c0 Replace all bin by ${BIN_INSTALL_DIR}
svn path=/trunk/KDE/kdebase/workspace/; revision=564549
2006-07-20 13:08:26 +00:00
Luboš Luňák
ef0e1a20ef svn merge -r558690:558691 https://lunakl@svn.kde.org:/home/kde/trunk/KDE/kdebase/workspace/kwin
svn path=/branches/work/kwin_composite/; revision=558692
2006-07-05 20:55:16 +00:00
Luboš Luňák
66f535ac80 No need to support <=KDE3.1 plugins.
svn path=/trunk/KDE/kdebase/workspace/; revision=558691
2006-07-05 20:54:15 +00:00
Luboš Luňák
f400646a6d xrender compositing work - now it uses damage areas
to reduce amount of painting


svn path=/branches/work/kwin_composite/; revision=558580
2006-07-05 16:04:11 +00:00
Luboš Luňák
29111875e1 Very basic compositing with xrender.
svn path=/branches/work/kwin_composite/; revision=558481
2006-07-05 13:26:08 +00:00
Luboš Luňák
afcc9b6897 Prepare for scene rendering with different engines.
svn path=/branches/work/kwin_composite/; revision=558442
2006-07-05 12:30:03 +00:00
Luboš Luňák
a50b46d1c6 Say goodbye to kompmgr.
svn path=/branches/work/kwin_composite/; revision=558236
2006-07-04 22:48:33 +00:00
Luboš Luňák
4f12c1e606 Some first attempt at effects interface.
svn path=/branches/work/kwin_composite/; revision=558191
2006-07-04 20:51:01 +00:00
Luboš Luňák
571ba9cf9e Basic compositing support. It doesn't actually do anything
besides drawing what should be drawn anyway, and there are
still some things missing like stacking order for override
redirect windows, but KWin is basically a compositing manager now.


svn path=/branches/work/kwin_composite/; revision=558168
2006-07-04 20:02:07 +00:00
Dirk Mueller
e12b8f755a merge bleeding edge. bleeding edge is now again dead
svn path=/trunk/KDE/kdebase/workspace/; revision=558082

The following changes were in SVN, but were removed from git:

M	wallpapers/CMakeLists.txt
2006-07-04 17:09:53 +00:00
Luboš Luňák
04c9d42dfd DBUS changes - make it compile. The DBUS HOWTO is pretty lacking
in some areas and I wonder how many things will be broken by
people not quite knowing what they're doing :-/.


svn path=/trunk/KDE/kdebase/workspace/; revision=549400
2006-06-08 13:43:23 +00:00
Laurent Montel
f7de3f2974 Start to port it to new dbus interface
svn path=/trunk/KDE/kdebase/workspace/; revision=549046
2006-06-07 09:05:46 +00:00
Thiago Macieira
b8a472a4df Remove all kde4_add_dcop_stubs and kde4_add_dcop_skels.
Remaining errors consist only of #include not found (dcopclient.h, dcopref.h, kdatastream.h and kdirnotify_stub.h)

svn path=/trunk/KDE/kdebase/workspace/; revision=548395
2006-06-05 13:17:43 +00:00
Alexander Neundorf
a9fc0d54c7 kde4_header and kde4_footer() are gone now
svn path=/trunk/KDE/kdebase/workspace/; revision=540215

The following changes were in SVN, but were removed from git:

M	wallpapers/CMakeLists.txt
2006-05-12 18:12:37 +00:00
Alexander Neundorf
e4e2266d9c -add FONTCONFIG_INCLUDE_DIR where required
-cleanup the toplevel CMakeLists.txt a bit
-remove include_directories( CMAKE_CURRENT_SOURCE_DIR CMAKE_CURRENT_BINARY_DIR)
in the subdirs, since this is done now automatically by cmake (the CMAKE_INCLUDE_CURRENT_DIR option
-include_directories(KDE4_INCLUDES) in the toplevel CMakeLists.txt, so it
doesn't have to be done in every subdir

Alex


svn path=/trunk/KDE/kdebase/workspace/; revision=539914

The following changes were in SVN, but were removed from git:

M	wallpapers/CMakeLists.txt
2006-05-12 00:08:30 +00:00
André Wöbbeking
0d93c941a9 install executables with the install command instead of install_files/targets.
when you install scripts with install(PROGRAMS ...) they're installed executable.

svn path=/trunk/KDE/kdebase/workspace/; revision=538074
2006-05-06 17:53:08 +00:00
Alexander Neundorf
0804aa70dc -remove the kde4_create_doxygen_docs() command
Alex


svn path=/trunk/KDE/kdebase/workspace/; revision=536344
2006-05-01 21:20:18 +00:00
Alexander Neundorf
d3fe666661 -use KDE4_INCLUDES instead of KDE4_INCLUDE_DIR and QT_INCLUDES
Alex

svn path=/trunk/KDE/kdebase/workspace/; revision=522728

The following changes were in SVN, but were removed from git:

M	wallpapers/CMakeLists.txt
2006-03-26 14:52:52 +00:00
Laurent Montel
f96f1e4493 Fix cmake variable
svn path=/trunk/KDE/kdebase/workspace/; revision=522126
2006-03-24 14:59:45 +00:00
David Faure
090f6dcbfa Use set(CMAKE_INCLUDE_CURRENT_DIR ON) in the toplevel CMakeLists.txt, and we don't need to include
${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} in each and every file anymore [only when subdirs might depend on that].

Also ran a script which makes sure that ${KDE4_INCLUDE_DIR} and ${QT_INCLUDES} are added -last-,
so that installed headers are not preferred over (possibly more uptodate) local headers.

svn path=/trunk/KDE/kdebase/workspace/; revision=521887

The following changes were in SVN, but were removed from git:

M	wallpapers/CMakeLists.txt
2006-03-23 19:24:10 +00:00
Alexander Neundorf
8b2d8643b7 -include kwin/lib/ in out-of-source build
Alex

svn path=/trunk/KDE/kdebase/workspace/; revision=521576
2006-03-22 21:36:44 +00:00
Laurent Montel
2d72d205be Fix typo
svn path=/trunk/KDE/kdebase/workspace/; revision=521451
2006-03-22 16:06:38 +00:00
Laurent Montel
3877430cbe it compiles
svn path=/trunk/KDE/kdebase/workspace/; revision=519928
2006-03-18 11:14:49 +00:00
Alexander Neundorf
7acf70edbb -fixed redmond theme, am2cmake doesn't like Makefile.am's where the lib is defined after the sources
-added project() calls everywhere, so now you can have kdevelop project for all major parts

Alex

svn path=/trunk/KDE/kdebase/workspace/; revision=519321
2006-03-16 21:16:35 +00:00
Laurent Montel
f576c71ef9 Disable just kwinrules
svn path=/trunk/KDE/kdebase/workspace/; revision=517959
2006-03-12 17:51:57 +00:00
Laurent Montel
4b82f3adb0 For the moment kcmkwin doesn't compile :(
svn path=/trunk/KDE/kdebase/workspace/; revision=515752
2006-03-04 19:30:57 +00:00
Laurent Montel
fcdef131d6 Fix cmake file
svn path=/trunk/KDE/kdebase/workspace/; revision=515615
2006-03-04 12:09:43 +00:00
Laurent Montel
692562abb9 fix install icons
svn path=/trunk/KDE/kdebase/workspace/; revision=515373
2006-03-03 14:46:52 +00:00
Laurent Montel
4486e2611c Compile++
svn path=/trunk/KDE/kdebase/workspace/; revision=515342
2006-03-03 13:56:43 +00:00
Laurent Montel
90b749f9fd Disable kcmkwin until I success to compile it
svn path=/trunk/KDE/kdebase/workspace/; revision=515095
2006-03-02 17:07:43 +00:00
Laurent Montel
3872168d95 Use alias
svn path=/trunk/KDE/kdebase/kcminit/; revision=515010
2006-03-02 11:20:11 +00:00
Laurent Montel
03725a7d66 Add module to compile kdebase with kdelibs-cmake.
BE CARREFULL: Don't try to compile it for the moment (in progress)
Don't use kdelibs trunk for compile it (there is not again test to disable
compile when we compile with kdelibs trunk)
For the moment there was a lot of missing test etc.
I commit it just to allow to lose my changes if there is a pb on my HD.
I will sync cmake from kdelibs trunk to kdelibs-snapshot.
I hope to fix compile today or tomorrow.
CCMAIL: neundorf@kde.org

For the futur we must sync kdelibs/cmake/* to kdelibs-snapshot 
to compile all the time with kdelibs-snapshot

svn path=/trunk/KDE/kdebase/workspace/; revision=514380

The following changes were in SVN, but were removed from git:

A	wallpapers/CMakeLists.txt
2006-02-28 08:01:15 +00:00