Commit Graph

9634 Commits (0e8b4ffb0cb70d1782ba16b38b72b00af692712d)

Author SHA1 Message Date
Fredrik Höglund 0e8b4ffb0c kwin: Link to libxcb-xfixes and libxcb-damage 2012-11-07 22:13:13 +01:00
Fredrik Höglund 19aaf48a02 kwin: Port Client::embedClient() to xcb 2012-11-07 22:13:13 +01:00
Fredrik Höglund c679ec6508 kwin: Port most of Workspace::init() to xcb 2012-11-07 22:13:13 +01:00
Fredrik Höglund 36f05628f8 kwin: Add a ScopedCPointer class
This class is functionally the same as QScopedPointer, but uses
free() instead of delete.
2012-11-07 22:13:12 +01:00
Fredrik Höglund 4821c15b97 kwin: Add a function that returns the xcb_connection_t 2012-11-07 22:13:12 +01:00
Script Kiddy 22be6de889 SVN_SILENT made messages (.desktop file) 2012-11-07 06:52:27 +01:00
Script Kiddy 8ed615b0bd SVN_SILENT made messages (.desktop file) 2012-11-05 06:39:10 +01:00
Hugo Pereira Da Costa d5326ea461 change std::vector into QList and updated code accordingly.
Fixed compilation warnings.
2012-11-04 20:54:22 +01:00
Script Kiddy 21463a9a91 SVN_SILENT made messages (.desktop file) 2012-11-04 06:38:24 +01:00
Marco Martin 36ed622a61 use a rules file dependednt from the kwin name
kwinacriverulesrc vs kwinrulesrc
2012-11-03 22:09:07 +01:00
Script Kiddy 93e9854674 SVN_SILENT made messages (.desktop file) 2012-11-03 07:01:48 +01:00
Fredrik Höglund ac0e85bf91 kwin: Link to libxcb and libX11-xcb 2012-11-01 23:56:32 +01:00
Thomas Lübking 2f63321c0b Merge branch 'KDE/4.9'
Conflicts:
	kwin/composite.cpp
2012-11-01 21:07:35 +01:00
Thomas Lübking 01d4fcec00 update deco borders on shade before aligning tabs
BUG: 308633
FIXED-IN: 4.9.3
2012-11-01 21:01:09 +01:00
Hugo Pereira Da Costa 15b51db1ab oxygenlistmodel: Added "contains" method to generic model, to check index validity better.
oxygenexceptionlistwidget: better check index validity in "edit" method. Also update buttons status after removing items, since
apparently selectionChanged signal is not sent by Qt.

CCBUG: 309388
2012-11-01 19:13:16 +01:00
Hugo Pereira Da Costa d1a914d8fb oxygenlistmodel: Added "contains" method to generic model, to check index validity better.
oxygenexceptionlistwidget: better check index validity in "edit" method. Also update buttons status after removing items, since
apparently selectionChanged signal is not sent by Qt.

CCBUG: 309388
2012-11-01 19:09:09 +01:00
Ralf Jung 805495c8ea do not resume compositing when it's suspended and a client blocks it
REVIEW: 106900
CCBUG: 308438
2012-11-01 14:03:11 +01:00
Fredrik Höglund 6e9901e5c3 Merge branch 'KDE/4.9'
Conflicts:
	kwin/eglonxbackend.cpp
	kwin/glxbackend.cpp
	kwin/libkwineffects/kwinglplatform.cpp
2012-10-30 23:26:06 +01:00
Fredrik Höglund 70c35b8284 kwin/glx: Avoid MSAA configs in initBufferConfigs()
It appears that we're accidentally choosing an MSAA config with the
Intel driver in Mesa 9.0. So change the algorithm to take the values
of GLX_SAMPLES and GLX_SAMPLE_BUFFERS into account.

Found by Kenneth Graunke.
2012-10-30 23:19:24 +01:00
Fredrik Höglund e4d970ef5f kwin: Don't hold an X server grab while painting the screen
According to Pierre-Loup Griffais (Plagman on IRC) this is causing
choppy VDPAU video playback when compositing is enabled.

Removing these calls doesn't seem to cause any regressions, and the
commit that added them doesn't give a reason.  So let's just get rid
of them for now.

