Commit Graph

76 Commits (6eb24bf3742d6851cde2e733c39f42fed83db121)

Author SHA1 Message Date
Script Kiddy 15155326e2 SVN_SILENT made messages (.desktop file) 2011-02-03 07:25:47 +01:00
Script Kiddy b637e9d7ca SVN_SILENT made messages (.desktop file) 2011-02-02 08:26:11 +01:00
Martin Gräßlin 0a7e48f7aa KWin uses kdelibs coding style. 2011-01-31 20:07:03 +01:00
Martin Gräßlin 3e42ddc2cc ShaderManager handles rebind of previous shader.
No need to explicitly rebind the window shader in blur effect.
2011-01-30 14:12:06 +01:00
Martin Gräßlin 8c4fc28e1a Blur ported to GLES.
It now uses a GLShader for GLSL shaders and pushes it using the
ShaderManager.

It does not work with the nouveau driver plus GLES, but it works
with fglrx + desktop GL 2.x, so I assume it is a driver problem here.
2011-01-30 14:12:06 +01:00
Script Kiddy 8ac192425f SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1217852
2011-01-29 06:08:12 +00:00
Script Kiddy 9130426b18 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1213663

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

M	wallpapers/Air/metadata.desktop
M	wallpapers/Autumn/metadata.desktop
M	wallpapers/Blue_Wood/metadata.desktop
M	wallpapers/Grass/metadata.desktop
M	wallpapers/Hanami/metadata.desktop
M	wallpapers/Horos/metadata.desktop
M	wallpapers/Media_Life/metadata.desktop
M	wallpapers/Plasmalicious/metadata.desktop
M	wallpapers/Quadros/metadata.desktop
2011-01-11 09:07:40 +00:00
Martin Gräßlin 6353d6ff57 Don't blur behind opaque window decorations.
Adding a new AbilityUsesBlurBehind which can be set by decorations with
alpha channel to request that the background can be blurred. This improves
the situation for our completely opaque default Oxygen decoration.

This change is a behavior change in comparison to 4.5! Translucent decorations do
not get blurred by default any more.
CCMAIL: craig.p.drummond@googlemail.com

svn path=/trunk/KDE/kdebase/workspace/; revision=1195274
2010-11-10 18:33:07 +00:00
Martin Gräßlin 6270b502ba ARB Shader fallback to Lanczos filter.
This allows using Lanczos filter also on systems not supporting GLSL.
See http://svn.reviewboard.kde.org/r/5777/

svn path=/trunk/KDE/kdebase/workspace/; revision=1195273
2010-11-10 18:25:40 +00:00
Kevin Ottens 2bd1e7286a Missing includes.
svn path=/trunk/KDE/kdebase/workspace/; revision=1195242
2010-11-10 16:42:33 +00:00
Script Kiddy 633a2ff59d SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1191511

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

M	wallpapers/Aghi/metadata.desktop
M	wallpapers/Air/metadata.desktop
M	wallpapers/Autumn/metadata.desktop
M	wallpapers/Blue_Wood/metadata.desktop
M	wallpapers/Ethais/metadata.desktop
M	wallpapers/Evening/metadata.desktop
M	wallpapers/Fields_of_Peace/metadata.desktop
M	wallpapers/Finally_Summer_in_Germany/metadata.desktop
M	wallpapers/Fresh_Morning/metadata.desktop
M	wallpapers/Grass/metadata.desktop
M	wallpapers/Hanami/metadata.desktop
M	wallpapers/Media_Life/metadata.desktop
M	wallpapers/Plasmalicious/metadata.desktop
M	wallpapers/Quadros/metadata.desktop
M	wallpapers/Red_Leaf/metadata.desktop
2010-10-31 09:11:11 +00:00
Script Kiddy 6e50c0863d SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1180157
2010-09-27 08:19:00 +00:00
Fredrik Höglund 6d398323eb - Check if the FBO size will exceed GL_MAX_TEXTURE_SIZE in
BlurEffect::supported().
- Don't announce support to clients if the shader failed to compile,
  or the FBO is invalid.

