Review Request 110339: Drop cursor font support and convert KDE Classic into an image-based theme

Fredrik Höglund fredrik at kde.org
Tue May 7 00:11:37 BST 2013


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

Ship it!


I haven't reviewed the binary files, but the rest LGTM.

- Fredrik Höglund


On May 6, 2013, 11:04 p.m., Eike Hein wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/110339/
> -----------------------------------------------------------
> 
> (Updated May 6, 2013, 11:04 p.m.)
> 
> 
> 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/00000000000000020006000e7e9ffc3f PRE-CREATION 
>   cursors/KDE_Classic/cursors/00008160000006810000408080010102 PRE-CREATION 
>   cursors/KDE_Classic/cursors/08e8e1c95fe2fc01f976f1e063a24ccd PRE-CREATION 
>   cursors/KDE_Classic/cursors/3ecb610c1bf2410f44200f48c40d3599 PRE-CREATION 
>   cursors/KDE_Classic/cursors/4498f0e0c1937ffe01fd06f973665830 PRE-CREATION 
>   cursors/KDE_Classic/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408 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/crossed_circle PRE-CREATION 
>   cursors/KDE_Classic/cursors/crosshair PRE-CREATION 
>   cursors/KDE_Classic/cursors/d9ce0ab605698f320427677b458ad60b 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/half-busy PRE-CREATION 
>   cursors/KDE_Classic/cursors/hand1 PRE-CREATION 
>   cursors/KDE_Classic/cursors/hand2 PRE-CREATION 
>   cursors/KDE_Classic/cursors/help PRE-CREATION 
>   cursors/KDE_Classic/cursors/ibeam PRE-CREATION 
>   cursors/KDE_Classic/cursors/left_ptr PRE-CREATION 
>   cursors/KDE_Classic/cursors/left_ptr_watch 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/progress PRE-CREATION 
>   cursors/KDE_Classic/cursors/question_arrow 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/whats_this PRE-CREATION 
>   cursors/KDE_Classic/cursors/xcursorconfig 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
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20130506/6820a926/attachment.htm>


More information about the kde-core-devel mailing list