(cherry picked from commit 20e6349843d9bb838673a301330d7dc5d08401a5)
2012-10-30 18:23:06 +01:00
Fredrik Höglund e262d4fde6 kwin: Enable loose binding with the Intel driver 2012-10-30 18:23:06 +01:00
Script Kiddy 9d7cdf1011 SVN_SILENT made messages (.desktop file) 2012-10-30 15:42:08 +01:00
Fredrik Höglund 076ea58732 kwin: Rename numberVertices to vertexCount 2012-10-29 21:31:35 +01:00
Fredrik Höglund 82c1e1168d kwin: Store the usage hint in GLVertexBufferPrivate
..instead of computing it every time setData() is called.
2012-10-29 21:31:35 +01:00
Fredrik Höglund e578676f42 kwin: Rename flushBuffer() to present()
This function doesn't flush any buffered commands, it presents or posts
the color buffer to the surface to which the GL context is bound.
2012-10-29 21:31:17 +01:00
Christophe Giboudeaux 007733f14a Fix include 2012-10-29 17:20:19 +01:00
Script Kiddy 17ddc517b7 SVN_SILENT made messages (.desktop file) 2012-10-29 09:53:30 +01:00
Martin Gräßlin 550ac7d2b0 Documentation for global methods and properties of scripted effects
Using Doxygen xml structure which can be converted to MediaWiki using
the xslt from git repo scratch/graesslin/kwin-scripting-api-generator.git
2012-10-28 10:06:00 +01:00
Martin Gräßlin 12bea5f682 New Maximize Window Effect
Animation for going from restored to maximized and vice versa.

BUG: 308990
FIXED-IN: 4.10
REVIEW: 107050
2012-10-28 09:51:01 +01:00
Martin Gräßlin 62dd1d57f0 Fix documentation error for global KWin script method
SVN_SILENT
2012-10-28 09:50:34 +01:00
Martin Gräßlin 6417246358 Add GHNS support for Scripted KWin Effects
BUG: 296773
FIXED-IN: 4.10
REVIEW: 107051
2012-10-28 09:49:02 +01:00
Script Kiddy 2cb8e724d4 SVN_SILENT made messages (.desktop file) 2012-10-28 09:14:05 +01:00
Script Kiddy a8a16c65d3 SVN_SILENT made messages (.desktop file) 2012-10-26 13:27:19 +02:00
Dario Cambié b26108121d Use KConfigXT in CoverSwitch Effect
REVIEW: 106396
2012-10-26 10:18:35 +02:00
Martin Gräßlin bf8e7c4fc8 Add QProperties to MouseClick Effect
Allows to read out all settings at runtime through supportInformation.
2012-10-26 09:47:22 +02:00
Martin Gräßlin c3f2b68581 Protect access to EffectFrame if not used
Caused a crash when Show Text was disabled.
2012-10-26 09:47:22 +02:00
Martin Gräßlin a6ab97172e Use KConfigXT in MouseClick Effect 2012-10-26 09:47:22 +02:00
Filip Wieladek 378a4f8fe4 Mouse Click animation effect
An effect which visualy animates when a mouse button is pressed or
released.

REVIEW: 105780
BUG: 309006
FIXED-IN: 4.10
2012-10-26 09:47:22 +02:00
Martin Gräßlin 2e2aa199bc Save shortcut editor in FlipSwitch Effect Config 2012-10-26 09:46:53 +02:00
Thomas Lübking 0e69bdf0ed add ElectricBorderCornerRatio setting [0,1]
REVIEW: 106509
CCBUG: 308993
2012-10-25 20:16:53 +02:00
Thomas Lübking 6cba742315 Hardcode TabBox setting in boxswitch effect false
Boxswitch is activated as tabbox, possibly due to a downstream issue
This results in multiple effects being assigned to the tabbox and no
GUI way for the user to fix this.
Since the BoxSwitch effects nowadays only exists  as sidearm for
coverswitch, the tabbox setting is now hardcoded and disabled in the
effect, making it completely impossible to accidentally use it as tabbox.

BUG: 303387
REVIEW: 106695
FIXED-IN: 4.9.3
2012-10-25 19:17:26 +02:00
Thomas Lübking dbf2623e87 respect screen rule in configure requests
REVIEW: 106960
2012-10-25 19:17:22 +02:00
Thomas Lübking 58ed2e9a75 Hardcode TabBox setting in boxswitch effect false
Boxswitch is activated as tabbox, possibly due to a downstream issue
This results in multiple effects being assigned to the tabbox and no
GUI way for the user to fix this.
Since the BoxSwitch effects nowadays only exists  as sidearm for
coverswitch, the tabbox setting is now hardcoded and disabled in the
effect, making it completely impossible to accidentally use it as tabbox.