svn path=/trunk/KDE/kdebase/workspace/; revision=1179268
2010-09-25 00:11:06 +00:00
Fredrik Höglund 08f51821b7 Don't set gl_TextCoord[0] in the vertex shader when the fragment
shader doesn't use it.

svn path=/trunk/KDE/kdebase/workspace/; revision=1178357
2010-09-22 20:13:01 +00:00
Script Kiddy bb60cd51ce SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1177799

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

M	wallpapers/Blue_Wood/metadata.desktop
M	wallpapers/Ethais/metadata.desktop
M	wallpapers/Fields_of_Peace/metadata.desktop
M	wallpapers/Finally_Summer_in_Germany/metadata.desktop
M	wallpapers/Grass/metadata.desktop
M	wallpapers/Media_Life/metadata.desktop
M	wallpapers/Quadros/metadata.desktop
2010-09-21 10:01:09 +00:00
Martin Gräßlin 4c6f8d9c28 Forward port rev 1169158: Exclude all transformed windows from blur effect.
Currently only scaled or translated windows were excluded,
but it is possible to also have windows with just changed
window quads (e.g. magic lamp).
CCBUG: 243693

svn path=/trunk/KDE/kdebase/workspace/; revision=1169160
2010-08-28 14:39:41 +00:00
Martin Gräßlin ff9184aaa0 *sigh* thou shall compile before commit!
Fix my last commit
SVN_SILENT

svn path=/trunk/KDE/kdebase/workspace/; revision=1159615
2010-08-05 19:48:50 +00:00
Martin Gräßlin 1c8b53618f Revert an unintended change to blur from svn rev 1153704
CCMAIL: ademmer@opensuse.org

svn path=/trunk/KDE/kdebase/workspace/; revision=1159614
2010-08-05 19:47:15 +00:00
Script Kiddy 4a6ac702f6 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1155392

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

M	wallpapers/Autumn/metadata.desktop
M	wallpapers/Blue_Wood/metadata.desktop
M	wallpapers/Grass/metadata.desktop
M	wallpapers/Hanami/metadata.desktop
2010-07-27 09:11:06 +00:00
Martin Gräßlin 111db93e05 Blur background of EffectFrames.
BUG: 241389
FIXED-IN: 4.6.0

svn path=/trunk/KDE/kdebase/workspace/; revision=1154132
2010-07-24 20:48:19 +00:00
Andreas Demmer 2bedb6bba9 initial commit of the KWin dashboard effect
svn path=/trunk/KDE/kdebase/workspace/; revision=1153704
2010-07-23 19:52:20 +00:00
Martin Gräßlin 4111a9f051 Support for adding a driver blacklist to be used in the lanczos filter and blur effect.
It uses a new config group Blacklist in kwinrc with two subgroups for Lanczos and Blur.
The key of each entry in the group referrences the vendor either using GL_VENDOR or GL_RENDERER, e.g. "Intel" in renderer for Intel based chips.
The value of the entries is a stringlist containing exactly the renderer information. This way it is possible to blacklist several mesa driver versions which are buggy.
The blacklist is currently empty and will be filled with a kconf update script (which could also be done by distributions). So all users who experience problems and are subscribed to the bugs receiving this message, please upload your glxinfo.
An example for a blacklist:
[Blacklist][Lanczos]
NVIDIA=GeForce 9400M/PCI/SSE2

CCBUG: 243181
CCBUG: 242985

svn path=/trunk/KDE/kdebase/workspace/; revision=1146195
2010-07-05 13:42:34 +00:00
Script Kiddy 0af0152893 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1144023

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

