Revision 79f16db...

Go back to digest for 12th May 2013

Features in KDE Base

Eike Hein committed changes in [kde-workspace] /:

Drop cursor font support and convert KDE Classic into an image-based theme.

The "KDE Classic" mouse cursor theme was implemented in code to source
cursor images either from bundled XPMs or by rasterizing glyphs from the
cursor font. This was used only when changing the cursor theme for
already-running applications at runtime; for newly-started apps (and so
including for new sessions) things relied on the special "#kde_legacy#"
theme name triggering an equivalent fallback in Qt and libXcursor, by
virtue of "#kde_legacy#" not actually existing.

This system-level fallback behavior is no longer evident on modern
systems, instead the distro-supplied default cursor theme gets loaded.
That meant the "KDE Classic" theme no longer actually worked for newly-
started applications (and so also not after relogin).

As the new fallback behavior makes sense, pursueing an upstream "fix"
is not economical. This patch instead takes the approach of deleting
the legacy code and reimplementing the "KDE Classic" theme as a modern
image-based cursor theme by dumping the results of the old rasteriza-
tion code into files.

This means losing support for theoretically-changable cursor fonts,
however:
- It's doubtful any systems around today rely on custom cursor fonts.
- A mix of a custom cursor font and the XPMs bundled with the KCM
would be ugly anyway.
- This is all highly X-specific and likely of no use in future Wayland
systems anyway.

REVIEW:110339

File Changes

Added 32 files
  • /KDE_Classic
  •   cursors/index.theme
  •   cursors/cursors/00000000000000020006000e7e9ffc3f
  •   cursors/cursors/00008160000006810000408080010102
  •   cursors/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
  •   cursors/cursors/3ecb610c1bf2410f44200f48c40d3599
  •   cursors/cursors/4498f0e0c1937ffe01fd06f973665830
  •   cursors/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
  •   cursors/cursors/9081237383d90e509aa00f00170e968f
  •   cursors/cursors/9d800788f1b08800ae810202380a0822
  •   cursors/cursors/all-scroll
  •   cursors/cursors/col-resize
  •   cursors/cursors/crossed_circle
  •   cursors/cursors/d9ce0ab605698f320427677b458ad60b
  •   cursors/cursors/dnd-move
  •   cursors/cursors/dnd-no-drop
  •   cursors/cursors/dnd-none
  •   cursors/cursors/e-resize
  •   cursors/cursors/e29285e634086352946a0e7090d73106
  •   cursors/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
  •   cursors/cursors/left_ptr_watch
  •   cursors/cursors/move
  •   cursors/cursors/n-resize
  •   cursors/cursors/not-allowed
  •   cursors/cursors/pointer
  •   cursors/cursors/progress
  •   cursors/cursors/row-resize
  •   cursors/cursors/s-resize
  •   cursors/cursors/text
  •   cursors/cursors/v_double_arrow
  •   cursors/cursors/w-resize
  •   cursors/cursors/whats_this
  •   cursors/cursors/xcursorconfig
Deleted 3 files
  • /input/xcursor
  •   kcontrol/bitmaps.h
  •   kcontrol/legacytheme.cpp
  •   kcontrol/legacytheme.h
Modified 5 files
  •   cursors/CMakeLists.txt
  •   kcontrol/input/CMakeLists.txt
  •   kcontrol/input/xcursor/thememodel.cpp
  •   kcontrol/input/xcursor/xcursortheme.cpp
  •   kcontrol/input/xcursor/xcursortheme.h
40 files changed in total