Revision bb6d487...

Go back to digest for 28th August 2011

Optimization in KDE Base

Martin Gräßlin committed changes in [kde-workspace] /:

Only call active effects in the effect chain

Each effect is able to declare itself as currently being active,
that is transforming windows or painting or screen or doing anything
during the current rendered frame.

This change eliminates the hottest path inside KWin identified by
callgrind.

REVIEW: 102449

File Changes

Modified 82 files
  •   kwin/effects.cpp
  •   kwin/effects.h
  •   kwin/libkwineffects/kwineffects.cpp
  •   kwin/libkwineffects/kwineffects.h
  •   kwin/effects/boxswitch/boxswitch.cpp
  •   kwin/effects/boxswitch/boxswitch.h
  •   kwin/effects/coverswitch/coverswitch.cpp
  •   kwin/effects/coverswitch/coverswitch.h
  •   kwin/effects/cube/cube.cpp
  •   kwin/effects/cube/cube.h
  •   kwin/effects/cube/cubeslide.cpp
  •   kwin/effects/cube/cubeslide.h
  •   kwin/effects/dashboard/dashboard.cpp
  •   kwin/effects/dashboard/dashboard.h
  •   kwin/effects/desktopgrid/desktopgrid.cpp
  •   kwin/effects/desktopgrid/desktopgrid.h
  •   kwin/effects/dialogparent/dialogparent.cpp
  •   kwin/effects/dialogparent/dialogparent.h
  •   kwin/effects/dimscreen/dimscreen.cpp
  •   kwin/effects/dimscreen/dimscreen.h
  •   kwin/effects/explosion/explosion.cpp
  •   kwin/effects/explosion/explosion.h
  •   kwin/effects/fade/fade.cpp
  •   kwin/effects/fade/fade.h
  •   kwin/effects/fadedesktop/fadedesktop.cpp
  •   kwin/effects/fadedesktop/fadedesktop.h
  •   kwin/effects/fallapart/fallapart.cpp
  •   kwin/effects/fallapart/fallapart.h
  •   kwin/effects/flipswitch/flipswitch.cpp
  •   kwin/effects/flipswitch/flipswitch.h
  •   kwin/effects/glide/glide.cpp
  •   kwin/effects/glide/glide.h
  •   kwin/effects/highlightwindow/highlightwindow.cpp
  •   kwin/effects/highlightwindow/highlightwindow.h
  •   kwin/effects/invert/invert.cpp
  •   kwin/effects/invert/invert.h
  •   kwin/effects/login/login.cpp
  •   kwin/effects/login/login.h
  •   kwin/effects/logout/logout.cpp
  •   kwin/effects/logout/logout.h
  •   kwin/effects/lookingglass/lookingglass.cpp
  •   kwin/effects/lookingglass/lookingglass.h
  •   kwin/effects/magiclamp/magiclamp.cpp
  •   kwin/effects/magiclamp/magiclamp.h
  •   kwin/effects/magnifier/magnifier.cpp
  •   kwin/effects/magnifier/magnifier.h
  •   kwin/effects/minimizeanimation/minimizeanimation.cpp
  •   kwin/effects/minimizeanimation/minimizeanimation.h
  •   kwin/effects/mousemark/mousemark.cpp
  •   kwin/effects/mousemark/mousemark.h
  •   kwin/effects/outline/outline.cpp
  •   kwin/effects/outline/outline.h
  •   kwin/effects/presentwindows/presentwindows.cpp
  •   kwin/effects/presentwindows/presentwindows.h
  •   kwin/effects/scalein/scalein.cpp
  •   kwin/effects/scalein/scalein.h
  •   kwin/effects/screenshot/screenshot.cpp
  •   kwin/effects/screenshot/screenshot.h
  •   kwin/effects/sheet/sheet.cpp
  •   kwin/effects/sheet/sheet.h
  •   kwin/effects/slide/slide.cpp
  •   kwin/effects/slide/slide.h
  •   kwin/effects/slideback/slideback.cpp
  •   kwin/effects/slideback/slideback.h
  •   kwin/effects/slidingpopups/slidingpopups.cpp
  •   kwin/effects/slidingpopups/slidingpopups.h
  •   kwin/effects/snaphelper/snaphelper.cpp
  •   kwin/effects/snaphelper/snaphelper.h
  •   kwin/effects/startupfeedback/startupfeedback.cpp
  •   kwin/effects/startupfeedback/startupfeedback.h
  •   kwin/effects/taskbarthumbnail/taskbarthumbnail.cpp
  •   kwin/effects/taskbarthumbnail/taskbarthumbnail.h
  •   kwin/effects/thumbnailaside/thumbnailaside.cpp
  •   kwin/effects/thumbnailaside/thumbnailaside.h
  •   kwin/effects/trackmouse/trackmouse.cpp
  •   kwin/effects/trackmouse/trackmouse.h
  •   kwin/effects/windowgeometry/windowgeometry.cpp
  •   kwin/effects/windowgeometry/windowgeometry.h
  •   kwin/effects/wobblywindows/wobblywindows.cpp
  •   kwin/effects/wobblywindows/wobblywindows.h
  •   kwin/effects/zoom/zoom.cpp
  •   kwin/effects/zoom/zoom.h
82 files changed in total