-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/110339/
-----------------------------------------------------------

Review request for kde-workspace and Fredrik Höglund.


Description
-------

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 rasterization 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.

This change was pre-approved by Fredrik Höglund, the author of the code in 
question (and of runtime cursor theme switching support in XFixes).

This patch is hard to do justice on ReviewBoard because it contains binary 
files (the cursors) and symlinks (also to cursors, due to specifics of the 
theme format). In order to test the actual commit, please use the 
"drop-cursor-font-support" branch on 
git://anongit.kde.org:clones/kde-workspace/hein/kde-workspace (it's a fresh 
branch so it might not have made it to the mirrors at the time you read this). 
This was branched from master minutes ago.


Diffs
-----

  cursors/CMakeLists.txt b1f9c7a 
  cursors/KDE_Classic/cursors/00008160000006810000408080010102 PRE-CREATION 
  cursors/KDE_Classic/cursors/4498f0e0c1937ffe01fd06f973665830 PRE-CREATION 
  cursors/KDE_Classic/cursors/9081237383d90e509aa00f00170e968f PRE-CREATION 
  cursors/KDE_Classic/cursors/9d800788f1b08800ae810202380a0822 PRE-CREATION 
  cursors/KDE_Classic/cursors/X_cursor PRE-CREATION 
  cursors/KDE_Classic/cursors/all-scroll PRE-CREATION 
  cursors/KDE_Classic/cursors/bottom_left_corner PRE-CREATION 
  cursors/KDE_Classic/cursors/bottom_right_corner PRE-CREATION 
  cursors/KDE_Classic/cursors/bottom_side PRE-CREATION 
  cursors/KDE_Classic/cursors/center_ptr PRE-CREATION 
  cursors/KDE_Classic/cursors/closedhand PRE-CREATION 
  cursors/KDE_Classic/cursors/col-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/cross PRE-CREATION 
  cursors/KDE_Classic/cursors/crosshair PRE-CREATION 
  cursors/KDE_Classic/cursors/dnd-move PRE-CREATION 
  cursors/KDE_Classic/cursors/dnd-no-drop PRE-CREATION 
  cursors/KDE_Classic/cursors/dnd-none PRE-CREATION 
  cursors/KDE_Classic/cursors/e-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/e29285e634086352946a0e7090d73106 PRE-CREATION 
  cursors/KDE_Classic/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff PRE-CREATION 
  cursors/KDE_Classic/cursors/fleur PRE-CREATION 
  cursors/KDE_Classic/cursors/forbidden PRE-CREATION 
  cursors/KDE_Classic/cursors/hand1 PRE-CREATION 
  cursors/KDE_Classic/cursors/hand2 PRE-CREATION 
  cursors/KDE_Classic/cursors/ibeam PRE-CREATION 
  cursors/KDE_Classic/cursors/left_ptr PRE-CREATION 
  cursors/KDE_Classic/cursors/left_side PRE-CREATION 
  cursors/KDE_Classic/cursors/move PRE-CREATION 
  cursors/KDE_Classic/cursors/n-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/not-allowed PRE-CREATION 
  cursors/KDE_Classic/cursors/openhand PRE-CREATION 
  cursors/KDE_Classic/cursors/pirate PRE-CREATION 
  cursors/KDE_Classic/cursors/pointer PRE-CREATION 
  cursors/KDE_Classic/cursors/pointing_hand PRE-CREATION 
  cursors/KDE_Classic/cursors/right_ptr PRE-CREATION 
  cursors/KDE_Classic/cursors/right_side PRE-CREATION 
  cursors/KDE_Classic/cursors/row-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/s-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/sb_h_double_arrow PRE-CREATION 
  cursors/KDE_Classic/cursors/sb_v_double_arrow PRE-CREATION 
  cursors/KDE_Classic/cursors/size_all PRE-CREATION 
  cursors/KDE_Classic/cursors/size_bdiag PRE-CREATION 
  cursors/KDE_Classic/cursors/size_fdiag PRE-CREATION 
  cursors/KDE_Classic/cursors/size_hor PRE-CREATION 
  cursors/KDE_Classic/cursors/size_ver PRE-CREATION 
  cursors/KDE_Classic/cursors/split_h PRE-CREATION 
  cursors/KDE_Classic/cursors/split_v PRE-CREATION 
  cursors/KDE_Classic/cursors/text PRE-CREATION 
  cursors/KDE_Classic/cursors/top_left_corner PRE-CREATION 
  cursors/KDE_Classic/cursors/top_right_corner PRE-CREATION 
  cursors/KDE_Classic/cursors/top_side PRE-CREATION 
  cursors/KDE_Classic/cursors/up_arrow PRE-CREATION 
  cursors/KDE_Classic/cursors/v_double_arrow PRE-CREATION 
  cursors/KDE_Classic/cursors/w-resize PRE-CREATION 
  cursors/KDE_Classic/cursors/wait PRE-CREATION 
  cursors/KDE_Classic/cursors/watch PRE-CREATION 
  cursors/KDE_Classic/cursors/xterm PRE-CREATION 
  cursors/KDE_Classic/index.theme PRE-CREATION 
  kcontrol/input/CMakeLists.txt cb81718 
  kcontrol/input/xcursor/bitmaps.h c208ee7 
  kcontrol/input/xcursor/legacytheme.h bd3c33d 
  kcontrol/input/xcursor/legacytheme.cpp 28d7f2a 
  kcontrol/input/xcursor/thememodel.cpp d69dde0 
  kcontrol/input/xcursor/xcursortheme.h b4b6c53 
  kcontrol/input/xcursor/xcursortheme.cpp 2fc7504 

Diff: http://git.reviewboard.kde.org/r/110339/diff/


Testing
-------

Runtime switching, relogin.


Thanks,

Eike Hein

Reply via email to