QML
За годы просмотров фильмов, которые я, йо-хо-хо, храню на винте а не смотрю в онлайне, у меня накопилась масса скриншотов, которые я иногда пересматриваю. Захотелось показывать их себе почаще, и я решил выбрать вместо статичных обоев kde режим слайдшоу - показ картинок из дерева папок.
Теперь я вижу кучу странных кадров у себя на рабочем столе) Иногда хочется встопмнить, откуда это вообще взялось. А имени файла скриншота нигде не отображается. Сначала я придумал вытаскивать его из конфига в консоли:
cat ~/.config/plasma-org.kde.plasma.desktop-appletsrc | grep -B 1 SlideInterval | grep Image
Но это каждый раз, чтобы узнать имя скриншота, нужно лезть в консоль и по ^r искать в history эту команду.
Лучше бы он сразу отображался на экране поверх обоев.
Решение - править конфиг. спасибо, мне подсказали, как это сделать.
РЕШЕНИЕ УСТАРЕЛО! НОВОЕ НИЖЕ ПОД UPD!
Скрипт Slideshow находится в файле:
sudo vim /usr/share/plasma/wallpapers/org.kde.slideshow/contents/ui/main.qml
В начале файла, сразу после строк: note: QQC2.StackView изменилось на ImageStackView
ImageStackView { id: root
Добавить этот код:
// Добавление подписи к изображению Text { id: path text: root.modelImage anchors.fill: parent visible: mainImage.status === Image.Ready && !blurLoader.active verticalAlignment: Text.AlignTop color: "#00FF00" z: 2 } // конец изменений
Теперь нужно либо перезагрузить комп, либо перезапустить плазму: note: killall устарел, теперь pkill
pkill plasmashell && kstart5 plasmashell & или сейчас можно так (без sudo): systemctl --user restart plasma-plasmashell
В последнем случае нужно ещё зайти в выбор обоев, выбрать не слайдшоу, применить. Затем обратно выбрать снова слайдшоу, чтобы перечитался его скрипт.
Но после обновления все изменения пропадают. Чтобы быстро их вернуть, следует записать фрагмент в файл main.qml.add и сделать копию main.qml. И просто выполнять строку:
cd /usr/share/plasma/wallpapers/org.kde.slideshow/contents/ui/ && \
sudo sed -i -e '/id:\ root/r main.qml.add' main.qml
После этого проверьте, что фрагмент записался не дважды, и перезапускайте плазму.
Патч перестал работать после обновления. Код изменился видимо. Ищу решения.
Как узнать, какому пакету принадлежит файл:
sudo pacman -Fy /usr/share/plasma/wallpapers/org.kde.slideshow/contents/ui/main.qml
Решил переставить пакет, чтобы обновился конфиг, и начну сначала:
sudo pacman -S extra/plasma-workspace
Найти в конце скрипта фрагмент: ImageStackView { id: imageView anchors.fill: parent И вставить сразу после него:
// Добавление подписи к изображению Text { id: path text: imageView.modelImage anchors.fill: parent visible: mainImage.status === Image.Ready && !blurLoader.active verticalAlignment: Text.AlignTop color: "#00FF00" z: 2 } // конец изменений Теперь перезапустить плазму и всё: systemctl --user restart plasma-plasmashell
Ссылки:
|