M	wallpapers/Autumn/metadata.desktop
M	wallpapers/Blue_Wood/metadata.desktop
M	wallpapers/Ethais/metadata.desktop
M	wallpapers/Grass/metadata.desktop
M	wallpapers/Hanami/metadata.desktop
M	wallpapers/Media_Life/metadata.desktop
2010-06-29 10:26:31 +00:00
Fredrik Höglund 62b9c59da6 Rewrite the fragment program to avoid exceeding the texture indirection
limit on some GPU's.

Thanks to Mikael Gerdin, Christoph Feck and Iori Yagami for testing.

svn path=/trunk/KDE/kdebase/workspace/; revision=1138004
2010-06-14 22:13:48 +00:00
Fredrik Höglund 253647ec1e Sanity check the shader limitations to protect against implementations
returning bogus values.

FIXED-IN: 4.5
BUG: 241449

svn path=/trunk/KDE/kdebase/workspace/; revision=1137677
2010-06-14 00:18:04 +00:00
Martin Gräßlin 633d80001f Add new role, so that fullscreen effects can enforce blurring of windows they know to be translucent and on a fixed position.
Used in cube animation for all sticky windows and in desktop grid for the add/remove desktops window.

svn path=/trunk/KDE/kdebase/workspace/; revision=1137489
2010-06-13 07:36:40 +00:00
Fredrik Höglund 66125caac3 Fix the darkening of the bottom-most pixels behind the plasma panel.
The texture needs to be drawn on screen coordinates on the offscreen
framebuffer in the horizontal pass, otherwise pixels that fall below
the screen won't be clamped to the screen edge in the subsequent
vertical pass. This is because the offscreen buffer is the same size
as the screen.

This change also gets rid of the need to clear the offscreen buffer
before blurring the screen contents behind each window, and reduces
the CPU computations done on the blur region.

svn path=/trunk/KDE/kdebase/workspace/; revision=1137134
2010-06-11 18:38:54 +00:00
Fredrik Höglund b13174e785 Tweak the code in the fragment shader to get the Mesa GLSL compiler to emit
MAD's instead of MUL + ADD.

svn path=/trunk/KDE/kdebase/workspace/; revision=1136438
2010-06-09 20:59:24 +00:00
Fredrik Höglund e9f419c819 Fix a 64-bit issue in BlurEffect::updateBlurRegion().
BUG: 235620
FIXED-IN: 4.5 beta2

svn path=/trunk/KDE/kdebase/workspace/; revision=1130567
2010-05-25 17:34:17 +00:00
Fredrik Höglund 5c97592ecf Rebind the shader that should be used for drawing the window after
blurring the background.

svn path=/trunk/KDE/kdebase/workspace/; revision=1128975
2010-05-20 20:23:39 +00:00
Martin Gräßlin 34b16a72e7 Enable blur effect by default for the beta cycle to get some feedback. I hope we don't have to turn it off again...
CCMAIL: kwin@kde.org

svn path=/trunk/KDE/kdebase/workspace/; revision=1127796
2010-05-17 16:45:09 +00:00
Script Kiddy c05888a59b SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1121015

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

M	wallpapers/Aghi/metadata.desktop
M	wallpapers/Curls_on_Green/metadata.desktop
M	wallpapers/Plasmalicious/metadata.desktop
M	wallpapers/The_Rings_of_Saturn/metadata.desktop
2010-04-30 06:16:36 +00:00
Script Kiddy 0cbd106422 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1120528
2010-04-29 06:39:50 +00:00
Fredrik Höglund e075890c28 Rename _KDE_NET_WM_BLUR_REGION to _KDE_NET_WM_BLUR_BEHIND_REGION.
svn path=/trunk/KDE/kdebase/workspace/; revision=1106457
2010-03-22 22:03:32 +00:00
Script Kiddy 85d74ca3f9 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1103058
2010-03-14 07:14:05 +00:00
Fredrik Höglund f96b3645d5 Add missing files from the previous commit.
svn path=/trunk/KDE/kdebase/workspace/; revision=1102775
2010-03-13 15:08:40 +00:00
Fredrik Höglund 087f1a6fef Make the strength of the blur effect configurable.
svn path=/trunk/KDE/kdebase/workspace/; revision=1102771
2010-03-13 15:03:29 +00:00
Fredrik Höglund e71232cb39 Optimize the horizontal pass.
svn path=/trunk/KDE/kdebase/workspace/; revision=1102515
2010-03-12 18:29:16 +00:00
Fredrik Höglund cd1f1ce623 Only blur the area below the window decoration if the application hasn't
set the _KDE_NET_WM_BLUR_REGION hint.

