(Premultiplied text painting on a non-premultiplied QImage). Fixed text
color of frameless and unstyled frames when using a Plasma theme that
has a non-white primary text color. Updated
GLTexture::convertToGLFormat() to use the latest version from Qt.
svn path=/trunk/KDE/kdebase/workspace/; revision=934008
first to be added is one to display the Plasma dashboard. Implemented
the "trigger cooldown" option. Fixed a few edge action conflicts such
as forcing desktop switches when moving windows and the like.
BUG: 170393
svn path=/trunk/KDE/kdebase/workspace/; revision=933166
effects that display text or boxes to use the class. Minor speed
increase in XRender mode for those effects and a massive increase in
OpenGL mode (Double framerate in present windows in my case).
svn path=/trunk/KDE/kdebase/workspace/; revision=929951
Plasma frame object. There are two ways to use this class: The first is
in "static" mode which gives the frame a set geometry and will not
change, the second is an automatic mode that creates the smallest
possible frame around the specified contents. Contents can either be
normal text and/or a QPixmap, useful for displaying the caption and icon
of the currently highlighed window.
Known bugs:
- Does not detect Plasma theme changes, known to be in the Plasma
library.
- Slight graphical glitches, known to be in Qt 4.5.0 RC1.
Untested:
- What happens when there is no Plasma theme installed.
svn path=/trunk/KDE/kdebase/workspace/; revision=929324
all code that used calcDesktopLayout() so the function could be removed.
Minor changes to the DesktopLayout class itself.
svn path=/trunk/KDE/kdebase/workspace/; revision=925930
classes. Example code has been added to present windows and desktop
grid, if this code is not to be used by KDE 4.3 it should be removed and
added to a test effect instead.
svn path=/trunk/KDE/kdebase/workspace/; revision=922039
its own directory, cleaned up the effect config macros and renamed
"MakeTransparent" to "Translucency" so that it matches its visible name.
svn path=/trunk/KDE/kdebase/workspace/; revision=921749
smoother and less "bouncy" than before and produce the same result at
any framerate. The Motion1D and Motion2D classes are now available and
replace the Motion<T> template for external use.
svn path=/trunk/KDE/kdebase/workspace/; revision=921104
detect mouse movement and modifier key changes even when KWin is idle.
As the track mouse effect requires polling to always be active disabling
it by default to prevent wasting CPU usage in the default install.
svn path=/trunk/KDE/kdebase/workspace/; revision=919711
Added force mode to buildQuads() to allow refreshing the cache.
Made EffectWindow::buildQuads() no longer internal.
svn path=/trunk/KDE/kdebase/workspace/; revision=872836
WARNING: Breaks shadow effect. I don't think it causes anything to crash anymore but it is VERY ugly visually.
Contains:
- New decoration API that allows decorations to change the way shadows look.
- Shadows now wobble.
- API example code in the Oxygen decoration.
- Added buildQuads() effect plugin hook.
- Work on the shadow effect to use the new decoration shadow API as well.
- Added IDs to WindowQuads.
- Added public accessors to texture coords in WindowVertex.
Would like all this to be reviewed.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=872473
Fixed bug in present windows when if there is only one window on a Xinerama screen it is zoomed into nothingness when using the natural layout.
CCBUG: 171812
svn path=/trunk/KDE/kdebase/workspace/; revision=865798
classes are intended to be used to help effect authors move windows across
the screen smoothly and naturally.
Although not 100% complete the classes can be used for 2D operations in its
current state, an example of which is the included present windows update.
These classes can be expanded upon when the new modifiers are required.
I would like a generic, template-based motion manager class that can be used
for non-window objects as well as another 3D-enabled manager to be available
sometime in the future.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=863561
of Effect::animationTime() for how-to-use.
TODO: Effects need to reload config after doing the change in the kcm.
NOTE: Default TimeLine constructor now creates invalid object, it is
necessary to explicitly call setDuration() in order to ensure all
animations respect this setting.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=854690
Therefore zScale, zTranslate and new RotationData are added to ScreenPaintData and WindowPaintData. So it is possible to define zTranslation and rotations without using OpenGL directly. The change only affects OpenGL compositing. XRender is not changed.
svn path=/trunk/KDE/kdebase/workspace/; revision=842018
instead:
set_target_properties(foo PROPERTIES
${KDE4_DISABLE_PROPERTY_}LINK_INTERFACE_LIBRARIES "kdeui;kdecore"
)
While this doesn't look very nice, it is completely forward and backward compatible (i.e. cmake 2.4 doesn't complain,
cmake 2.6 works, both versions work as soon as the reduced link interface is the default (soon), if somebody
uses this with kdelibs which don't have that anymore he will get the reduced interface instead of errors, so all
should be ok)
Alex
CCMAIL: mueller@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=836131
should act just like Picture, except for proper initialization
and resource freeing (i.e. it's sane and easy from C++ point of view).
svn path=/trunk/KDE/kdebase/workspace/; revision=805085
windows for me. Minimizing still doesn't animate here. :/
If someone sees the same problem, please let me know. There
also seems to be something fishy with the desktopgrid --
it's not showing windows on inactive desktops, sliding
animation and the grid-zoomout expose this.
svn path=/trunk/KDE/kdebase/workspace/; revision=804806
to KWin effects.
The class basically wraps QTimeLine right now, but it's easy to pop
in function implementing different animation timeline patterns.
Patches to the first effects using this TimeLine are coming up ...
svn path=/trunk/KDE/kdebase/workspace/; revision=798719
geometry actually stays the same. Avoids large number of rebinds (with no
strict binding) with the launch feedback icon.
svn path=/trunk/KDE/kdebase/workspace/; revision=787948
so that Compiz can use it for the KDE decorator. Extending will be
done the same way like with KDecoration.
CCMAIL: Dennis Kasprzyk <onestone@opencompositing.org>
svn path=/trunk/KDE/kdebase/workspace/; revision=766833
own properties for communication with something outside of kwin.
Intended now mainly for a better taskbar thumbnails effect.
svn path=/trunk/KDE/kdebase/workspace/; revision=755991
like popups should be short-lived and mostly for the active window anyway.
Possibly could be revisited in the future when support for window grouping
for unmanaged windows gets implemented too.
BUG: 154009
svn path=/trunk/KDE/kdebase/workspace/; revision=755987
Also slightly redo the #define's for effects, now it's:
- #ifdef KWIN_HAVE_COMPOSITING to check whether there's any compositing support at all
- #ifdef KWIN_HAVE_OPENGL_COMPOSITING to check for OpenGL-based compositing
- #ifdef KWIN_HAVE_XRENDER_COMPOSITING the same for XRender
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=749628
not some random tiny sizes or even zero. Maybe could need small tweaking
here or there, but a spacer is supposed to make at least some space.
svn path=/trunk/KDE/kdebase/workspace/; revision=743034
greater possibilities in extending KDecoration. KCommonDecoration
now does not inherit KDecoration, only wraps it (i.e. it's source
compatible). Added comments on how to extend KDecoration
in the future by subclassing to KDecoration2, added PORTING
document with all API changes in KDE4.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=742976
being v2+ (right now it says just GPL, which according to GPL itself
means any GPL). Decoration clients will come later.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=742302
This allows shortcut editor widgets to be added in Designer (for 4.1 KShortcutsEditor should
probably get setActionTypes() method so that it needn't be set in it's ctor).
libkwineffects also links to kdeui now, I hope it's ok since it linked to QtGUI and kdecore already anyway.
svn path=/trunk/KDE/kdebase/workspace/; revision=740954
to support XOR painting only when XRender is available. Given that
outline should be mainly used with older systems, go for a DIY Xlib-based
solution. Needs changes in decorations using it.
BUG: 149997
svn path=/trunk/KDE/kdebase/workspace/; revision=739136
changing this signature in reimplementations, as -Woverloaded-virtual is
not in default flags :(.
svn path=/trunk/KDE/kdebase/workspace/; revision=731695
KConfigBase:
- remove separator argument from list entry reading/writing functions
- introduce {read,write}XdgListEntry()
- kill readPathListEntry(), add readPathEntry() overload
instead. the default value is not optional any more, as it defines the
return type. this is consistent with the readEntry() functions.
- rename clean() => markAsClean(), remove rollback()
- rename ConfigState => AccessMode, getConfigState() => accessMode()
- rename {entry,group}IsImmutable() => is{Entry,Group}Immutable()
- remove NLS alias to Localized
KConfig:
- remove setGroup() & group()
- reshuffle OpenFlag enum, introduce NoCascade for symmetry
- remove setExtraConfigFiles() alias to addConfigSources()
KConfigGroup:
- inherit KConfigBase::deleteGroup() overloads
- make convertToQVariant() private, it will probably change somehow
- KConfig & KConfigGroup: deprecate entryMap()
- remove bogus declarations: KConfigGroup::setReadDefaults(),
KConfig::readEntryUntranslated()
- apidox
- reshuffle the declarations in the headers
svn path=/trunk/KDE/kdebase/workspace/; revision=728852
needed now because friday is the last BC day. The rest of the modules will
follow as fast as my laptop allows.
svn path=/trunk/KDE/kdebase/workspace/; revision=721704
Reverting r700026 and changing floats to doubles again. I'd probably like
to change even the ones interfacing with OpenGL which I've left for now.
svn path=/trunk/KDE/kdebase/workspace/; revision=707987