[sisyphus] KDE4 menu

Igor Vlasenko ivlasenko на gmail.com
Вт Май 10 22:03:18 UTC 2011


Разобрался с KDE4 menu,

1) как и чувствовал.

Неприятности с меню KDE4 были из-за того, что kbuildsycoca4
сегфолтился на <MergeDir>applications-merged</MergeDir>.

Большое спасибо Сергею Турчину, который добрался проверить.

> > также, 0.30 отличается от 0.29 тем, что там
> > в /etc/xdg/menus/applications.menu
> > добавлена строка
> >       <MergeDir>applications-merged</MergeDir>
> > что, если ее убить?
> kbuildsycoca4 перестает падать.

Это первая грабля, которая убрана в версии меню 0.32.
Теперь меню можно ставить и смотреть.

Но там уже ждет вторая грабля -- обезличивание вторичных иконок в подменю
(о чем писал Слава Дубровский).

Этот механизм работает следующим образом:
код в kdeui/icons/kiconloader.cpp предпочитает загружать "похожие" пиктограммы
из текущей темы (oxygen, например), вместо того, чтобы брать точное
совпадение по названию пиктограммы
из дефолтовой темы hicolor.

Как хак, я сгенерировал пакет симлинков из hicolor в oxygen, после
чего после удаления кеша пиктограмм
rm -rf kpc/ icon-cache.kcache и перелогина пропавшие иконки появились.
Но этот хак не метод, так как тем у KDE может быть несколько (то же
танго, например).

там надо чинить KIconLoaderPrivate::findMatchingIcon
но так как уже поздно, буду глядеть завтра.


Подробная информация о списке рассылки Sisyphus