svn path=/trunk/KDE/kdebase/workspace/; revision=1102480
2010-03-12 16:47:45 +00:00
Fredrik Höglund 69ab6ec3b7 Use GL_CONSTANT_ALPHA instead of reducing the opacity in the fragment shader.
This makes the blending work correctly when the alpha bits are zero,
which is apparently the case with NVidia.

svn path=/trunk/KDE/kdebase/workspace/; revision=1102471
2010-03-12 16:10:57 +00:00
Fredrik Höglund c82351488e Make sure that both the render target and the shader are valid
before using them.

svn path=/trunk/KDE/kdebase/workspace/; revision=1102465
2010-03-12 15:56:19 +00:00
Fredrik Höglund 5d0ab03a69 Clear the framebuffer object before rendering to it.
This fixes artifacts that sometimes appear near window edges.

svn path=/trunk/KDE/kdebase/workspace/; revision=1101786
2010-03-10 22:12:32 +00:00
Fredrik Höglund 728e3ed6f6 Use the texture matrix to do the screen to texture coordinate transformations.
svn path=/trunk/KDE/kdebase/workspace/; revision=1101728
2010-03-10 18:31:59 +00:00
Fredrik Höglund 67e0e91168 Check some HW limits and make sure we don't exceed them.
svn path=/trunk/KDE/kdebase/workspace/; revision=1101724
2010-03-10 18:16:18 +00:00
Fredrik Höglund 3de8c53f21 Refactor the blur shader code a bit, and add a GLSL version.
svn path=/trunk/KDE/kdebase/workspace/; revision=1100848
2010-03-08 20:45:58 +00:00
Fredrik Höglund ad2a92b082 New hint: _KDE_NET_WM_BLUR_REGION
Applications can use this hint to specify the region under the
the window where the blur effect will be applied.

svn path=/trunk/KDE/kdebase/workspace/; revision=1100036
2010-03-06 16:14:25 +00:00
Script Kiddy 06cca743e4 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1099845
2010-03-06 06:54:11 +00:00
Fredrik Höglund 53391ba944 Initial commit of the blur effect rewrite.
svn path=/trunk/KDE/kdebase/workspace/; revision=1099619
2010-03-05 20:42:10 +00:00
Fredrik Höglund 48c3a09119 Remove the old blur effect.
svn path=/trunk/KDE/kdebase/workspace/; revision=1099609
2010-03-05 20:26:49 +00:00
Script Kiddy cf3c3d17b8 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=1098905

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

M	wallpapers/Aghi/metadata.desktop
M	wallpapers/Code_Poets_Dream/metadata.desktop
M	wallpapers/Curls_on_Green/metadata.desktop
M	wallpapers/Ethais/metadata.desktop
M	wallpapers/Evening/metadata.desktop
M	wallpapers/Fields_of_Peace/metadata.desktop
M	wallpapers/Finally_Summer_in_Germany/metadata.desktop
M	wallpapers/Fresh_Morning/metadata.desktop
M	wallpapers/Media_Life/metadata.desktop
M	wallpapers/Plasmalicious/metadata.desktop
M	wallpapers/Quadros/metadata.desktop
M	wallpapers/Red_Leaf/metadata.desktop
M	wallpapers/Spring_Sunray/metadata.desktop
M	wallpapers/The_Rings_of_Saturn/metadata.desktop
2010-03-04 16:46:17 +00:00