----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/110339/#review32170 -----------------------------------------------------------
kcontrol/input/xcursor/xcursortheme.cpp <http://git.reviewboard.kde.org/r/110339/#comment23953> This will probably segfault if images is null. kcontrol/input/xcursor/xcursortheme.cpp <http://git.reviewboard.kde.org/r/110339/#comment23954> Same issue here. - Fredrik Höglund On May 6, 2013, 8:55 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, 8:55 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/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 > >