BUG: 303387
REVIEW: 106695
FIXED-IN: 4.9.3
2012-10-25 19:16:54 +02:00
Thomas Lübking 4a94561f68 preconnect client and compositor
the manage code will emit the composite blocking check trigger

REVIEW: 106894
2012-10-25 19:06:57 +02:00
Martin Gräßlin 26a9a35b2f Increase runtime requirement to Mesa 8.0
Adjustment to reality. KWin has had a dependency on Mesa 8.0 for quite
some time given that it is what basically all distributions ship.

It is better to clearly state what is required. For KWin Mesa 8.0 is a
more reliable dependency as all DRI drivers which do not support DRI2
have been removed.

Packagers have been informed about this intended change some weeks ago.

REVIEW: 106799
2012-10-25 11:45:36 +02:00
Martin Gräßlin 57c27c2e0b GLPlatform can recommend the compositor to use
During detecting the OpenGL capabilities also a recommended compositor
can be set. This recommendation is honoured by the OpenGL based
compositors. That is the SceneOpenGL2 requires a recommendation for at
least OpenGL2 and the SceneOpenGL1 requires at least a recommendation for
OpenGL1. If the driver recommends XRender compositing the SceneOpenGL
performs the existing fallback to XRender.

With this recommendation the hacks in the Scene are removed, e.g. it is
no longer checked whether the driver is software emulation as that is
provided through the recommendation.

To overrule the recommendation the environment variable KWIN_COMPOSE is
extended by the values O1 and O2 to enforce either OpenGL 1 or OpenGL 2.
This overwrites all other checks. As a side-effect this allows now to run
KWin on the llvmpipe:
LIBGL_ALWAYS_SOFTWARE=1 KWIN_COMPOSE=O2 kwin --replace &

But not that I would recommend to use it :-)

REVIEW: 106741
2012-10-25 11:40:18 +02:00
Martin Gräßlin 99db844912 Bind ARBBlurShader to OpenGL1
The logic has already ensured that the ARBBlurShader can only be used
when using the OpenGL1 compositor, the OpenGL 2 compositor needs to use
the GLSLBlurShader.

This change moves the complete ARBBlurShader into a KWIN_HAVE_OPENGL_1
ifdef section.

As a side-effect the ::create method can now return a NULL pointer which
makes more sense then returning an ARBBlurShader in case that the
GLSLShader is not supported.

REVIEW: 106738
2012-10-25 11:34:30 +02:00
Martin Gräßlin cf5de22586 Introduce a build option KWIN_BUILD_OPENGL_1_COMPOSITING
If the build option is enabled KWIN_HAVE_OPENGL_1 is passed as a compile
flag when build against OpenGL.

This compile flag is meant to replace the KWIN_HAVE_OPENGLES. So far code
has been ifdefed for special behavior of OpenGL ES 2.0 and to remove
fixed functionality calls which are not available in OpenGL ES 2.0.

With this build flag the fixed functionality calls which are only used in
the OpenGL1 Compositor can be removed and keeping the KWIN_HAVE_OPENGLES
for the real differences between OpenGL 2.x and OpenGL ES 2.0.

E.g. a call like glColor4f should be in an
glColor4f(1.0, 1.0, 1.0, 1.0);

while a call like glPolygonMode should be in an
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);

Building for OpenGL ES 2.0 of course implies that KWIN_HAVE_OPENGL_1 is
not defined.
2012-10-25 11:34:12 +02:00
Martin Gräßlin b2922f6675 Remove compile flag KWIN_HAVE_OPENGL
KWIN_HAVE_OPENGL is not used anymore inside KWin, so no need to pass it
as a compile flag to the binaries.
2012-10-25 11:34:12 +02:00
Martin Gräßlin 2b6c4730b5 Re-enable Blur/Lanczos for Catalyst on OpenGL 2
Given that the Catalyst driver is now supporting direct rendering and by
that can use the OpenGL 2 code path we do no longer need to force
disable the Blur effect and Lanczos filters which used to crash in the
ARB shader path.

The ARB shader path - which can only be used in OpenGL 1 - is kept
disabled for Catalyst.

CCBUG: 270818
CCBUG: 286795
REVIEW: 106798
2012-10-25 11:30:18 +02:00