From f2573945acedb52c3b4cd2986837e013e68648f8 Mon Sep 17 00:00:00 2001 From: Alf Gaida Date: Tue, 18 Oct 2016 02:28:13 +0200 Subject: [PATCH] Chery-picking new upstream release 0.11.0 * Synced debian foo with experimental * Bumped Standards to 3.9.8, no changes needed * Bumped compat to 10 * Removed --parallel from rules, compat 10 standard * Bumped build dependency debhelper (>= 10) * Bumped build dependency libqtxdg-dev (>= 2.0.0) * Added build-depenedency libqt5xdgiconloader-dev (>= 2.0.0) * Bumped build dependency liblxqt-dev (>= 0.11.0) * Added build dependency libqt5svg5-dev * Added Recommends lxqt-config-l10n * Added README.md to docs * Exported LC_ALL=C.UTF-8 - define language settings for reproducible builds * Fixed .gititgnore, added build-stamp * Fixed VCS fields, use https and plain /git/ * Fixed copyright Format * Added missed new files to copyright * Bumped years in copyright * Fixed lintian-overrides * Added DEB_BUILD_MAINT_OPTIONS = hardening=+all * Added translation control * Added DCMAKE_BUILD_TYPE=RelWithDebInfo --- .gitignore | 2 + AUTHORS | 2 +- CHANGELOG | 501 ++++++++++++++++++ CMakeLists.txt | 33 +- README.md | 77 +++ debian/.gitignore | 1 + debian/changelog | 28 + debian/compat | 2 +- debian/control | 14 +- debian/copyright | 17 +- debian/docs | 1 + debian/lintian-overrides | 3 +- debian/lxqt-config.manpages | 1 - debian/manpages | 3 + debian/rules | 13 +- debian/upstream/signing-key.asc | 107 ++-- debian/watch | 4 +- liblxqt-config-cursor/CMakeLists.txt | 10 + liblxqt-config-cursor/itemdelegate.cpp | 2 +- .../translations/lxqt-config-cursor.ts | 68 --- .../translations/lxqt-config-cursor_ar.ts | 77 --- .../translations/lxqt-config-cursor_cs.ts | 76 --- .../translations/lxqt-config-cursor_cs_CZ.ts | 76 --- .../translations/lxqt-config-cursor_da_DK.ts | 77 --- .../translations/lxqt-config-cursor_de.ts | 69 --- .../translations/lxqt-config-cursor_el.ts | 76 --- .../translations/lxqt-config-cursor_eo.ts | 76 --- .../translations/lxqt-config-cursor_es.ts | 76 --- .../translations/lxqt-config-cursor_es_VE.ts | 76 --- .../translations/lxqt-config-cursor_eu.ts | 76 --- .../translations/lxqt-config-cursor_fi.ts | 76 --- .../translations/lxqt-config-cursor_fr_FR.ts | 72 --- .../translations/lxqt-config-cursor_hu.ts | 72 --- .../translations/lxqt-config-cursor_hu_HU.ts | 72 --- .../translations/lxqt-config-cursor_it.ts | 78 --- .../translations/lxqt-config-cursor_ja.ts | 68 --- .../translations/lxqt-config-cursor_lt.ts | 72 --- .../translations/lxqt-config-cursor_nl.ts | 72 --- .../translations/lxqt-config-cursor_pl_PL.ts | 76 --- .../translations/lxqt-config-cursor_pt.ts | 76 --- .../translations/lxqt-config-cursor_pt_BR.ts | 76 --- .../translations/lxqt-config-cursor_ro_RO.ts | 76 --- .../translations/lxqt-config-cursor_ru.ts | 68 --- .../translations/lxqt-config-cursor_ru_RU.ts | 68 --- .../translations/lxqt-config-cursor_sl.ts | 72 --- .../translations/lxqt-config-cursor_th_TH.ts | 76 --- .../translations/lxqt-config-cursor_tr.ts | 72 --- .../translations/lxqt-config-cursor_uk.ts | 76 --- .../translations/lxqt-config-cursor_zh_CN.ts | 76 --- .../translations/lxqt-config-cursor_zh_TW.ts | 77 --- liblxqt-config-cursor/xcr/xcrthemefx.cpp | 10 +- lxqt-config-appearance.png | Bin 0 -> 29640 bytes lxqt-config-appearance/CMakeLists.txt | 12 +- lxqt-config-appearance/fontconfigfile.cpp | 1 + lxqt-config-appearance/iconthemeconfig.cpp | 28 +- lxqt-config-appearance/iconthemeinfo.cpp | 102 +--- lxqt-config-appearance/lxqtthemeconfig.cpp | 55 +- lxqt-config-appearance/lxqtthemeconfig.ui | 7 + lxqt-config-appearance/main.cpp | 2 - .../translations/lxqt-config-appearance.ts | 225 -------- .../lxqt-config-appearance_ar.desktop | 6 +- .../translations/lxqt-config-appearance_ar.ts | 225 -------- .../lxqt-config-appearance_ca.desktop | 4 + .../translations/lxqt-config-appearance_cs.ts | 225 -------- .../lxqt-config-appearance_cs_CZ.ts | 225 -------- .../translations/lxqt-config-appearance_da.ts | 225 -------- .../lxqt-config-appearance_da_DK.ts | 225 -------- .../translations/lxqt-config-appearance_de.ts | 225 -------- .../translations/lxqt-config-appearance_el.ts | 225 -------- .../translations/lxqt-config-appearance_eo.ts | 225 -------- .../translations/lxqt-config-appearance_es.ts | 225 -------- .../lxqt-config-appearance_es_VE.ts | 225 -------- .../translations/lxqt-config-appearance_eu.ts | 225 -------- .../translations/lxqt-config-appearance_fi.ts | 225 -------- .../lxqt-config-appearance_fr_FR.ts | 225 -------- .../translations/lxqt-config-appearance_hu.ts | 225 -------- .../lxqt-config-appearance_hu_HU.ts | 236 --------- .../translations/lxqt-config-appearance_ia.ts | 225 -------- .../lxqt-config-appearance_id_ID.ts | 225 -------- .../translations/lxqt-config-appearance_it.ts | 226 -------- .../translations/lxqt-config-appearance_ja.ts | 225 -------- .../translations/lxqt-config-appearance_ko.ts | 225 -------- .../translations/lxqt-config-appearance_lt.ts | 225 -------- .../translations/lxqt-config-appearance_nl.ts | 225 -------- .../translations/lxqt-config-appearance_pl.ts | 225 -------- .../lxqt-config-appearance_pl_PL.ts | 225 -------- .../translations/lxqt-config-appearance_pt.ts | 225 -------- .../lxqt-config-appearance_pt_BR.ts | 225 -------- .../lxqt-config-appearance_ro_RO.ts | 225 -------- .../translations/lxqt-config-appearance_ru.ts | 225 -------- .../lxqt-config-appearance_ru_RU.desktop | 4 - .../lxqt-config-appearance_ru_RU.ts | 225 -------- .../lxqt-config-appearance_sk_SK.ts | 236 --------- .../translations/lxqt-config-appearance_sl.ts | 225 -------- .../lxqt-config-appearance_sr@latin.ts | 225 -------- .../lxqt-config-appearance_sr_BA.ts | 236 --------- .../lxqt-config-appearance_sr_RS.ts | 236 --------- .../lxqt-config-appearance_th_TH.ts | 225 -------- .../translations/lxqt-config-appearance_tr.ts | 225 -------- .../translations/lxqt-config-appearance_uk.ts | 225 -------- .../lxqt-config-appearance_zh_CN.ts | 225 -------- .../lxqt-config-appearance_zh_TW.ts | 225 -------- lxqt-config-brightness/CMakeLists.txt | 89 ++++ lxqt-config-brightness/README.md | 4 + lxqt-config-brightness/brightnesssettings.cpp | 101 ++++ lxqt-config-brightness/brightnesssettings.h | 53 ++ lxqt-config-brightness/brightnesssettings.ui | 89 ++++ .../icons/brightnesssettings.svg | 141 +++++ lxqt-config-brightness/main.cpp | 89 ++++ lxqt-config-brightness/monitorinfo.cpp | 76 +++ lxqt-config-brightness/monitorinfo.h | 58 ++ lxqt-config-brightness/outputwidget.cpp | 68 +++ lxqt-config-brightness/outputwidget.h | 45 ++ lxqt-config-brightness/outputwidget.ui | 84 +++ .../lxqt-config-brightness.desktop.in | 10 + .../lxqt-config-brightness_ar.desktop | 2 + .../lxqt-config-brightness_ca.desktop | 2 + .../lxqt-config-brightness_es.desktop | 4 + .../lxqt-config-brightness_ru.desktop | 4 + lxqt-config-brightness/xrandrbrightness.cpp | 411 ++++++++++++++ lxqt-config-brightness/xrandrbrightness.h | 56 ++ lxqt-config-file-associations/CMakeLists.txt | 10 + .../mimetypeitemmodel.cpp | 2 +- .../mimetypeviewer.cpp | 1 - .../lxqt-config-file-associations.ts | 123 ----- .../lxqt-config-file-associations_ar.desktop | 4 + .../lxqt-config-file-associations_ca.desktop | 4 + .../lxqt-config-file-associations_de.ts | 123 ----- .../lxqt-config-file-associations_el.ts | 123 ----- .../lxqt-config-file-associations_hu.ts | 123 ----- .../lxqt-config-file-associations_it.desktop | 4 +- .../lxqt-config-file-associations_it.ts | 123 ----- .../lxqt-config-file-associations_ja.ts | 123 ----- .../lxqt-config-file-associations_pl_PL.ts | 123 ----- .../lxqt-config-file-associations_pt.ts | 123 ----- .../lxqt-config-file-associations_ru.desktop | 2 +- .../lxqt-config-file-associations_ru.ts | 123 ----- ...xqt-config-file-associations_ru_RU.desktop | 4 - .../lxqt-config-file-associations_ru_RU.ts | 123 ----- lxqt-config-input/CMakeLists.txt | 12 +- lxqt-config-input/keyboardlayoutconfig.cpp | 4 +- lxqt-config-input/keyboardlayoutconfig.h | 11 + lxqt-config-input/mouseconfig.cpp | 11 +- .../selectkeyboardlayoutdialog.cpp | 2 +- .../translations/lxinput-qt_template-zh_TW.ts | 82 --- .../translations/lxqt-config-input.ts | 258 --------- .../translations/lxqt-config-input_af.ts | 258 --------- .../translations/lxqt-config-input_ar.desktop | 4 + .../translations/lxqt-config-input_ar.ts | 258 --------- .../translations/lxqt-config-input_bg.ts | 337 ------------ .../translations/lxqt-config-input_bn.ts | 258 --------- .../translations/lxqt-config-input_bn_IN.ts | 258 --------- .../translations/lxqt-config-input_ca.desktop | 4 + .../translations/lxqt-config-input_ca.ts | 258 --------- .../translations/lxqt-config-input_cs.ts | 258 --------- .../translations/lxqt-config-input_da.ts | 317 ----------- .../translations/lxqt-config-input_de.ts | 258 --------- .../translations/lxqt-config-input_el.ts | 258 --------- .../translations/lxqt-config-input_es.ts | 337 ------------ .../translations/lxqt-config-input_eu.ts | 329 ------------ .../translations/lxqt-config-input_fi.ts | 337 ------------ .../translations/lxqt-config-input_fr.ts | 337 ------------ .../translations/lxqt-config-input_gl.ts | 337 ------------ .../translations/lxqt-config-input_hr.ts | 333 ------------ .../translations/lxqt-config-input_hu.ts | 258 --------- .../translations/lxqt-config-input_id.ts | 337 ------------ .../translations/lxqt-config-input_is.ts | 258 --------- .../translations/lxqt-config-input_it.desktop | 2 +- .../translations/lxqt-config-input_it.ts | 337 ------------ .../translations/lxqt-config-input_ja.ts | 258 --------- .../translations/lxqt-config-input_nl.ts | 337 ------------ .../translations/lxqt-config-input_pa.ts | 258 --------- .../translations/lxqt-config-input_pl.ts | 337 ------------ .../translations/lxqt-config-input_pt.ts | 337 ------------ .../translations/lxqt-config-input_ru.desktop | 2 +- .../translations/lxqt-config-input_ru.ts | 258 --------- .../lxqt-config-input_ru_RU.desktop | 4 - .../translations/lxqt-config-input_ru_RU.ts | 258 --------- .../translations/lxqt-config-input_sv.ts | 337 ------------ .../translations/lxqt-config-input_uk.ts | 258 --------- .../translations/lxqt-config-input_zh_CN.ts | 337 ------------ .../translations/lxqt-config-input_zh_HK.ts | 258 --------- .../translations/lxqt-config-input_zh_TW.ts | 337 ------------ lxqt-config-locale/CMakeLists.txt | 10 + lxqt-config-locale/main.cpp | 1 - .../translations/lxqt-config-locale.ts | 110 ---- .../lxqt-config-locale_ar.desktop | 3 + .../lxqt-config-locale_ca.desktop | 3 + .../lxqt-config-locale_de.desktop | 3 + .../lxqt-config-locale_it.desktop | 2 + .../lxqt-config-locale_ru.desktop | 4 + lxqt-config-monitor/CMakeLists.txt | 18 +- lxqt-config-monitor/fakeTest.sh | 6 + lxqt-config-monitor/fastmenu.cpp | 203 +++++++ lxqt-config-monitor/fastmenu.h | 55 ++ lxqt-config-monitor/fastmenu.ui | 80 +++ lxqt-config-monitor/loadsettings.cpp | 75 ++- lxqt-config-monitor/loadsettings.h | 6 + lxqt-config-monitor/main.cpp | 9 +- lxqt-config-monitor/managesavedsettings.cpp | 196 +++++++ lxqt-config-monitor/managesavedsettings.h | 59 +++ lxqt-config-monitor/managesavedsettings.ui | 74 +++ lxqt-config-monitor/monitor.cpp | 124 +++-- lxqt-config-monitor/monitor.h | 78 +-- lxqt-config-monitor/monitorpicture.cpp | 41 +- lxqt-config-monitor/monitorpicture.h | 7 +- lxqt-config-monitor/monitorsettingsdialog.cpp | 130 +++-- lxqt-config-monitor/monitorwidget.cpp | 95 +--- lxqt-config-monitor/monitorwidget.h | 7 +- lxqt-config-monitor/monitorwidget.ui | 52 +- lxqt-config-monitor/settingsdialog.cpp | 7 +- lxqt-config-monitor/settingsdialog.h | 4 +- lxqt-config-monitor/timeoutdialog.cpp | 2 +- .../translations/lxqt-config-monitor.ts | 260 --------- .../lxqt-config-monitor_ar.desktop | 3 + .../lxqt-config-monitor_ca.desktop | 4 + .../translations/lxqt-config-monitor_de.ts | 425 --------------- .../translations/lxqt-config-monitor_el.ts | 425 --------------- .../translations/lxqt-config-monitor_hu.ts | 377 ------------- .../translations/lxqt-config-monitor_it.ts | 377 ------------- .../translations/lxqt-config-monitor_ja.ts | 393 -------------- .../translations/lxqt-config-monitor_pl_PL.ts | 381 ------------- .../translations/lxqt-config-monitor_pt.ts | 477 ----------------- .../translations/lxqt-config-monitor_ru.ts | 432 --------------- .../lxqt-config-monitor_ru_RU.desktop | 4 - .../translations/lxqt-config-monitor_ru_RU.ts | 432 --------------- .../translations/lxqt-config-monitor_zh_TW.ts | 329 ------------ lxqt-config.kdev4 | 3 - lxqt-config.png | Bin 0 -> 32184 bytes src/CMakeLists.txt | 10 + src/main.cpp | 13 +- src/mainwindow.cpp | 104 ++-- src/mainwindow.h | 5 +- src/qcategorizedview/qcategorizedview.cpp | 40 +- src/qcategorizedview/qcategorizedview.h | 8 +- src/qcategorizedview/qcategorizedview_p.h | 2 +- src/translations/lxqt-config.ts | 12 - src/translations/lxqt-config_ar.desktop | 6 +- src/translations/lxqt-config_ca.desktop | 4 + src/translations/lxqt-config_cs.ts | 12 - src/translations/lxqt-config_cs_CZ.ts | 12 - src/translations/lxqt-config_da_DK.ts | 12 - src/translations/lxqt-config_de.ts | 12 - src/translations/lxqt-config_el.ts | 12 - src/translations/lxqt-config_es.ts | 12 - src/translations/lxqt-config_es_VE.ts | 12 - src/translations/lxqt-config_eu.ts | 12 - src/translations/lxqt-config_fi.ts | 12 - src/translations/lxqt-config_hu.ts | 12 - src/translations/lxqt-config_it.desktop | 2 +- src/translations/lxqt-config_it.ts | 12 - src/translations/lxqt-config_ja.ts | 12 - src/translations/lxqt-config_pl.ts | 12 - src/translations/lxqt-config_pl_PL.ts | 12 - src/translations/lxqt-config_pt.ts | 12 - src/translations/lxqt-config_pt_BR.ts | 12 - src/translations/lxqt-config_ro_RO.ts | 12 - src/translations/lxqt-config_ru.ts | 12 - src/translations/lxqt-config_ru_RU.desktop | 4 - src/translations/lxqt-config_ru_RU.ts | 12 - src/translations/lxqt-config_th_TH.ts | 12 - src/translations/lxqt-config_uk.ts | 12 - src/translations/lxqt-config_zh_CN.ts | 12 - src/translations/lxqt-config_zh_TW.ts | 12 - 264 files changed, 3478 insertions(+), 27716 deletions(-) create mode 100644 CHANGELOG create mode 100644 README.md delete mode 100644 debian/lxqt-config.manpages create mode 100644 debian/manpages delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_ar.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_cs.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_cs_CZ.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_da_DK.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_de.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_el.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_eo.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_es.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_es_VE.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_eu.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_fi.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_fr_FR.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_hu.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_hu_HU.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_it.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_ja.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_lt.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_nl.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_pl_PL.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_pt.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_pt_BR.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_ro_RO.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_ru.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_ru_RU.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_sl.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_th_TH.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_tr.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_uk.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_zh_CN.ts delete mode 100644 liblxqt-config-cursor/translations/lxqt-config-cursor_zh_TW.ts create mode 100644 lxqt-config-appearance.png delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ar.ts create mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ca.desktop delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_cs.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_cs_CZ.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_da.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_da_DK.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_de.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_el.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_eo.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_es.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_es_VE.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_eu.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_fi.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_fr_FR.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_hu.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_hu_HU.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ia.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_id_ID.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_it.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ja.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ko.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_lt.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_nl.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_pl.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_pl_PL.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_pt.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_pt_BR.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ro_RO.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ru.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.desktop delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_sk_SK.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_sl.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_sr@latin.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_sr_BA.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_sr_RS.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_th_TH.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_tr.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_uk.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_zh_CN.ts delete mode 100644 lxqt-config-appearance/translations/lxqt-config-appearance_zh_TW.ts create mode 100644 lxqt-config-brightness/CMakeLists.txt create mode 100644 lxqt-config-brightness/README.md create mode 100644 lxqt-config-brightness/brightnesssettings.cpp create mode 100644 lxqt-config-brightness/brightnesssettings.h create mode 100644 lxqt-config-brightness/brightnesssettings.ui create mode 100644 lxqt-config-brightness/icons/brightnesssettings.svg create mode 100644 lxqt-config-brightness/main.cpp create mode 100644 lxqt-config-brightness/monitorinfo.cpp create mode 100644 lxqt-config-brightness/monitorinfo.h create mode 100644 lxqt-config-brightness/outputwidget.cpp create mode 100644 lxqt-config-brightness/outputwidget.h create mode 100644 lxqt-config-brightness/outputwidget.ui create mode 100644 lxqt-config-brightness/resources/lxqt-config-brightness.desktop.in create mode 100644 lxqt-config-brightness/translations/lxqt-config-brightness_ar.desktop create mode 100644 lxqt-config-brightness/translations/lxqt-config-brightness_ca.desktop create mode 100644 lxqt-config-brightness/translations/lxqt-config-brightness_es.desktop create mode 100644 lxqt-config-brightness/translations/lxqt-config-brightness_ru.desktop create mode 100644 lxqt-config-brightness/xrandrbrightness.cpp create mode 100644 lxqt-config-brightness/xrandrbrightness.h delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations.ts create mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ar.desktop create mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ca.desktop delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_de.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_el.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_hu.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_it.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ja.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_pl_PL.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_pt.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.ts delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.desktop delete mode 100644 lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.ts delete mode 100644 lxqt-config-input/translations/lxinput-qt_template-zh_TW.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_af.ts create mode 100644 lxqt-config-input/translations/lxqt-config-input_ar.desktop delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ar.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_bg.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_bn.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_bn_IN.ts create mode 100644 lxqt-config-input/translations/lxqt-config-input_ca.desktop delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ca.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_cs.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_da.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_de.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_el.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_es.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_eu.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_fi.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_fr.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_gl.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_hr.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_hu.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_id.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_is.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_it.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ja.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_nl.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_pa.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_pl.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_pt.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ru.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ru_RU.desktop delete mode 100644 lxqt-config-input/translations/lxqt-config-input_ru_RU.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_sv.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_uk.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_zh_CN.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_zh_HK.ts delete mode 100644 lxqt-config-input/translations/lxqt-config-input_zh_TW.ts delete mode 100644 lxqt-config-locale/translations/lxqt-config-locale.ts create mode 100644 lxqt-config-locale/translations/lxqt-config-locale_ar.desktop create mode 100644 lxqt-config-locale/translations/lxqt-config-locale_ca.desktop create mode 100644 lxqt-config-locale/translations/lxqt-config-locale_de.desktop create mode 100644 lxqt-config-locale/translations/lxqt-config-locale_it.desktop create mode 100644 lxqt-config-locale/translations/lxqt-config-locale_ru.desktop create mode 100644 lxqt-config-monitor/fakeTest.sh create mode 100644 lxqt-config-monitor/fastmenu.cpp create mode 100644 lxqt-config-monitor/fastmenu.h create mode 100644 lxqt-config-monitor/fastmenu.ui create mode 100644 lxqt-config-monitor/managesavedsettings.cpp create mode 100644 lxqt-config-monitor/managesavedsettings.h create mode 100644 lxqt-config-monitor/managesavedsettings.ui delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor.ts create mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ar.desktop create mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ca.desktop delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_de.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_el.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_hu.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_it.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ja.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_pl_PL.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_pt.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ru.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.desktop delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.ts delete mode 100644 lxqt-config-monitor/translations/lxqt-config-monitor_zh_TW.ts delete mode 100644 lxqt-config.kdev4 create mode 100644 lxqt-config.png delete mode 100644 src/translations/lxqt-config.ts create mode 100644 src/translations/lxqt-config_ca.desktop delete mode 100644 src/translations/lxqt-config_cs.ts delete mode 100644 src/translations/lxqt-config_cs_CZ.ts delete mode 100644 src/translations/lxqt-config_da_DK.ts delete mode 100644 src/translations/lxqt-config_de.ts delete mode 100644 src/translations/lxqt-config_el.ts delete mode 100644 src/translations/lxqt-config_es.ts delete mode 100644 src/translations/lxqt-config_es_VE.ts delete mode 100644 src/translations/lxqt-config_eu.ts delete mode 100644 src/translations/lxqt-config_fi.ts delete mode 100644 src/translations/lxqt-config_hu.ts delete mode 100644 src/translations/lxqt-config_it.ts delete mode 100644 src/translations/lxqt-config_ja.ts delete mode 100644 src/translations/lxqt-config_pl.ts delete mode 100644 src/translations/lxqt-config_pl_PL.ts delete mode 100644 src/translations/lxqt-config_pt.ts delete mode 100644 src/translations/lxqt-config_pt_BR.ts delete mode 100644 src/translations/lxqt-config_ro_RO.ts delete mode 100644 src/translations/lxqt-config_ru.ts delete mode 100644 src/translations/lxqt-config_ru_RU.desktop delete mode 100644 src/translations/lxqt-config_ru_RU.ts delete mode 100644 src/translations/lxqt-config_th_TH.ts delete mode 100644 src/translations/lxqt-config_uk.ts delete mode 100644 src/translations/lxqt-config_zh_CN.ts delete mode 100644 src/translations/lxqt-config_zh_TW.ts diff --git a/.gitignore b/.gitignore index 378eac2..024946f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ build +lxqt-config.kdev4 +*/translations/lxqt-config diff --git a/AUTHORS b/AUTHORS index 2e08378..a21771a 100644 --- a/AUTHORS +++ b/AUTHORS @@ -4,7 +4,7 @@ Upstream Authors: Copyright: Copyright (c) 2010-2012 Razor team - Copyright (c) 2012-2014 LXQt team + Copyright (c) 2012-2016 LXQt team License: GPL-2 and LGPL-2.1+ The full text of the licenses can be found in the 'LICENSE' file. diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..9268a44 --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,501 @@ + +lxqt-config-0.11.0 / 2016-09-24 +=============================== + + * appearance: Avoid blocking when setting wallpaper + * appearance: Do (not) change wallpaper with theme + * all: Remove XdgIcon & XdgIconLoader usage + * brightness: Add change confirmation dialog + * brightness: Correct indentation + * Update README.md + * Replaces deprecated QStyleOptionViewItemVx + * Add Catalan translations + * Add and Update Arabic Translations for Desktop Files + * lxqt-config-monitor: Correct loadsettings.cpp + * lxqt-config-monitor: Use QGuiApplication + * I18n: Fix Plural String (#94) + * fixed crash when selecting "extended view" while second monitor is off (#91) + * build: Add optional build for subcomponents + * lxqt-config-appearance: Fix a null pointer dereference (#93) + * Add README.md + * lxqt-config-brightness: Remove compiler warning + * lxqt-config-brightness: Add libxcb dependency + * lxqt-config-brightness: Use *_LDFLAGS in target_link_libraries + * lxqt-config-appearance: Use fewer XdgIcon* stuff (#92) + * lxqt-config-appearance: Use the new XdgIconLoader library (#90) + * build: Use external translations (#89) + * ts-files removal (#88) + * Use const references with the foreach iterator + * translations: russian translation update (#85) + * font config: make it possible to write custom fontconfig files (#83) + * view: Use icon/decoration size based on styling + * Set grid size according to font and icon sizes. + * lxqt-config-brightness: Use arrow keys to change settings. + * Desktop file translation to Spanish added. + * lxqt-config-brigness: Set brightness value by command line. + * Removed not needed LICENSE + * lxqt-config-brightness: Increase or decrease brightness using command line. + * Create lxqt-config-locale_it.desktop + * Rename from lxqt-config-brightness-settings to lxqt-config-brightness. + * lxqt-config-brightness-settings: Some files changes their licenses from GPL to LGPL. + * lxqt-config-brightness-settings lxqt translations module added. + * lxqt-config-brightness-settings added. + * fix typo skiping -> skipping + * build: Fix FTBFS by reverting the @a7220cb + * Bum year in AUTHORS + * lxqt-config-brightness-settings has been added. It can change brightness and gamma. It's a X11 tool because libKScreen can not change brightness or gamma yet. + * lxqt-config: Load/store window size on begin/end + * categorizedview: Use correct signature + * lxqt-config: Remove homemade "activation logic" + * Settings are saved in QSettings format instead JSON format. + * Set position widget used bad scale. The real widget size is not set until the widget is shown. + * Remove blue square in GUI position + * Fast options added. + * GUI only lets one primary output. + * Icons aren't installed. + * Check KScreen reply is OK. Changes in interface. + * liblxqt is used to write autostart entry. + * Don't track IDE settings + * KScreen is slow loading screen modes at starting. Wait for modes ready. + * KScreen sometimes changes id of modes. If mode exists and it is OK, settings will be applied. + * Save settings dialog added. + * Initial support for different paths of xkb base.lst in different OSes. + * A couple of bug fixes Check if the memory was allocated after malloc() and realloc() calls Fix typo + * Update german translation + * Fix warning on translation + * Replace slang with a more traditional wording + * build: Use CMAKE_INSTALL_FULL_LIBDIR for RPATH + * Fixes an FTBFS on lxqt-config-locale_ru.desktop + * Update Russian translations + * apearance: Support "System" theme preview + * Italian translation update + * lxqt-config: Add CTRL+Q shortcut for closing + *_hu.ts files updated, *hu_HU.ts files deleted + * Mkdir $XDG_CONFIG_HOME/autostart or ~/.config/autostart, if not exists. + * lxqt-config-appearance: Choose the icon with the matching size + +0.10.0 / 2015-11-02 +=================== + + * Update translations + * Fix license file + * Set saved settings at session start. + * lxqt-config-monitor: Correctly link to liblxqt + * lxqt-config-monitor: GUI for positioning + * lxqt-config-monito: Handle the clone combobox + * lxqt-config-monitor: Fix activation of second screen + * lxqt-config-monitor: Screen rotation + * lxqt-config-monitor: Tabs to spaces + * lxqt-config-monitor: Remove duplicate modes from list + * lxqt-config-monitor: Sort output modes + * lxqt-config-monitor: clean-up, old code removed + * lxqt-config-monitor: fix for reverting to previous configuration + * lxqt-config-monitor: refactoring and improvements + * lxqt-config-monitor: Use a separate combobox for clones + * lxqt-config-monitor: Actually update the config on setting screen position + * lxqt-config-monitor: Display EDID information in an additional tab + * lxqt-config-monitor: Attempt at an even simpler UI (#502) + * lxqt-config-monitor: Replace xrandr by KScreen + * lxqt-config-monitor: Remove backlight/brightness support + * Make the lxqt-config-locale chosen settings work + * Fix a few typos in file “info-for-developers.txt” + * Removed some compile warnings + * OnlyShowIn=LXQt; + * Add an option to automatically turn on numlock after login (implemented in lxqt-session). + * Initial support for locale config, based on formats KCMS. + * Rename LxQt to LXQt everywhere + * Update Greek (el) translation Remove country variant from language code + * lxqt-config: add correct rpath into lxqt-config-input & lxqt-config-appearance to find liblxqt-config-cursor.so installed into private directory + * Drop country-specific Italian translations + * Updated and created italian .desktop files + * Fix mouse settings persistency + * fixes lxde/lxqt #785 AUTHORS changed, list the used licenses LXQt license header added + * Description: Install private .so file into proper directory. Author: Andrew Lee (李健秋) + * Add copyright headers + * Handles CMake policy CMP0063 + * Uses LXQtCompilerSettings CMake module + * Fix cursor settings location + * Updates translations sources + * CMake: Adds Runtime and Devel install COMPONENTs + * Coding style changes + * Removes unneeded include_directories() entries + * Use CMAKE_AUTORCC + * Get rid of qt5_wrap_cpp() MOC variables + * Use CMAKE_AUTOUIC + * Drops LIB_SUFFIX, use GNUInstallDirs + * fix build with qt 5.5 + * Makes it compile in superbuild mode + * Updated german translation. + * Updates the build system to the Targets infrastructure + * polish regarding lxqt-config.desktop + * Remove trailing whitespaces + * Fix naming and links + * Include X-LXQt category in lxqt-config menu + * ApplyDialog renamed to SaveSettings. + * Rename and delete saved settings added. + * Bug always unify monitors fixed. + * lxqt-config-appearance: minimum configurable font size -> 4px + * Fix function name + * Update lxqt-config-input_it.ts + * Hungarian translations update, lxqt-config-monitor.desktop.in fixed + * Testing changes in the buttonbar of LxQt::ConfigDialog. + * Update Russian translation + * lxqt-configure-appearance: Reload icons from the user selected theme + * The last xrandr backend commit. Save settings added. Framebuffer screen size fixed. + * First save settings implementation. + * Update lxqt-config-cursor_it_IT.ts + * Framebuffer size is calculated on xrand backend. + * Update to keep up with our QIconLoader + * Added reset values. + * Remove testing parameters + * Apply page added + * Updated to LxQt::ConfigDialog. + * Added SVG icon for monitor in monitor position. + * Polish translation update + * Reorganizing the code. Support for long names in resolution modes . + * Reorganizing the code. Support for long names in resolution modes. + * Reorganizing the code. Support for long names in resolution modes. + * New modes name bug fixed. + * lxqt-config-appearance/icontheme: String performance enhancements + * Handles previews for inherited icon themes + * file-associations:Return from the busy cursor only after the Ui stuff ended + * Remove an unneeded dependency on KWindowSystem + +0.9.0 / 2015-01-31 +================== + + * Delay loading of application icons in the app-chooser dialog for faster loading. + * Make the user aware of still ongoing work (Application Chooser) + * Bad English fixed + * Capitalize themes' names + * Create lxqt-config-monitor_it_IT.ts + * Update lxqt-config-appearance_it.desktop + * Added german translation for file association dialogue + * Added german translation for input device settings. + * Create lxqt-config-file-associations_it.ts + * Update lxqt-config-appearance_it.ts + * Update lxqt-config-appearance_it_IT.ts + * Added german translation for monitor settings. + * Update Japanese translation + * Fix PT desktop file names and paths. + * Portuguese language update + * Updates translations sources + * Documenting the code: Magnetic attraction without javascript. + * Magnetic attraction procedure has been documented. + * Added confirm dialog before saving. + * Added backlight control and position control button. + * Update lxqt-config-cursor_ja.ts + * - Unify naming for a unique lxqt. No more suffixes + * Write to mimeapps.list rather than defaults.list + * If directory ~/.config/autostart/ doesn't exists, it is created. Save doesn't close window. + * Use the new LxQt::SingleApplication + * Add windows icon + * CMakeLists code reformatting + * CMakeLists maintenance + * Renames .ts files that used _template in their name + * Moves and renames translations files around + * Uses the new translations cmake modules + * - Add option autohint - Fix compatibility with KDE fonts settings + * Activate System Settings items with enter key. Fixes lxde/lxde-qt#355 + * Update Russian translation + * Drop Qt4 support in code + * Clean up CMakeLists.txt and drop Qt 4 support + +0.8.0 / 2014-10-10 +================== + + * Adapts to translations infrastructure + * Option to set single-click as default and sigle-click handling in system settings' main window + * Qt4 and Qt5 compiling fixed + * Compiling in Qt4 fixed. + * Fix #273 - File fonts.conf is created as folder if doesn't exist. + * Make initial panel receive focus + * Adapt to use QtMimeTypes/XdgMimeType + * Restore translations. + * Use our custom TimeoutDialog to replace QProgressDialog and provide a "cancel" button and show better text in the progress bar. + * Little fix for the broken stacked widget. + * Replace the scrolled UI with a left list and a right stacked widget to provide usability. + * Don't use Qt QObject properties in mode changes. Use MonitorWidget class properties instead. + * Fixed: Some ugly code has been changed. + * Fixed: Error reading monitor name. + * Fixed: Restore position of monitor when user cancels settings. + * Fixed: If no relative monitor is selected, then position is disabled. + * Fixed: Disable position options when output is unified at start. Fixed: No cicles in relative positions at start. + * Fixed: Timeout dialog is now modal. + * Fixed: If monitor is turned off, brightness is set to 0. Fixed: Quick options close window on click. + * Read vendor from EDID. + * Fixed: Gamma error when monitor is turned off. + * Gamma control implemented. + * Added brightness control. Some bugs fixed reading xrandr properties. + * Little adjustment to the UI. Delete unused methods. + * Refactor the code, make things more OOP-style. * Slight adjustment to the UI. + * Add code to determine the position of monitors and their relationship on startup. + * Add a new parser for the output of "xrandr --verbose" to get more detailed monitor info, including gamma. + * Add initial translation support and an incomplete zh_TW locale to lxqt-config-monitor. + * Integrate the Makefile of lxqt-config-monitor to build it as part of lxqt-config. + * Move lxqt-config-monitor into a subdirectory. + * Use QWindow::windowHandle()->winId() to replace QWidget::winId() due to a bug of Qt5. + * Added: Save settings in autostart desktop file. + * Added timeout dialog. When settings are applied, a timeout dialog is shown. If user doesn't press "Yes" button, settings are restored. + * Monitor position can be changed. Outputs can be diferent. Position of outputs can be chosen. If system has got two monitors, wizard will be shown to config them. + * Modules for xrandr and GUI. Now new backends can be added. + * Split xrandr settings from UI. + * Readme updated. + * Remove all Glib dependencies. + * Initial commit + * Fix bug #242: lxqt-config-input: Mouse acceleration & sensitivity settings are not saved. + * Fix missing libxcb linking so building with llvm/clang now works. + * Fixes layout on the Fonts Config Ui + * Avoid putting system programs in "LXQt settings" category since they belong to "System settings". + * Add to lxqt-config.menu to avoid duplicated items in "Other Settings" section. This fixed lxde-qt bug #186. + * Rename lxqt-config-cursor to liblxqt-config-cursor since it's a library. + * Show cursors by using raw xcb calls since Qt5 does not support creating QCursor based on native cursor handle. + * Write Qt settings to lxqt.conf instead of the deprecated Trolltech.conf in Qt5. + * Make the code compile with both Qt4 and Qt5. + * Fix keyboard layout settings reading and writting + * Cleanup header style + * Use new LXQt header files. + * Use preferred header style. + * Make sure all enums are handled in switch + * Fix a null dereference + * Remove unnecessary use of alloca, which is not portable. + +0.7.0 / 2014-05-07 +================== + + * Mention lxqt-config-cursor in AUTHORS + * Include some optional components in LXQt settings. + * Remove duplicate COPYING file + * Update COPYING + * Update categories to match proper ones in .desktop files + * String changes LxQt -> LXQt and LXDE-Qt -> LXQt without refactoring classes, namespaces and so on + * removal of old templates in translations + +0.6.99 / 2014-05-01 +=================== + + * Update manpages + * Update AUTHORS + * Add CPack rules for creating tarball + * config-input: Fix a typo + * Preserve the config values in lxqt-session config file. * Support setting key used to switch layouts. + * Add keys used to switch layout to the combox box. + * Add very primitive support for settings keyboard layout via setxkbmap. + * Add a basic skeleton for keyboard layout settings. + * lxqt-config-file-associations: Wording in main window + * Assorted improvements to .desktop files + * Man page improvements + * Correctly save the cursor theme name to lxqt session config file. + * Correctly write current cursor theme name to ~/.icons/default/index.theme. Deprecate the use of XCURSOR_THEME environment variable. + * Support changing double click interval, whell scroll lines, and cursor flash time for Qt programs. Little adjustment of UI. + * Fix incorrect linking to liblxqt-config-cursor. + * Add missing desktop entry file for lxqt-config-input. Some cleanup. + * Rename lxqt-config-mouse to lxqt-config-cursor to reflect what it does. Remove unnecessary desktop entry files and do some makefile cleanup. + * Try to integrate lxqt-config-appearance with lxqt-config-mouse so we can select cursor themes in lxqt-config-appearance, too. + * Total redesign of lxqt-config-input using LxQt::ConfigDialog and integrate lxqt-config-mouse. + * Fix lxqt-config-appearance: write config files on widget destruction properly + * Fix dpi settings and add a timeout to 1.5 sec delay to writing fontconfig file. + * Read/write ~/.config/fontconfig/fonts.conf file for settings antialias, hinting, and dpi. + * Write a fontconfig config file to ~/.config/fonts.conf at the same time. + * Fix bugs in font configurations + * Try to add very basic font configurations + * Add support for toolbar button styles and single click activation for item views + * Add support for Qt style selection to lxqt-config-appearance. + * Removed CMAKE_SOURCE_DIR usage from CMakeLists.txt files + * Fix XDG_MENU_PREFIX and use correct config.menu file. + * Support changing the wallpaper of pcmanfm-qt. + * Fix renaming bugs, replacing lxqt-qt with lxde-qt + * Finish the crazy razor=>lxqt renaming tasks. + * Fix wrong config name. + * Project name added to cmake file + * Fix wrong Exec lines in desktop entry files. + * Fix broken build and rename binaries to lxqt-config-*. + * Add COPYING file for razor-config-mouse since it's GPL'd rather than using LGPL. + * Add COPYING and AUTHORS + * Make razor-config-fileassociations compile with qt 4.6 + * Corrected include line in mimetypeviewer.cpp + * X-RAZOR changed to Razor in desktop files + * Make config-file-associations dialogs appear faster + * config-file-associations: removed placeholder text from search field + * config-file-associations: add search icon to search lineedit + * Removed heading from mimetypeviewer in config-file-associations + * razor-config-file-associations: Set focus correctly when opening applicationchooser + * razor-config-file-associations: remove connect to nonexisting ok-slot + * razor-config-file-associations: clean up qDebug lines + * config-file-associations, clear mimeinfo frames in mimetypeviewer, when no mimetype chosen + * Sorting of applications in config-file-associations + * config-file-associations adapt detection of applications to xdg-mime behavior + * razor-config: load model content after the window appears on screen (we need to provide some user feedback immediately) + * config-file-associations, mimetypeviewer: change tab-order and initial focus + * Added search functionality to config-file-associations, MimetypeViewer + * config-file-associations, mimetypeviewer: Replaced QTreeWidget with QTreeView and new class MimetypeItemModel as model + * config-file-associations: minor changes to mimetypeviewer looks + * config-file-associations: Changed application listwidget back to treewidget, and dropped \handles\ listwidget + * Improved (hopefuly) layout and look of config-fileassociations, application chooser + * config-file-associations: changed treewidget to listwidget in applicationchooser + * razor-config-file-associations, improved layout for mimetype-viewer + * Added application razor-config-file-associations + * fixed appearance icons display + huge filesystem access optimization in this area + * Update fixes for qcategorizedview + * Make config center icon labels not wrap as much + * fixed #488 Display a message if no cursor theme is found + * Fix various build falures + * Add translation support for qtconfig entry + * preliminary manpages primary for razorqt and usefully in venenux + * Suppressed warning "variable «currSize» set but not used" in the razorqt-config/src/qcategorizedview/qcategorizedview.cpp:496:29 + * Suppressed warning "variable «currSize» set but not used" in the razorqt-config/src/qcategorizedview/qcategorizedview.cpp:496:29 + * Translations updated + * Translations updated + * Translations + * Delete bad en_GB translations + * Install translations into correct places + * Update translations + * Enable translations for some components that were missing them + * Minor fixes + * Translations updated + * Removed line num from TS files. + * razor-config: wrap text + * Make it possible to build modules separately + * Translations + * Deleted old translation methods. + * New translation infrastructure + * Translation for razor-config-appearance + * Fix for Issue #290 Fails to build on BSD + * Updated ts.src files + * removed useles window title + * fixed #336: remove the "razor" prefix from razor-config dialog + * config app for notifications + * Remove RazorNotification classes (no license/copyright) + * add module names to includes and tidy up the coding style + * Update razorqt-config/razor-config-mouse/thememodel.h + * Update razorqt-config/razor-config-mouse/selectwnd.h + * Update razorqt-config/razor-config-mouse/previewwidget.h + * Update razorqt-config/razor-config-mouse/itemdelegate.h + * Update razorqt-config/razor-config-mouse/crtheme.h + * fix coding style errors + * fix coding style errors + * fix coding style errors + * fix coding style errors + * fix coding style errors + * fix coding style errors + * fix coding style errors + * fix coding style errors + * Ts.src files updated. + * add module name to include + * add module names to includes + * add module names to includes and fix style errors + * fix coding style errors + * add module names to includes + * add module names to includes + * add module names to includes + * add module names to includes + * Language name zh_CN.GB2312 braked cmake process. + * Translations updated + * Environments should be "Razor", not "RAZOR" Thanks Alec Moskvin + * Renames razor-config-notificationd window title + * Small fixes in the razor-config-appearance Thanks PICCORO Lenz McKAY. still need some fixeds: iconthemeconfig.h:38: error: expected class-name before ‘{’ token and also the moc ui_mainwindow.h must be renamed too in iconthemeconfig.h + * Fix header + * Small fixes in the razor-config-appearance + * razor-config GUI improvement + * razor-config based on XDG Desktop Menu Specification 2 + * fixed #261 Fix missing icons in razor config center + * default arguments for notification client lib + * quick compilation fix + * razor-config based on XDG Desktop Menu Specification + * Composition on by default + * GUI for change razor theme. + * Fixing cmake error + * fixed wrongly set license for new files. It's LGPL2+ + * much better razor-config layout for icons + * config center: align icons into grid; do not show self; OnlyShowIn check + * reworked config stuff. No more special config registering. All 'Settings' desktop files are displayed in razor-config (grouped) + * Typos in code. Thanks Aaron Lewis. * In razor-runner , providers item: title() was typed as tile() * For RazorSettings class , settingsChanged() was typed as settigsChanged() + * Minor modifications and code cleanup + * Minor ui modifications. Moving default icon to notificationd instead of widget notification + * Setting min & max position according to QDesktopWidget + * Changing notification ui. Adding default notitifaction icon. Embedding icons in notification + * Properly install config Correct desktop file + * Proper default values + * Proper id number assigned to notifications Properly remove notification by quint32 id + * Proper configuration + * Rename file to match class name + * Remove custom settings, use razor ones + * Adding razor-config-notificationd + * tweaks for qtconfig installation + * qtconfig for razor-config + * Transifex desktop: sr_BA.ts should be a local + * Transifex desktop: local translations + * Transifex desktop: cmake files + * Transifex desktop: Translations pulled + * Transifex desktop: Reomove translations from desktop.in + * Transifex desktop: desktop->desktop.in + * Update Tradidtional Chinese Translations + * Add Traditional Chinese Translations + * Translations update + * Added support for the online translation service. www.transifex.net + * RazorApplication class implemented; all modules ported to this class + * fixed #76: razor-config should respect mouse behaviour + * Serbian translation files + * Serbian translations (2 variants) + * Greek translation by iosifidis + * Added danish translations + * Russian translation + * fix #169: italian translation + * Add function to use alternative icons + * Relicense + * Convert Appearance dialog to use RazorConfigDialog + * Fix gmail.ru -> gmail.com + * Czech translations (cs_CZ) Desktop files + * fixed #138: system settings icons + * SVK translation finalized + * Initial german [de] translation + * Close Issue #120 + * License audit + * Add Chinese(simplified) translation files. + * License audit + * HU translation by Kristóf Kiszel + * Initial spanish translation + * Add Slovak (sk) translation + * Removes one empty line from .desktop file + * Adds newline to the end of .desktop files + * Czech translations (cs_CZ) + * Fix a few typos + * XdgDesktopFile is implicitly shared + * huge refactoring of the libraries build organization + * config mouse: close button as in the other tools + * Razor-config-appearance: incorrect translation path + * config: better item layouting in razor-config + * config appearance: make icons fully visible + * Razor-config: Fixes for razor-config-appearance + * Razor-config: New razor-config-appearance + * Razor-config: New razor-config-appearance + * display icon theme fixes + * forgotten debugs + * config icons: show progress when it searches for themes + * icon theme config - initial revision + * Razor-config-mouse: Added check for zlib in CMakeLists.txt + * moc warnings cleanup + * GPL->LGPL where I'm the author + * config: remove toolbars + * Polish translation part X + * Fix: Desktop Menu Specification category must be X-RAZOR. + * Russian translations + * unify razor-config look + * Added razor-application.menu + * razor-config can open items by Enter key too + * fixed desktop files + * fix donfig desktp files install for rpm + * razor-config-mousetheme -> razor-config-mouse rename + * do not use direct lib name for X11 stuff + * issue #37 - Config-mousetheme show not all themes, my KDE show 6 themes but razor only 1. (mHidden attribute fixed) + * homepage updated + auto replacement script + * adding missing libraries to fedora build + * show only in RAZOR; close/undo changes actions + * small refactoring in mouse config + * fixed #35: razor-config-mousetheme saves are not persistent + * final fix for build error #34 + * potential fix for #34 + * mouse theme configurator + * fix for #33: razorqt doesn't build + * config tools are registered in config center; desktop file for CC + * initial revision of "config tool". Very simple but functional. diff --git a/CMakeLists.txt b/CMakeLists.txt index 883d584..7c893be 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,12 @@ project(lxqt-config) set(LXQT_CONFIG_PROJECT "${PROJECT_NAME}") option(UPDATE_TRANSLATIONS "Update source translation translations/*.ts files" OFF) +option(WITH_INPUT "Build the 'lxqt-config-input'" ON) +option(WITH_FILE_ASSOCIATIONS "Build the 'lxqt-config-file-associations'" ON) +option(WITH_APPEARANCE "Build the 'lxqt-config-appearance'" ON) +option(WITH_MONITOR "Build the 'lxqt-config-monitor'" ON) +option(WITH_BRIGHTNESS "Build the 'lxqt-config-brightness'" ON) +option(WITH_LOCALE "Build the 'lxqt-config-locale'" ON) include(GNUInstallDirs) @@ -25,12 +31,27 @@ include(LXQtCompilerSettings NO_POLICY_SCOPE) include(LXQtTranslate) add_subdirectory(src) -add_subdirectory(liblxqt-config-cursor) -add_subdirectory(lxqt-config-input) -add_subdirectory(lxqt-config-file-associations) -add_subdirectory(lxqt-config-appearance) -add_subdirectory(lxqt-config-monitor) -add_subdirectory(lxqt-config-locale) +if (WITH_INPUT OR WITH_APPEARANCE) + add_subdirectory(liblxqt-config-cursor) +endif() +if (WITH_INPUT) + add_subdirectory(lxqt-config-input) +endif() +if (WITH_FILE_ASSOCIATIONS) + add_subdirectory(lxqt-config-file-associations) +endif() +if (WITH_APPEARANCE) + add_subdirectory(lxqt-config-appearance) +endif() +if (WITH_MONITOR) + add_subdirectory(lxqt-config-monitor) +endif() +if (WITH_BRIGHTNESS) + add_subdirectory(lxqt-config-brightness) +endif() +if (WITH_LOCALE) + add_subdirectory(lxqt-config-locale) +endif() # building tarball with CPack ------------------------------------------------- include(InstallRequiredSystemLibraries) diff --git a/README.md b/README.md new file mode 100644 index 0000000..c5b0314 --- /dev/null +++ b/README.md @@ -0,0 +1,77 @@ +# lxqt-config + +## Overview + +This repository is providing several tools involved in the configuration of both LXQt and the underlying operating system. + +On the one hand it is featuring several GUI tools to configure topics like general appearance, pointer devices or screen resolutions. +On the other hand there's a GUI "Configuration Center" which summarizes all those configuration tools as well as counterparts of other LXQt components or third-party applications. + +### Configuration GUI tools + +#### LXQt Appearance Configuration + +Appearance of LXQt, that is topics like icon and LXQt theme or fonts. + +![LXQt Appearance Configuration (lxqt-config-appearance)](lxqt-config-appearance.png) + +Binary `lxqt-config-appearance`. + +#### Brightness + +Brightness settings of output devices. + +Technically colors are adjusted to simulate varying brightness if the system LXQt is running on doesn't allow for adjusting the brightness itself. + +Binary `lxqt-config-brightness`. + +#### File Associations + +Assigns MIME types to applications used to handle them. Not too user-friendly so far, see e. g. discussion in https://github.com/lxde/lxqt/issues/433. + +Binary `lxqt-config-file-associations`. + +#### Keyboard and Mouse + +Configures hardware of pointer devices. Settings like repeat delay and interval of keyboards or acceleration of pointer devices. + +Binary `lxqt-config-input`. + +#### Locale + +Locale used within LXQt sessions. Basically this GUI sets the well-known environment variables like `LANG` or `LC_*`. The settings apply to the session as a whole, that is to applications running within LXQt sessions but not belonging to LXQt, too. + +Binary `lxqt-config-locale`. + +#### Monitor Settings + +Adjusts screen resolutions, positioning of screens and the likes. + +Binary `lxqt-config-monitor`. + +### Configuration Center + +The "Configuration Center" (binary `lxqt-config`) is summarizing and providing various configuration GUIs. + +![Configuration Center (lxqt-config)](lxqt-config.png) + +First of all these are the ones belonging to repository lxqt-config described [above](https://github.com/pmattern/lxqt-config#configuration-gui-tools). Next, it is hosting counterparts of several other LXQt components like "Desktop Notifications" of [lxqt-notificationd](https://github.com/lxde/lxqt-notificationd), "Shortcut Keys" of [lxqt-globalkeyshortcuts](https://github.com/lxde/lxqt-globalkeyshortcuts) or the tools provided by [lxqt-admin](https://github.com/lxde/lxqt-admin). Third-party applications can include their configuration tools in "Configuration Center", too. This applies e. g. to "Connman UI Setup" of [cmst](https://github.com/andrew-bibb/cmst) or "SDDM Configuration" of [sddm-config-editor](https://github.com/hagabaka/sddm-config-editor). + +## Installation + +### Compiling source code + +Runtime dependencies are Xcursor, qtsvg, KScreen and [liblxqt](https://github.com/lxde/liblxqt). +Additional build dependencies are CMake and optionally Git to pull latest VCS checkouts. The localization files were outsourced to repository [lxqt-l10n](https://github.com/lxde/lxqt-l10n) so the corresponding dependencies are needed, too. Please refer to this repository's `README.md` for further information. + +Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems, depending on the way library paths are dealt with on 64bit systems variables like `CMAKE_INSTALL_LIBDIR` may have to be set as well. + +To build run `make`, to install `make install` which accepts variable `DESTDIR` as usual. + +### Binary packages + +The library is provided by all major Linux distributions like Arch Linux, Debian (as of Debian stretch only), Fedora and openSUSE. Just use your package manager to search for string `lxqt-config`. + +## Usage + +Both the various configuration tools and the Configuration Center can be launched from the panel's main menu - Preferences - LXQt settings. Obviously the former can be launched from the latter, too. diff --git a/debian/.gitignore b/debian/.gitignore index 5837773..e1181e5 100644 --- a/debian/.gitignore +++ b/debian/.gitignore @@ -3,6 +3,7 @@ /*.debhelper /*.log /*.substvars +/debhelper-build-stamp /files /lxqt-config/ diff --git a/debian/changelog b/debian/changelog index ef1b93f..e6d02e5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,31 @@ +lxqt-config (0.11.0-2) unstable; urgency=medium + + * Chery-picking new upstream release 0.11.0 + * Synced debian foo with experimental + * Bumped Standards to 3.9.8, no changes needed + * Bumped compat to 10 + * Removed --parallel from rules, compat 10 standard + * Bumped build dependency debhelper (>= 10) + * Bumped build dependency libqtxdg-dev (>= 2.0.0) + * Added build-depenedency libqt5xdgiconloader-dev (>= 2.0.0) + * Bumped build dependency liblxqt-dev (>= 0.11.0) + * Added build dependency libqt5svg5-dev + * Added Recommends lxqt-config-l10n + * Added README.md to docs + * Exported LC_ALL=C.UTF-8 - define language settings for reproducible + builds + * Fixed .gititgnore, added build-stamp + * Fixed VCS fields, use https and plain /git/ + * Fixed copyright Format + * Added missed new files to copyright + * Bumped years in copyright + * Fixed lintian-overrides + * Added DEB_BUILD_MAINT_OPTIONS = hardening=+all + * Added translation control + * Added DCMAKE_BUILD_TYPE=RelWithDebInfo + + -- Alf Gaida Tue, 18 Oct 2016 02:28:02 +0200 + lxqt-config (0.10.0-3) unstable; urgency=medium * Remove dbg package in favor of dbgsym. diff --git a/debian/compat b/debian/compat index ec63514..f599e28 100644 --- a/debian/compat +++ b/debian/compat @@ -1 +1 @@ -9 +10 diff --git a/debian/control b/debian/control index 4f55c88..30698f4 100644 --- a/debian/control +++ b/debian/control @@ -6,14 +6,15 @@ Uploaders: Alf Gaida , Yukiharu YABUKI Section: x11 Priority: optional -Build-Depends: debhelper (>= 9), +Build-Depends: debhelper (>= 10), cmake (>= 3.0.2), libkf5screen-dev, libkf5windowsystem-dev, - liblxqt0-dev (>= 0.10.0), + liblxqt0-dev (>= 0.11.0), libqt5svg5-dev, libqt5x11extras5-dev, - libqt5xdg-dev, + libqt5xdg-dev (>= 2.0.0), + libqt5xdgiconloader-dev (>= 2.0.0), libx11-dev, libxcursor-dev, libxfixes-dev, @@ -22,15 +23,16 @@ Build-Depends: debhelper (>= 9), qttools5-dev, qttools5-dev-tools, zlib1g-dev -Standards-Version: 3.9.6 -Vcs-Browser: http://anonscm.debian.org/cgit/pkg-lxqt/lxqt-config.git/?h=debian/sid -Vcs-Git: git://anonscm.debian.org/pkg-lxqt/lxqt-config.git -b debian/sid +Standards-Version: 3.9.8 +Vcs-Browser: https://anonscm.debian.org/cgit/pkg-lxqt/lxqt-config.git/?h=debian/sid +Vcs-Git: https://anonscm.debian.org/git/pkg-lxqt/lxqt-config.git -b debian/sid Homepage: https://github.com/lxde/lxqt-config Package: lxqt-config Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} +Recommends: lxqt-config-l10n Description: LXQt system settings center The LXQt system settings center . diff --git a/debian/copyright b/debian/copyright index 272560c..21b21b7 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,9 +1,9 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: lxqt-config Source: https://github.com/lxde/lxqt-config Files: * -Copyright: 2012-2015 LXQt team +Copyright: 2012-2016 LXQt team 2010-2012 Razor team 2013 Christian Surlykke 2014 Hong Jen Yee (PCMan) @@ -72,8 +72,19 @@ Copyright: 2014 P.L. Lucas 2014 Hong Jen Yee (PCMan) License: GPL-2.0+ +Files: lxqt-config-brightness/brightnesssettings.* + lxqt-config-brightness/main.cpp + lxqt-config-brightness/monitorinfo.* +Copyright: 2016 P.L. Lucas +License: LGPL-2.1+ + +Files: lxqt-config-brightness/xrandrbrightness.* +Copyright: 2015 Kai Uwe Broulik + 2010 Lukas Tinkl +License: LGPL-2.0+ + Files: debian/* -Copyright: 2014-2015 Alf Gaida +Copyright: 2014-2016 Alf Gaida 2015 Andrew Lee (李健秋) License: LGPL-2.1+ diff --git a/debian/docs b/debian/docs index 62deb04..0b6e0f3 100644 --- a/debian/docs +++ b/debian/docs @@ -1 +1,2 @@ AUTHORS +README.md diff --git a/debian/lintian-overrides b/debian/lintian-overrides index 0125433..4622eb4 100644 --- a/debian/lintian-overrides +++ b/debian/lintian-overrides @@ -1,5 +1,5 @@ # there will be no man-pages in a foreseeable future -lxqt-config: binary-without-manpage usr/bin/lxqt-config-appearance +lxqt-config: binary-without-manpage usr/bin/lxqt-config-brightness lxqt-config: binary-without-manpage usr/bin/lxqt-config-file-associations lxqt-config: binary-without-manpage usr/bin/lxqt-config-input lxqt-config: binary-without-manpage usr/bin/lxqt-config-locale @@ -7,6 +7,7 @@ lxqt-config: binary-without-manpage usr/bin/lxqt-config-monitor # not a bug, LXQt has not reached free-desktop yet lxqt-config: desktop-entry-invalid-category LXQt usr/share/applications/lxqt-config-appearance.desktop +lxqt-config: desktop-entry-invalid-category LXQt usr/share/applications/lxqt-config-brightness.desktop lxqt-config: desktop-entry-invalid-category LXQt usr/share/applications/lxqt-config-file-associations.desktop lxqt-config: desktop-entry-invalid-category LXQt usr/share/applications/lxqt-config-input.desktop lxqt-config: desktop-entry-invalid-category LXQt usr/share/applications/lxqt-config-locale.desktop diff --git a/debian/lxqt-config.manpages b/debian/lxqt-config.manpages deleted file mode 100644 index c9a4be0..0000000 --- a/debian/lxqt-config.manpages +++ /dev/null @@ -1 +0,0 @@ -man/lxqt-config.1 diff --git a/debian/manpages b/debian/manpages new file mode 100644 index 0000000..704952e --- /dev/null +++ b/debian/manpages @@ -0,0 +1,3 @@ +lxqt-config-appearance/man/lxqt-config-appearance.1 +man/lxqt-config.1 +liblxqt-config-cursor/man/lxqt-config-mouse.1 diff --git a/debian/rules b/debian/rules index 6cc048c..6df5045 100755 --- a/debian/rules +++ b/debian/rules @@ -1,11 +1,18 @@ #!/usr/bin/make -f -#export DH_VERBOSE=1 +# export DH_VERBOSE=1 +export LC_ALL=C.UTF-8 export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed +export DEB_BUILD_MAINT_OPTIONS = hardening=+all %: - dh ${@} --buildsystem cmake \ - --parallel + dh ${@} --buildsystem cmake + +override_dh_auto_configure: + dh_auto_configure -- \ + -DPULL_TRANSLATIONS=OFF\ + -DUPDATE_TRANSLATIONS=OFF\ + -DCMAKE_BUILD_TYPE=RelWithDebInfo override_dh_makeshlibs: dh_makeshlibs -Xlxqt-config diff --git a/debian/upstream/signing-key.asc b/debian/upstream/signing-key.asc index 05cd1df..4936633 100644 --- a/debian/upstream/signing-key.asc +++ b/debian/upstream/signing-key.asc @@ -1,63 +1,50 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -Version: GnuPG v2.0.22 (GNU/Linux) -mQINBFJevCYBEACx+Hvy+Vsuf+V5jeLUnzjAmHoy8DfTeGWr3ts30IapLHrfi0+U -WpzNnISO77yTr4VNboVZH+GHM/rnPfieODfB4ZW6CZLlInMSKUXcgQsEqXpyBZhA -Ib/SPy2bOfHly1uRJes0uRDsH5+v/hD74sByfnjQlrvI68O6wvGZmDFMNNPVO8+/ -OWBSBNkBuVrrZOMSPsLwQGJ4UtUQ4whburaPJG4VZJc5DLbzJGbEuACc0IAEYJS3 -7AfXVXn4j4Gc9F3o1xTUnbOBnwGPquWwUIm3FM7Ec2OdkvMt3EwvnkMAfeVrq3iE -FDD/KZTxdL0BZH3QD8gB7Jm4v4f3Nkobg6JCvCbcH3wBdZW4mASbwWzfRaDC2zHb -ErTglD7PpShLKZZ0pr9okWZEGw4Ku3q8ALi1JXK/ePTmsBlvkVskOJ3Nnd0avgH4 -+Q/vZoKfH8EhNY745rI+8CE9iv6V9XiSUt4CKEWAENt4A8hq6U2vV+jZv3B6AgD7 -ZjiI59yD4YuYubu8rCnNizTgh1voVw3ietknn/x2H5yH8fByWZ5uL87C0ky/uma6 -ZGbiiAtM4kdkyDMrfRV5nlEG9EKAGPVu5mjeSCrfkETwZ9OFPz1AuDye4ZEXrrcC -iRQ7RX6/GtW18aHER0kzGnfwx5KJzkDrRBY8A2PdXLBcrsN4WpK9EX01PQARAQAB -tCNKZXJvbWUgTGVjbGFuY2hlIDxqZXJvbWVAbGVjbGFuLmNoPokCPwQTAQIAKQUC -Ul68JgIbAwUJAeEzgAcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEDfgrx/a -SPNzSHIP/1ewXcC0TFBcvDD7MrIP7anyNfiWfW7cxkR8GSamkg6HTa6Ndyr1FFjJ -OoDFUP37jWhu59CsHxs2D0zRWJktezfvElscRgqbHcdpIznqsGdI8hXCZafhBGVb -sdAB2LRawcXGxnXt7XajPcSVwLWRE62caBqohznU2iWvI780WNjEbZoA0LhZwaFF -UUPJm8ea9v0IkZVKUyg9WONZ1U7FEG9SaEiSpI8kJdx1fvCwZVDV/NRO5GqnJaho -P1LCne4YdwS6pt1/fRgk32IHxxZfHlLzLHxb6v1JmIg72x28qCmGyK9oFBDbbnYu -6Aq8XbHogOrD5vJM2Pfm2IhV0+JHOjfQbddv8tsAH1M+LI+tToXmg5st1AU3wnTn -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 -=fF8P +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 +=h7ww -----END PGP PUBLIC KEY BLOCK----- diff --git a/debian/watch b/debian/watch index c941195..d8bd77c 100644 --- a/debian/watch +++ b/debian/watch @@ -1,3 +1,3 @@ -version=3 +version=4 opts="pgpsigurlmangle=s/$/.asc/" \ - https://github.com/lxde/lxqt-config/releases .*/([\d\.]+).tar.gz + https://github.com/lxde/lxqt-config/releases .*/lxqt-config-([\d\.]+).tar.xz diff --git a/liblxqt-config-cursor/CMakeLists.txt b/liblxqt-config-cursor/CMakeLists.txt index c09b93a..51883f8 100644 --- a/liblxqt-config-cursor/CMakeLists.txt +++ b/liblxqt-config-cursor/CMakeLists.txt @@ -52,6 +52,16 @@ lxqt_translate_ts(QM_FILES ${lxqt-config-cursor_UIS} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/liblxqt-config-cursor" ) lxqt_app_translation_loader(lxqt-config-cursor_QM_LOADER ${PROJECT_NAME}) diff --git a/liblxqt-config-cursor/itemdelegate.cpp b/liblxqt-config-cursor/itemdelegate.cpp index f80232e..9f9df14 100644 --- a/liblxqt-config-cursor/itemdelegate.cpp +++ b/liblxqt-config-cursor/itemdelegate.cpp @@ -106,7 +106,7 @@ void ItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, QColor textcol = option.palette.color(foregroundRole(option, index)); // Draw the background - QStyleOptionViewItemV4 opt = option; + QStyleOptionViewItem opt = option; QStyle *style = opt.widget ? opt.widget->style() : QApplication::style(); style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, opt.widget); diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor.ts deleted file mode 100644 index d779815..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor.ts +++ /dev/null @@ -1,68 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_ar.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_ar.ts deleted file mode 100644 index 66801ce..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_ar.ts +++ /dev/null @@ -1,77 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - اعداد شكل فأرة سطح ريزر - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - اختر سكل المؤشِّر الذي تريد استخدامه (مرر المؤشِّر متخطيَّاً لمعاينته). -<b>يجب إعادة تشغيل جلسة سطح ريزر بعد هذا التَّغيير</b> - - - - &Install New Theme... - تث&بيت واجهةٍ شكليَّةٍ جديدةٍ... - - - &Set Theme - ت^عيين الواجهة الشَّكليَّة - - - - &Remove Theme - إ&زالة الواجهة الشَّكليَّة - - - &Close - إ&غلاق - - - - XCurTheme error - خطأٌ في الواجهة الشَّكليَّة للمؤشر الرسوميّ - - - - You can't remove active theme! - ﻻ يمكنك إزالة واجهةٍ مفعَّلةٍ - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - الاسم - - - - Description - الوصف - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_cs.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_cs.ts deleted file mode 100644 index b5ba3f4..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_cs.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Nastavení motivu myši - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Vyberte motiv ukazovátka, jejž chcete používat (přejeďte myší nad náhledem kvůli vyzkoušení ukazovátka). <b>Sezení LXQt je potřeba po této změně spustit znovu</b>: - - - - &Install New Theme... - Na&instalovat nový motiv... - - - &Set Theme - &Nastavit motiv - - - - &Remove Theme - &Odstranit motiv - - - &Close - &Zavřít - - - - XCurTheme error - Chyba XCurTheme - - - - You can't remove active theme! - Nemůžete odstranit právě nastavený motiv - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Název - - - - Description - Popis - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_cs_CZ.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_cs_CZ.ts deleted file mode 100644 index 0810ca2..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_cs_CZ.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Nastavení motivu myši - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Vyberte motiv ukazovátka, jejž chcete používat (přejeďte myší nad náhledem kvůli vyzkoušení ukazovátka). <b>Sezení LXQt je potřeba po této změně spustit znovu</b>: - - - - &Install New Theme... - Na&instalovat nový motiv... - - - &Set Theme - &Nastavit motiv - - - - &Remove Theme - &Odstranit motiv - - - &Close - &Zavřít - - - - XCurTheme error - Chyba XCurTheme - - - - You can't remove active theme! - Nemůžete odstranit právě nastavený motiv - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Název - - - - Description - Popis - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_da_DK.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_da_DK.ts deleted file mode 100644 index 2b42a95..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_da_DK.ts +++ /dev/null @@ -1,77 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt Musemarkør Tema Indstillinger - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Vælg det markør tema, du vil bruge (forhåndsvisning for at teste markør). -<b> LXQt session skal genstartes efter denne ændring </ b>: - - - - &Install New Theme... - &Installer Nyt Tema... - - - &Set Theme - &Sæt Tema - - - - &Remove Theme - &Fjern Tema - - - &Close - &Afslut - - - - XCurTheme error - XCurTheme fejl - - - - You can't remove active theme! - Det aktive tema kan ikke fjernes! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Navn - - - - Description - Beskrivelse - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_de.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_de.ts deleted file mode 100644 index 25a4d49..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_de.ts +++ /dev/null @@ -1,69 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt Mauszeigerdesign Konfiguration - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Wähle das gewünschte Mauszeigerdesign aus (zum Test Maus über Vorschau bewegen) -<b>Die LXQt-Sitzung muss nach dieser Veränderung neu gestartet werden</b>: - - - - &Install New Theme... - &Neues Design installieren... - - - - &Remove Theme - D&esign entfernen - - - - XCurTheme error - XcurTheme Fehler - - - - You can't remove active theme! - Das aktive Design kann nicht entfernt werden! - - - - WarningLabel - - - Form - Dialogfenster - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - LXQt konnte kein Mauszeigerdesign finden. Stattdessen wird das Default-Mauszeigerdesign von X11 verwendet. LXQt suchte in folgenden Verzeichnissen: - - - - Show... - Anzeigen... - - - - XCursorThemeModel - - - Name - Name - - - - Description - Beschreibung - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_el.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_el.ts deleted file mode 100644 index 31fb306..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_el.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Διαμόρφωση θέματος ποντικιού LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Επιλέξτε το θέμα του δρομέα που θέλετε να χρησιμοποιήσετε (κινηθείτε επάνω για προεπισκόπηση). <b>Χρειάζεται επανεκκίνηση της συνεδρίας LXQt μετά την αλλαγή</b>: - - - - &Install New Theme... - &Εγκατάσταση νέου θέματος... - - - &Set Theme - Ε&πιλογή θέματος - - - - &Remove Theme - &Αφαίρεση θέματος - - - &Close - &Κλείσιμο - - - - XCurTheme error - Σφάλμα του θέματος δρομέα X - - - - You can't remove active theme! - Δεν μπορείτε να αφαιρέσετε το ενεργό θέμα! - - - - WarningLabel - - - Form - Παράθυρο διαλόγου - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - Το LXQt δεν μπόρεσε να βρει κάποιο θέμα δρομέα. Θα χρησιμοποιηθεί ο εξ ορισμού δρομέας X11. Το LXQt έψαξε στους παρακάτω καταλόγους: - - - - Show... - Εμφάνιση... - - - - XCursorThemeModel - - - Name - Όνομα - - - - Description - Περιγραφή - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_eo.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_eo.ts deleted file mode 100644 index 4ca3d1b..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_eo.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Agordoj de etosoj de muso de LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Elektu la etoson de kursoro, kiun vi volas uzi (ŝveba antaŭrigardo por testi kursoron). <b>Seanco de LXQt postulas restartigon post ol ĉi tiu ŝanĝo</b>: - - - - &Install New Theme... - &Instali novan etoson... - - - &Set Theme - Agordi eto&son - - - - &Remove Theme - Fo&rigi etoson - - - &Close - &Fermi - - - - XCurTheme error - Eraro de XCurTheme - - - - You can't remove active theme! - Vi ne povas forigi aktivan etoson! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nomo - - - - Description - Priskribo - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_es.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_es.ts deleted file mode 100644 index 5cf9e72..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_es.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Configuración de LXQt para el Tema del Ratón - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Seleccione el tema del cursor que desea utilizar (pase el cursor para una vista previa). <b>LXQt necesita reiniciar la sesión después de este cambio </ b>: - - - - &Install New Theme... - &Instalar Nuevo Tema... - - - &Set Theme - &Establecer Tema - - - - &Remove Theme - &Quitar Tema - - - &Close - &Cerrar - - - - XCurTheme error - Error en XCurTheme - - - - You can't remove active theme! - ¡No puedes quitar el tema activo! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nombre - - - - Description - Descripción - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_es_VE.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_es_VE.ts deleted file mode 100644 index a9361e2..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_es_VE.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Configuracion de tema de raton de LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Selecciona el cursor del raton que tu desees usar (colocalo encima para ver una previsualizacion) <b>La sesion de LXQt necesita reinicializarse despues de un cambio</b> - - - - &Install New Theme... - &Instalar nuevo tema - - - &Set Theme - A&Signar el tema - - - - &Remove Theme - &Remover el tema - - - &Close - &Cerrar - - - - XCurTheme error - XCurTheme error - - - - You can't remove active theme! - No puedes remover el tema activo! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nombre - - - - Description - Descripcion - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_eu.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_eu.ts deleted file mode 100644 index 425889b..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_eu.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt saguaren gaiaren konfigurazioa - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Hautatu erabili nahi duzun kurtsore-gaia (nabarmendu aurrebista kurtsorea probatzeko). <b>LXQt saioa berrabiarazi behar da aldaketa honen ondoren</b>: - - - - &Install New Theme... - &Instalatu gai berria... - - - &Set Theme - &Ezarri gaia - - - - &Remove Theme - &Kendu gaia - - - &Close - &Itxi - - - - XCurTheme error - XCurTheme errorea - - - - You can't remove active theme! - Ezin duzu gai aktiboa kendu! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Izena - - - - Description - Deskribapena - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_fi.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_fi.ts deleted file mode 100644 index 207b1c1..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_fi.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQtin hiiriteeman asetukset - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Valitse haluamasi osoitinteema (käytä esikatselua testataksesi osoitinteemaa). <b>LXQt-istunto tulee käynnistää uudelleen tämän muutoksen jälkeen</b>: - - - - &Install New Theme... - &Asenna uusi teema... - - - &Set Theme - Aseta &teema - - - - &Remove Theme - &Poista teema - - - &Close - &Sulje - - - - XCurTheme error - XCurTheme-virhe - - - - You can't remove active theme! - Käytössä olevaa teemaa ei voi poistaa! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nimi - - - - Description - Kuvaus - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_fr_FR.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_fr_FR.ts deleted file mode 100644 index f1b23e8..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_fr_FR.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - &Close - &Fermer - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_hu.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_hu.ts deleted file mode 100644 index 65a3397..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_hu.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt egértéma - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - A kívánt kurzortéma (előzetesen látható). <b>Érvénybeléptetéshez az LXQt munkamenet újraindíttandó</b>: - - - - &Install New Theme... - &Új téma telepítése... - - - - &Remove Theme - Téma kiny&írása - - - &Close - &Bezárás - - - - XCurTheme error - Témahiba - - - - You can't remove active theme! - Az aktuális téma eltávolíthatatlan! - - - - WarningLabel - - - Form - Ürlap - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - Az LXQt nem lelt kurzor témát, az alapértelmezett lesz használva. Ezekben a mappákban kereste: - - - - Show... - Mutat... - - - - XCursorThemeModel - - - Name - Név - - - - Description - Leírás - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_hu_HU.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_hu_HU.ts deleted file mode 100644 index 83f60ea..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_hu_HU.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt egértéma - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - A kívánt kurzortéma (előzetesen látható). <b>Érvénybeléptetéshez az LXQt munkamenet újraindíttandó</b>: - - - - &Install New Theme... - &Új téma telepítése... - - - - &Remove Theme - Téma kiny&írása - - - &Close - &Bezárás - - - - XCurTheme error - Témahiba - - - - You can't remove active theme! - Az aktuális téma eltávolíthatatlan! - - - - WarningLabel - - - Form - Űrlap - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - Az LXQt nem lelt kurzor témát, az alapértelmezett lesz használva. Ezekben a mappákban kereste: - - - - Show... - Mutat... - - - - XCursorThemeModel - - - Name - Név - - - - Description - Leírás - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_it.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_it.ts deleted file mode 100644 index 54e4b19..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_it.ts +++ /dev/null @@ -1,78 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Configurazione del aspetto del cursore - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - hover seems not working, and restart seems not necessary to take effect - Seleziona il tema del cursore che vuoi utilizzare - - - - &Install New Theme... - & to remove in source - Installa un nuovo tema... - - - &Set Theme - &Imposta il tema - - - - &Remove Theme - Rimuovi il tema - - - &Close - &Chiudi - - - - XCurTheme error - Errore tema X-cursore - - - - You can't remove active theme! - Non puoi rimuovere il tema attivo! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - LXQt non ha trovato nessun tema per i cursori in queste directories: (Verrà usato il tema di default di X11): - - - - Show... - Mostra... - - - - XCursorThemeModel - - - Name - Nome - - - - Description - Descrizione - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_ja.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_ja.ts deleted file mode 100644 index 4d3e4df..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_ja.ts +++ /dev/null @@ -1,68 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQtマウステーマの設定 - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - 使いたいカーソルテーマを選択 (プレビューをテストカーソルに合わせます). <b>LXQtセッションはこの変更後に再起動が必要です</b>: - - - - &Install New Theme... - 新しいテーマのインストール...(&I) - - - - &Remove Theme - テーマの削除(&R) - - - - XCurTheme error - XCurTheme エラー - - - - You can't remove active theme! - アクティブなテーマは削除できません! - - - - WarningLabel - - - Form - フォーム - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - カーソルテーマを見つけられませんでした。代わりに、デフォルトのX11カーソルテーマが使われます。LXQtは以下のディレクトリーを検索しました: - - - - Show... - 表示 - - - - XCursorThemeModel - - - Name - 名称 - - - - Description - 説明 - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_lt.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_lt.ts deleted file mode 100644 index 2fb22ee..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_lt.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - &Close - &Užverti - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_nl.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_nl.ts deleted file mode 100644 index a6fd2e4..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_nl.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - &Close - &Sluiten - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_pl_PL.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_pl_PL.ts deleted file mode 100644 index 11fa272..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_pl_PL.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Wygląd kursora - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Wybierz motyw kursora (najedz kursorem na podgląd by przetestować). <b>Wymagane jest ponowne uruchomienie sesji</b>: - - - - &Install New Theme... - &Zainstaluj Nowy Motyw... - - - &Set Theme - &Wybierz Motyw - - - - &Remove Theme - &Usuń Motyw - - - &Close - &Zamknij - - - - XCurTheme error - Błąd XCurTheme - - - - You can't remove active theme! - Nie możesz usunąć aktywnego motywu! - - - - WarningLabel - - - Form - Uwaga - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - Nie znaleziono żadnego motywu kursora. Zostanie użyty domyślny motyw kursora X11. LXQt wyszukiwało w następujących katalogach: - - - - Show... - Pokaż... - - - - XCursorThemeModel - - - Name - Nazwa - - - - Description - Opis - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_pt.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_pt.ts deleted file mode 100644 index 85d357e..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_pt.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Definições do tema de cursor do LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Escolha o tema de cursor a utilizar (passe com o rato para testar). <b>Tem que reiniciar o LXQt a sessão após a alteração</b>: - - - - &Install New Theme... - &Instalar novo tema... - - - &Set Theme - &Definir tema - - - - &Remove Theme - &Remover tema - - - &Close - Fe&char - - - - XCurTheme error - Erro XCurTheme - - - - You can't remove active theme! - Não pode remover o tema ativo! - - - - WarningLabel - - - Form - Formulário - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - O LXQt não encontrou quaisquer temas de cursor. Será utilizado o tema de cursor X11. O LXQt procurou nestes diretórios: - - - - Show... - Mostrar... - - - - XCursorThemeModel - - - Name - Nome - - - - Description - Descrição - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_pt_BR.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_pt_BR.ts deleted file mode 100644 index fab8d98..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_pt_BR.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Configuração Do Tema Do Mouse - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Selecione o tema do cursor que você deseja usar (pairar visualização para testar o cursor). <b>A sessão LXQt precisa reiniciar após esta mudança</b>: - - - - &Install New Theme... - &Instalar Novo Tema... - - - &Set Theme - &Definir Tema - - - - &Remove Theme - &Remover Tema - - - &Close - &Fechar - - - - XCurTheme error - Erro XCurTheme - - - - You can't remove active theme! - Você não pode remover o tema ativo! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nome - - - - Description - Descrição - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_ro_RO.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_ro_RO.ts deleted file mode 100644 index c53ff6f..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_ro_RO.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Configurare temă maus LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Selectați tema de cursor pe care doriți să o utilizați (treceți peste cu mausul pentru a testa cursorul)</b>Sesiunea LXQt necesită o repornire după această modificare</b>: - - - - &Install New Theme... - &Instalează temă nouă... - - - &Set Theme - &Setează tema - - - - &Remove Theme - Elimină tema - - - &Close - În&chide - - - - XCurTheme error - Eroare XCurTheme - - - - You can't remove active theme! - Nu se poate elimina tema activă! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Nume - - - - Description - Descriere - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_ru.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_ru.ts deleted file mode 100644 index 78b14db..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_ru.ts +++ /dev/null @@ -1,68 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Настройка темы курсора LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Выберите тему курсора, которую вы хотите использовать (наведите курсор на область предварительного просмотра для проверки). <b>Сессию LXQt нужно перезапустить после изменений</b>: - - - - &Install New Theme... - &Установить новую тему… - - - - &Remove Theme - &Удалить тему - - - - XCurTheme error - Ошибка XCurTheme - - - - You can't remove active theme! - Невозможно удалить активную тему! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - LXQt не смог найти какую-нибудь тему курсора. Будет использована тема X11 по-умолчанию. LXQt искал в следующих папках: - - - - Show... - Показать… - - - - XCursorThemeModel - - - Name - Имя - - - - Description - Описание - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_ru_RU.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_ru_RU.ts deleted file mode 100644 index 2c0d5f8..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_ru_RU.ts +++ /dev/null @@ -1,68 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Настройка темы курсора LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Выберите тему курсора, которую вы хотите использовать (наведите курсор на область предварительного просмотра для проверки). <b>Сессию LXQt нужно перезапустить после изменений</b>: - - - - &Install New Theme... - &Установить новую тему… - - - - &Remove Theme - &Удалить тему - - - - XCurTheme error - Ошибка XCurTheme - - - - You can't remove active theme! - Невозможно удалить активную тему! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - LXQt не смог найти какую-нибудь тему курсора. Будет использована тема X11 по-умолчанию. LXQt искал в следующих папках: - - - - Show... - Показать… - - - - XCursorThemeModel - - - Name - Имя - - - - Description - Описание - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_sl.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_sl.ts deleted file mode 100644 index 0d6efb6..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_sl.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - &Close - &Zapri - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_th_TH.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_th_TH.ts deleted file mode 100644 index 0a68e80..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_th_TH.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - การตั้งค่าชุดตกแต่งเมาส์ LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - เลือกชุดตกแต่งเคอร์เซอร์ที่คุณต้องการจะใช้ (วางเคอร์เซอร์ไว้บนตัวอย่างเพื่อทดสอบมัน). <b>วาระงาน LXQt จำเป็นต้องเริ่มใหม่หลังการเปลี่ยนแปลงนี้</b>: - - - - &Install New Theme... - ติดตั้งชุด&ตกแต่ง... - - - &Set Theme - &ใช้เป็นชุดตกแต่ง - - - - &Remove Theme - &ลบชุดตกแต่ง - - - &Close - ปิ&ด - - - - XCurTheme error - XCurTheme ขัดข้อง - - - - You can't remove active theme! - คุณไม่สามารถลบชุดตกแต่งที่กำลังใช้งานอยู่ได้ - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - ชื่อ - - - - Description - รายละเอียด - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_tr.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_tr.ts deleted file mode 100644 index 6687906..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_tr.ts +++ /dev/null @@ -1,72 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - - - - - &Install New Theme... - - - - - &Remove Theme - - - - &Close - &Kapat - - - - XCurTheme error - - - - - You can't remove active theme! - - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - - - - - Description - - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_uk.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_uk.ts deleted file mode 100644 index 68b1f70..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_uk.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - Налаштування тем миші LXQt - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - Оберіть тему курсорів, яку Ви бажаєте використовувати (наведіть на попереднй перегляд для перевірки курсору). <b>Сеанс LXQt потребує перезапуску щоб ці зміни подіяли</b>: - - - - &Install New Theme... - &Встановити нову тему... - - - &Set Theme - &Призначити тему - - - - &Remove Theme - Вилу&чити тему - - - &Close - &Закрити - - - - XCurTheme error - Збій XCurTheme - - - - You can't remove active theme! - Неможливо вилучити активну тему! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - Ім'я - - - - Description - Опис - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_CN.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_CN.ts deleted file mode 100644 index 238f409..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_CN.ts +++ /dev/null @@ -1,76 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt 鼠标主题配置 - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - 选择要使用的游标主题(鼠标放到项目上可以预览)。<b>修改后需要重启LXQt 会话。</b>: - - - - &Install New Theme... - 安装新主题(&I)... - - - &Set Theme - 设置主题(&S) - - - - &Remove Theme - 删除主题(&R) - - - &Close - &关闭 - - - - XCurTheme error - XCurTheme 错误 - - - - You can't remove active theme! - 无法删除使用中的主题! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - 名称 - - - - Description - 描述 - - - diff --git a/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_TW.ts b/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_TW.ts deleted file mode 100644 index b0fc09f..0000000 --- a/liblxqt-config-cursor/translations/lxqt-config-cursor_zh_TW.ts +++ /dev/null @@ -1,77 +0,0 @@ - - - - - SelectWnd - - - LXQt Mouse Theme Configuration - LXQt滑鼠游標主題設定 - - - - Select the cursor theme you want to use (hover preview to test cursor). <b>LXQt session needs restart after this change</b>: - 選擇您喜歡的游標主題 (檢視來回移動來測試游標) 。 -<b>套用改變需要重新啟動LXQt會話</b>: - - - - &Install New Theme... - 安裝新主題...(&I) - - - &Set Theme - 設為主題(&S) - - - - &Remove Theme - 移除主題(&R) - - - &Close - 關閉(&C) - - - - XCurTheme error - XCurTheme錯誤 - - - - You can't remove active theme! - 您無法移除正在套用的主題! - - - - WarningLabel - - - Form - - - - - LXQt could not find any cursor theme. The default X11 cursor theme will be used instead. LXQt looked in the following directories: - - - - - Show... - - - - - XCursorThemeModel - - - Name - 名稱 - - - - Description - 描述 - - - diff --git a/liblxqt-config-cursor/xcr/xcrthemefx.cpp b/liblxqt-config-cursor/xcr/xcrthemefx.cpp index 6850320..4ffcc49 100644 --- a/liblxqt-config-cursor/xcr/xcrthemefx.cpp +++ b/liblxqt-config-cursor/xcr/xcrthemefx.cpp @@ -265,7 +265,7 @@ bool XCursorThemeFX::parseCursorFXTheme (const QString &aFileName) { return false; } if (curType != 1) { - qDebug() << "skiping 'press' cursor; shape no" << curShape << "named" << curShapeName[curShape]; + qDebug() << "skipping 'press' cursor; shape no" << curShape << "named" << curShapeName[curShape]; continue; // we need only 'normal' cursors } @@ -273,14 +273,14 @@ bool XCursorThemeFX::parseCursorFXTheme (const QString &aFileName) { const char **nlst = findCursorByFXId((int)curShape); if (!nlst) { // unknown cursor type, skip it - qDebug() << "CursorFX: skiping cursor shape:" << curShapeName[curShape]; - qWarning() << "CursorFX: skiping cursor shape:" << curShapeName[curShape]; + qDebug() << "CursorFX: skipping cursor shape:" << curShapeName[curShape]; + qWarning() << "CursorFX: skipping cursor shape:" << curShapeName[curShape]; continue; } if (shapesSeen.contains(curShape&0xff)) { // unknown cursor type, skip it - qDebug() << "CursorFX: skiping duplicate cursor shape:" << curShapeName[curShape]; - qWarning() << "CursorFX: skiping duplicate cursor shape:" << curShapeName[curShape]; + qDebug() << "CursorFX: skipping duplicate cursor shape:" << curShapeName[curShape]; + qWarning() << "CursorFX: skipping duplicate cursor shape:" << curShapeName[curShape]; continue; } shapesSeen << (curShape&0xff); diff --git a/lxqt-config-appearance.png b/lxqt-config-appearance.png new file mode 100644 index 0000000000000000000000000000000000000000..6d77584f8bc4801a3a818eca1fd162b562eb9e3d GIT binary patch literal 29640 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\n" "\n" "\n" + " conf.d\n" " \n" " \n" " " << (mAntialias ? "true" : "false") << "\n" diff --git a/lxqt-config-appearance/iconthemeconfig.cpp b/lxqt-config-appearance/iconthemeconfig.cpp index 509d486..ebcfd7a 100644 --- a/lxqt-config-appearance/iconthemeconfig.cpp +++ b/lxqt-config-appearance/iconthemeconfig.cpp @@ -27,17 +27,10 @@ #include "iconthemeconfig.h" -#include -#include #include #include #include #include -#include - -#include - -using namespace QtXdg; IconThemeConfig::IconThemeConfig(LXQt::Settings* settings, QWidget* parent): QWidget(parent), @@ -49,16 +42,13 @@ IconThemeConfig::IconThemeConfig(LXQt::Settings* settings, QWidget* parent): initControls(); connect(iconThemeList, SIGNAL(itemClicked(QTreeWidgetItem*,int)), this, SLOT(iconThemeSelected(QTreeWidgetItem*,int))); - - connect(LXQt::Settings::globalSettings(), SIGNAL(settingsChanged()), - this, SLOT(update())); } void IconThemeConfig::initIconsThemes() { QStringList processed; - QStringList baseDirs = QIcon::themeSearchPaths(); + const QStringList baseDirs = QIcon::themeSearchPaths(); static const QStringList iconNames = QStringList() << QStringLiteral("document-open") << QStringLiteral("document-new") @@ -69,14 +59,14 @@ void IconThemeConfig::initIconsThemes() iconThemeList->setColumnCount(iconNamesN + 2); QList items; - foreach (QString baseDirName, baseDirs) + foreach (const QString &baseDirName, baseDirs) { QDir baseDir(baseDirName); if (!baseDir.exists()) continue; - QFileInfoList dirs = baseDir.entryInfoList(QDir::AllDirs | QDir::NoDotAndDotDot, QDir::Name); - foreach (QFileInfo dir, dirs) + const QFileInfoList dirs = baseDir.entryInfoList(QDir::AllDirs | QDir::NoDotAndDotDot, QDir::Name); + foreach (const QFileInfo &dir, dirs) { if (!processed.contains(dir.canonicalFilePath())) { @@ -114,7 +104,6 @@ void IconThemeConfig::initIconsThemes() } } } - QIconLoader::instance()->updateSystemTheme(); iconThemeList->insertTopLevelItems(0, items); for (int i=0; iheader()->count()-1; ++i) @@ -126,8 +115,7 @@ void IconThemeConfig::initIconsThemes() void IconThemeConfig::initControls() { - QString currentTheme = LXQt::Settings::globalSettings()->value("icon_theme").toString(); - XdgIcon::setThemeName(currentTheme); + QString currentTheme = QIcon::themeName(); QTreeWidgetItemIterator it(iconThemeList); while (*it) { if ((*it)->data(0, Qt::UserRole).toString() == currentTheme) @@ -153,12 +141,6 @@ void IconThemeConfig::iconThemeSelected(QTreeWidgetItem *item, int column) QString theme = item->data(0, Qt::UserRole).toString(); if (!theme.isEmpty()) { - XdgIcon::setThemeName(theme); - - // An hack to ensure that this widget also re loads it's own icons - // from the selected icon theme. - QIconLoader::instance()->setThemeName(QString()); - m_settings->setValue("icon_theme", theme); m_settings->sync(); } diff --git a/lxqt-config-appearance/iconthemeinfo.cpp b/lxqt-config-appearance/iconthemeinfo.cpp index b30480e..b7042c9 100644 --- a/lxqt-config-appearance/iconthemeinfo.cpp +++ b/lxqt-config-appearance/iconthemeinfo.cpp @@ -31,70 +31,9 @@ * END_COMMON_COPYRIGHT_HEADER */ #include "iconthemeinfo.h" -#include - -#include - -#include #define PREVIEW_ICON_SIZE 22 -using namespace QtXdg; - -/* - * This algorithm is defined by the freedesktop spec: - * http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html - */ -static bool directoryMatchesSize(const QIconDirInfo &dir, int iconsize) -{ - if (dir.type == QIconDirInfo::Fixed) { - return dir.size == iconsize; - - } else if (dir.type == QIconDirInfo::Scalable) { - return dir.size <= dir.maxSize && - iconsize >= dir.minSize; - - } else if (dir.type == QIconDirInfo::Threshold) { - return iconsize >= dir.size - dir.threshold && - iconsize <= dir.size + dir.threshold; - } - - Q_ASSERT(1); // Not a valid value - return false; -} - - -/* - * This algorithm is defined by the freedesktop spec: - * http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html - */ -static int directorySizeDistance(const QIconDirInfo &dir, int iconsize) -{ - if (dir.type == QIconDirInfo::Fixed) { - return qAbs(dir.size - iconsize); - - } else if (dir.type == QIconDirInfo::Scalable) { - if (iconsize < dir.minSize) - return dir.minSize - iconsize; - else if (iconsize > dir.maxSize) - return iconsize - dir.maxSize; - else - return 0; - - } else if (dir.type == QIconDirInfo::Threshold) { - if (iconsize < dir.size - dir.threshold) - return dir.minSize - iconsize; - else if (iconsize > dir.size + dir.threshold) - return iconsize - dir.maxSize; - else return 0; - } - - Q_ASSERT(1); // Not a valid value - return INT_MAX; -} - - - IconThemeInfo::IconThemeInfo(const QDir &dir): mValid(false), mHidden(false) @@ -127,40 +66,15 @@ void IconThemeInfo::load(const QString &fileName) QVector IconThemeInfo::icons(const QStringList &iconNames) const { QVector icons; + QString current_theme = QIcon::themeName(); - const QString currentThemeName = QIconLoader::instance()->themeName(); - QIconLoader::instance()->setThemeName(mName); - foreach (const QString &i, iconNames) { - QThemeIconInfo info = QIconLoader::instance()->loadIcon(i); - if (!info.entries.isEmpty()) { - const int numEntries = info.entries.size(); - - // Search for exact matches first - bool found = false; - for (int i = 0; i < numEntries; ++i) { - QIconLoaderEngineEntry *entry = info.entries.at(i); - icons.append(QIcon(entry->filename)); - found = true; - break; - } - if (!found) { // No exact match. Search for an approximation - // Find the minimum distance icon - int minimalSize = INT_MAX; - QIconLoaderEngineEntry *closestMatch = 0; - for (int i = 0; i < numEntries; ++i) { - QIconLoaderEngineEntry *entry = info.entries.at(i); - int distance = directorySizeDistance(entry->dir, PREVIEW_ICON_SIZE); - if (distance < minimalSize) { - minimalSize = distance; - closestMatch = entry; - } - } - icons.append(QIcon(closestMatch->filename)); - } - } else { - icons.append(QIcon()); - } + QIcon::setThemeName(mName); + for (const auto & i : iconNames) + { + icons.push_back({QIcon::fromTheme(i).pixmap({PREVIEW_ICON_SIZE, PREVIEW_ICON_SIZE})}); } - QIconLoader::instance()->setThemeName(currentThemeName); + + QIcon::setThemeName(current_theme); + return icons; } diff --git a/lxqt-config-appearance/lxqtthemeconfig.cpp b/lxqt-config-appearance/lxqtthemeconfig.cpp index ffda79d..8b91893 100644 --- a/lxqt-config-appearance/lxqtthemeconfig.cpp +++ b/lxqt-config-appearance/lxqtthemeconfig.cpp @@ -28,8 +28,45 @@ #include "lxqtthemeconfig.h" #include "ui_lxqtthemeconfig.h" #include -#include +#include #include +#include +#include + +/*! + * \brief Simple delegate to draw system background color below decoration/icon + * (needed by System theme, which uses widget background and therefore provides semi-transparent preview) + */ +class ThemeDecorator : public QItemDelegate +{ +public: + using QItemDelegate::QItemDelegate; +protected: + virtual void drawDecoration(QPainter * painter, const QStyleOptionViewItem & option, const QRect & rect, const QPixmap & pixmap) const override + { + //Note: can't use QItemDelegate::drawDecoration, because it is ignoring pixmap, + //if the icon is valid (and that is set in paint()) + if (pixmap.isNull() || !rect.isValid()) + return; + + QPoint p = QStyle::alignedRect(option.direction, option.decorationAlignment, pixmap.size(), rect).topLeft(); + painter->fillRect(QRect{p, pixmap.size()}, QApplication::palette().color(QPalette::Window)); + painter->drawPixmap(p, pixmap); + } +}; + +/*! + * \brief Check if currently configured wallpaper (read from pcmanfm-qt's + * settings) is the same as \param themeWallpaper + */ +static bool isWallpaperChanged(const QString & themeWallpaper) +{ + static const QString config_path = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + + QStringLiteral("/pcmanfm-qt/lxqt/settings.conf"); + static const QString wallpaper_key = QStringLiteral("Desktop/Wallpaper"); + const QString current_wallpaper = QSettings{config_path, QSettings::IniFormat}.value(wallpaper_key).toString(); + return themeWallpaper != current_wallpaper; +} LXQtThemeConfig::LXQtThemeConfig(LXQt::Settings *settings, QWidget *parent) : QWidget(parent), @@ -37,9 +74,17 @@ LXQtThemeConfig::LXQtThemeConfig(LXQt::Settings *settings, QWidget *parent) : mSettings(settings) { ui->setupUi(this); + { + QScopedPointer p{ui->lxqtThemeList->itemDelegate()}; + ui->lxqtThemeList->setItemDelegate(new ThemeDecorator{this}); + } connect(ui->lxqtThemeList, SIGNAL(itemClicked(QTreeWidgetItem*,int)), this, SLOT(lxqtThemeSelected(QTreeWidgetItem*,int))); + connect(ui->wallpaperOverride, &QAbstractButton::toggled, [this] (bool checked) { + if (checked) + lxqtThemeSelected(ui->lxqtThemeList->currentItem(), 0/*not used*/); + }); QList themes = LXQt::LXQtTheme::allThemes(); @@ -91,19 +136,17 @@ void LXQtThemeConfig::lxqtThemeSelected(QTreeWidgetItem* item, int column) if (!item) return; + LXQt::LXQtTheme currentTheme{mSettings->value("theme").toString()}; QVariant themeName = item->data(0, Qt::UserRole); mSettings->setValue("theme", themeName); - LXQt::LXQtTheme theme(themeName.toString()); if(theme.isValid()) { QString wallpaper = theme.desktopBackground(); - if(!wallpaper.isEmpty()) { + if(!wallpaper.isEmpty() && (ui->wallpaperOverride->isChecked() || !isWallpaperChanged(currentTheme.desktopBackground()))) { // call pcmanfm-qt to update wallpaper - QProcess process; QStringList args; args << "--set-wallpaper" << wallpaper; - process.start("pcmanfm-qt", args, QIODevice::NotOpen); - process.waitForFinished(); + QProcess::startDetached("pcmanfm-qt", args); } } } diff --git a/lxqt-config-appearance/lxqtthemeconfig.ui b/lxqt-config-appearance/lxqtthemeconfig.ui index ba102fb..d3c63a3 100644 --- a/lxqt-config-appearance/lxqtthemeconfig.ui +++ b/lxqt-config-appearance/lxqtthemeconfig.ui @@ -51,6 +51,13 @@ + + + + Override user-defined wallpaper + + + diff --git a/lxqt-config-appearance/main.cpp b/lxqt-config-appearance/main.cpp index 7b42609..f0623d1 100644 --- a/lxqt-config-appearance/main.cpp +++ b/lxqt-config-appearance/main.cpp @@ -26,9 +26,7 @@ * END_COMMON_COPYRIGHT_HEADER */ #include -#include -#include #include #include #include "iconthemeconfig.h" diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance.ts b/lxqt-config-appearance/translations/lxqt-config-appearance.ts deleted file mode 100644 index 015ec70..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - - - - - Icons Theme - - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - - - - - Widget Style - - - - - Icons Theme - - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ar.desktop b/lxqt-config-appearance/translations/lxqt-config-appearance_ar.desktop index c2f28a2..cf108d8 100644 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ar.desktop +++ b/lxqt-config-appearance/translations/lxqt-config-appearance_ar.desktop @@ -1,4 +1,4 @@ # Translations -Comment[ar]=تهيئة مظهر سطح المكتب ريزر -GenericName[ar]=تهيئة مظهر ريزر -Name[ar]=تهيئة مظهر ريزر +Comment[ar]=إعدادات مظهر لكسكيوت +GenericName[ar]=إعدادات المظهر +Name[ar]=المظهر diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ar.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ar.ts deleted file mode 100644 index d425ad4..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ar.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - تهيئة مظهر ريزر - - - - Icons Theme - نماذج اﻷيقونات - - - - LXQtThemeConfig - - - LXQt Theme - واجهة ريزر المخصَّصة - - - - QObject - - - LXQt Appearance Configuration - تهيئة مظهر ريزر - - - - Widget Style - - - - - Icons Theme - نماذج اﻷيقونات - - - - LXQt Theme - واجهة ريزر المخصَّصة - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ca.desktop b/lxqt-config-appearance/translations/lxqt-config-appearance_ca.desktop new file mode 100644 index 0000000..506793c --- /dev/null +++ b/lxqt-config-appearance/translations/lxqt-config-appearance_ca.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ca]=Aparença +GenericName[ca]=Ajusts de l'aparença +Comment[ca]=Ajusts de l'aparença per a LXQt diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_cs.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_cs.ts deleted file mode 100644 index 865bbab..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_cs.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Nastavení vzhledu - - - - Icons Theme - Téma ikon - - - - LXQtThemeConfig - - - LXQt Theme - Motiv LXQt - - - - QObject - - - LXQt Appearance Configuration - Nastavení vzhledu - - - - Widget Style - - - - - Icons Theme - Téma ikon - - - - LXQt Theme - Motiv LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_cs_CZ.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_cs_CZ.ts deleted file mode 100644 index 6132069..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_cs_CZ.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Nastavení vzhledu - - - - Icons Theme - Téma ikon - - - - LXQtThemeConfig - - - LXQt Theme - Motiv LXQt - - - - QObject - - - LXQt Appearance Configuration - Nastavení vzhledu - - - - Widget Style - - - - - Icons Theme - Téma ikon - - - - LXQt Theme - Motiv LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_da.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_da.ts deleted file mode 100644 index 3b8bd23..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_da.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt Indstillinger for Udseende - - - - Icons Theme - Ikontema - - - - LXQtThemeConfig - - - LXQt Theme - LXQt Tema - - - - QObject - - - LXQt Appearance Configuration - LXQt Indstillinger for Udseende - - - - Widget Style - - - - - Icons Theme - Ikontema - - - - LXQt Theme - LXQt Tema - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_da_DK.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_da_DK.ts deleted file mode 100644 index c347fe3..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_da_DK.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt Indstillinger for Udseende - - - - Icons Theme - Ikontema - - - - LXQtThemeConfig - - - LXQt Theme - LXQt Tema - - - - QObject - - - LXQt Appearance Configuration - LXQt Indstillinger for Udseende - - - - Widget Style - - - - - Icons Theme - Ikontema - - - - LXQt Theme - LXQt Tema - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_de.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_de.ts deleted file mode 100644 index 724356a..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_de.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Schriftart - - - - Default font for user interface - Standardschriftart der Bedienoberfläche - - - - Font name: - Name: - - - - Style: - Stil: - - - - Point size: - Punktgröße: - - - - Normal - Normal - - - - Bold - Fett - - - - Italic - Kursiv - - - - Bold Italic - Fett und kursiv - - - - The following settings only affect newly started applications - Folgende Einstellungen wirken nur auf neu gestartete Programme - - - - Use antialias fonts - Kantenglättung bei Schriften verwenden - - - - Font hinting style: - Hinting-Stil: - - - - - None - Keine - - - - Slight - Leicht - - - - Medium - Mittel - - - - Full - Vollständig - - - - Font hinting - Schrift-Hinting - - - - Resolution (DPI): - Auflösung (DPI): - - - - Autohint - Autohint - - - - Subpixel antialiasing: - Subpixel-Anordnung: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt Erscheinungsbild-Konfiguration - - - - Icons Theme - Symboldesign - - - - LXQtThemeConfig - - - LXQt Theme - LXQt-Design - - - - QObject - - - LXQt Appearance Configuration - LXQt Erscheinungsbild-Konfiguration - - - - Widget Style - Stil der Bedienelemente - - - - Icons Theme - Symboldesign - - - - LXQt Theme - LXQt-Design - - - - Font - Schriftart - - - - Cursor - Mauszeiger - - - - StyleConfig - - - Widget Style - Stil der Bedienelemente - - - - Toolbar button style: - Werkzeugleistenstil: - - - - Only display the icon - Nur Symbol - - - - Only display the text - Nur Text - - - - The text appears beside the icon - Text neben dem Symbol - - - - The text appears under the icon - Text unterhalb des Symbols - - - - Default - Default - - - - Activate item on single click - Einfacher Klick aktiviert Elemente - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_el.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_el.ts deleted file mode 100644 index d3f092f..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_el.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Γραμματοσειρά - - - - Default font for user interface - Εξ ορισμού γραμματοσειρά του περιβάλλοντος χρήστη - - - - Font name: - Όνομα γραμματοσειράς: - - - - Style: - Ύφος: - - - - Point size: - Μέγεθος σημείου: - - - - Normal - Κανονικό - - - - Bold - Έντονα - - - - Italic - Πλάγια - - - - Bold Italic - Έντονα πλάγια - - - - The following settings only affect newly started applications - Οι παρακάτω ρυθμίσεις επηρεάζουν μόνο τις εφεξής εφαρμογές - - - - Use antialias fonts - Χρήση της εξομάλυνσης γραμματοσειρών - - - - Font hinting style: - Ύφος υπόδειξης των γραμματοσειρών: - - - - - None - Κανένα - - - - Slight - Ελαφρύ - - - - Medium - Μεσαίο - - - - Full - Πλήρες - - - - Font hinting - Υπόδειξη γραμματοσειρών - - - - Resolution (DPI): - Ανάλυση (DPI): - - - - Autohint - Αυτόματη υπόδειξη (autohint) - - - - Subpixel antialiasing: - Εξομάλυνση υποεικονοστοιχείων: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - Διαμόρφωση της εμφάνισης του LXQt - - - - Icons Theme - Θέμα εικονιδίων - - - - LXQtThemeConfig - - - LXQt Theme - Θέμα του LXQt - - - - QObject - - - LXQt Appearance Configuration - Διαμόρφωση της εμφάνισης του LXQt - - - - Widget Style - Στιλ συστατικού - - - - Icons Theme - Θέμα εικονιδίων - - - - LXQt Theme - Θέμα LXQt - - - - Font - Γραμματοσειρά - - - - Cursor - Δρομέας - - - - StyleConfig - - - Widget Style - Στιλ συστατικού - - - - Toolbar button style: - Ύφος των κουμπιών της γραμμής εργαλείων: - - - - Only display the icon - Εμφάνιση μόνον του εικονιδίου - - - - Only display the text - Εμφάνιση μόνον του κειμένου - - - - The text appears beside the icon - Το κείμενο εμφανίζεται δίπλα από το εικονίδιο - - - - The text appears under the icon - Το κείμενο εμφανίζεται κάτω από το εικονίδιο - - - - Default - Εξ ορισμού - - - - Activate item on single click - Ενεργοποίηση των αντικειμένων με μονό κλικ - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_eo.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_eo.ts deleted file mode 100644 index 7098e54..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_eo.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Agordoj de apero de LXQto - - - - Icons Theme - Etoso de piktogramoj - - - - LXQtThemeConfig - - - LXQt Theme - Etoso de LXQt - - - - QObject - - - LXQt Appearance Configuration - Agordoj de apero de LXQto - - - - Widget Style - - - - - Icons Theme - Etoso de piktogramoj - - - - LXQt Theme - Etoso de LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_es.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_es.ts deleted file mode 100644 index bbae1b3..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_es.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Configuración de apariencia de LXQt - - - - Icons Theme - Tema de iconos - - - - LXQtThemeConfig - - - LXQt Theme - Tema de LXQt - - - - QObject - - - LXQt Appearance Configuration - Configuración de apariencia de LXQt - - - - Widget Style - - - - - Icons Theme - Tema de iconos - - - - LXQt Theme - Tema de LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_es_VE.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_es_VE.ts deleted file mode 100644 index 88d31fc..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_es_VE.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Configuración de apariencia de LXQt - - - - Icons Theme - Tema de iconos - - - - LXQtThemeConfig - - - LXQt Theme - Tema LXQt - - - - QObject - - - LXQt Appearance Configuration - Configuración de apariencia de LXQt - - - - Widget Style - - - - - Icons Theme - Tema de iconos - - - - LXQt Theme - Tema LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_eu.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_eu.ts deleted file mode 100644 index 4eb61c8..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_eu.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt itxuraren konfigurazioa - - - - Icons Theme - Ikonoen gaia - - - - LXQtThemeConfig - - - LXQt Theme - LXQt gaia - - - - QObject - - - LXQt Appearance Configuration - LXQt itxuraren konfigurazioa - - - - Widget Style - - - - - Icons Theme - Ikonoen gaia - - - - LXQt Theme - LXQt gaia - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_fi.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_fi.ts deleted file mode 100644 index 98a2440..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_fi.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQtin ulkoasun hallinta - - - - Icons Theme - Kuvaketeema - - - - LXQtThemeConfig - - - LXQt Theme - LXQt-teema - - - - QObject - - - LXQt Appearance Configuration - LXQtin ulkoasun hallinta - - - - Widget Style - - - - - Icons Theme - Kuvaketeema - - - - LXQt Theme - LXQt-teema - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_fr_FR.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_fr_FR.ts deleted file mode 100644 index 9f5b669..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_fr_FR.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Configuration de l'apparence de LXQt - - - - Icons Theme - Thème d'icones - - - - LXQtThemeConfig - - - LXQt Theme - Thème de LXQt - - - - QObject - - - LXQt Appearance Configuration - Configuration de l'apparence de LXQt - - - - Widget Style - - - - - Icons Theme - Thème d'icones - - - - LXQt Theme - Thème de LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_hu.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_hu.ts deleted file mode 100644 index 21d6d06..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_hu.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Betűtípus - - - - Default font for user interface - Felhasználói felület alapértelmezett betűtípusa - - - - Font name: - Betűnév: - - - - Style: - Stílus: - - - - Point size: - Pontméret: - - - - Normal - Normál - - - - Bold - Kövér - - - - Italic - Dőlt - - - - Bold Italic - Dőlt kövér - - - - The following settings only affect newly started applications - Ezek a stílusok csak új indítású alkalmazásoknál láthatók - - - - Use antialias fonts - Simított betűk - - - - Font hinting style: - Betű mankó stílus: - - - - - None - Nincs - - - - Slight - Enyhe - - - - Medium - Közepes - - - - Full - Teljes - - - - Font hinting - Betű mankó - - - - Resolution (DPI): - Felbontás (DPI): - - - - Autohint - Mankó - - - - Subpixel antialiasing: - Alképpont simítás: - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Alkalmazásmenü - - - - Icons Theme - Ikontéma - - - - LXQtThemeConfig - - - LXQt Theme - LXQt téma - - - - QObject - - - LXQt Appearance Configuration - LXQt megjelenésbeállító - - - - Widget Style - Bigyótéma - - - - Icons Theme - Ikontéma - - - - LXQt Theme - LXQt téma - - - - Font - Betű - - - - Cursor - Kurzor - - - - StyleConfig - - - Widget Style - Bigyótéma - - - - Toolbar button style: - Eszközsáv stílus: - - - - Only display the icon - Csak ikon - - - - Only display the text - Csak szöveg - - - - The text appears beside the icon - Szöveg az ikon mellett - - - - The text appears under the icon - Szöveg az ikon alatt - - - - Default - Alapértelmezett - - - - Activate item on single click - Egykattintásos mód - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_hu_HU.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_hu_HU.ts deleted file mode 100644 index 36349ad..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_hu_HU.ts +++ /dev/null @@ -1,236 +0,0 @@ - - - - - FontsConfig - - - Font - Betűtípus - - - - Default font for user interface - Felhasználói felület alapértelmezett betűtípusa - - - - Font name: - Betűnév: - - - - Style: - Stílus: - - - - Point size: - Pontméret: - - - - Normal - Normál - - - - Bold - Kövér - - - - Italic - Dőlt - - - - Bold Italic - Dőlt kövér - - - - The following settings only affect newly started applications - Ezek a stílusok csak új indítású alkalmazásoknál láthatók - - - - Use antialias fonts - Simított betűk - - - - Font hinting style: - Betű mankó stílus: - - - - - None - Nincs - - - - Slight - Enyhe - - - - Medium - Közepes - - - - Full - Teljes - - - - Font hinting - Betű mankó - - - - Resolution (DPI): - Felbontás (DPI): - - - - Autohint - Mankó - - - - Subpixel antialiasing: - Alképpont simítás: - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt megjelenésbeállító - - - - Icons Theme - Ikontémák - - - - LXQtThemeConfig - - - LXQt Theme - LXQt téma - - - - MainWindow - - LXQt Appearance Configuration - LXQt megjelenésbeállító - - - Icons Theme - Ikontémák - - - - QObject - - - LXQt Appearance Configuration - LXQt megjelenésbeállító - - - - Widget Style - Bigyótéma - - - - Icons Theme - Ikontémák - - - - LXQt Theme - LXQT téma - - - - Font - Betű - - - - Cursor - Kurzor - - - - StyleConfig - - - Widget Style - Bigyótéma - - - - Toolbar button style: - Eszközsáv stílus: - - - - Only display the icon - Csak ikon - - - - Only display the text - Csak szöveg - - - - The text appears beside the icon - Szöveg az ikon mellett - - - - The text appears under the icon - Szöveg az ikon alatt - - - - Default - Alapértelmezett - - - - Activate item on single click - Egykattintásos mód - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ia.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ia.ts deleted file mode 100644 index 776fd96..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ia.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - - - - - Icons Theme - - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - - - - - Widget Style - - - - - Icons Theme - - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_id_ID.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_id_ID.ts deleted file mode 100644 index 4594b4c..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_id_ID.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Konfigurasi Penampilan LXQt - - - - Icons Theme - Tema Ikon - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - Konfigurasi Penampilan LXQt - - - - Widget Style - - - - - Icons Theme - Tema Ikon - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_it.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_it.ts deleted file mode 100644 index efd963a..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_it.ts +++ /dev/null @@ -1,226 +0,0 @@ - - - - - FontsConfig - - - Font - Caratteri - - - - Default font for user interface - Carattere generale - - - - Font name: - Carattere: - - - - Style: - Stile: - - - - Point size: - Dimensione: - - - - Normal - Normale - - - - Bold - Grassetto - - - - Italic - Corsivo - - - - Bold Italic - Grassetto corsivo - - - - The following settings only affect newly started applications - Le impostazioni riguardano solo le applicazioni avviate nuovamente - - - - Use antialias fonts - Utilizza anti-aliasing per i caratteri - - - - Font hinting style: - Stile di hinting - - - - - None - Nessuno - - - - Slight - Leggero - - - - Medium - Medio - - - - Full - Forte - - - - Font hinting - Hinting caratteri - - - - Resolution (DPI): - Resoluzione (DPI): - - - - Autohint - Hinting automatico - - - - Subpixel antialiasing: - no idea how to translate that - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Centro di Configurazione LXQt - - - - Icons Theme - Temi delle icone - - - - LXQtThemeConfig - - - LXQt Theme - Tema di LXQt - - - - QObject - - - LXQt Appearance Configuration - Centro di Configurazione LXQt - - - - Widget Style - Stile degli elementi - - - - Icons Theme - Tema delle icone - - - - LXQt Theme - Tema di LXQt - - - - Font - Caratteri - - - - Cursor - Cursore - - - - StyleConfig - - - Widget Style - Stile degli elementi - - - - Toolbar button style: - Stile della barra delle applicazioni: - - - - Only display the icon - Mostra solo icone - - - - Only display the text - Mostra solo testo - - - - The text appears beside the icon - Testo accanto le icone - - - - The text appears under the icon - Testo sotto le icone - - - - Default - - - - - Activate item on single click - Attiva elementi con clic singolo - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ja.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ja.ts deleted file mode 100644 index 616d9dc..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ja.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - フォント - - - - Default font for user interface - ユーザーインターフェースのデフォルトのフォント - - - - Font name: - フォント名: - - - - Style: - スタイル: - - - - Point size: - ポイントサイズ: - - - - Normal - ノーマル - - - - Bold - 太字 - - - - Italic - 斜体 - - - - Bold Italic - 太字・斜体 - - - - The following settings only affect newly started applications - 以下の設定は、これから新たに実行されたアプリケーションに適用されます - - - - Use antialias fonts - アンチエイリアスされたフォントを用いる - - - - Font hinting style: - フォントのヒンティング形式: - - - - - None - なし - - - - Slight - 軽微 - - - - Medium - 中間 - - - - Full - 完全 - - - - Font hinting - フォントのヒンティング - - - - Resolution (DPI): - 解像度 (DPI): - - - - Autohint - 自動ヒンティング - - - - Subpixel antialiasing: - サブピクセルアンチエイリアス: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt外観の設定 - - - - Icons Theme - アイコンテーマ - - - - LXQtThemeConfig - - - LXQt Theme - LXQtテーマ - - - - QObject - - - LXQt Appearance Configuration - LXQt外観の設定 - - - - Widget Style - ウィジェットのスタイル - - - - Icons Theme - アイコンテーマ - - - - LXQt Theme - LXQtテーマ - - - - Font - フォント - - - - Cursor - カーソル - - - - StyleConfig - - - Widget Style - ウィジェットのスタイル - - - - Toolbar button style: - ツールバーボタンのスタイル: - - - - Only display the icon - アイコンのみを表示 - - - - Only display the text - テキストのみを表示 - - - - The text appears beside the icon - アイコンの横にテキスト - - - - The text appears under the icon - アイコンの下にテキスト - - - - Default - デフォルト - - - - Activate item on single click - シングルクリックでアイテムを有効にする - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ko.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ko.ts deleted file mode 100644 index e3ffdf8..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ko.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - - - - - Icons Theme - - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - - - - - Widget Style - - - - - Icons Theme - - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_lt.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_lt.ts deleted file mode 100644 index e654729..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_lt.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt išvaizdos nustatymai - - - - Icons Theme - Piktogramų tema - - - - LXQtThemeConfig - - - LXQt Theme - LXQt apipavidalinimas - - - - QObject - - - LXQt Appearance Configuration - LXQt išvaizdos nustatymai - - - - Widget Style - - - - - Icons Theme - Piktogramų tema - - - - LXQt Theme - LXQt apipavidalinimas - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_nl.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_nl.ts deleted file mode 100644 index d8a2db5..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_nl.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt Uiterlijk Configuratie - - - - Icons Theme - Pictogram Thema - - - - LXQtThemeConfig - - - LXQt Theme - LXQt Thema - - - - QObject - - - LXQt Appearance Configuration - LXQt Uiterlijk Configuratie - - - - Widget Style - - - - - Icons Theme - Pictogram Thema - - - - LXQt Theme - LXQt Thema - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_pl.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_pl.ts deleted file mode 100644 index 1ca19a5..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_pl.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Menu - - - - Icons Theme - - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - Menu - - - - Widget Style - - - - - Icons Theme - - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_pl_PL.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_pl_PL.ts deleted file mode 100644 index aced0c8..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_pl_PL.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Czcionka - - - - Default font for user interface - Domyślna czcionka dla interfejsu użytkownika - - - - Font name: - Czcionka: - - - - Style: - Styl: - - - - Point size: - Rozmiar: - - - - Normal - Normalna - - - - Bold - Pogrubiona - - - - Italic - Kursywa - - - - Bold Italic - Pogrubiona kursywa - - - - The following settings only affect newly started applications - Poniższe ustawienia dotyczą tylko nowo otwartych aplikacji - - - - Use antialias fonts - Wygładzanie czcionek (antyaliasing) - - - - Font hinting style: - Styl hintingu: - - - - - None - Brak - - - - Slight - Delikatny - - - - Medium - Średni - - - - Full - Pełny - - - - Font hinting - Hinting czcionek - - - - Resolution (DPI): - Rozdzielczość (DPI): - - - - Autohint - Autohinting - - - - Subpixel antialiasing: - Antyaliasing subpikselowy: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - Konfiguracja wyglądu LXQt - - - - Icons Theme - Motyw ikon - - - - LXQtThemeConfig - - - LXQt Theme - Motyw LXQt - - - - QObject - - - LXQt Appearance Configuration - Konfiguracja wyglądu LXQt - - - - Widget Style - Widżety - - - - Icons Theme - Motyw ikon - - - - LXQt Theme - Motyw LXQt - - - - Font - Czcionka - - - - Cursor - Kursor - - - - StyleConfig - - - Widget Style - Styl widżetów - - - - Toolbar button style: - Styl paska narzędziowego: - - - - Only display the icon - Tylko ikony - - - - Only display the text - Tylko tekst - - - - The text appears beside the icon - Tekst obok ikon - - - - The text appears under the icon - Tekst poniżej ikon - - - - Default - Domyśłny - - - - Activate item on single click - Aktywacja pojedyńczym kliknięciem - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_pt.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_pt.ts deleted file mode 100644 index cf36627..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_pt.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Configuração da aparência do LXQt - - - - Icons Theme - Tema de ícones - - - - LXQtThemeConfig - - - LXQt Theme - Tema LXQt - - - - QObject - - - LXQt Appearance Configuration - Configuração da aparência do LXQt - - - - Widget Style - - - - - Icons Theme - Tema de ícones - - - - LXQt Theme - Tema LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_pt_BR.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_pt_BR.ts deleted file mode 100644 index 620b534..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_pt_BR.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Configuração da aparência do LXQt - - - - Icons Theme - Tema de ícones - - - - LXQtThemeConfig - - - LXQt Theme - Tema do LXQt - - - - QObject - - - LXQt Appearance Configuration - Configuração da aparência do LXQt - - - - Widget Style - - - - - Icons Theme - Tema de ícones - - - - LXQt Theme - Tema do LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ro_RO.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ro_RO.ts deleted file mode 100644 index 150879e..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ro_RO.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Părăsește - - - - Icons Theme - Temă pictograme - - - - LXQtThemeConfig - - - LXQt Theme - Temă LXQt - - - - QObject - - - LXQt Appearance Configuration - Părăsește - - - - Widget Style - - - - - Icons Theme - Temă pictograme - - - - LXQt Theme - Temă LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ru.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ru.ts deleted file mode 100644 index a573297..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ru.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Шрифт - - - - Default font for user interface - Шрифт по умолчанию для пользовательского интерфейса - - - - Font name: - Название шрифта: - - - - Style: - Стиль: - - - - Point size: - Кегль: - - - - Normal - Нормальный - - - - Bold - Полужирный - - - - Italic - Наклонный - - - - Bold Italic - Полужирный наклонный - - - - The following settings only affect newly started applications - Следующие настройки подействуют только на вновь запущенные приложения - - - - Use antialias fonts - Использовать сглаживание шрифтов - - - - Font hinting style: - Стиль хинтинга шрифта: - - - - - None - Нет - - - - Slight - Слабое - - - - Medium - Среднее - - - - Full - Полное - - - - Font hinting - Хинтинг шрифта - - - - Resolution (DPI): - Разрешение (DPI): - - - - Autohint - Автохинтинг - - - - Subpixel antialiasing: - Субпиксельное сглаживание: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - Меню программ - - - - Icons Theme - Иконки темы - - - - LXQtThemeConfig - - - LXQt Theme - Тема LXQt - - - - QObject - - - LXQt Appearance Configuration - Настройка внешнего вида LXQt - - - - Icons Theme - Тема иконок - - - - LXQt Theme - LXQt темы - - - - Widget Style - Стиль виджетов - - - - Font - Шрифт - - - - Cursor - Курсор - - - - StyleConfig - - - Widget Style - Стиль виджетов - - - - Toolbar button style: - Стиль кнопок панели: - - - - Only display the icon - Показывать только иконку - - - - Only display the text - Показывать только текст - - - - The text appears beside the icon - Текст появляется сбоку от иконки - - - - The text appears under the icon - Текст появляется под иконкой - - - - Default - По умолчанию - - - - Activate item on single click - Активировать элемент по одиночному щелчку мыши - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.desktop b/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.desktop deleted file mode 100644 index 4a9c58a..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.desktop +++ /dev/null @@ -1,4 +0,0 @@ -# Translations -Comment[ru_RU]=Настройки внешнего вида LXQt -GenericName[ru_RU]=Настройка внешнего вида -Name[ru_RU]=Внешний вид \ No newline at end of file diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.ts deleted file mode 100644 index a573297..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_ru_RU.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - Шрифт - - - - Default font for user interface - Шрифт по умолчанию для пользовательского интерфейса - - - - Font name: - Название шрифта: - - - - Style: - Стиль: - - - - Point size: - Кегль: - - - - Normal - Нормальный - - - - Bold - Полужирный - - - - Italic - Наклонный - - - - Bold Italic - Полужирный наклонный - - - - The following settings only affect newly started applications - Следующие настройки подействуют только на вновь запущенные приложения - - - - Use antialias fonts - Использовать сглаживание шрифтов - - - - Font hinting style: - Стиль хинтинга шрифта: - - - - - None - Нет - - - - Slight - Слабое - - - - Medium - Среднее - - - - Full - Полное - - - - Font hinting - Хинтинг шрифта - - - - Resolution (DPI): - Разрешение (DPI): - - - - Autohint - Автохинтинг - - - - Subpixel antialiasing: - Субпиксельное сглаживание: - - - - RGB - RGB - - - - BGR - BGR - - - - VRGB - VRGB - - - - VBGR - VBGR - - - - IconThemeConfig - - - LXQt Appearance Configuration - Меню программ - - - - Icons Theme - Иконки темы - - - - LXQtThemeConfig - - - LXQt Theme - Тема LXQt - - - - QObject - - - LXQt Appearance Configuration - Настройка внешнего вида LXQt - - - - Icons Theme - Тема иконок - - - - LXQt Theme - LXQt темы - - - - Widget Style - Стиль виджетов - - - - Font - Шрифт - - - - Cursor - Курсор - - - - StyleConfig - - - Widget Style - Стиль виджетов - - - - Toolbar button style: - Стиль кнопок панели: - - - - Only display the icon - Показывать только иконку - - - - Only display the text - Показывать только текст - - - - The text appears beside the icon - Текст появляется сбоку от иконки - - - - The text appears under the icon - Текст появляется под иконкой - - - - Default - По умолчанию - - - - Activate item on single click - Активировать элемент по одиночному щелчку мыши - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_sk_SK.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_sk_SK.ts deleted file mode 100644 index d06da10..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_sk_SK.ts +++ /dev/null @@ -1,236 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Nastavenie vzhľadu prostredia LXQt - - - - Icons Theme - Téma ikon - - - - LXQtThemeConfig - - - LXQt Theme - - - - - MainWindow - - LXQt Appearance Configuration - Nastavenie vzhľadu prostredia LXQt - - - Icons Theme - Téma ikon - - - - QObject - - - LXQt Appearance Configuration - Nastavenie vzhľadu prostredia LXQt - - - - Widget Style - - - - - Icons Theme - Téma ikon - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_sl.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_sl.ts deleted file mode 100644 index f2a0f80..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_sl.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Nastavitev videza za LXQt - - - - Icons Theme - Tema ikon - - - - LXQtThemeConfig - - - LXQt Theme - Tema za LXQt - - - - QObject - - - LXQt Appearance Configuration - Nastavitev videza za LXQt - - - - Widget Style - - - - - Icons Theme - Tema ikon - - - - LXQt Theme - Tema za LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_sr@latin.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_sr@latin.ts deleted file mode 100644 index 0bc7384..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_sr@latin.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Automatsko suspendovanje - - - - Icons Theme - - - - - LXQtThemeConfig - - - LXQt Theme - - - - - QObject - - - LXQt Appearance Configuration - Automatsko suspendovanje - - - - Widget Style - - - - - Icons Theme - - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_sr_BA.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_sr_BA.ts deleted file mode 100644 index 09800d1..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_sr_BA.ts +++ /dev/null @@ -1,236 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - - Icons Theme - Тема икона - - - - LXQtThemeConfig - - - LXQt Theme - - - - - MainWindow - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - Icons Theme - Тема икона - - - - QObject - - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - - Widget Style - - - - - Icons Theme - Тема икона - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_sr_RS.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_sr_RS.ts deleted file mode 100644 index f43e97a..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_sr_RS.ts +++ /dev/null @@ -1,236 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - - Icons Theme - Тема икона - - - - LXQtThemeConfig - - - LXQt Theme - - - - - MainWindow - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - Icons Theme - Тема икона - - - - QObject - - - LXQt Appearance Configuration - Подешавање изгледа Рејзора - - - - Widget Style - - - - - Icons Theme - Тема икона - - - - LXQt Theme - - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_th_TH.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_th_TH.ts deleted file mode 100644 index d0a5a7f..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_th_TH.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - ปรับแต่งรูปโฉม LXQt - - - - Icons Theme - ชุดตกแต่งไอคอน - - - - LXQtThemeConfig - - - LXQt Theme - ชุดตกแต่ง LXQt - - - - QObject - - - LXQt Appearance Configuration - ปรับแต่งรูปโฉม LXQt - - - - Widget Style - - - - - Icons Theme - ชุดตกแต่งไอคอน - - - - LXQt Theme - ชุดตกแต่ง LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_tr.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_tr.ts deleted file mode 100644 index d5a9418..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_tr.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt Görünüm Ayarları - - - - Icons Theme - Simge Teması - - - - LXQtThemeConfig - - - LXQt Theme - LXQt Teması - - - - QObject - - - LXQt Appearance Configuration - LXQt Görünüm Ayarları - - - - Widget Style - - - - - Icons Theme - Simge Teması - - - - LXQt Theme - LXQt Teması - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_uk.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_uk.ts deleted file mode 100644 index fc4880a..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_uk.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - Налаштування вигляду LXQt - - - - Icons Theme - Тема значків - - - - LXQtThemeConfig - - - LXQt Theme - Тема LXQt - - - - QObject - - - LXQt Appearance Configuration - Налаштування вигляду LXQt - - - - Widget Style - - - - - Icons Theme - Тема значків - - - - LXQt Theme - Тема LXQt - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_zh_CN.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_zh_CN.ts deleted file mode 100644 index 68272fc..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_zh_CN.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt 外观配置 - - - - Icons Theme - 图标主题 - - - - LXQtThemeConfig - - - LXQt Theme - LXQt 主题 - - - - QObject - - - LXQt Appearance Configuration - LXQt 外观配置 - - - - Widget Style - - - - - Icons Theme - 图标主题 - - - - LXQt Theme - LXQt 主题 - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-appearance/translations/lxqt-config-appearance_zh_TW.ts b/lxqt-config-appearance/translations/lxqt-config-appearance_zh_TW.ts deleted file mode 100644 index a685000..0000000 --- a/lxqt-config-appearance/translations/lxqt-config-appearance_zh_TW.ts +++ /dev/null @@ -1,225 +0,0 @@ - - - - - FontsConfig - - - Font - - - - - Default font for user interface - - - - - Font name: - - - - - Style: - - - - - Point size: - - - - - Normal - - - - - Bold - - - - - Italic - - - - - Bold Italic - - - - - The following settings only affect newly started applications - - - - - Use antialias fonts - - - - - Font hinting style: - - - - - - None - - - - - Slight - - - - - Medium - - - - - Full - - - - - Font hinting - - - - - Resolution (DPI): - - - - - Autohint - - - - - Subpixel antialiasing: - - - - - RGB - - - - - BGR - - - - - VRGB - - - - - VBGR - - - - - IconThemeConfig - - - LXQt Appearance Configuration - LXQt自訂外觀 - - - - Icons Theme - 圖示主題 - - - - LXQtThemeConfig - - - LXQt Theme - LXQt主題 - - - - QObject - - - LXQt Appearance Configuration - LXQt自訂外觀 - - - - Widget Style - - - - - Icons Theme - 圖示主題 - - - - LXQt Theme - LXQt主題 - - - - Font - - - - - Cursor - - - - - StyleConfig - - - Widget Style - - - - - Toolbar button style: - - - - - Only display the icon - - - - - Only display the text - - - - - The text appears beside the icon - - - - - The text appears under the icon - - - - - Default - - - - - Activate item on single click - - - - diff --git a/lxqt-config-brightness/CMakeLists.txt b/lxqt-config-brightness/CMakeLists.txt new file mode 100644 index 0000000..7a584ce --- /dev/null +++ b/lxqt-config-brightness/CMakeLists.txt @@ -0,0 +1,89 @@ +project(lxqt-config-brightness) + +find_package(Qt5Widgets REQUIRED QUIET) +find_package(Qt5X11Extras REQUIRED QUIET) + +find_package(PkgConfig) + +pkg_check_modules(XRANDR xcb-randr) +pkg_check_modules(XCB xcb) + +set(QTX_LIBRARIES Qt5::Widgets Qt5::X11Extras) + + +include_directories ( + ${XRANDR_INCLUDE_DIRS} + ${XCB_INCLUDE_DIRS} +) + +set(H_FILES + brightnesssettings.h + xrandrbrightness.h + monitorinfo.h + outputwidget.h +) + +set(CPP_FILES + main.cpp + brightnesssettings.cpp + xrandrbrightness.cpp + monitorinfo.cpp + outputwidget.cpp +) + +set(UI_FILES + brightnesssettings.ui + outputwidget.ui +) + +qt5_wrap_ui(UI_HEADERS ${UI_FILES}) + + +# Translations ********************************** +lxqt_translate_ts(QM_FILES + UPDATE_TRANSLATIONS + ${UPDATE_TRANSLATIONS} + SOURCES + ${H_FILES} + ${CPP_FILES} + ${UI_FILES} + INSTALL_DIR + "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" +) + +lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) +lxqt_translate_desktop(DESKTOP_FILES SOURCES "resources/${PROJECT_NAME}.desktop.in") + + +add_executable(${PROJECT_NAME} ${CPP_FILES} ${UI_FILES} ${QM_FILES} ${DESKTOP_FILES}) + +target_link_libraries( + ${PROJECT_NAME} + ${QTX_LIBRARIES} + ${XRANDR_LDFLAGS} + ${XCB_LDFLAGS} + lxqt +) + +add_definitions( + -DICON_DIR="${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps" +) + + +install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin) +install(FILES ${DESKTOP_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/applications) +install( + FILES icons/brightnesssettings.svg + DESTINATION "${CMAKE_INSTALL_PREFIX}/share/icons/hicolor/48x48/apps" +) + diff --git a/lxqt-config-brightness/README.md b/lxqt-config-brightness/README.md new file mode 100644 index 0000000..99c1da9 --- /dev/null +++ b/lxqt-config-brightness/README.md @@ -0,0 +1,4 @@ +# brightness-settings + +This tool changes brightness and gamma of your screen. It is a X11 tool. LibKScreen can not change brightness or gamma yet. + diff --git a/lxqt-config-brightness/brightnesssettings.cpp b/lxqt-config-brightness/brightnesssettings.cpp new file mode 100644 index 0000000..7b671c8 --- /dev/null +++ b/lxqt-config-brightness/brightnesssettings.cpp @@ -0,0 +1,101 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "brightnesssettings.h" +#include "outputwidget.h" +#include +#include + +BrightnessSettings::BrightnessSettings(QWidget *parent):QDialog(parent) +{ + ui = new Ui::BrightnessSettings(); + ui->setupUi(this); + + mBrightness = new XRandrBrightness(); + mMonitors = mBrightness->getMonitorsInfo(); + + for(MonitorInfo monitor: mMonitors) + { + OutputWidget *output = new OutputWidget(monitor, this); + ui->layout->addWidget(output); + output->show(); + connect(output, SIGNAL(changed(MonitorInfo)), this, SLOT(monitorSettingsChanged(MonitorInfo))); + connect(this, &BrightnessSettings::monitorReverted, output, &OutputWidget::setRevertedValues); + } + + mConfirmRequestTimer.setSingleShot(true); + mConfirmRequestTimer.setInterval(1000); + connect(&mConfirmRequestTimer, &QTimer::timeout, this, &BrightnessSettings::requestConfirmation); + +} + +void BrightnessSettings::monitorSettingsChanged(MonitorInfo monitor) +{ + mBrightness->setMonitorsSettings(QList{} << monitor); + if (ui->confirmCB->isChecked()) + { + mConfirmRequestTimer.start(); + } else + { + for (auto & m : mMonitors) + { + if (m.id() == monitor.id() && m.name() == monitor.name()) + { + m.setBacklight(monitor.backlight()); + m.setBrightness(monitor.brightness()); + } + } + } +} + +void BrightnessSettings::requestConfirmation() +{ + QMessageBox msg{QMessageBox::Question, tr("Brightness settings changed") + , tr("Confirmation required. Are the settings correct?") + , QMessageBox::Yes | QMessageBox::No}; + int timeout = 5; // seconds + QString no_text = msg.button(QMessageBox::No)->text(); + no_text += QStringLiteral("(%1)"); + msg.setButtonText(QMessageBox::No, no_text.arg(timeout)); + msg.setDefaultButton(QMessageBox::No); + + QTimer timeoutTimer; + timeoutTimer.setSingleShot(false); + timeoutTimer.setInterval(1000); + connect(&timeoutTimer, &QTimer::timeout, [&] { + msg.setButtonText(QMessageBox::No, no_text.arg(--timeout)); + if (timeout == 0) + { + timeoutTimer.stop(); + msg.reject(); + } + }); + timeoutTimer.start(); + + if (QMessageBox::Yes == msg.exec()) + { + // re-read current values + mMonitors = mBrightness->getMonitorsInfo(); + } else + { + // revert the changes + mBrightness->setMonitorsSettings(mMonitors); + for (const auto & monitor : mMonitors) + emit monitorReverted(monitor); + } +} diff --git a/lxqt-config-brightness/brightnesssettings.h b/lxqt-config-brightness/brightnesssettings.h new file mode 100644 index 0000000..6d5bd36 --- /dev/null +++ b/lxqt-config-brightness/brightnesssettings.h @@ -0,0 +1,53 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef __BRIGHTNESS_SETTINGS_H__ +#define __BRIGHTNESS_SETTINGS_H__ + +#include +#include +#include "xrandrbrightness.h" +#include "ui_brightnesssettings.h" + + +class BrightnessSettings: public QDialog +{ +Q_OBJECT + +public: + BrightnessSettings(QWidget *parent =0); + +signals: + void monitorReverted(const MonitorInfo & monitor); + +public slots: + void monitorSettingsChanged(MonitorInfo monitor); + void requestConfirmation(); + +private: + XRandrBrightness *mBrightness; + QList mMonitors; + QTimer mConfirmRequestTimer; + Ui::BrightnessSettings *ui; + + +}; + + +#endif + diff --git a/lxqt-config-brightness/brightnesssettings.ui b/lxqt-config-brightness/brightnesssettings.ui new file mode 100644 index 0000000..0832376 --- /dev/null +++ b/lxqt-config-brightness/brightnesssettings.ui @@ -0,0 +1,89 @@ + + + BrightnessSettings + + + + 0 + 0 + 406 + 110 + + + + Brightness Settings + + + + + + + + + + + <html><head/><body><p><span style=" font-weight:600;">Backlight and brightness settings:</span></p><p>Use arrow keys to change settings.</p></body></html> + + + + + + + + + + Require confirmation after settings change + + + true + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Close + + + + + + + + + buttonBox + accepted() + BrightnessSettings + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + BrightnessSettings + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/lxqt-config-brightness/icons/brightnesssettings.svg b/lxqt-config-brightness/icons/brightnesssettings.svg new file mode 100644 index 0000000..40a0c7c --- /dev/null +++ b/lxqt-config-brightness/icons/brightnesssettings.svg @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + diff --git a/lxqt-config-brightness/main.cpp b/lxqt-config-brightness/main.cpp new file mode 100644 index 0000000..5e56e8a --- /dev/null +++ b/lxqt-config-brightness/main.cpp @@ -0,0 +1,89 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "xrandrbrightness.h" +#include +#include +#include +#include "brightnesssettings.h" + +int main(int argn, char* argv[]) +{ + LXQt::SingleApplication app(argn, argv); + + // Command line options + QCommandLineParser parser; + QCommandLineOption increaseOption(QStringList() << "i" << "icrease", + app.tr("Increase brightness.")); + parser.addOption(increaseOption); + QCommandLineOption decreaseOption(QStringList() << "d" << "decrease", + app.tr("Decrease brightness.")); + parser.addOption(decreaseOption); + QCommandLineOption setOption(QStringList() << "s" << "set", + app.tr("Set brightness from 1 to 100."), "brightness"); + parser.addOption(setOption); + QCommandLineOption helpOption = parser.addHelpOption(); + parser.addOption(increaseOption); + parser.addOption(decreaseOption); + parser.addOption(setOption); + parser.addOption(helpOption); + + parser.process(app); + if( parser.isSet(increaseOption) || parser.isSet(decreaseOption) || parser.isSet(setOption) ) + { + XRandrBrightness *brightness = new XRandrBrightness(); + QList monitors = brightness->getMonitorsInfo(); + QList monitorsChanged; + float sign = parser.isSet(decreaseOption)?-1.0:1.0; + double brightness_value = parser.value(setOption).toFloat(); + brightness_value = qMin( qMax(brightness_value, 0.0), 100.0 ) / 100.0; + if(!parser.value(setOption).isEmpty()) + sign = 0.0; + foreach(MonitorInfo monitor, monitors) + { + + if( monitor.isBacklightSupported() ) + { + long backlight = ( monitor.backlight() + sign*(monitor.backlightMax()/50 + 1) )*qAbs(sign) + brightness_value*monitor.backlightMax(); + if(backlight0) + { + monitor.setBacklight(backlight); + monitorsChanged.append(monitor); + } + } + else + { + float brightness = (monitor.brightness() + 0.1*sign)*qAbs(sign) + brightness_value*2.0; + if(brightness<2.0 && brightness>0.0) + { + monitor.setBrightness(brightness); + monitorsChanged.append(monitor); + } + } + } + brightness->setMonitorsSettings(monitorsChanged); + return 0; + } + + BrightnessSettings *brightnessSettings = new BrightnessSettings(); + brightnessSettings->setWindowIcon(QIcon(ICON_DIR "/brightnesssettings.svg")); + brightnessSettings->show(); + + return app.exec(); +} + diff --git a/lxqt-config-brightness/monitorinfo.cpp b/lxqt-config-brightness/monitorinfo.cpp new file mode 100644 index 0000000..992dd81 --- /dev/null +++ b/lxqt-config-brightness/monitorinfo.cpp @@ -0,0 +1,76 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "monitorinfo.h" + +MonitorInfo::MonitorInfo(int id, QString name, long backlightMax) +{ + mId = id; + mName = name; + mBacklightMax = backlightMax; +} + +MonitorInfo::MonitorInfo(const MonitorInfo &monitor) +{ + mId = monitor.mId; + mName = monitor.mName; + mBacklightMax = monitor.mBacklightMax; + mBacklight = monitor.mBacklight; + mBrightness = monitor.mBrightness; +} + +bool MonitorInfo::isBacklightSupported() const +{ + return mBacklightMax > 0; +} + +long MonitorInfo::backlightMax() const +{ + return mBacklightMax; +} + +long MonitorInfo::backlight() const +{ + return mBacklight; +} + +void MonitorInfo::setBacklight(const long value) +{ + mBacklight = value; +} + +float MonitorInfo::brightness() const +{ + return mBrightness; +} + +void MonitorInfo::setBrightness(const float percent) +{ + mBrightness = qMax(qMin((float)2.0, percent), (float)0.0); +} + +int MonitorInfo::id() const +{ + return mId; +} + +QString MonitorInfo::name() const +{ + return mName; +} + diff --git a/lxqt-config-brightness/monitorinfo.h b/lxqt-config-brightness/monitorinfo.h new file mode 100644 index 0000000..9d5b123 --- /dev/null +++ b/lxqt-config-brightness/monitorinfo.h @@ -0,0 +1,58 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef __MONITOR_INFO_H__ +#define __MONITOR_INFO_H__ + +#include + + +/** This class represents backlight and brightness values of screen. + * If backlight is supported, backlight power of screen can be changed. + * Brightness represents color saturation. + */ +class MonitorInfo +{ +public: + MonitorInfo(int id, QString name, long backlightMax); + MonitorInfo(const MonitorInfo &monitor); + + bool isBacklightSupported() const; + long backlight() const; + long backlightMax() const; + void setBacklight(const long value); + + float brightness() const; + /**Brightness is a number between 0 and 2.*/ + void setBrightness(const float percent); + + int id() const; + QString name() const; + +private: + long mBacklightMax; + long mBacklight; + + float mBrightness; + + QString mName; + int mId; +}; + +#endif + diff --git a/lxqt-config-brightness/outputwidget.cpp b/lxqt-config-brightness/outputwidget.cpp new file mode 100644 index 0000000..4aac9a5 --- /dev/null +++ b/lxqt-config-brightness/outputwidget.cpp @@ -0,0 +1,68 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "outputwidget.h" + +OutputWidget::OutputWidget(MonitorInfo monitor, QWidget *parent):QWidget(parent), mMonitor(monitor) +{ + ui = new Ui::OutputWidget(); + ui->setupUi(this); + + ui->label->setText(""+monitor.name()+":"); + if ( monitor.isBacklightSupported() ) + { + ui->backlightSlider->setMinimum(0); + ui->backlightSlider->setMaximum(monitor.backlightMax()); + ui->backlightSlider->setValue(monitor.backlight()); + ui->backlightSlider->setFocus(Qt::OtherFocusReason); + } + else + ui->backlightSlider->hide(); + ui->brightnessSlider->setMinimum(0); + ui->brightnessSlider->setMaximum(200); + ui->brightnessSlider->setValue(monitor.brightness()*100); + + connect(ui->backlightSlider, SIGNAL(valueChanged(int)), this, SLOT(backlightChanged(int))); + connect(ui->brightnessSlider, SIGNAL(valueChanged(int)), this, SLOT(brightnessChanged(int))); +} + +void OutputWidget::backlightChanged(int value) +{ + mMonitor.setBacklight(value); + emit changed(mMonitor); +} + + +void OutputWidget::brightnessChanged(int value) +{ + mMonitor.setBrightness((float)value/100.0); + emit changed(mMonitor); +} + +void OutputWidget::setRevertedValues(const MonitorInfo & monitor) +{ + if (mMonitor.id() == monitor.id() && mMonitor.name() == monitor.name()) + { + ui->backlightSlider->blockSignals(true); + ui->backlightSlider->setValue(monitor.backlight()); + ui->backlightSlider->blockSignals(false); + ui->brightnessSlider->blockSignals(true); + ui->brightnessSlider->setValue(monitor.brightness()*100); + ui->brightnessSlider->blockSignals(false); + } +} diff --git a/lxqt-config-brightness/outputwidget.h b/lxqt-config-brightness/outputwidget.h new file mode 100644 index 0000000..e464147 --- /dev/null +++ b/lxqt-config-brightness/outputwidget.h @@ -0,0 +1,45 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef __OUTPUT_WIDGET_H__ +#define __OUTPUT_WIDGET_H__ + +#include +#include "monitorinfo.h" +#include "ui_outputwidget.h" + +class OutputWidget: public QWidget +{ +Q_OBJECT +public: + OutputWidget(MonitorInfo monitor, QWidget *parent); + +signals: + void changed(MonitorInfo info); + +public slots: + void backlightChanged(int value); + void brightnessChanged(int value); + void setRevertedValues(const MonitorInfo & monitor); +private: + MonitorInfo mMonitor; + Ui::OutputWidget *ui; +}; + +#endif + diff --git a/lxqt-config-brightness/outputwidget.ui b/lxqt-config-brightness/outputwidget.ui new file mode 100644 index 0000000..9e00a65 --- /dev/null +++ b/lxqt-config-brightness/outputwidget.ui @@ -0,0 +1,84 @@ + + + OutputWidget + + + + 0 + 0 + 478 + 86 + + + + + 0 + 0 + + + + Form + + + + + + QFrame::StyledPanel + + + QFrame::Raised + + + 5 + + + + + + <b>Output:</b> + + + Qt::RichText + + + + + + + Qt::Horizontal + + + + + + + + 0 + 0 + + + + + 48 + 48 + + + + false + + + 10.000000000000000 + + + true + + + + + + + + + + + diff --git a/lxqt-config-brightness/resources/lxqt-config-brightness.desktop.in b/lxqt-config-brightness/resources/lxqt-config-brightness.desktop.in new file mode 100644 index 0000000..f65ea0c --- /dev/null +++ b/lxqt-config-brightness/resources/lxqt-config-brightness.desktop.in @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Brightness Settings +Exec=lxqt-config-brightness +Terminal=false +Type=Application +Icon=brightnesssettings +Categories=Settings;DesktopSettings;Qt;LXQt;HardwareSettings; +OnlyShowIn=LXQt; + +#TRANSLATIONS_DIR=translations \ No newline at end of file diff --git a/lxqt-config-brightness/translations/lxqt-config-brightness_ar.desktop b/lxqt-config-brightness/translations/lxqt-config-brightness_ar.desktop new file mode 100644 index 0000000..73e7d25 --- /dev/null +++ b/lxqt-config-brightness/translations/lxqt-config-brightness_ar.desktop @@ -0,0 +1,2 @@ +# Translations +Name[ar]=إعدادات السّطوع diff --git a/lxqt-config-brightness/translations/lxqt-config-brightness_ca.desktop b/lxqt-config-brightness/translations/lxqt-config-brightness_ca.desktop new file mode 100644 index 0000000..b575944 --- /dev/null +++ b/lxqt-config-brightness/translations/lxqt-config-brightness_ca.desktop @@ -0,0 +1,2 @@ +# Translations +Name[ca]=Ajusts de la brillantor diff --git a/lxqt-config-brightness/translations/lxqt-config-brightness_es.desktop b/lxqt-config-brightness/translations/lxqt-config-brightness_es.desktop new file mode 100644 index 0000000..069729b --- /dev/null +++ b/lxqt-config-brightness/translations/lxqt-config-brightness_es.desktop @@ -0,0 +1,4 @@ +# Translations +Comment[es]=Permite cambiar el brillo y el contraste del monitor +GenericName[es]=Configuración de Brillo y contraste LXQt +Name[es]=Configuración de Brillo y contraste LXQt diff --git a/lxqt-config-brightness/translations/lxqt-config-brightness_ru.desktop b/lxqt-config-brightness/translations/lxqt-config-brightness_ru.desktop new file mode 100644 index 0000000..1e22633 --- /dev/null +++ b/lxqt-config-brightness/translations/lxqt-config-brightness_ru.desktop @@ -0,0 +1,4 @@ +# Translations +Comment[ru]=Позволяет менять яркость и контраст монитора +GenericName[ru]=Настройка яркости и контраста LXQt +Name[ru]=Настройка яркости и контраста LXQt diff --git a/lxqt-config-brightness/xrandrbrightness.cpp b/lxqt-config-brightness/xrandrbrightness.cpp new file mode 100644 index 0000000..4a00c52 --- /dev/null +++ b/lxqt-config-brightness/xrandrbrightness.cpp @@ -0,0 +1,411 @@ +/* This file is part of the KDE project + * Copyright (C) 2010 Lukas Tinkl + * Copyright (C) 2015 Kai Uwe Broulik + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License version 2 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + * + */ + + +#include +#include + +#include "xrandrbrightness.h" + +XRandrBrightness::XRandrBrightness() +{ + if (!QX11Info::isPlatformX11()) { + return; + } + ScopedCPointer versionReply(xcb_randr_query_version_reply(QX11Info::connection(), + xcb_randr_query_version(QX11Info::connection(), 1, 2), + nullptr)); + + if (!versionReply) { + qDebug() << "RandR Query version returned null"; + return; + } + + if (versionReply->major_version < 1 || (versionReply->major_version == 1 && versionReply->minor_version < 2)) { + qDebug() << "RandR version" << versionReply->major_version << "." << versionReply->minor_version << " too old"; + return; + } + ScopedCPointer backlightReply(xcb_intern_atom_reply(QX11Info::connection(), + xcb_intern_atom (QX11Info::connection(), 1, strlen("Backlight"), "Backlight"), + nullptr)); + + if (!backlightReply) { + qDebug() << "Intern Atom for Backlight returned null"; + return; + } + + m_backlight = backlightReply->atom; + + if (m_backlight == XCB_NONE) { + qDebug() << "No outputs have backlight property"; + //return; + } + xcb_screen_iterator_t iter = xcb_setup_roots_iterator(xcb_get_setup(QX11Info::connection())); + if (!iter.rem) { + qDebug() << "XCB Screen Roots Iterator rem was null"; + return; + } + + xcb_screen_t *screen = iter.data; + xcb_window_t root = screen->root; + + m_resources.reset(xcb_randr_get_screen_resources_current_reply(QX11Info::connection(), + xcb_randr_get_screen_resources_current(QX11Info::connection(), root) + , nullptr)); + + if (!m_resources) { + qDebug() << "RANDR Get Screen Resources returned null"; + return; + } +} + + + +bool XRandrBrightness::backlight_get_with_range(xcb_randr_output_t output, long &value, long &min, long &max) const { + long cur = backlight_get(output); + if (cur == -1) { + return false; + } + + ScopedCPointer propertyReply(xcb_randr_query_output_property_reply(QX11Info::connection(), + xcb_randr_query_output_property(QX11Info::connection(), output, m_backlight) + , nullptr)); + + if (!propertyReply) { + return -1; + } + + if (propertyReply->range && xcb_randr_query_output_property_valid_values_length(propertyReply.data()) == 2) { + int32_t *values = xcb_randr_query_output_property_valid_values(propertyReply.data()); + value = cur; + min = values[0]; + max = values[1]; + return true; + } + + return false; +} + +long XRandrBrightness::backlight_get(xcb_randr_output_t output) const +{ + ScopedCPointer propertyReply; + long value; + + if (m_backlight != XCB_ATOM_NONE) { + propertyReply.reset(xcb_randr_get_output_property_reply(QX11Info::connection(), + xcb_randr_get_output_property(QX11Info::connection(), output, m_backlight, XCB_ATOM_NONE, 0, 4, 0, 0) + , nullptr)); + + if (!propertyReply) { + return -1; + } + } + + if (!propertyReply || propertyReply->type != XCB_ATOM_INTEGER || propertyReply->num_items != 1 || propertyReply->format != 32) { + value = -1; + } else { + value = *(reinterpret_cast(xcb_randr_get_output_property_data(propertyReply.data()))); + } + return value; +} + +void XRandrBrightness::backlight_set(xcb_randr_output_t output, long value) +{ + xcb_randr_change_output_property(QX11Info::connection(), output, m_backlight, XCB_ATOM_INTEGER, + 32, XCB_PROP_MODE_REPLACE, + 1, reinterpret_cast(&value)); +} + + +float XRandrBrightness::gamma_brightness_get(xcb_randr_output_t output) +{ + xcb_generic_error_t *error; + + xcb_randr_get_output_info_cookie_t output_info_cookie = xcb_randr_get_output_info (QX11Info::connection(), output, 0); + xcb_randr_get_output_info_reply_t * output_info = xcb_randr_get_output_info_reply (QX11Info::connection(), output_info_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting output_info"; + return -1; + } + if(output_info == NULL) + { + qDebug() << "Error: output_info is null"; + return -1; + } + // xcb_randr_get_output_info_reply_t tiene como elemento crtc + xcb_randr_get_crtc_gamma_cookie_t gamma_cookie = xcb_randr_get_crtc_gamma_unchecked (QX11Info::connection(), output_info->crtc); + xcb_randr_get_crtc_gamma_reply_t *gamma_reply = xcb_randr_get_crtc_gamma_reply (QX11Info::connection(), gamma_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting gamma_reply"; + return -1; + } + if(gamma_reply == NULL) + { + qDebug() << "Error: gamma_reply is null"; + return -1; + } + uint16_t *red = xcb_randr_get_crtc_gamma_red (gamma_reply); + if(red == NULL) + { + qDebug() << "Error: red is null"; + return -1; + } + int red_length = xcb_randr_get_crtc_gamma_red_length(gamma_reply); + + // uint16_t *green = xcb_randr_get_crtc_gamma_green (gamma_reply); + // if(green == NULL) + // { + // qDebug() << "Error: green is null"; + // return -1; + // } + // uint16_t *blue = xcb_randr_get_crtc_gamma_blue (gamma_reply); + // if(blue == NULL) + // { + // qDebug() << "Error: blue is null"; + // return -1; + // } + + float brightness = (float)red[red_length-1]/65535.0; + return brightness; +} + +void XRandrBrightness::gamma_brightness_set(xcb_randr_output_t output, float percent) +{ + xcb_generic_error_t *error; + + xcb_randr_get_output_info_cookie_t output_info_cookie = xcb_randr_get_output_info (QX11Info::connection(), output, 0); + xcb_randr_get_output_info_reply_t * output_info = xcb_randr_get_output_info_reply (QX11Info::connection(), output_info_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting output_info"; + return; + } + if(output_info == NULL) + { + qDebug() << "Error: output_info is null"; + return; + } + // xcb_randr_get_output_info_reply_t tiene como elemento crtc + xcb_randr_get_crtc_gamma_cookie_t gamma_cookie = xcb_randr_get_crtc_gamma_unchecked (QX11Info::connection(), output_info->crtc); + xcb_randr_get_crtc_gamma_reply_t *gamma_reply = xcb_randr_get_crtc_gamma_reply (QX11Info::connection(), gamma_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting gamma_reply"; + return; + } + if(gamma_reply == NULL) + { + qDebug() << "Error: gamma_reply is null"; + return; + } + uint16_t *red = xcb_randr_get_crtc_gamma_red (gamma_reply); + if(red == NULL) + { + qDebug() << "Error: red is null"; + return; + } + int red_length = xcb_randr_get_crtc_gamma_red_length(gamma_reply); + uint16_t *green = xcb_randr_get_crtc_gamma_green (gamma_reply); + if(green == NULL) + { + qDebug() << "Error: green is null"; + return; + } + uint16_t *blue = xcb_randr_get_crtc_gamma_blue (gamma_reply); + if(blue == NULL) + { + qDebug() << "Error: blue is null"; + return; + } + + float max_gamma = 65535*percent; + for(int i=0;icrtc, red_length, red, green, blue); +} + + +QList XRandrBrightness::getMonitorsInfo() +{ + QList monitors; + + if (!m_resources) { + return monitors; + } + + auto *outputs = xcb_randr_get_screen_resources_current_outputs(m_resources.data()); + for (int i = 0; i < m_resources->num_outputs; ++i) { + xcb_randr_output_t output = outputs[i]; + + xcb_generic_error_t *error; + + xcb_randr_get_output_info_cookie_t output_info_cookie = xcb_randr_get_output_info (QX11Info::connection(), output, 0); + xcb_randr_get_output_info_reply_t * output_info = xcb_randr_get_output_info_reply (QX11Info::connection(), output_info_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting output_info"; + continue; + } + if(output_info == NULL) + { + qDebug() << "Error: output_info is null"; + continue; + } + + QString name = QString::fromUtf8((const char *) xcb_randr_get_output_info_name(output_info), output_info->name_len); + + + qDebug() << "Found output:" << name; + + + // Is connected? + if ( (xcb_randr_connection_t)(output_info->connection) != XCB_RANDR_CONNECTION_CONNECTED ) + { + qDebug() << "Output is not connected"; + continue; // This output is not connected. Check other + } + + // Is enabled? + if( output_info->crtc == 0) + { + qDebug() << "Crtc is not null. Output not enabled."; + continue; + } + xcb_randr_get_crtc_info_cookie_t crtc_info_cookie = xcb_randr_get_crtc_info_unchecked (QX11Info::connection(), output_info->crtc, 0); + xcb_randr_get_crtc_info_reply_t *crtc_info =xcb_randr_get_crtc_info_reply (QX11Info::connection(), crtc_info_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting output_info"; + continue; + } + if(crtc_info == NULL) + { + qDebug() << "Error: output_info is null"; + continue; + } + if( crtc_info->mode == XCB_NONE ) + { + qDebug() << "No modes. Output not enabled."; + continue; + } + + // Output is connected and enabled. Get data: + bool backlightIsSuported = false; + long cur, min, max, backlight_max = -1; + if (backlight_get(output) != -1) + { + if (backlight_get_with_range(output, cur, min, max)) + { + backlightIsSuported = true; + backlight_max = max - min; + } + } + + MonitorInfo monitor((int)output, name, backlight_max); + + if(backlightIsSuported) + monitor.setBacklight(cur-min); + + monitor.setBrightness(gamma_brightness_get(output)); + + qDebug() << "Output:" << name << "added"; + monitors.append(monitor); + + } + + return monitors; +} + +void XRandrBrightness::setMonitorsSettings(QList monitors) +{ + if (!m_resources) { + return; + } + + auto *outputs = xcb_randr_get_screen_resources_current_outputs(m_resources.data()); + for (int i = 0; i < m_resources->num_outputs; ++i) { + xcb_randr_output_t output = outputs[i]; + + xcb_generic_error_t *error; + + xcb_randr_get_output_info_cookie_t output_info_cookie = xcb_randr_get_output_info (QX11Info::connection(), output, 0); + xcb_randr_get_output_info_reply_t * output_info = xcb_randr_get_output_info_reply (QX11Info::connection(), output_info_cookie, &error); + if(error != NULL) + { + qDebug() << "Error getting output_info"; + continue; + } + if(output_info == NULL) + { + qDebug() << "Error: output_info is null"; + continue; + } + + // Is connected? + if ( (xcb_randr_connection_t)(output_info->connection) != XCB_RANDR_CONNECTION_CONNECTED ) + continue; // This output is not connected. Check other + + // Is enabled? + if( output_info->crtc == 0) + continue; + xcb_randr_get_crtc_info_cookie_t crtc_info_cookie = xcb_randr_get_crtc_info_unchecked (QX11Info::connection(), output_info->crtc, 0); + xcb_randr_get_crtc_info_reply_t *crtc_info =xcb_randr_get_crtc_info_reply (QX11Info::connection(), crtc_info_cookie, &error); + if(error != NULL) + continue; + if(crtc_info == NULL && crtc_info->mode == XCB_NONE ) + continue; + + QString name = QString::fromUtf8((const char *) xcb_randr_get_output_info_name(output_info), output_info->name_len); + + // Output is connected and enabled. Get data: + bool backlightIsSuported = false; + long cur, min, max, backlight_max = -1, backlight_value = 0; + if (backlight_get(output) != -1) + { + if (backlight_get_with_range(output, cur, min, max)) + { + backlightIsSuported = true; + backlight_max = max - min; + backlight_value = cur - min; + } + } + float brightness_value = gamma_brightness_get(output); + + // Compare output info with settings and set it. + for(MonitorInfo monitor: monitors) + { + if(monitor.id() == (int)output && monitor.name() == name) + { + // Set settings + if(backlightIsSuported && monitor.backlight() != backlight_value) + backlight_set(output, min+monitor.backlight()); + if(monitor.brightness() != brightness_value) + gamma_brightness_set(output, monitor.brightness()); + break; + } + } + } +} + diff --git a/lxqt-config-brightness/xrandrbrightness.h b/lxqt-config-brightness/xrandrbrightness.h new file mode 100644 index 0000000..d3a7917 --- /dev/null +++ b/lxqt-config-brightness/xrandrbrightness.h @@ -0,0 +1,56 @@ +/* This file is part of the KDE project + * Copyright (C) 2010 Lukas Tinkl + * Copyright (C) 2015 Kai Uwe Broulik + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License version 2 as published by the Free Software Foundation. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public License + * along with this library; see the file COPYING.LIB. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + * Boston, MA 02110-1301, USA. + * + */ + +#ifndef XRANDRBRIGHTNESS_H +#define XRANDRBRIGHTNESS_H + +#include +#include + +#include +#include + +#include "monitorinfo.h" + +template using ScopedCPointer = QScopedPointer; + +class XRandrBrightness +{ +public: + XRandrBrightness(); + ~XRandrBrightness() = default; + + QList getMonitorsInfo(); + void setMonitorsSettings(QList monitors); + +private: + bool backlight_get_with_range(xcb_randr_output_t output, long &value, long &min, long &max) const; + long backlight_get(xcb_randr_output_t output) const; + void backlight_set(xcb_randr_output_t output, long value); + float gamma_brightness_get(xcb_randr_output_t output); + void gamma_brightness_set(xcb_randr_output_t output, float percent); + + xcb_atom_t m_backlight = XCB_ATOM_NONE; + ScopedCPointer m_resources; + +}; + +#endif // XRANDRBRIGHTNESS_H + diff --git a/lxqt-config-file-associations/CMakeLists.txt b/lxqt-config-file-associations/CMakeLists.txt index 0506723..ca27020 100644 --- a/lxqt-config-file-associations/CMakeLists.txt +++ b/lxqt-config-file-associations/CMakeLists.txt @@ -40,6 +40,16 @@ lxqt_translate_ts(QM_FILES ${UI_FILES} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" ) lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) diff --git a/lxqt-config-file-associations/mimetypeitemmodel.cpp b/lxqt-config-file-associations/mimetypeitemmodel.cpp index b79d2bf..0e1fd44 100644 --- a/lxqt-config-file-associations/mimetypeitemmodel.cpp +++ b/lxqt-config-file-associations/mimetypeitemmodel.cpp @@ -188,7 +188,7 @@ bool MimetypeFilterItemModel::filterHelper(QModelIndex& source_index) const return true; } - foreach (const QString pattern, mimeInfo->patterns()) + foreach (const QString &pattern, mimeInfo->patterns()) { if (pattern.contains(filterRegExp())) { diff --git a/lxqt-config-file-associations/mimetypeviewer.cpp b/lxqt-config-file-associations/mimetypeviewer.cpp index 062520f..6c79efd 100644 --- a/lxqt-config-file-associations/mimetypeviewer.cpp +++ b/lxqt-config-file-associations/mimetypeviewer.cpp @@ -34,7 +34,6 @@ #include #include -#include #include #include #include diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations.ts deleted file mode 100644 index 5bc0ad2..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - - - - - Pick an application for: - - - - - 1 - - - - - Applications that handle JPEG - - - - - - - - New Subitem - - - - - - Other applications - - - - - Applications that handle %1 - - - - - No applications found - - - - - MimetypeViewer - - - - None - - - - - &Change... - - - - - &Choose... - - - - - mimetypeviewer - - - File Associations - - - - - Default application - - - - - &Choose... - - - - - TextLabel - - - - - None - - - - - Patterns - - - - - *.txt *.xml - - - - - MIME type - - - - - Icon - - - - - Description - - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ar.desktop b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ar.desktop new file mode 100644 index 0000000..538a087 --- /dev/null +++ b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ar.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ar]=ارتباطات الملفّات +GenericName[ar]=إعدادات ارتباطات الملفّات +Comment[ar]=اضبط التّطبيقات المرتبطة بأنواع الملفّات المعروفة diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ca.desktop b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ca.desktop new file mode 100644 index 0000000..9920c27 --- /dev/null +++ b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ca.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ca]=Associacions dels fitxers +GenericName[ca]=Ajusts de les associacions dels fitxers +Comment[ca]=Configureu les aplicacions associades amb els tipus de fitxers coneguts diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_de.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_de.ts deleted file mode 100644 index 92ba41f..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_de.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Dateizuordnungen - - - - Pick an application for: - Anwendung auswählen für: - - - - 1 - 1 - - - - Applications that handle JPEG - Anwendungen die JPEG verarbeiten - - - - - - - New Subitem - Neuer Unterpunkt - - - - - Other applications - Andere Anwendung - - - - Applications that handle %1 - Anwendungen die %1 verarbeiten - - - - No applications found - Keine Anwendung gefunden - - - - MimetypeViewer - - - - None - Keine - - - - &Change... - Ä&ndern... - - - - &Choose... - &Auswählen... - - - - mimetypeviewer - - - File Associations - Dateizuordnungen - - - - Default application - Default-Anwendungsprogramm - - - - &Choose... - &Auswählen... - - - - TextLabel - Textfeld - - - - None - Keins - - - - Patterns - Dateimuster - - - - *.txt *.xml - *.txt *.xml - - - - MIME type - MIME-Typ - - - - Icon - Symbol - - - - Description - Beschreibung - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_el.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_el.ts deleted file mode 100644 index a90712a..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_el.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Επιλογέας εφαρμογής - - - - Pick an application for: - Επιλέξτε μια εφαρμογή για: - - - - 1 - 1 - - - - Applications that handle JPEG - Εφαρμογές που διαχειρίζονται αρχεία JPEG - - - - - - - New Subitem - Νέο υποαντικείμενο - - - - - Other applications - Άλλες εφαρμογές - - - - Applications that handle %1 - Εφαρμογές που διαχειρίζονται %1 - - - - No applications found - Δεν βρέθηκε εφαρμογή - - - - MimetypeViewer - - - - None - Καμία - - - - &Change... - &Αλλαγή... - - - - &Choose... - &Επιλογή... - - - - mimetypeviewer - - - File Associations - Συσχετίσεις αρχείων - - - - Default application - Εξ ορισμού εφαρμογή - - - - &Choose... - &Επιλογή... - - - - TextLabel - Ετικέτα - - - - None - Καμία - - - - Patterns - Σχηματομορφές - - - - *.txt *.xml - *.txt *.xml - - - - MIME type - Τύπος MIME - - - - Icon - Εικονίδιο - - - - Description - Περιγραφή - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_hu.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_hu.ts deleted file mode 100644 index 33699e6..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_hu.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Alkalmazás választó - - - - Pick an application for: - Válassz alkalmazást ehhez: - - - - 1 - - - - - Applications that handle JPEG - JPEG kezelő alkalmazás - - - - - - - New Subitem - ÚJ alelem - - - - - Other applications - Más alkalmazás - - - - Applications that handle %1 - A %1 kezelő alkalmazás - - - - No applications found - Nincs alkalmazás - - - - MimetypeViewer - - - - None - Nincs - - - - &Change... - &Változtat - - - - &Choose... - &Választás - - - - mimetypeviewer - - - File Associations - Fájlhozzárendelések - - - - Default application - Alapértelmezett alkalmazás - - - - &Choose... - &Választás... - - - - TextLabel - Felirat - - - - None - Nincs - - - - Patterns - Szűrők - - - - *.txt *.xml - - - - - MIME type - MIME típus - - - - Icon - Ikon - - - - Description - Leírás - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.desktop b/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.desktop index cc52e20..70fac81 100644 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.desktop +++ b/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.desktop @@ -1,4 +1,4 @@ # Translations Name[it]=Associazioni file -GenericName[it]=Impostare le associazioni file -Comment[it]=Impostare le associazioni file per le applicazioni installate +GenericName[it]=Imposta le associazioni file +Comment[it]=Imposta le associazioni file per le applicazioni installate diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.ts deleted file mode 100644 index 9e4b549..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_it.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Applicazioni predefinite - - - - Pick an application for: - Scegli un applicazione per: - - - - 1 - 1 - - - - Applications that handle JPEG - Applicazioni che possono gestire JPEG - - - - - - - New Subitem - - - - - - Other applications - Altre applicazioni - - - - Applications that handle %1 - Applicazioni che possono gestire %1 - - - - No applications found - Nessuna applicazione trovata - - - - MimetypeViewer - - - - None - Nessuno - - - - &Change... - &Cambia... - - - - &Choose... - &Scegli... - - - - mimetypeviewer - - - File Associations - Associazioni file - - - - Default application - Applicazione predefinita - - - - &Choose... - &Scegli... - - - - TextLabel - - - - - None - - - - - Patterns - Tipi di file - - - - *.txt *.xml - - - - - MIME type - Tipo MIME - - - - Icon - Icona - - - - Description - Descrizione - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ja.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ja.ts deleted file mode 100644 index eb2fec7..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ja.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - アプリケーションの関連付け - - - - Pick an application for: - このファイルを開くアプリケーション: - - - - 1 - 1 - - - - Applications that handle JPEG - JPEGを扱うアプリケーション - - - - - - - New Subitem - 新しいサブアイテム - - - - - Other applications - その他のアプリケーション - - - - Applications that handle %1 - %1 を扱うアプリケーション - - - - No applications found - アプリケーションが見つかりませんでした - - - - MimetypeViewer - - - - None - なし - - - - &Change... - 変更(&C) - - - - &Choose... - 選択(&C) - - - - mimetypeviewer - - - File Associations - ファイルの関連付け - - - - Default application - デフォルトのアプリケーション - - - - &Choose... - 選択(&C) - - - - TextLabel - テキストラベル - - - - None - なし - - - - Patterns - パターン - - - - *.txt *.xml - *.txt *.xml - - - - MIME type - MIMEタイプ - - - - Icon - アイコン - - - - Description - 説明 - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_pl_PL.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_pl_PL.ts deleted file mode 100644 index 5e2480b..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_pl_PL.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Wybór programu - - - - Pick an application for: - Wybierz program do obsługi: - - - - 1 - 1 - - - - Applications that handle JPEG - Programy obsługujące JPEG - - - - - - - New Subitem - Nowa pozycja - - - - - Other applications - Inne programy - - - - Applications that handle %1 - Programy obsługujące %1 - - - - No applications found - Nie znaleziono programów - - - - MimetypeViewer - - - - None - Brak - - - - &Change... - &Zmień... - - - - &Choose... - &Wybierz... - - - - mimetypeviewer - - - File Associations - Skojarzenia plików - - - - Default application - Domyślny program - - - - &Choose... - &Wybierz... - - - - TextLabel - TextLabel - - - - None - None - - - - Patterns - Rozszerzenia - - - - *.txt *.xml - *.txt *.xml - - - - MIME type - Typ MIME - - - - Icon - Ikona - - - - Description - Opis - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_pt.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_pt.ts deleted file mode 100644 index f46fcf9..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_pt.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Seletor de aplicações - - - - Pick an application for: - Escolha uma aplicação para: - - - - 1 - 1 - - - - Applications that handle JPEG - Aplicações para manipular JPEG - - - - - - - New Subitem - Novo subitem - - - - - Other applications - Outras aplicações - - - - Applications that handle %1 - Aplicações para manipular %1 - - - - No applications found - Nenhuma aplicação encontrada - - - - MimetypeViewer - - - - None - Nenhum - - - - &Change... - &Mudar... - - - - &Choose... - Es&colher... - - - - mimetypeviewer - - - File Associations - Associação de ficheiros - - - - Default application - Aplicaçao pré-definida - - - - &Choose... - Es&colher... - - - - TextLabel - Etiqueta - - - - None - Nenhuma - - - - Patterns - Padrões - - - - *.txt *.xml - *.txt *.xml - - - - MIME type - Tipo MIME - - - - Icon - Ícone - - - - Description - Descrição - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.desktop b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.desktop index 2024701..3a1697e 100644 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.desktop +++ b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.desktop @@ -1,4 +1,4 @@ # Translations -Comment[ru]=Настроить приложения ассоциированные с известным типом файлв +Comment[ru]=Настроить приложения, ассоциированные с известными типами файлов GenericName[ru]=Настройки ассоциации файлов Name[ru]=Ассоциация файлов \ No newline at end of file diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.ts deleted file mode 100644 index b151624..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Выбор приложения - - - - Pick an application for: - Выбрать приложение для: - - - - 1 - - - - - Applications that handle JPEG - Приложения, которые поддерживают JPEG - - - - - - - New Subitem - - - - - - Other applications - Другие приложения - - - - Applications that handle %1 - Приложение, которое поддерживает %1 - - - - No applications found - Не найдены приложения - - - - MimetypeViewer - - - - None - Нет - - - - &Change... - &Изменить... - - - - &Choose... - &Выбрать... - - - - mimetypeviewer - - - File Associations - Ассоциация файлов - - - - Default application - Приложение по умолчанию - - - - &Choose... - &Выбрать... - - - - TextLabel - - - - - None - Нет - - - - Patterns - Шаблоны - - - - *.txt *.xml - - - - - MIME type - MIME-тип - - - - Icon - Значок - - - - Description - Описание - - - diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.desktop b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.desktop deleted file mode 100644 index d4fe06e..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.desktop +++ /dev/null @@ -1,4 +0,0 @@ -# Translations -Comment[ru_RU]=Настроить приложения ассоциированные с известным типом файлв -GenericName[ru_RU]=Настройки ассоциации файлов -Name[ru_RU]=Ассоциация файлов \ No newline at end of file diff --git a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.ts b/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.ts deleted file mode 100644 index b151624..0000000 --- a/lxqt-config-file-associations/translations/lxqt-config-file-associations_ru_RU.ts +++ /dev/null @@ -1,123 +0,0 @@ - - - - - ApplicationChooser - - - ApplicationChooser - Выбор приложения - - - - Pick an application for: - Выбрать приложение для: - - - - 1 - - - - - Applications that handle JPEG - Приложения, которые поддерживают JPEG - - - - - - - New Subitem - - - - - - Other applications - Другие приложения - - - - Applications that handle %1 - Приложение, которое поддерживает %1 - - - - No applications found - Не найдены приложения - - - - MimetypeViewer - - - - None - Нет - - - - &Change... - &Изменить... - - - - &Choose... - &Выбрать... - - - - mimetypeviewer - - - File Associations - Ассоциация файлов - - - - Default application - Приложение по умолчанию - - - - &Choose... - &Выбрать... - - - - TextLabel - - - - - None - Нет - - - - Patterns - Шаблоны - - - - *.txt *.xml - - - - - MIME type - MIME-тип - - - - Icon - Значок - - - - Description - Описание - - - diff --git a/lxqt-config-input/CMakeLists.txt b/lxqt-config-input/CMakeLists.txt index 5c42961..e19386c 100644 --- a/lxqt-config-input/CMakeLists.txt +++ b/lxqt-config-input/CMakeLists.txt @@ -40,6 +40,16 @@ lxqt_translate_ts(QM_FILES ${lxqt-config-input_UIS} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" ) lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) @@ -68,7 +78,7 @@ target_link_libraries(lxqt-config-input set_target_properties(lxqt-config-input PROPERTIES - INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${LXQT_CONFIG_PROJECT}" + INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}/${LXQT_CONFIG_PROJECT}" ) install(TARGETS diff --git a/lxqt-config-input/keyboardlayoutconfig.cpp b/lxqt-config-input/keyboardlayoutconfig.cpp index 3f9f39b..7c4c1c7 100644 --- a/lxqt-config-input/keyboardlayoutconfig.cpp +++ b/lxqt-config-input/keyboardlayoutconfig.cpp @@ -94,8 +94,8 @@ enum ListSection{ void KeyboardLayoutConfig::loadLists() { // load known lists from xkb data files - // FIXME: maybe we should use different files for different OSes? - QFile file(QLatin1String("/usr/share/X11/xkb/rules/base.lst")); + // XKBD_BASELIST_PATH is os dependent see keyboardlayoutconfig.h + QFile file(QLatin1String(XKBD_BASELIST_PATH)); if(file.open(QIODevice::ReadOnly)) { ListSection section = NoSection; while(!file.atEnd()) { diff --git a/lxqt-config-input/keyboardlayoutconfig.h b/lxqt-config-input/keyboardlayoutconfig.h index 40642e0..383335f 100644 --- a/lxqt-config-input/keyboardlayoutconfig.h +++ b/lxqt-config-input/keyboardlayoutconfig.h @@ -21,6 +21,17 @@ #ifndef KEYBOARDLAYOUTCONFIG_H #define KEYBOARDLAYOUTCONFIG_H +#include +#ifdef Q_OS_LINUX +#define XKBD_BASELIST_PATH "/usr/share/X11/xkb/rules/base.lst" +#elif defined(Q_OS_FREEBSD) +#define XKBD_BASELIST_PATH "/usr/local/share/X11/xkb/rules/base.lst" +#elif defined(Q_OS_OPENBSD) +#define XKBD_BASELIST_PATH "/usr/X11R6/share/X11/xkb/rules/base.lst" +#else +#define XKBD_BASELIST_PATH "/usr/local/share/X11/xkb/rules/base.lst" +#endif + #include #include "keyboardlayoutinfo.h" #include diff --git a/lxqt-config-input/mouseconfig.cpp b/lxqt-config-input/mouseconfig.cpp index 0db04a5..0f25283 100644 --- a/lxqt-config-input/mouseconfig.cpp +++ b/lxqt-config-input/mouseconfig.cpp @@ -105,14 +105,23 @@ void MouseConfig::onMouseThresholdChanged(int value) { #define DEFAULT_PTR_MAP_SIZE 128 void MouseConfig::setLeftHandedMouse() { unsigned char* buttons; + unsigned char* more_buttons; int n_buttons, i; int idx_1 = 0, idx_3 = 1; buttons = (unsigned char*)malloc(DEFAULT_PTR_MAP_SIZE); + if(!buttons) { + return; + } n_buttons = XGetPointerMapping(QX11Info::display(), buttons, DEFAULT_PTR_MAP_SIZE); if(n_buttons > DEFAULT_PTR_MAP_SIZE) { - buttons = (unsigned char*)realloc(buttons, n_buttons); + more_buttons = (unsigned char*)realloc(buttons, n_buttons); + if(!more_buttons) { + free(buttons); + return; + } + buttons = more_buttons; n_buttons = XGetPointerMapping(QX11Info::display(), buttons, n_buttons); } diff --git a/lxqt-config-input/selectkeyboardlayoutdialog.cpp b/lxqt-config-input/selectkeyboardlayoutdialog.cpp index 99fac20..3bd5ef1 100644 --- a/lxqt-config-input/selectkeyboardlayoutdialog.cpp +++ b/lxqt-config-input/selectkeyboardlayoutdialog.cpp @@ -28,7 +28,7 @@ SelectKeyboardLayoutDialog::SelectKeyboardLayoutDialog(QMap< QString, KeyboardLa connect(ui.layouts, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), SLOT(onLayoutChanged())); QMap::const_iterator it; - for(it = knownLayouts_.begin(); it != knownLayouts.end(); ++it) { + for(it = knownLayouts_.begin(); it != knownLayouts_.end(); ++it) { const QString& name = it.key(); const KeyboardLayoutInfo& info = *it; QListWidgetItem * item = new QListWidgetItem(info.description); diff --git a/lxqt-config-input/translations/lxinput-qt_template-zh_TW.ts b/lxqt-config-input/translations/lxinput-qt_template-zh_TW.ts deleted file mode 100644 index 8b5600d..0000000 --- a/lxqt-config-input/translations/lxinput-qt_template-zh_TW.ts +++ /dev/null @@ -1,82 +0,0 @@ - - - - MainDialog - - Input Device Preferences - 輸入裝置偏好設定 - - - Motion - 移動 - - - High - - - - Fast - - - - Sensitivity: - 敏感度: - - - Low - - - - Acceleration: - 加速度: - - - Slow - - - - 0 - - - - Left handed (Swap left and right mouse buttons) - 慣用左手 (將滑鼠左右鍵倒轉) - - - Mouse - 滑鼠 - - - Character Repeat - 字元重覆 - - - Long - - - - Repeat delay: - 重複延遲: - - - Short - - - - Repeat interval: - 重複間隔: - - - Type in the following box to test your keyboard settings - - - - Beep when there is an error of keyboard input - - - - Keyboard - 鍵盤 - - - diff --git a/lxqt-config-input/translations/lxqt-config-input.ts b/lxqt-config-input/translations/lxqt-config-input.ts deleted file mode 100644 index 39ed269..0000000 --- a/lxqt-config-input/translations/lxqt-config-input.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_af.ts b/lxqt-config-input/translations/lxqt-config-input_af.ts deleted file mode 100644 index ac74948..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_af.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_ar.desktop b/lxqt-config-input/translations/lxqt-config-input_ar.desktop new file mode 100644 index 0000000..d1d9769 --- /dev/null +++ b/lxqt-config-input/translations/lxqt-config-input_ar.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ar]=لوحة المفاتيح والفأرة +GenericName[ar]=إعدادات الدّخل +Comment[ar]=اضبط لوحة المفاتيح، والفأرة وأجهزة الدّخل الأخرى diff --git a/lxqt-config-input/translations/lxqt-config-input_ar.ts b/lxqt-config-input/translations/lxqt-config-input_ar.ts deleted file mode 100644 index d264db2..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ar.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_bg.ts b/lxqt-config-input/translations/lxqt-config-input_bg.ts deleted file mode 100644 index d4351ae..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_bg.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Звуков сигнал, когато има грешка при набирането - - - - ms - - - - - Character Repeat - Повторение на знаци - - - - - Long - Дълго - - - - Repeat delay: - Задържане на повторението: - - - - - Short - Кратко - - - - Repeat interval: - Интервал на повторение: - - - - Type in the following box to test your keyboard settings - Наберете в следната кутия, за да тествате клавиатурните настройки - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Настройки на входните устройства - - - Motion - Движение - - - High - Високо - - - Fast - Бързо - - - Sensitivity: - Чувствителност: - - - Low - Ниско - - - Acceleration: - Ускорение: - - - Slow - Бавно - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Лява ръка (смяна на ляв и десен бутони на мишката) - - - Mouse - Мишка - - - Character Repeat - Повторение на знаци - - - Long - Дълго - - - Repeat delay: - Задържане на повторението: - - - Short - Кратко - - - Repeat interval: - Интервал на повторение: - - - Type in the following box to test your keyboard settings - Наберете в следната кутия, за да тествате клавиатурните настройки - - - Beep when there is an error of keyboard input - Звуков сигнал, когато има грешка при набирането - - - Keyboard - Клавиатура - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Движение - - - - High - Високо - - - - Fast - Бързо - - - - Sensitivity: - Чувствителност: - - - - Low - Ниско - - - - Acceleration: - Ускорение: - - - - Slow - Бавно - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Лява ръка (смяна на ляв и десен бутони на мишката) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Мишка - - - - Cursor - - - - - Keyboard - Клавиатура - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_bn.ts b/lxqt-config-input/translations/lxqt-config-input_bn.ts deleted file mode 100644 index eb38981..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_bn.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_bn_IN.ts b/lxqt-config-input/translations/lxqt-config-input_bn_IN.ts deleted file mode 100644 index 5f7e60c..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_bn_IN.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_ca.desktop b/lxqt-config-input/translations/lxqt-config-input_ca.desktop new file mode 100644 index 0000000..7f62fd0 --- /dev/null +++ b/lxqt-config-input/translations/lxqt-config-input_ca.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ca]=Teclat i ratolí +GenericName[ca]=Ajusts de l'entrada +Comment[ca]=Configureu el teclat, el ratolí i altres dispositius d'entrada diff --git a/lxqt-config-input/translations/lxqt-config-input_ca.ts b/lxqt-config-input/translations/lxqt-config-input_ca.ts deleted file mode 100644 index 431b70e..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ca.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_cs.ts b/lxqt-config-input/translations/lxqt-config-input_cs.ts deleted file mode 100644 index 7b52098..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_cs.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_da.ts b/lxqt-config-input/translations/lxqt-config-input_da.ts deleted file mode 100644 index c2ca1f8..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_da.ts +++ /dev/null @@ -1,317 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - Lang - - - - Repeat delay: - Interval mellem gentagelser: - - - - - Short - Kort - - - - Repeat interval: - Gentagelsesinterval: - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Enhedspræference - - - Motion - Bevægelse - - - High - Høj - - - Fast - Hurtig - - - Sensitivity: - Følsomhed: - - - Low - Lav - - - Acceleration: - Enhedspræference - - - Slow - Langsom - - - Left handed (Swap left and right mouse buttons) - Venstrehåndet (Byt rundt på venstre og højre museknap) - - - Mouse - Mus - - - Long - Lang - - - Repeat delay: - Interval mellem gentagelser: - - - Short - Kort - - - Repeat interval: - Gentagelsesinterval: - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Bevægelse - - - - High - Høj - - - - Fast - Hurtig - - - - Sensitivity: - Følsomhed: - - - - Low - Lav - - - - Acceleration: - Enhedspræference - - - - Slow - Langsom - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Venstrehåndet (Byt rundt på venstre og højre museknap) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Mus - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_de.ts b/lxqt-config-input/translations/lxqt-config-input_de.ts deleted file mode 100644 index 1214980..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_de.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - Dialogfenster - - - - Cursor flash time: - Cursorblinkrate: - - - - <b>Keyboard</b> - <b>Tastatur</b> - - - - Beep when there is an error of keyboard input - Signalton bei Fehleingaben - - - - ms - ms - - - - Character Repeat - Zeichenwiederholung - - - - - Long - Lang - - - - Repeat delay: - Verzögerung: - - - - - Short - Kurz - - - - Repeat interval: - Geschwindigkeit: - - - - Type in the following box to test your keyboard settings - Testbereich für Tastatureinstellungen - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Tastenbelegung</b> - - - - Layout - Belegung - - - - Variant - Variante - - - - &Add - H&inzufügen - - - - &Remove - &Entfernen - - - - up - Nach oben - - - - down - Nach unten - - - - Keyboard model: - Tastatur-Modell: - - - - Keys to change layout: - Tastenkombination zum Ändern der Belegung: - - - - None - Keine - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Anmerkung</span>: Falls Sie eine <span style=" font-weight:600;">Eingabemethode</span> wie IBus, uim, fcitx oder gcin verwenden, werden die Einstellungen hier <span style=" font-weight:600;">möglicherweise nicht funktionieren</span>, weil sie von den Eingabemethoden aufgehoben werden.</p></body></html> - - - - MouseConfig - - - Form - Dialogfenster - - - - <b>Mouse</b> - <b>Maus</b> - - - - Motion - Bewegung - - - - High - Hoch - - - - Fast - Schnell - - - - Sensitivity: - Empfindlichkeit: - - - - Low - Niedrig - - - - Acceleration: - Beschleunigung: - - - - Slow - Langsam - - - - - 0 - 0 - - - - Double click interval: - Doppelklickgeschwindigkeit: - - - - ms - ms - - - - Wheel scroll lines: - Mausrad erzeugt Bildlauf um ... Zeilen: - - - - Left handed (Swap left and right mouse buttons) - Linkshändige Bedienung (linke und rechte Maustaste vertauschen) - - - - Single click to activate items - Einfacher Klick aktiviert Elemente - - - - QObject - - - Keyboard and Mouse Settings - Einstellungen von Tastatur und Maus - - - - Mouse - Maus - - - - Cursor - Cursor - - - - Keyboard - Tastatur - - - - Keyboard Layout - Tastenbelegung - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Auswählen der Tastenbelegung - - - - Keyboard layout - Tastenbelegung - - - - Variant - Variante - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_el.ts b/lxqt-config-input/translations/lxqt-config-input_el.ts deleted file mode 100644 index 06b0d1c..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_el.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - Παράθυρο διαλόγου - - - - Cursor flash time: - Χρόνος αναβοσβήματος δρομέα: - - - - <b>Keyboard</b> - <b>Πληκτρολόγιο</b> - - - - Beep when there is an error of keyboard input - Προειδοποιητικός ήχος αν υπάρχει σφάλμα στην είσοδο πληκτρολογίου - - - - ms - ms - - - - Character Repeat - Επανάληψη χαρακτήρα - - - - - Long - Μακρύ - - - - Repeat delay: - Καθυστέρηση επανάληψης: - - - - - Short - Βραχύ - - - - Repeat interval: - Χρονικό διάστημα επανάληψης: - - - - Type in the following box to test your keyboard settings - Πληκτρολογήστε στο παρακάτω πλαίσιο για να δοκιμάσετε τις ρυθμίσεις του πληκτρολογίου - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Διάταξη πληκτρολογίου</b> - - - - Layout - Διάταξη - - - - Variant - Παραλλαγή - - - - &Add - &Προσθήκη - - - - &Remove - Α&φαίρεση - - - - up - πάνω - - - - down - κάτω - - - - Keyboard model: - Μοντέλο πληκτρολογίου: - - - - Keys to change layout: - Πλήκτρα αλλαγής της διάταξης: - - - - None - Κανένα - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Σημείωση</span>: Αν χρησιμοποιείτε μια <span style=" font-weight:600;">μέθοδο εισαγωγής</span>, όπως IBus, uim, fcitx, ή gcin, οι παρούσες ρυθμίσεις ίσως να <span style=" font-weight:600;">μην λειτουργούν</span> ένεκα της αντικατάστασής τους από τις μεθόδους εισαγωγής.</p></body></html> - - - - MouseConfig - - - Form - Παράθυρο διαλόγου - - - - <b>Mouse</b> - <b>Ποντίκι</b> - - - - Motion - Κίνηση - - - - High - Υψηλό - - - - Fast - Γρήγορο - - - - Sensitivity: - Ευαισθησία: - - - - Low - Χαμηλό - - - - Acceleration: - Επιτάχυνση: - - - - Slow - Αργό - - - - - 0 - 0 - - - - Double click interval: - Χρονικό διάστημα διπλού κλικ: - - - - ms - ms - - - - Wheel scroll lines: - Γραμμές κύλισης τροχού: - - - - Left handed (Swap left and right mouse buttons) - Αριστερόχειρας (Εναλλαγή του δεξιού και αριστερού κουμπιού) - - - - Single click to activate items - Ενεργοποίηση των αντικειμένων με μονό κλικ - - - - QObject - - - Keyboard and Mouse Settings - Ρυθμίσεις πληκτρολογίου και ποντικιού - - - - Mouse - Ποντίκι - - - - Cursor - Δρομέας - - - - Keyboard - Πληκτρολόγιο - - - - Keyboard Layout - Διάταξη πληκτρολογίου - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Επιλέξτε μια διάταξη πληκτρολογίου - - - - Keyboard layout - Διάταξη πληκτρολογίου - - - - Variant - Παραλλαγή - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_es.ts b/lxqt-config-input/translations/lxqt-config-input_es.ts deleted file mode 100644 index ec98896..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_es.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Pitar cuando ocurra un error de entrada del teclado - - - - ms - - - - - Character Repeat - Repetición de caracteres - - - - - Long - Largo - - - - Repeat delay: - Retardo de repetición: - - - - - Short - Corto - - - - Repeat interval: - Intervalo de repetición: - - - - Type in the following box to test your keyboard settings - Escriba en el siguiente cuadro para probar la configuración - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Preferencias del dispositivo de entrada - - - Motion - Movimiento - - - High - Alta - - - Fast - Rápido - - - Sensitivity: - Sensibilidad: - - - Low - Baja - - - Acceleration: - Aceleración: - - - Slow - Lento - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Zurdo (invertir botones izquierdo y derecho del ratón) - - - Mouse - Ratón - - - Character Repeat - Repetición de caracteres - - - Long - Largo - - - Repeat delay: - Retardo de repetición: - - - Short - Corto - - - Repeat interval: - Intervalo de repetición: - - - Type in the following box to test your keyboard settings - Escriba en el siguiente cuadro para probar la configuración - - - Beep when there is an error of keyboard input - Pitar cuando ocurra un error de entrada del teclado - - - Keyboard - Teclado - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Movimiento - - - - High - Alta - - - - Fast - Rápido - - - - Sensitivity: - Sensibilidad: - - - - Low - Baja - - - - Acceleration: - Aceleración: - - - - Slow - Lento - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Zurdo (invertir botones izquierdo y derecho del ratón) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Ratón - - - - Cursor - - - - - Keyboard - Teclado - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_eu.ts b/lxqt-config-input/translations/lxqt-config-input_eu.ts deleted file mode 100644 index ade7da1..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_eu.ts +++ /dev/null @@ -1,329 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - Karaktere-errepikapena - - - - - Long - Luzea - - - - Repeat delay: - Errepikatze atzerapena: - - - - - Short - Laburra - - - - Repeat interval: - Errepikatze tartea: - - - - Type in the following box to test your keyboard settings - Idatzi ondorengo testu-koadroan zure teklatuaren ezarpenak probatzeko - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Sarrerako gailuaren hobespenak - - - Motion - Mugimendua - - - High - Altua - - - Fast - Azkarra - - - Sensitivity: - Sentikortasuna: - - - Low - Baxua - - - Acceleration: - Azelerazioa: - - - Slow - Mantsoa - - - 0 - 0 - - - Mouse - Sagua - - - Character Repeat - Karaktere-errepikapena - - - Long - Luzea - - - Repeat delay: - Errepikatze atzerapena: - - - Short - Laburra - - - Repeat interval: - Errepikatze tartea: - - - Type in the following box to test your keyboard settings - Idatzi ondorengo testu-koadroan zure teklatuaren ezarpenak probatzeko - - - Keyboard - Teklatua - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Mugimendua - - - - High - Altua - - - - Fast - Azkarra - - - - Sensitivity: - Sentikortasuna: - - - - Low - Baxua - - - - Acceleration: - Azelerazioa: - - - - Slow - Mantsoa - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Sagua - - - - Cursor - - - - - Keyboard - Teklatua - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_fi.ts b/lxqt-config-input/translations/lxqt-config-input_fi.ts deleted file mode 100644 index f13541f..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_fi.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Piippaa kun näppäimistön näppäilyssä tapahtuu virhe - - - - ms - - - - - Character Repeat - Merkin toisto - - - - - Long - Pitkä - - - - Repeat delay: - Toiston viive: - - - - - Short - Lyhyt - - - - Repeat interval: - Toistoväli: - - - - Type in the following box to test your keyboard settings - Voit kokeilla näppäimistön asetuksia alla olevaan laatikkoon - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Syötelaitteiden asetukset - - - Motion - Liike - - - High - Suuri - - - Fast - Nopea - - - Sensitivity: - Herkkyys: - - - Low - Vähäinen - - - Acceleration: - Kiihdytys: - - - Slow - Hidas - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Vasenkätinen (vaihda oikean ja vasemman hiiren napin paikkoja) - - - Mouse - Hiiri - - - Character Repeat - Merkin toisto - - - Long - Pitkä - - - Repeat delay: - Toiston viive: - - - Short - Lyhyt - - - Repeat interval: - Toistoväli: - - - Type in the following box to test your keyboard settings - Voit kokeilla näppäimistön asetuksia alla olevaan laatikkoon - - - Beep when there is an error of keyboard input - Piippaa kun näppäimistön näppäilyssä tapahtuu virhe - - - Keyboard - Näppäimistö - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Liike - - - - High - Suuri - - - - Fast - Nopea - - - - Sensitivity: - Herkkyys: - - - - Low - Vähäinen - - - - Acceleration: - Kiihdytys: - - - - Slow - Hidas - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Vasenkätinen (vaihda oikean ja vasemman hiiren napin paikkoja) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Hiiri - - - - Cursor - - - - - Keyboard - Näppäimistö - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_fr.ts b/lxqt-config-input/translations/lxqt-config-input_fr.ts deleted file mode 100644 index c8c8f9b..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_fr.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Émettre un son lors d'une erreur d'entrée sur le clavier - - - - ms - - - - - Character Repeat - Répétition de caractère - - - - - Long - Long - - - - Repeat delay: - Délai de répétition : - - - - - Short - Court - - - - Repeat interval: - Intervalle de répétition : - - - - Type in the following box to test your keyboard settings - Tapez dans le champ ci-dessous pour tester vos paramètres clavier - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Préférences des périphériques d'entrée - - - Motion - Mouvement - - - High - Forte - - - Fast - Rapide - - - Sensitivity: - Sensibilité : - - - Low - Faible - - - Acceleration: - Accélération : - - - Slow - Lente - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Gaucher (inverse les boutons droit et gauche de la souris) - - - Mouse - Souris - - - Character Repeat - Répétition de caractère - - - Long - Long - - - Repeat delay: - Délai de répétition : - - - Short - Court - - - Repeat interval: - Intervalle de répétition : - - - Type in the following box to test your keyboard settings - Tapez dans le champ ci-dessous pour tester vos paramètres clavier - - - Beep when there is an error of keyboard input - Émettre un son lors d'une erreur d'entrée sur le clavier - - - Keyboard - Clavier - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Mouvement - - - - High - Forte - - - - Fast - Rapide - - - - Sensitivity: - Sensibilité : - - - - Low - Faible - - - - Acceleration: - Accélération : - - - - Slow - Lente - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Gaucher (inverse les boutons droit et gauche de la souris) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Souris - - - - Cursor - - - - - Keyboard - Clavier - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_gl.ts b/lxqt-config-input/translations/lxqt-config-input_gl.ts deleted file mode 100644 index 2beab8e..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_gl.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Pitar cando se produza un erro de entrada de teclado - - - - ms - - - - - Character Repeat - Repetición de caracteres - - - - - Long - Longa - - - - Repeat delay: - Atraso da repetición: - - - - - Short - Curta - - - - Repeat interval: - Intervalo de repetición: - - - - Type in the following box to test your keyboard settings - Escriba na seguinte caixa para probar os axustes do teclado - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Preferencias do dispositivos de entrada - - - Motion - Movemento - - - High - Alto - - - Fast - Rápido - - - Sensitivity: - Sensibilidade: - - - Low - Baixa - - - Acceleration: - Aceleración: - - - Slow - Lenta - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Zurdo (Intercambiar botóns dereito e esquerdo do rato) - - - Mouse - Rato - - - Character Repeat - Repetición de caracteres - - - Long - Longa - - - Repeat delay: - Atraso da repetición: - - - Short - Curta - - - Repeat interval: - Intervalo de repetición: - - - Type in the following box to test your keyboard settings - Escriba na seguinte caixa para probar os axustes do teclado - - - Beep when there is an error of keyboard input - Pitar cando se produza un erro de entrada de teclado - - - Keyboard - Teclado - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Movemento - - - - High - Alto - - - - Fast - Rápido - - - - Sensitivity: - Sensibilidade: - - - - Low - Baixa - - - - Acceleration: - Aceleración: - - - - Slow - Lenta - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Zurdo (Intercambiar botóns dereito e esquerdo do rato) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Rato - - - - Cursor - - - - - Keyboard - Teclado - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_hr.ts b/lxqt-config-input/translations/lxqt-config-input_hr.ts deleted file mode 100644 index e91824f..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_hr.ts +++ /dev/null @@ -1,333 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - Ponavljanje znaka - - - - - Long - Dugačko - - - - Repeat delay: - Odgoda ponavljanja: - - - - - Short - Kratko - - - - Repeat interval: - Interval ponavljanja: - - - - Type in the following box to test your keyboard settings - Tipkajte u slijedeće polje da biste testirali postavke tipkovnice - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Osobitosti ulaznog uređaja - - - Motion - Pokret: - - - High - Visok - - - Fast - Brzo - - - Sensitivity: - Osijetljivost: - - - Low - Nisko - - - Acceleration: - Ubrzanje: - - - Slow - Sporo - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Ljevoruki (premješta lijevo i desno dugme miša) - - - Mouse - Miš - - - Character Repeat - Ponavljanje znaka - - - Long - Dugačko - - - Repeat delay: - Odgoda ponavljanja: - - - Short - Kratko - - - Repeat interval: - Interval ponavljanja: - - - Type in the following box to test your keyboard settings - Tipkajte u slijedeće polje da biste testirali postavke tipkovnice - - - Keyboard - Tipkovnica - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Pokret: - - - - High - Visok - - - - Fast - Brzo - - - - Sensitivity: - Osijetljivost: - - - - Low - Nisko - - - - Acceleration: - Ubrzanje: - - - - Slow - Sporo - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Ljevoruki (premješta lijevo i desno dugme miša) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Miš - - - - Cursor - - - - - Keyboard - Tipkovnica - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_hu.ts b/lxqt-config-input/translations/lxqt-config-input_hu.ts deleted file mode 100644 index d00fbc9..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_hu.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - Űrlap - - - - Cursor flash time: - Kurzos villogási idő - - - - <b>Keyboard</b> - <b>Billentyűzet</b> - - - - Beep when there is an error of keyboard input - Billentyű hibánál csipogás - - - - ms - - - - - Character Repeat - Ismétlés - - - - - Long - Sok - - - - Repeat delay: - Ismétlési késleltetés: - - - - - Short - Rövid - - - - Repeat interval: - Ismétlési időköz - - - - Type in the following box to test your keyboard settings - Írj ide valamit tesztelésre! - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Billentyűkiosztás</b> - - - - Layout - Kiosztás - - - - Variant - Változat - - - - &Add - Hozzá&ad - - - - &Remove - Tö&röl - - - - up - föl - - - - down - le - - - - Keyboard model: - Billentyűzet modell: - - - - Keys to change layout: - Kiosztásváltoztató billentyű: - - - - None - Nincs - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Megjegyzés</span>: Ha bevitelként <span style=" font-weight:600;">például</span>, IBus, uim, fcitx, or gcin, szolgálnakl, ezek a beállítások <span style=" font-weight:600;">nem működnek</span> mert azok a beviteli módok ezt felülírják.</p></body></html> - - - - MouseConfig - - - Form - Űrlap - - - - <b>Mouse</b> - <b>Egér</b> - - - - Motion - Mozgás - - - - High - Nagy - - - - Fast - Gyors - - - - Sensitivity: - Érzékenység: - - - - Low - Kicsi - - - - Acceleration: - Gyorsulás: - - - - Slow - Lassú - - - - - 0 - - - - - Double click interval: - Duplakattintás: - - - - ms - - - - - Wheel scroll lines: - Gördítő sorok - - - - Left handed (Swap left and right mouse buttons) - Balkezes (Bal és jobb gombok cseréje) - - - - Single click to activate items - Egykattintásos aktiválás - - - - QObject - - - Keyboard and Mouse Settings - Billentyű és egérbeállítás - - - - Mouse - Egér - - - - Cursor - Kurzor - - - - Keyboard - Billentyűzet - - - - Keyboard Layout - Billentyűkiosztás - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Billentyűzetkiosztás választása - - - - Keyboard layout - Billentyűkiosztás - - - - Variant - Változat - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_id.ts b/lxqt-config-input/translations/lxqt-config-input_id.ts deleted file mode 100644 index 172bd47..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_id.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Bip ketika ada galat masukan papan tik - - - - ms - - - - - Character Repeat - Pengulangan Karakter - - - - - Long - Lama - - - - Repeat delay: - Tundaan pengulangan: - - - - - Short - Singkat - - - - Repeat interval: - Interval pengulangan: - - - - Type in the following box to test your keyboard settings - Ketik dalam kotak berikut untuk menguji pengaturan papan tik Anda - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Preferensi Perangkat Masukan - - - Motion - Gerakan - - - High - Tinggi - - - Fast - Cepat - - - Sensitivity: - Sensitivitas: - - - Low - Rendah - - - Acceleration: - Akselerasi: - - - Slow - Lambat - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Kidal (Tukar tombol tetikus kiri dan kanan) - - - Mouse - Tetikus - - - Character Repeat - Pengulangan Karakter - - - Long - Lama - - - Repeat delay: - Tundaan pengulangan: - - - Short - Singkat - - - Repeat interval: - Interval pengulangan: - - - Type in the following box to test your keyboard settings - Ketik dalam kotak berikut untuk menguji pengaturan papan tik Anda - - - Beep when there is an error of keyboard input - Bip ketika ada galat masukan papan tik - - - Keyboard - Papan tik - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Gerakan - - - - High - Tinggi - - - - Fast - Cepat - - - - Sensitivity: - Sensitivitas: - - - - Low - Rendah - - - - Acceleration: - Akselerasi: - - - - Slow - Lambat - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Kidal (Tukar tombol tetikus kiri dan kanan) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Tetikus - - - - Cursor - - - - - Keyboard - Papan tik - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_is.ts b/lxqt-config-input/translations/lxqt-config-input_is.ts deleted file mode 100644 index 4af639e..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_is.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_it.desktop b/lxqt-config-input/translations/lxqt-config-input_it.desktop index f13522d..db4e585 100644 --- a/lxqt-config-input/translations/lxqt-config-input_it.desktop +++ b/lxqt-config-input/translations/lxqt-config-input_it.desktop @@ -1,6 +1,6 @@ # Translations Name[it]=Tastiera e mouse -GenericName[it]=Configurazione dei dispositivi di immissione +GenericName[it]=Configura i dispositivi di immissione Comment[it]=Configura tastiera, mouse e altri dispositivi di immissione diff --git a/lxqt-config-input/translations/lxqt-config-input_it.ts b/lxqt-config-input/translations/lxqt-config-input_it.ts deleted file mode 100644 index 1f4418d..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_it.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - Intervallo lampeggio cursore: - - - - <b>Keyboard</b> - <b>Tastiera</b> - - - - Beep when there is an error of keyboard input - Emetti un beep per gli errori di input da tastiera - - - - ms - - - - - Character Repeat - Ripetizione caratteri - - - - - Long - Lungo - - - - Repeat delay: - Attesa ripetizione: - - - - - Short - Corto - - - - Repeat interval: - Intervallo ripetizione: - - - - Type in the following box to test your keyboard settings - Scrivere nella casella sottostante per provare le impostazioni della tastiera - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - Mappatura della tastiera - - - - Layout - Mappatura - - - - Variant - Variante - - - - &Add - &Aggiungi - - - - &Remove - &Rimuovi - - - - up - su - - - - down - giù - - - - Keyboard model: - Modello della tastiera: - - - - Keys to change layout: - Scorciatoia per cambio mappatura: - - - - None - Nessuna - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <b>Nota:</b> Se viene usato un metodo di input come IBus, uim, fcitx o gcin questi settaggi potrebbero non avere effetto. - - - - MainDialog - - Input Device Preferences - Preferenze dei dispositivi di ingresso - - - Motion - Movimento - - - High - Alta - - - Fast - Veloce - - - Sensitivity: - Sensibilità: - - - Low - Bassa - - - Acceleration: - Accelerazione: - - - Slow - Lenta - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Mancino (inverte tasto destro e sinistro del mouse) - - - Mouse - Mouse - - - Character Repeat - Ripetizione caratteri - - - Long - Lungo - - - Repeat delay: - Attesa ripetizione: - - - Short - Corto - - - Repeat interval: - Intervallo ripetizione: - - - Type in the following box to test your keyboard settings - Scrivere nella casella sottostante per provare le impostazioni della tastiera - - - Beep when there is an error of keyboard input - Emetti un beep per gli errori di input da tastiera - - - Keyboard - Tastiera - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Movimento - - - - High - Alta - - - - Fast - Veloce - - - - Sensitivity: - Sensibilità: - - - - Low - Bassa - - - - Acceleration: - Accelerazione: - - - - Slow - Lenta - - - - - 0 - 0 - - - - Double click interval: - Intervallo doppio clic: - - - - ms - - - - - Wheel scroll lines: - Righe che scrolla la rotella: - - - - Left handed (Swap left and right mouse buttons) - Mancino (inverte tasto destro e sinistro del mouse) - - - - Single click to activate items - Clic singolo per attivare gli elementi - - - - QObject - - - Keyboard and Mouse Settings - Impostazioni per mouse e tastiera - - - - Mouse - Mouse - - - - Cursor - Cursore - - - - Keyboard - Tastiera - - - - Keyboard Layout - Mappatura della tastiera - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Selezione una mappatura - - - - Keyboard layout - <b>Mappatura della tastiera></b> - - - - Variant - Variante - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_ja.ts b/lxqt-config-input/translations/lxqt-config-input_ja.ts deleted file mode 100644 index 18d41fd..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ja.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - フォーム - - - - Cursor flash time: - カーソルの点滅時間 - - - - <b>Keyboard</b> - <b>キーボード</b> - - - - Beep when there is an error of keyboard input - キーボード入力にエラーがあるときはビープ音を出す - - - - ms - ms - - - - Character Repeat - 文字リピート - - - - - Long - 長い - - - - Repeat delay: - リピートするまでの遅延: - - - - - Short - 短い - - - - Repeat interval: - リピートの間隔: - - - - Type in the following box to test your keyboard settings - 下のボックスにタイプして、キーボード設定のテストをしてください - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>キーボードレイアウト</b> - - - - Layout - レイアウト - - - - Variant - バリアント - - - - &Add - 追加(&A) - - - - &Remove - 削除(&R) - - - - up - 上へ - - - - down - 下へ - - - - Keyboard model: - キーボードの型式: - - - - Keys to change layout: - レイアウトを変更するためのキー - - - - None - なし - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">注意</span>: <span style=" font-weight:600;">入力メソッド</span>(例: IBus や uim、fcitx、gcin)を使用している場合には, この設定は<span style=" font-weight:600;">機能しないことがあります</span>。入力メソッドが設定を上書きしてしまうためです。</p></body></html> - - - - MouseConfig - - - Form - フォーム - - - - <b>Mouse</b> - <b>マウス</b> - - - - Motion - 動作 - - - - High - 高い - - - - Fast - 速い - - - - Sensitivity: - 感度: - - - - Low - 低い - - - - Acceleration: - 加速: - - - - Slow - 遅い - - - - - 0 - 0 - - - - Double click interval: - ダブルクリックの間隔: - - - - ms - ms - - - - Wheel scroll lines: - ホイールでスクロールする行数: - - - - Left handed (Swap left and right mouse buttons) - 左利き (マウスボタンの左右を入れ替える) - - - - Single click to activate items - シングルクリックでアイテムを有効にする - - - - QObject - - - Keyboard and Mouse Settings - キーボードとマウスの設定 - - - - Mouse - マウス - - - - Cursor - カーソル - - - - Keyboard - キーボード - - - - Keyboard Layout - キーボードレイアウト - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - キーボードレイアウトを選択 - - - - Keyboard layout - キーボードレイアウト - - - - Variant - バリアント - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_nl.ts b/lxqt-config-input/translations/lxqt-config-input_nl.ts deleted file mode 100644 index ce3e93a..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_nl.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Piep wanneer er een toetsenbordinvoerfout optreedt - - - - ms - - - - - Character Repeat - Tekenherhaling - - - - - Long - Lang - - - - Repeat delay: - Herhalingsvertraging: - - - - - Short - Kort - - - - Repeat interval: - Herhalingstussenpoze: - - - - Type in the following box to test your keyboard settings - Tik iets in het volgende vak om uw toetsenbordinstellingen uit te proberen - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Voorkeuren van invoerapparaat - - - Motion - Beweging - - - High - Hoog - - - Fast - Snel - - - Sensitivity: - Gevoeligheid: - - - Low - Laag - - - Acceleration: - Versnelling: - - - Slow - Langzaam - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Linkshandig (wissel linkse en rechtse muisknoppen om) - - - Mouse - Muis - - - Character Repeat - Tekenherhaling - - - Long - Lang - - - Repeat delay: - Herhalingsvertraging: - - - Short - Kort - - - Repeat interval: - Herhalingstussenpoze: - - - Type in the following box to test your keyboard settings - Tik iets in het volgende vak om uw toetsenbordinstellingen uit te proberen - - - Beep when there is an error of keyboard input - Piep wanneer er een toetsenbordinvoerfout optreedt - - - Keyboard - Toetsenbord - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Beweging - - - - High - Hoog - - - - Fast - Snel - - - - Sensitivity: - Gevoeligheid: - - - - Low - Laag - - - - Acceleration: - Versnelling: - - - - Slow - Langzaam - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Linkshandig (wissel linkse en rechtse muisknoppen om) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Muis - - - - Cursor - - - - - Keyboard - Toetsenbord - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_pa.ts b/lxqt-config-input/translations/lxqt-config-input_pa.ts deleted file mode 100644 index 7d6df7b..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_pa.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_pl.ts b/lxqt-config-input/translations/lxqt-config-input_pl.ts deleted file mode 100644 index 5723ad3..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_pl.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - Częstotliwość migania kursora: - - - - <b>Keyboard</b> - <b>Klawiatura</b> - - - - Beep when there is an error of keyboard input - Brzęczyk, gdy wystąpi błąd podczas wprowadzania z klawiatury - - - - ms - ms - - - - Character Repeat - Powtórzenia znaków - - - - - Long - Długie - - - - Repeat delay: - Opóźnienie powtórki: - - - - - Short - Krótkie - - - - Repeat interval: - Częstotliwość powtarzania: - - - - Type in the following box to test your keyboard settings - Zacznij pisać w okienku, aby przetestować ustawienia swojej klawiatury - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Układ klawiatury</b> - - - - Layout - Układ - - - - Variant - Wariant - - - - &Add - &Dodaj - - - - &Remove - &Usuń - - - - up - do góry - - - - down - w dół - - - - Keyboard model: - Model klawiatury: - - - - Keys to change layout: - Klawisze do zmiany układu: - - - - None - Brak - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Notka</span>: Jeśli używasz <span style=" font-weight:600;">metod wejścia</span>, jak IBus, uim, fcitx, lub gcin, te ustawienia <span style=" font-weight:600;">mogą nie działać</span> ponieważ będą nadpisywane przez ustawienia tamtych metod.</p></body></html> - - - - MainDialog - - Input Device Preferences - Preferencje urządzeń wejściowych - - - Motion - Ruch - - - High - Wysoka - - - Fast - Szybkie - - - Sensitivity: - Czułość: - - - Low - Niska - - - Acceleration: - Przyspieszenie: - - - Slow - Wolne - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Leworęczna (Zamiana lewego i prawego przycisku myszy) - - - Mouse - Mysz - - - Character Repeat - Powtórzenia znaków - - - Long - Długie - - - Repeat delay: - Opóźnienie powtórki: - - - Short - Krótkie - - - Repeat interval: - Częstotliwość powtarzania: - - - Type in the following box to test your keyboard settings - Zacznij pisać w okienku, aby przetestować ustawienia swojej klawiatury - - - Beep when there is an error of keyboard input - Brzęczyk, gdy wystąpi błąd podczas wprowadzania z klawiatury - - - Keyboard - Klawiatura - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - <b>Mysz</b> - - - - Motion - Ruch - - - - High - Wysoka - - - - Fast - Szybkie - - - - Sensitivity: - Czułość: - - - - Low - Niska - - - - Acceleration: - Przyspieszenie: - - - - Slow - Wolne - - - - - 0 - 0 - - - - Double click interval: - Okres podwójnego kliknięcia: - - - - ms - ms - - - - Wheel scroll lines: - Przwijanie kółkiem (linie): - - - - Left handed (Swap left and right mouse buttons) - Leworęczna (zamiana lewego i prawego przycisku myszy) - - - - Single click to activate items - Pojedyńcze kliknięcie wyzwala akcję - - - - QObject - - - Keyboard and Mouse Settings - Ustawienia myszy i klawiatury - - - - Mouse - Mysz - - - - Cursor - Kursor - - - - Keyboard - Klawiatura - - - - Keyboard Layout - Układ klawiatury - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Wybierz układ klawiatury - - - - Keyboard layout - Układ klawiatury - - - - Variant - Wariant - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_pt.ts b/lxqt-config-input/translations/lxqt-config-input_pt.ts deleted file mode 100644 index 01ee5d1..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_pt.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Reproduzir um som se ocorrer um erro de teclado - - - - ms - - - - - Character Repeat - Repetição de caracteres - - - - - Long - Longa - - - - Repeat delay: - Atraso de repetição: - - - - - Short - Curto - - - - Repeat interval: - Intervalo de repetição: - - - - Type in the following box to test your keyboard settings - Escreva algo na caixa de teste abaixo para testar o teclado - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Preferências de dispositivos - - - Motion - Movimento - - - High - Muito rápido - - - Fast - Rápido - - - Sensitivity: - Sensibilidade: - - - Low - Baixa - - - Acceleration: - Aceleração: - - - Slow - Lenta - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Canhoto (inverter botões do rato) - - - Mouse - Rato - - - Character Repeat - Repetição de caracteres - - - Long - Longa - - - Repeat delay: - Atraso de repetição: - - - Short - Curto - - - Repeat interval: - Intervalo de repetição: - - - Type in the following box to test your keyboard settings - Escreva algo na caixa de teste abaixo para testar o teclado - - - Beep when there is an error of keyboard input - Reproduzir um som se ocorrer um erro de teclado - - - Keyboard - Teclado - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Movimento - - - - High - Muito rápido - - - - Fast - Rápido - - - - Sensitivity: - Sensibilidade: - - - - Low - Baixa - - - - Acceleration: - Aceleração: - - - - Slow - Lenta - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Canhoto (inverter botões do rato) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Rato - - - - Cursor - - - - - Keyboard - Teclado - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_ru.desktop b/lxqt-config-input/translations/lxqt-config-input_ru.desktop index 6736259..6d441bb 100644 --- a/lxqt-config-input/translations/lxqt-config-input_ru.desktop +++ b/lxqt-config-input/translations/lxqt-config-input_ru.desktop @@ -1,4 +1,4 @@ # Translations -Comment[ru]=Настроить клавиатуру, мышь и доругие устройства ввода +Comment[ru]=Настроить клавиатуру, мышь и другие устройства ввода Name[ru]=Клавиатура и мышь GenericName[ru]=Настройки ввода \ No newline at end of file diff --git a/lxqt-config-input/translations/lxqt-config-input_ru.ts b/lxqt-config-input/translations/lxqt-config-input_ru.ts deleted file mode 100644 index c46f176..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ru.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - Частота мерцания курсора: - - - - <b>Keyboard</b> - <b>Клавиатура</b> - - - - Beep when there is an error of keyboard input - Пищать об ошибке ввода с клавиатуры - - - - ms - мс - - - - Character Repeat - Повтор символа - - - - - Long - Длинная - - - - Repeat delay: - Задержка повтора: - - - - - Short - Короткая - - - - Repeat interval: - Пауза между повтором: - - - - Type in the following box to test your keyboard settings - Поле для проверки настроек клавиатуры - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Раскладка клавиатуры</b> - - - - Layout - Раскладка - - - - Variant - Вариант - - - - &Add - &Добавить - - - - &Remove - &Удалить - - - - up - выше - - - - down - ниже - - - - Keyboard model: - Модель клавиатуры: - - - - Keys to change layout: - Клавиши смены раскладки: - - - - None - Нет - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Внимание</span>: Если вы используете <span style=" font-weight:600;">метод ввода</span>, такой как IBus, uim, fcitx, или gcin, настройки здесь <span style=" font-weight:600;">могут не работать</span> поскольку они переопределятся этим методом ввода.</p></body></html> - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - <b>Мышь</b> - - - - Motion - Движение - - - - High - Высокая - - - - Fast - Быстро - - - - Sensitivity: - Чувствительность: - - - - Low - Низкая - - - - Acceleration: - Ускорение: - - - - Slow - Медленно - - - - - 0 - - - - - Double click interval: - Интервал двойного щелчка: - - - - ms - мс - - - - Wheel scroll lines: - Колёсико перематывает строк: - - - - Left handed (Swap left and right mouse buttons) - Для левшей (поменять функции левой и правой кнопок мыши) - - - - Single click to activate items - Один клик для активации элементов - - - - QObject - - - Keyboard and Mouse Settings - Настройки клавиатуры и мыши - - - - Mouse - Мышь - - - - Cursor - Курсор - - - - Keyboard - Клавиатура - - - - Keyboard Layout - Раскладка клавиатура - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Выбрать раскладку клавиатуры - - - - Keyboard layout - Раскладка клавиатуры - - - - Variant - Вариант - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_ru_RU.desktop b/lxqt-config-input/translations/lxqt-config-input_ru_RU.desktop deleted file mode 100644 index d6c1de1..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ru_RU.desktop +++ /dev/null @@ -1,4 +0,0 @@ -# Translations -Comment[ru_RU]=Настроить клавиатуру, мышь и доругие устройства ввода -Name[ru_RU]=Клавиатура и мышь -GenericName[ru_RU]=Настройки ввода \ No newline at end of file diff --git a/lxqt-config-input/translations/lxqt-config-input_ru_RU.ts b/lxqt-config-input/translations/lxqt-config-input_ru_RU.ts deleted file mode 100644 index 1ce7a0e..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_ru_RU.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - Частота мерцания курсора: - - - - <b>Keyboard</b> - <b>Клавиатура</b> - - - - Beep when there is an error of keyboard input - Пищать об ошибке ввода с клавиатуры - - - - ms - мс - - - - Character Repeat - Повтор символа - - - - - Long - Длинная - - - - Repeat delay: - Задержка повтора: - - - - - Short - Короткая - - - - Repeat interval: - Пауза между повтором: - - - - Type in the following box to test your keyboard settings - Поле для проверки настроек клавиатуры - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - <b>Раскладка клавиатуры</b> - - - - Layout - Раскладка - - - - Variant - Вариант - - - - &Add - &Добавить - - - - &Remove - &Удалить - - - - up - выше - - - - down - ниже - - - - Keyboard model: - Модель клавиатуры: - - - - Keys to change layout: - Клавиши смены раскладки: - - - - None - Нет - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - <html><head/><body><p><span style=" font-weight:600;">Внимание</span>: Если вы используете <span style=" font-weight:600;">метод ввода</span>, такой как IBus, uim, fcitx, или gcin, настройки здесь <span style=" font-weight:600;">могут не работать</span> поскольку они переопределятся этим методом ввода.</p></body></html> - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - <b>Мышь</b> - - - - Motion - Движение - - - - High - Высокая - - - - Fast - Быстро - - - - Sensitivity: - Чувствительность: - - - - Low - Низкая - - - - Acceleration: - Ускорение: - - - - Slow - Медленно - - - - - 0 - - - - - Double click interval: - Интервал двойного щелчка: - - - - ms - мс - - - - Wheel scroll lines: - Колёсико перематывает строк: - - - - Left handed (Swap left and right mouse buttons) - Для левшей (поменять функции левой и правой кнопок мыши) - - - - Single click to activate items - Один клик для активации элементов - - - - QObject - - - Keyboard and Mouse Settings - Настройки клавиатуры и мыши - - - - Mouse - Мышь - - - - Cursor - Курсор - - - - Keyboard - Клавиатура - - - - Keyboard Layout - Раскладка клавиатура - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - Выбрать раскладку клавиатуры - - - - Keyboard layout - Раскладка клавиатуры - - - - Variant - Вариант - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_sv.ts b/lxqt-config-input/translations/lxqt-config-input_sv.ts deleted file mode 100644 index dc53abc..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_sv.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - Avge ett pip när ett fel uppstår vid tangentbordsinmatning - - - - ms - - - - - Character Repeat - Teckenupprepning - - - - - Long - Lång - - - - Repeat delay: - Tid innan upprepning: - - - - - Short - Kort - - - - Repeat interval: - Tid mellan upprepningar: - - - - Type in the following box to test your keyboard settings - För att pröva dina inställningar kan du skriva i följande ruta - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - Egenskaper för inmatningsenhet - - - Motion - Rörelse - - - High - Hög - - - Fast - Snabb - - - Sensitivity: - Känslighet: - - - Low - Låg - - - Acceleration: - Acceleration: - - - Slow - Långsam - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - Vänsterhänt (byt funktioner för vänster och höger musknapp) - - - Mouse - Mus - - - Character Repeat - Teckenupprepning - - - Long - Lång - - - Repeat delay: - Tid innan upprepning: - - - Short - Kort - - - Repeat interval: - Tid mellan upprepningar: - - - Type in the following box to test your keyboard settings - För att pröva dina inställningar kan du skriva i följande ruta - - - Beep when there is an error of keyboard input - Avge ett pip när ett fel uppstår vid tangentbordsinmatning - - - Keyboard - Tangentbord - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - Rörelse - - - - High - Hög - - - - Fast - Snabb - - - - Sensitivity: - Känslighet: - - - - Low - Låg - - - - Acceleration: - Acceleration: - - - - Slow - Långsam - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - Vänsterhänt (byt funktioner för vänster och höger musknapp) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - Mus - - - - Cursor - - - - - Keyboard - Tangentbord - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_uk.ts b/lxqt-config-input/translations/lxqt-config-input_uk.ts deleted file mode 100644 index c8d037e..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_uk.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_zh_CN.ts b/lxqt-config-input/translations/lxqt-config-input_zh_CN.ts deleted file mode 100644 index 182366b..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_zh_CN.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - 键盘输入出错时蜂鸣 - - - - ms - - - - - Character Repeat - 字符重复 - - - - - Long - - - - - Repeat delay: - 重复延迟: - - - - - Short - - - - - Repeat interval: - 重复间隔: - - - - Type in the following box to test your keyboard settings - 在下面的框中输入字符,以测试键盘设置 - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - 输入设备首选项 - - - Motion - 运动 - - - High - - - - Fast - 快速 - - - Sensitivity: - 敏感度: - - - Low - - - - Acceleration: - 加速 : - - - Slow - - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - 惯用左手(交换左右鼠标按键) - - - Mouse - 鼠标 - - - Character Repeat - 字符重复 - - - Long - - - - Repeat delay: - 重复延迟: - - - Short - - - - Repeat interval: - 重复间隔: - - - Type in the following box to test your keyboard settings - 在下面的框中输入字符,以测试键盘设置 - - - Beep when there is an error of keyboard input - 键盘输入出错时蜂鸣 - - - Keyboard - 键盘 - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - 运动 - - - - High - - - - - Fast - 快速 - - - - Sensitivity: - 敏感度: - - - - Low - - - - - Acceleration: - 加速 : - - - - Slow - - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - 惯用左手(交换左右鼠标按键) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - 鼠标 - - - - Cursor - - - - - Keyboard - 键盘 - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_zh_HK.ts b/lxqt-config-input/translations/lxqt-config-input_zh_HK.ts deleted file mode 100644 index 504462d..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_zh_HK.ts +++ /dev/null @@ -1,258 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - - - - - ms - - - - - Character Repeat - - - - - - Long - - - - - Repeat delay: - - - - - - Short - - - - - Repeat interval: - - - - - Type in the following box to test your keyboard settings - - - - - - 0 - - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - - - - - High - - - - - Fast - - - - - Sensitivity: - - - - - Low - - - - - Acceleration: - - - - - Slow - - - - - - 0 - - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - - - - - Cursor - - - - - Keyboard - - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-input/translations/lxqt-config-input_zh_TW.ts b/lxqt-config-input/translations/lxqt-config-input_zh_TW.ts deleted file mode 100644 index 9870b93..0000000 --- a/lxqt-config-input/translations/lxqt-config-input_zh_TW.ts +++ /dev/null @@ -1,337 +0,0 @@ - - - - - KeyboardConfig - - - Form - - - - - Cursor flash time: - - - - - <b>Keyboard</b> - - - - - Beep when there is an error of keyboard input - 鍵盤輸入錯誤時發出嗶聲 - - - - ms - - - - - Character Repeat - 字元重複 - - - - - Long - - - - - Repeat delay: - 重複延遲: - - - - - Short - - - - - Repeat interval: - 重複間隔時間: - - - - Type in the following box to test your keyboard settings - 在下列方框裡輸入文字測試你的鍵盤設定 - - - - - 0 - 0 - - - - Turn on NumLock after login - - - - - KeyboardLayoutConfig - - - <b>Keyboard Layout</b> - - - - - Layout - - - - - Variant - - - - - &Add - - - - - &Remove - - - - - up - - - - - down - - - - - Keyboard model: - - - - - Keys to change layout: - - - - - None - - - - - <html><head/><body><p><span style=" font-weight:600;">Note</span>: If you are using an <span style=" font-weight:600;">input method</span>, such as IBus, uim, fcitx, or gcin, the settings here <span style=" font-weight:600;">might not work</span> because they are overridden by the input methods.</p></body></html> - - - - - MainDialog - - Input Device Preferences - 輸入裝置偏好設定 - - - Motion - 移動 - - - High - - - - Fast - - - - Sensitivity: - 敏感度: - - - Low - - - - Acceleration: - 加速: - - - Slow - - - - 0 - 0 - - - Left handed (Swap left and right mouse buttons) - 左撇子 (對換滑鼠左右鍵) - - - Mouse - 滑鼠 - - - Character Repeat - 字元重複 - - - Long - - - - Repeat delay: - 重複延遲: - - - Short - - - - Repeat interval: - 重複間隔時間: - - - Type in the following box to test your keyboard settings - 在下列方框裡輸入文字測試你的鍵盤設定 - - - Beep when there is an error of keyboard input - 鍵盤輸入錯誤時發出嗶聲 - - - Keyboard - 鍵盤 - - - - MouseConfig - - - Form - - - - - <b>Mouse</b> - - - - - Motion - 移動 - - - - High - - - - - Fast - - - - - Sensitivity: - 敏感度: - - - - Low - - - - - Acceleration: - 加速: - - - - Slow - - - - - - 0 - 0 - - - - Double click interval: - - - - - ms - - - - - Wheel scroll lines: - - - - - Left handed (Swap left and right mouse buttons) - 左撇子 (對換滑鼠左右鍵) - - - - Single click to activate items - - - - - QObject - - - Keyboard and Mouse Settings - - - - - Mouse - 滑鼠 - - - - Cursor - - - - - Keyboard - 鍵盤 - - - - Keyboard Layout - - - - - SelectKeyboardLayoutDialog - - - Select a keyboard layout - - - - - Keyboard layout - - - - - Variant - - - - diff --git a/lxqt-config-locale/CMakeLists.txt b/lxqt-config-locale/CMakeLists.txt index 0ec12db..efa8702 100644 --- a/lxqt-config-locale/CMakeLists.txt +++ b/lxqt-config-locale/CMakeLists.txt @@ -24,6 +24,16 @@ lxqt_translate_ts(QM_FILES ${UI_FILES} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" ) lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) diff --git a/lxqt-config-locale/main.cpp b/lxqt-config-locale/main.cpp index e4373be..4123ad4 100644 --- a/lxqt-config-locale/main.cpp +++ b/lxqt-config-locale/main.cpp @@ -25,7 +25,6 @@ #include -#include #include #include #include "localeconfig.h" diff --git a/lxqt-config-locale/translations/lxqt-config-locale.ts b/lxqt-config-locale/translations/lxqt-config-locale.ts deleted file mode 100644 index af5e4f7..0000000 --- a/lxqt-config-locale/translations/lxqt-config-locale.ts +++ /dev/null @@ -1,110 +0,0 @@ - - - - - LocaleConfig - - - Re&gion: - - - - - De&tailed Settings - - - - - &Numbers: - - - - - &Time: - - - - - Currenc&y: - - - - - Measurement &Units: - - - - - Co&llation and Sorting: - - - - - <b>Examples</b> - - - - - Numbers: - - - - - Time: - - - - - Currency: - - - - - Measurement Units: - - - - - No change - - - - - Format Settings Changed - - - - - Save the settings ? (they will take effect the next time you log in) - - - - - Imperial UK - - - - - Imperial US - - - - - Metric - - - - - QObject - - - LXQt Locale Configuration - - - - - Locale Settings - - - - diff --git a/lxqt-config-locale/translations/lxqt-config-locale_ar.desktop b/lxqt-config-locale/translations/lxqt-config-locale_ar.desktop new file mode 100644 index 0000000..812d306 --- /dev/null +++ b/lxqt-config-locale/translations/lxqt-config-locale_ar.desktop @@ -0,0 +1,3 @@ +Name[ar]=المحليّة +GenericName[ar]=إعدادات المحليّة +Comment[ar]=إعدادات المحليّة للكسكيوت diff --git a/lxqt-config-locale/translations/lxqt-config-locale_ca.desktop b/lxqt-config-locale/translations/lxqt-config-locale_ca.desktop new file mode 100644 index 0000000..1487277 --- /dev/null +++ b/lxqt-config-locale/translations/lxqt-config-locale_ca.desktop @@ -0,0 +1,3 @@ +Name[ca]=Configuració regional +GenericName[ca]=Ajusts de la configuració regional +Comment[ca]=Ajusts de la configuració regional per a LXQt diff --git a/lxqt-config-locale/translations/lxqt-config-locale_de.desktop b/lxqt-config-locale/translations/lxqt-config-locale_de.desktop new file mode 100644 index 0000000..f286c87 --- /dev/null +++ b/lxqt-config-locale/translations/lxqt-config-locale_de.desktop @@ -0,0 +1,3 @@ +Name[de]=Regionaleinstellungen +GenericName[de]=Regionaleinstellungen +Comment[de]=Regionaleinstellungen für LXQt diff --git a/lxqt-config-locale/translations/lxqt-config-locale_it.desktop b/lxqt-config-locale/translations/lxqt-config-locale_it.desktop new file mode 100644 index 0000000..28e8bb0 --- /dev/null +++ b/lxqt-config-locale/translations/lxqt-config-locale_it.desktop @@ -0,0 +1,2 @@ +Name[it]=Lingua e Paese +Comment[it]=Preferenze della lingua e del paese diff --git a/lxqt-config-locale/translations/lxqt-config-locale_ru.desktop b/lxqt-config-locale/translations/lxqt-config-locale_ru.desktop new file mode 100644 index 0000000..a8706bc --- /dev/null +++ b/lxqt-config-locale/translations/lxqt-config-locale_ru.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ru]=Локаль +GenericName[ru]=Настройки локали +Comment[ru]=Настройки локали для LXQt diff --git a/lxqt-config-monitor/CMakeLists.txt b/lxqt-config-monitor/CMakeLists.txt index 1eae738..c4e5e84 100644 --- a/lxqt-config-monitor/CMakeLists.txt +++ b/lxqt-config-monitor/CMakeLists.txt @@ -10,6 +10,8 @@ set(HEADERS monitorpicture.h loadsettings.h settingsdialog.h + managesavedsettings.h + fastmenu.h ) set(SOURCES @@ -21,6 +23,8 @@ set(SOURCES monitorpicture.cpp loadsettings.cpp settingsdialog.cpp + managesavedsettings.cpp + fastmenu.cpp ) set(UIS @@ -28,6 +32,8 @@ set(UIS monitorwidget.ui timeoutdialog.ui monitorpicture.ui + managesavedsettings.ui + fastmenu.ui ) set(ICONS @@ -47,6 +53,16 @@ lxqt_translate_ts(QM_FILES ${UIS} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" ) lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) @@ -73,4 +89,4 @@ target_link_libraries(${PROJECT_NAME} install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}) install(FILES ${DESKTOP_FILES} DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/applications") -install(FILES ${ICON_FILES} DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/lxqt/icons") +install(FILES ${ICONS} DESTINATION "${CMAKE_INSTALL_FULL_DATADIR}/lxqt/icons") diff --git a/lxqt-config-monitor/fakeTest.sh b/lxqt-config-monitor/fakeTest.sh new file mode 100644 index 0000000..6aa23c8 --- /dev/null +++ b/lxqt-config-monitor/fakeTest.sh @@ -0,0 +1,6 @@ +export KSCREEN_BACKEND=Fake +export KSCREEN_BACKEND_ARGS=TEST_DATA=/home/lucas/prog/lxqt/libkscreen/autotests/configs/multipleoutput.json +killall kscreen_backend_launcher +#`find /usr -name 'kscreen_backend_launcher'` +lxqt-config-monitor + diff --git a/lxqt-config-monitor/fastmenu.cpp b/lxqt-config-monitor/fastmenu.cpp new file mode 100644 index 0000000..1f124e1 --- /dev/null +++ b/lxqt-config-monitor/fastmenu.cpp @@ -0,0 +1,203 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#include "fastmenu.h" +#include "timeoutdialog.h" + +#include +#include +#include +#include +#include + +enum Options +{ + None=0, Extended=1, Unified=2, OnlyFirst=3, OnlySecond=4 +}; + +FastMenu::FastMenu(KScreen::ConfigPtr config, QWidget* parent) : + QGroupBox(parent) +{ + this->mConfig = config; + this->mOldConfig = mConfig->clone(); + + ui.setupUi(this); + + connect(ui.comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(onSeleccionChanged(int))); +} + +FastMenu::~FastMenu() +{ +} + +void FastMenu::extended() +{ + int width = 0; + KScreen::OutputList outputs = mConfig->outputs(); + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + QPoint pos = output->pos(); + pos.setX(width); + pos.setY(0); + output->setPos(pos); + output->setEnabled(true); + //first left one as primary + output->setPrimary(width == 0); + KScreen::ModePtr mode(output->currentMode()); + if (!mode) + { // set first mode + mode = output->modes().first(); + if (mode) + { + output->setCurrentModeId(mode->id()); + } + } + if (mode) { + width += mode->size().width(); + } + } +} + +static bool sizeBiggerThan(const QSize &sizeA, const QSize &sizeB) +{ + return sizeA.width() * sizeA.height() > sizeB.width() * sizeB.height(); +} + +void FastMenu::unified() +{ + KScreen::OutputList outputs = mConfig->outputs(); + // Look for common size + QList commonSizes; + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + for(const KScreen::ModePtr &mode: output->modes()) + { + commonSizes.append(mode->size()); + } + break; + } + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + QList sizes; + for(const KScreen::ModePtr &mode: output->modes()) + { + if( commonSizes.contains(mode->size()) ) + sizes.append(mode->size()); + } + commonSizes = sizes; + } + // Select the bigest common size + qSort(commonSizes.begin(), commonSizes.end(), sizeBiggerThan); + if(commonSizes.isEmpty()) + return; + QSize commonSize = commonSizes[0]; + // Put all monitors in (0,0) position and set size + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + QPoint pos = output->pos(); + pos.setX(0); + pos.setY(0); + output->setPos(pos); + output->setEnabled(true); + // Select mode with the biggest refresh rate + float maxRefreshRate = 0.0; + for(const KScreen::ModePtr &mode: output->modes()) + { + if(mode->size() == commonSize && maxRefreshRate < mode->refreshRate()) + { + output->setCurrentModeId(mode->id()); + maxRefreshRate = mode->refreshRate(); + } + } + } +} + +void FastMenu::onlyFirst() +{ + bool foundOk = false; + KScreen::OutputList outputs = mConfig->outputs(); + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + QPoint pos = output->pos(); + pos.setX(0); + pos.setY(0); + output->setPos(pos); + output->setEnabled(!foundOk); + foundOk = true; + } +} + +void FastMenu::onlySecond() +{ + bool foundOk = true; + KScreen::OutputList outputs = mConfig->outputs(); + for (const KScreen::OutputPtr &output : outputs) + { + if( !output->isConnected() ) + continue; + QPoint pos = output->pos(); + pos.setX(0); + pos.setY(0); + output->setPos(pos); + output->setEnabled(!foundOk); + foundOk = false; + } +} + +void FastMenu::onSeleccionChanged(int index) +{ + switch((Options) index) + { + case Extended: + extended(); + break; + case Unified: + unified(); + break; + case OnlyFirst: + onlyFirst(); + break; + case OnlySecond: + onlySecond(); + break; + case None: + return; + break; + }; + + if (mConfig && KScreen::Config::canBeApplied(mConfig)) + { + KScreen::SetConfigOperation(mConfig).exec(); + + TimeoutDialog mTimeoutDialog; + if (mTimeoutDialog.exec() == QDialog::Rejected) + KScreen::SetConfigOperation(mOldConfig).exec(); + else + mOldConfig = mConfig->clone(); + } +} diff --git a/lxqt-config-monitor/fastmenu.h b/lxqt-config-monitor/fastmenu.h new file mode 100644 index 0000000..f83a94f --- /dev/null +++ b/lxqt-config-monitor/fastmenu.h @@ -0,0 +1,55 @@ +/* + Copyright (C) 2016 P.L. Lucas + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + +#ifndef _FASTMENU_H_ +#define _FASTMENU_H_ + +#include "ui_fastmenu.h" + +#include +#include +#include +#include +#include + + + +class FastMenu : public QGroupBox +{ + Q_OBJECT + + +public: + FastMenu(KScreen::ConfigPtr config, QWidget* parent = 0); + ~FastMenu(); + +private Q_SLOTS: + void onSeleccionChanged(int index); + +private: + Ui::FastMenu ui; + KScreen::ConfigPtr mConfig; + KScreen::ConfigPtr mOldConfig; + + void extended(); + void unified(); + void onlyFirst(); + void onlySecond(); +}; + +#endif // _FASTMENU_H_ diff --git a/lxqt-config-monitor/fastmenu.ui b/lxqt-config-monitor/fastmenu.ui new file mode 100644 index 0000000..ee4ac03 --- /dev/null +++ b/lxqt-config-monitor/fastmenu.ui @@ -0,0 +1,80 @@ + + + FastMenu + + + + 0 + 0 + 298 + 164 + + + + Form + + + + + + Fast options + + + false + + + + + + + 20 + + + + + + + + + + ❶ ❷ Extended view + + + + + ❶ ❶ Unified view + + + + + ❶ Only first + + + + + ❷ Only second + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + diff --git a/lxqt-config-monitor/loadsettings.cpp b/lxqt-config-monitor/loadsettings.cpp index 01536e8..921162d 100644 --- a/lxqt-config-monitor/loadsettings.cpp +++ b/lxqt-config-monitor/loadsettings.cpp @@ -24,18 +24,16 @@ #include #include #include -#include -#include -#include -#include +#include #include - - +#include +#include LoadSettings::LoadSettings(QObject *parent):QObject(parent) { - KScreen::GetConfigOperation *operation = new KScreen::GetConfigOperation(); + QThread::sleep(10); // KScreen is slow loading screen modes + KScreen::GetConfigOperation *operation = new KScreen::GetConfigOperation(); connect(operation, &KScreen::GetConfigOperation::finished, [this, operation] (KScreen::ConfigOperation *op) { KScreen::GetConfigOperation *configOp = qobject_cast(op); if (configOp) @@ -48,35 +46,62 @@ LoadSettings::LoadSettings(QObject *parent):QObject(parent) void LoadSettings::loadConfiguration(KScreen::ConfigPtr config) { - QSettings settings("LXQt", "lxqt-config-monitor"); - QJsonDocument document = QJsonDocument::fromJson( settings.value("currentConfig").toByteArray() ); - QJsonObject json = document.object(); - QJsonArray array = json["outputs"].toArray(); + LXQt::Settings settings("lxqt-config-monitor"); + QList monitors; + settings.beginGroup("currentConfig"); + loadMonitorSettings(settings, monitors); + settings.endGroup(); + + applySettings(config, monitors); +} + + +void applySettings(KScreen::ConfigPtr config, QList monitors) +{ KScreen::OutputList outputs = config->outputs(); for (const KScreen::OutputPtr &output : outputs) { qDebug() << "Output: " << output->name(); - for(int i=0;iname() ) + MonitorSettings monitor = monitors[i]; + if( monitor.name == output->name() ) { KScreen::Edid* edid = output->edid(); if (edid && edid->isValid()) - if( monitorSettings["hash"].toString() != edid->hash() ) + if( monitor.hash != edid->hash() ) { - qDebug() << "Hash: " << monitorSettings["hash"].toString() << "==" << edid->hash(); - return exit(1); // Saved settings are from other monitor + qDebug() << "Hash: " << monitor.hash << "==" << edid->hash(); + return QCoreApplication::instance()->exit(1); // Saved settings are from other monitor } - if( monitorSettings["connected"].toBool() != output->isConnected() ) - return exit(2); // Saved settings are from other monitor + if( monitor.connected != output->isConnected() ) + return QCoreApplication::instance()->exit(2); // Saved settings are from other monitor if( !output->isConnected() ) continue; - output->setEnabled( monitorSettings["enabled"].toBool() ); - output->setPrimary( monitorSettings["primary"].toBool() ); - output->setPos( QPoint(monitorSettings["xPos"].toInt(),monitorSettings["yPos"].toInt()) ); - output->setCurrentModeId( monitorSettings["currentMode"].toString() ); - output->setRotation( (KScreen::Output::Rotation)(monitorSettings["rotation"].toInt()) ); + output->setEnabled( monitor.enabled ); + output->setPrimary( monitor.primary ); + output->setPos( QPoint(monitor.xPos, monitor.yPos) ); + output->setRotation( (KScreen::Output::Rotation)(monitor.rotation) ); + // output->setCurrentModeId could fail. KScreen sometimes changes mode Id. + KScreen::ModeList modeList = output->modes(); + foreach(const KScreen::ModePtr &mode, modeList) + { + if( mode->id() == QString(monitor.currentMode) + || + ( + mode->size().width() == monitor.currentModeWidth + && + mode->size().height() == monitor.currentModeHeight + && + mode->refreshRate() == monitor.currentModeRate + ) + ) + { + output->setCurrentModeId( mode->id() ); + break; + } + } + } } } @@ -84,6 +109,6 @@ void LoadSettings::loadConfiguration(KScreen::ConfigPtr config) if (KScreen::Config::canBeApplied(config)) KScreen::SetConfigOperation(config).exec(); - exit(0); + QCoreApplication::instance()->exit(0); } diff --git a/lxqt-config-monitor/loadsettings.h b/lxqt-config-monitor/loadsettings.h index 096de8b..9af3c95 100644 --- a/lxqt-config-monitor/loadsettings.h +++ b/lxqt-config-monitor/loadsettings.h @@ -22,6 +22,7 @@ #include #include +#include "monitor.h" class LoadSettings : public QObject { @@ -39,4 +40,9 @@ private: KScreen::ConfigPtr mConfig; }; +/*! Apply settings. + */ +void applySettings(KScreen::ConfigPtr config, QList monitors); + + #endif // __LOADSETTINGS_H__ diff --git a/lxqt-config-monitor/main.cpp b/lxqt-config-monitor/main.cpp index d8283cb..fcfb96e 100644 --- a/lxqt-config-monitor/main.cpp +++ b/lxqt-config-monitor/main.cpp @@ -42,7 +42,7 @@ int main(int argc, char** argv) if( loadSettingsOk(argc, argv) ) { // If -l option is provided, settings are loaded and app is closed. - QCoreApplication app(argc, argv); + QGuiApplication app(argc, argv); LoadSettings load; return app.exec(); } @@ -66,6 +66,11 @@ int main(int argc, char** argv) dlg.setWindowIcon(QIcon::fromTheme("preferences-desktop-display")); dlg.show(); - return app.exec(); + int ok = app.exec(); + + // FIXME: kscreen backend doesn't close properly. + //system("killall kscreen_backend_launcher"); + + return ok; } diff --git a/lxqt-config-monitor/managesavedsettings.cpp b/lxqt-config-monitor/managesavedsettings.cpp new file mode 100644 index 0000000..94a43ae --- /dev/null +++ b/lxqt-config-monitor/managesavedsettings.cpp @@ -0,0 +1,196 @@ +/* + Copyright (C) 2015 P.L. Lucas + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + + +#include "managesavedsettings.h" +#include "loadsettings.h" +#include "configure.h" +#include "monitor.h" +#include +#include +#include + +Q_DECLARE_METATYPE(MonitorSavedSettings) + + +ManageSavedSettings::ManageSavedSettings(LXQt::Settings * applicationSettings, KScreen::ConfigPtr config, QWidget * parent): +QDialog(parent) +{ + + this->applicationSettings = applicationSettings; + this->config = config; + + ui.setupUi(this); + + connect(ui.allConfigs, SIGNAL(itemActivated(QListWidgetItem *)), SLOT(showSelectedConfig(QListWidgetItem *))); + connect(ui.deletePushButton, SIGNAL(clicked()), SLOT(onDeleteItem())); + connect(ui.renamePushButton, SIGNAL(clicked()), SLOT(onRenameItem())); + connect(ui.applyPushButton, SIGNAL(clicked()), SLOT(onApplyItem())); + + loadSettings(); +} + + +void ManageSavedSettings::showSelectedConfig(QListWidgetItem * item) +{ + MonitorSavedSettings o = item->data(Qt::UserRole).value(); + QString text; + for(int i=0; i < o.monitors.size(); i++) + { + MonitorSettings setting = o.monitors[i]; + if(! setting.connected ) + continue; + text += QString("%1:
").arg(setting.name); + text += QString(" Mode: %1x%2
").arg(setting.currentModeWidth).arg(setting.currentModeHeight); + text += QString(" Rate: %1 Hz
").arg(setting.currentModeRate); + switch(setting.rotation) + { + case KScreen::Output::Rotation::None: + text += QString(" Rotation: %1
").arg(tr("None")); + break; + case KScreen::Output::Rotation::Left: + text += QString(" Rotation: %1
").arg(tr("Left")); + break; + case KScreen::Output::Rotation::Inverted: + text += QString(" Rotation: %1
").arg(tr("Inverted")); + break; + case KScreen::Output::Rotation::Right: + text += QString(" Rotation: %1
").arg(tr("Right")); + break; + } + text += QString(" Position: %1x%2
").arg(setting.xPos).arg(setting.yPos); + text += QString(" Primary: %1
").arg(setting.primary?tr("True"):tr("False")); + text += QString(" Enabled: %1
").arg(setting.enabled?tr("True"):tr("False")); + } + text += "
"; + ui.selectedSettingsTextEdit->setText(text); + ui.applyPushButton->setEnabled(isHardwareCompatible(o)); +} + + +bool ManageSavedSettings::isHardwareCompatible(MonitorSavedSettings &settings) +{ + KScreen::OutputList outputs = config->outputs(); + for (const KScreen::OutputPtr &output : outputs) + { + bool ok = false; + for (int i=0; i < settings.monitors.size(); i++) + { + MonitorSettings o = settings.monitors[i]; + if(o.name != output->name()) + continue; + KScreen::Edid *edid = output->edid(); + if(edid && edid->isValid()) + if(o.hash != output->edid()->hash()) + return false; + ok = true; + break; + } + if(!ok) + return false; + } + return true; +} + +void ManageSavedSettings::onDeleteItem() +{ + if (ui.allConfigs->currentItem() == NULL) + return; + MonitorSavedSettings obj = ui.allConfigs->currentItem()->data(Qt::UserRole).value(); + + LXQt::Settings settings("lxqt-config-monitor"); + QList monitors; + settings.beginGroup("SavedConfigs"); + loadMonitorSettings(settings, monitors); + for (int i = 0; i < monitors.size(); i++) { + MonitorSavedSettings o = monitors[i]; + if (o == obj) { + monitors.removeAt(i); + break; + } + } + saveMonitorSettings(settings, monitors); + + settings.endGroup(); + + loadSettings(); +} + +void ManageSavedSettings::onRenameItem() +{ + if (ui.allConfigs->currentItem() == NULL) + return; + MonitorSavedSettings obj = ui.allConfigs->currentItem()->data(Qt::UserRole).value(); + bool ok; + QString configName = QInputDialog::getText(this, tr("Name"), tr("Name:"), + QLineEdit::Normal, + obj.name, &ok); + if (!ok || configName.isEmpty()) + return; + + LXQt::Settings settings("lxqt-config-monitor"); + QList monitors; + settings.beginGroup("SavedConfigs"); + loadMonitorSettings(settings, monitors); + for (int i = 0; i < monitors.size(); i++) { + MonitorSavedSettings o = monitors[i]; + if (o == obj) { + monitors.removeAt(i); + obj.name = configName; + monitors.append(obj); + break; + } + } + saveMonitorSettings(settings, monitors); + + settings.endGroup(); + + loadSettings(); +} + +void ManageSavedSettings::onApplyItem() +{ + if (ui.allConfigs->currentItem() == NULL) + return; + MonitorSavedSettings settings = ui.allConfigs->currentItem()->data(Qt::UserRole).value(); + applySettings(config, settings.monitors); +} + + + +void ManageSavedSettings::loadSettings() +{ + ui.allConfigs->clear(); + //ui.hardwareCompatibleConfigs->clear(); + LXQt::Settings settings("lxqt-config-monitor"); + QList monitors; + settings.beginGroup("SavedConfigs"); + loadMonitorSettings(settings, monitors); + settings.endGroup(); + foreach(MonitorSavedSettings o, monitors) { + QListWidgetItem *item = new QListWidgetItem(o.name+" - "+o.date, ui.allConfigs); + QVariant var; + var.setValue(o); + item->setData(Qt::UserRole, var); + if (isHardwareCompatible(o)) { + QFont font = ui.allConfigs->font(); + font.setBold(true); + item->setData(Qt::FontRole, font); + } + } +} diff --git a/lxqt-config-monitor/managesavedsettings.h b/lxqt-config-monitor/managesavedsettings.h new file mode 100644 index 0000000..4cbb305 --- /dev/null +++ b/lxqt-config-monitor/managesavedsettings.h @@ -0,0 +1,59 @@ +/* + Copyright (C) 2015 P.L. Lucas + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + + +#ifndef _SAVESETTINGS_H_ +#define _SAVESETTINGS_H_ + +#include "ui_managesavedsettings.h" +#include "monitor.h" +#include +#include +#include +#include + +class ManageSavedSettings : public QDialog { + Q_OBJECT + +public: + ManageSavedSettings(LXQt::Settings *applicationSettings, KScreen::ConfigPtr config, QWidget* parent = 0); + + Ui::ManageSavedSettings ui; + +public slots: + /*! Load settings to QListWidgets. + edids is hardware code to detect hardware compatible settings. + */ + void loadSettings(); + + void showSelectedConfig(QListWidgetItem * item); + + void onDeleteItem(); + + void onRenameItem(); + + void onApplyItem(); + +private: + LXQt::Settings *applicationSettings; + KScreen::ConfigPtr config; + bool isHardwareCompatible(MonitorSavedSettings &settings); + +}; + +#endif // _SAVESETTINGS_H_ diff --git a/lxqt-config-monitor/managesavedsettings.ui b/lxqt-config-monitor/managesavedsettings.ui new file mode 100644 index 0000000..55357e6 --- /dev/null +++ b/lxqt-config-monitor/managesavedsettings.ui @@ -0,0 +1,74 @@ + + + ManageSavedSettings + + + + 0 + 0 + 521 + 312 + + + + Monitor Settings + + + + + + + + + + + + + Saved settings + + + + + + + + + + + Rename + + + + + + + Delete + + + + + + + Apply + + + + + + + + + true + + + + + + + + + + + + + diff --git a/lxqt-config-monitor/monitor.cpp b/lxqt-config-monitor/monitor.cpp index 2e4f8e6..1afa4a3 100644 --- a/lxqt-config-monitor/monitor.cpp +++ b/lxqt-config-monitor/monitor.cpp @@ -18,56 +18,116 @@ #include "monitor.h" -bool MonitorInfo::LVDS_Ok = false; +bool MonitorSavedSettings::operator==(const MonitorSavedSettings &obj) +{ + if(name != obj.name) + return false; + if(date != obj.date) + return false; + // TODO: Check QList monitors. + return true; +} -QSize sizeFromString(QString str) +void saveMonitorSettings(QSettings & settings, QList monitors) { - int width = 0; - int height = 0; - int x = str.indexOf('x'); - if (x > 0) + settings.remove("settings"); + settings.beginWriteArray("settings"); + int i = 0; + Q_FOREACH(MonitorSettings monitor, monitors) { - width = str.left(x).toInt(); - height = str.mid(x + 1).toInt(); + settings.setArrayIndex(i++); + saveMonitorSettings(settings, monitor); } - return QSize(width, height); + settings.endArray(); } -MonitorSettings::MonitorSettings(QObject* parent) : - QObject(parent) +void saveMonitorSettings(QSettings &settings, MonitorSettings &monitor) { - position = None; - primaryOk = false; - enabledOk = false; + settings.setValue("name", monitor.name); + settings.setValue("hash", monitor.hash); + settings.setValue("connected", monitor.connected); + if(monitor.connected) + { + settings.setValue("enabled", monitor.enabled); + settings.setValue("primary", monitor.primary); + settings.setValue("xPos", monitor.xPos); + settings.setValue("yPos", monitor.yPos); + settings.setValue("currentMode", monitor.currentMode); + settings.setValue("currentModeWidth", monitor.currentModeWidth); + settings.setValue("currentModeHeight", monitor.currentModeHeight); + settings.setValue("currentModeRate", monitor.currentModeRate); + settings.setValue("rotation", monitor.rotation); + } } -MonitorInfo::MonitorInfo(QObject* parent) : - MonitorSettings(parent) +void loadMonitorSettings(QSettings & settings, QList &monitors) { + int size = settings.beginReadArray("settings"); + for(int i=0; i monitors) +{ + settings.remove("SavedSettings"); + settings.beginWriteArray("SavedSettings"); + int i = 0; + Q_FOREACH(MonitorSavedSettings monitor, monitors) + { + settings.setArrayIndex(i++); + saveMonitorSettings(settings, monitor); + } + settings.endArray(); } -QSize MonitorSettings::currentSize() +void saveMonitorSettings(QSettings &settings, MonitorSavedSettings &monitor) { - return sizeFromString(currentMode); + settings.setValue("name", monitor.name); + settings.setValue("date", monitor.date); + saveMonitorSettings(settings, monitor.monitors); } -QRect MonitorSettings::geometry() +void loadMonitorSettings(QSettings & settings, QList &monitors) { - return QRect(QPoint(xPos, yPos), currentSize()); + int size = settings.beginReadArray("SavedSettings"); + for(int i=0; i -#include -#include +#include +#include #include -#include -#include -//Settings to pass to backend -class MonitorSettings : public QObject -{ - Q_OBJECT - -public: - MonitorSettings(QObject* parent = 0); +//Settings to be stored or read from settings file. +struct MonitorSettings { QString name; + QString hash; + bool connected; + bool enabled; + bool primary; QString currentMode; - QString currentRate; - QString gamma; + int currentModeWidth; + int currentModeHeight; + float currentModeRate; int xPos; int yPos; - bool enabledOk; - enum Position {None = 0, Manual}; - Position position; - bool primaryOk; - - QSize currentSize(); - QRect geometry(); + int rotation; }; -// Monitor information from backend -class MonitorInfo : public MonitorSettings -{ - Q_OBJECT +struct MonitorSavedSettings { + QString name; + QString date; + QList monitors; + + bool operator==(const MonitorSavedSettings &obj); +}; -public: - KScreen::ConfigPtr mConfig; +/**This function saves a list of MonitorSettings in QSettings file. + * Before using this function, QSettings group must be opened. + */ +void saveMonitorSettings(QSettings &settings, QList monitors); +void saveMonitorSettings(QSettings &settings, MonitorSettings &monitor); - MonitorInfo(QObject* parent = 0); - QStringList modes; // Modes of this monitor in order - QHash modeLines; // Rates suported by each mode - QString preferredMode; - QString preferredRate; - QString edid; // EDID data, not used yet, can be used to detect vendor name of the monitor - QString vendor; +/**This function loads a list of MonitorSettings from QSettings file. + * Before using this function, QSettings group must be opened. + */ +void loadMonitorSettings(QSettings &settings, QList &monitors); +void loadMonitorSettings(QSettings &settings, MonitorSettings &monitor); - static bool LVDS_Ok; // Is true if LVDS (Laptop monitor) is connected. - QString humanReadableName(); -}; +/**This function saves a list of MonitorSavedSettings in QSettings file. + * Before using this function, QSettings group must be opened. + */ +void saveMonitorSettings(QSettings &settings, QList monitors); +void saveMonitorSettings(QSettings &settings, MonitorSavedSettings &monitor); -// Gets size from string rate. String rate format is "widthxheight". Example: 800x600 -QSize sizeFromString(QString str); +/**This function loads a list of MonitorSavedSettings in QSettings file. + * Before using this function, QSettings group must be opened. + */ +void loadMonitorSettings(QSettings &settings, QList &monitors); +void loadMonitorSettings(QSettings &settings, MonitorSavedSettings &monitor); #endif // _MONITOR_H_ diff --git a/lxqt-config-monitor/monitorpicture.cpp b/lxqt-config-monitor/monitorpicture.cpp index 814ff9a..3b5382c 100644 --- a/lxqt-config-monitor/monitorpicture.cpp +++ b/lxqt-config-monitor/monitorpicture.cpp @@ -23,8 +23,24 @@ #include #include #include +#include + #include "configure.h" +// Gets size from string rate. String rate format is "widthxheight". Example: 800x600 +static QSize sizeFromString(QString str) +{ + int width = 0; + int height = 0; + int x = str.indexOf('x'); + if (x > 0) + { + width = str.left(x).toInt(); + height = str.mid(x + 1).toInt(); + } + return QSize(width, height); +} + MonitorPictureProxy::MonitorPictureProxy(QObject *parent, MonitorPicture *monitorPicture):QObject(parent) { this->monitorPicture = monitorPicture; @@ -49,6 +65,8 @@ MonitorPictureDialog::MonitorPictureDialog(KScreen::ConfigPtr config, QWidget * QDialog(parent,f) { updatingOk = false; + firstShownOk = false; + maxMonitorSize = 0; mConfig = config; ui.setupUi(this); } @@ -72,12 +90,27 @@ void MonitorPictureDialog::setScene(QList monitors) } // The blue rectangle is maximum size of virtual screen (framebuffer) scene->addRect(0, 0, mConfig->screen()->maxSize().width(), mConfig->screen()->maxSize().height(), QPen(Qt::blue, 20))->setOpacity(0.5); - int minWidgetLength = qMin(ui.graphicsView->size().width(), ui.graphicsView->size().width()) / 1.5; - int maxMonitorSize = qMax(monitorsWidth, monitorsHeight); - ui.graphicsView->scale(minWidgetLength / (float) maxMonitorSize, minWidgetLength / (float) maxMonitorSize); + maxMonitorSize = qMax(monitorsWidth, monitorsHeight); ui.graphicsView->setScene(scene); } +void MonitorPictureDialog::showEvent(QShowEvent * event) +{ + QWidget::showEvent(event); + if( ! firstShownOk ) + { + // Update scale and set scrollbar position. + // Real widget size is not set, until widget is shown. + firstShownOk = true; + int minWidgetLength = qMin(ui.graphicsView->size().width(), ui.graphicsView->size().width()) / 1.5; + qDebug() << "minWidgetLength" << minWidgetLength << "maxMonitorSize" << maxMonitorSize << "scale" << minWidgetLength / (float) maxMonitorSize; + ui.graphicsView->scale(minWidgetLength / (float) maxMonitorSize, minWidgetLength / (float) maxMonitorSize); + updateScene(); + ui.graphicsView->verticalScrollBar()->setValue(0); + ui.graphicsView->horizontalScrollBar()->setValue(0); + } +} + void MonitorPictureDialog::updateScene() { ui.graphicsView->scene()->update(); @@ -157,7 +190,7 @@ MonitorPicture::MonitorPicture(QGraphicsItem * parent, // textItem->setX(x); // textItem->setY(y); // textItem->setParentItem(this); - + QSvgRenderer *renderer = new QSvgRenderer(QLatin1String(ICON_PATH "monitor.svg")); svgItem = new QGraphicsSvgItem(); svgItem->setSharedRenderer(renderer); diff --git a/lxqt-config-monitor/monitorpicture.h b/lxqt-config-monitor/monitorpicture.h index 6dcda52..8e85e94 100644 --- a/lxqt-config-monitor/monitorpicture.h +++ b/lxqt-config-monitor/monitorpicture.h @@ -42,11 +42,16 @@ public: void moveMonitorPictureToNearest(MonitorPicture* monitorPicture); void updateScene(); +protected: + virtual void showEvent(QShowEvent * event); + private: Ui::MonitorPictureDialog ui; QList pictures; bool updatingOk; - KScreen::ConfigPtr mConfig; + KScreen::ConfigPtr mConfig; + bool firstShownOk; + int maxMonitorSize; }; class MonitorPicture : public QGraphicsRectItem diff --git a/lxqt-config-monitor/monitorsettingsdialog.cpp b/lxqt-config-monitor/monitorsettingsdialog.cpp index d0283b7..2730413 100644 --- a/lxqt-config-monitor/monitorsettingsdialog.cpp +++ b/lxqt-config-monitor/monitorsettingsdialog.cpp @@ -20,20 +20,24 @@ #include "monitorsettingsdialog.h" #include "monitorwidget.h" +#include "monitor.h" #include "timeoutdialog.h" #include "monitorpicture.h" #include "settingsdialog.h" +#include "fastmenu.h" #include #include #include -#include +#include #include #include #include #include #include #include +#include +#include MonitorSettingsDialog::MonitorSettingsDialog() : QDialog(nullptr, 0) @@ -43,12 +47,28 @@ MonitorSettingsDialog::MonitorSettingsDialog() : KScreen::GetConfigOperation *operation = new KScreen::GetConfigOperation(); connect(operation, &KScreen::GetConfigOperation::finished, [this, operation] (KScreen::ConfigOperation *op) { KScreen::GetConfigOperation *configOp = qobject_cast(op); - if (configOp) + qDebug() << "Connecting to KScreen..."; + if (configOp && configOp->config() && configOp->config()->screen()) { mOldConfig = configOp->config()->clone(); loadConfiguration(configOp->config()); operation->deleteLater(); } + else if(configOp && !configOp->config()) + { + qDebug() << "Error: Config is invalid, probably backend couldn't load"; + exit(1); + } + else if(configOp && configOp->config() && !configOp->config()->screen()) + { + qDebug() << "Error: No screen in the configuration, broken backend"; + exit(2); + } + else + { + qDebug() << "Error: Connect to KScreen is not possible"; + exit(3); + } }); connect(ui.buttonBox, &QDialogButtonBox::clicked, [&] (QAbstractButton *button) { @@ -61,7 +81,6 @@ MonitorSettingsDialog::MonitorSettingsDialog() : }); - ui.settingsButton->hide(); // Hide settings button until daemon works OK. connect(ui.settingsButton, SIGNAL(clicked()), this, SLOT(showSettingsDialog())); } @@ -77,6 +96,7 @@ void MonitorSettingsDialog::loadConfiguration(KScreen::ConfigPtr config) mConfig = config; MonitorPictureDialog *monitorPicture = nullptr; + FastMenu *fastMenu = nullptr; KScreen::OutputList outputs = mConfig->outputs(); int nMonitors = 0; @@ -87,6 +107,10 @@ void MonitorSettingsDialog::loadConfiguration(KScreen::ConfigPtr config) if (nMonitors > 1) { + fastMenu = new FastMenu(config, this); + ui.monitorList->addItem(tr("Fast Menu")); + ui.stackedWidget->addWidget(fastMenu); + monitorPicture = new MonitorPictureDialog(config, this); ui.monitorList->addItem(tr("Set position")); ui.stackedWidget->addWidget(monitorPicture); @@ -106,6 +130,15 @@ void MonitorSettingsDialog::loadConfiguration(KScreen::ConfigPtr config) monitors.append(monitor); } } + + Q_FOREACH(MonitorWidget *monitor1, monitors) + { + Q_FOREACH(MonitorWidget *monitor, monitors) + { + if(monitor != monitor1) + connect(monitor, SIGNAL(primaryOutputChanged(MonitorWidget *)), monitor1, SLOT(onPrimaryOutputChanged(MonitorWidget *))); + } + } if (monitorPicture) monitorPicture->setScene(monitors); @@ -145,67 +178,60 @@ void MonitorSettingsDialog::reject() void MonitorSettingsDialog::saveConfiguration(KScreen::ConfigPtr config) { - QJsonObject json; - QJsonArray jsonArray; + + QList currentSettings; KScreen::OutputList outputs = config->outputs(); for (const KScreen::OutputPtr &output : outputs) { - QJsonObject monitorSettings; - monitorSettings["name"] = output->name(); + MonitorSettings monitor; + monitor.name = output->name(); KScreen::Edid* edid = output->edid(); if (edid && edid->isValid()) - monitorSettings["hash"] = edid->hash(); - monitorSettings["connected"] = output->isConnected(); + monitor.hash = edid->hash(); + monitor.connected = output->isConnected(); if ( output->isConnected() ) { - monitorSettings["enabled"] = output->isEnabled(); - monitorSettings["primary"] = output->isPrimary(); - monitorSettings["xPos"] = output->pos().x(); - monitorSettings["yPos"] = output->pos().y(); - monitorSettings["currentMode"] = output->currentMode()->id(); - monitorSettings["rotation"] = output->rotation(); + monitor.enabled = output->isEnabled(); + monitor.primary = output->isPrimary(); + monitor.xPos = output->pos().x(); + monitor.yPos = output->pos().y(); + monitor.currentMode = output->currentModeId(); + monitor.currentModeWidth = output->currentMode()->size().width(); + monitor.currentModeHeight = output->currentMode()->size().height(); + monitor.currentModeRate = output->currentMode()->refreshRate(); + monitor.rotation = output->rotation(); } - jsonArray.append(monitorSettings); + currentSettings.append(monitor); } - json["outputs"] = jsonArray; - QSettings settings("LXQt", "lxqt-config-monitor"); - settings.setValue("currentConfig", QVariant(QJsonDocument(json).toJson())); - - QString desktop = QString("[Desktop Entry]\n" - "Type=Application\n" - "Name=LXQt-config-monitor autostart\n" - "Comment=Autostart monitor settings for LXQt-config-monitor\n" - "Exec=%1\n" - "OnlyShowIn=LXQt\n").arg("lxqt-config-monitor -l"); + LXQt::Settings settings("lxqt-config-monitor"); + settings.beginGroup("currentConfig"); + saveMonitorSettings(settings, currentSettings); + settings.endGroup(); - // Check autostart path: $XDG_CONFIG_HOME or ~/.config/autostart - QString autostartPath; - bool ok = true; - if(qEnvironmentVariableIsSet("XDG_CONFIG_HOME")) - autostartPath = QString(qgetenv("XDG_CONFIG_HOME")); - else - { - autostartPath = QDir::homePath() + "/.config/autostart/"; - // Check if ~/.config/autostart/ exists - QFileInfo fileInfo(autostartPath); - if( ! fileInfo.exists() ) - ok = QDir::root().mkpath(autostartPath); - } - QFile file(autostartPath + "/lxqt-config-monitor-autostart.desktop"); - if(ok) - ok = file.open(QIODevice::WriteOnly | QIODevice::Text); - if(!ok) { - QMessageBox::critical(this, tr("Error"), tr("Config can not be saved")); - return; - } - QTextStream out(&file); - out << desktop; - out.flush(); - file.close(); - + QList monitors; + settings.beginGroup("SavedConfigs"); + loadMonitorSettings(settings, monitors); + qDebug() << "[ MonitorSettingsDialog::saveConfiguration] # monitors Read:" << monitors.size(); + MonitorSavedSettings monitor; + monitor.name = QDateTime::currentDateTime().toString(); + monitor.date = QDateTime::currentDateTime().toString(Qt::ISODate); + monitor.monitors = currentSettings; + monitors.append(monitor); + saveMonitorSettings(settings, monitors); + qDebug() << "[ MonitorSettingsDialog::saveConfiguration] # monitors Write:" << monitors.size(); + settings.endGroup(); + + LXQt::AutostartEntry autoStart("lxqt-config-monitor-autostart.desktop"); + XdgDesktopFile desktopFile(XdgDesktopFile::ApplicationType, "lxqt-config-monitor-autostart", "lxqt-config-monitor -l"); + //desktopFile.setValue("OnlyShowIn", QString(qgetenv("XDG_CURRENT_DESKTOP"))); + desktopFile.setValue("OnlyShowIn", "LXQt"); + desktopFile.setValue("Comment", "Autostart monitor settings for LXQt-config-monitor"); + autoStart.setFile(desktopFile); + autoStart.commit(); } + void MonitorSettingsDialog::showSettingsDialog() { QByteArray configName = qgetenv("LXQT_SESSION_CONFIG"); @@ -215,6 +241,6 @@ void MonitorSettingsDialog::showSettingsDialog() LXQt::Settings settings(configName); - SettingsDialog settingsDialog(tr("Advanced settings"), &settings); + SettingsDialog settingsDialog(tr("Advanced settings"), &settings, mConfig); settingsDialog.exec(); } diff --git a/lxqt-config-monitor/monitorwidget.cpp b/lxqt-config-monitor/monitorwidget.cpp index 5fa7430..d4de216 100644 --- a/lxqt-config-monitor/monitorwidget.cpp +++ b/lxqt-config-monitor/monitorwidget.cpp @@ -18,7 +18,6 @@ */ #include "monitorwidget.h" -#include "monitor.h" #include #include @@ -148,20 +147,6 @@ MonitorWidget::MonitorWidget(KScreen::OutputPtr output, KScreen::ConfigPtr confi // There isn't always a primary output. Gross. output->setPrimary(true); } - else - { - for (const KScreen::OutputPtr &other : config->connectedOutputs()) - { - // We can't clone ourselves, or an output that already clones another - if (other == output) - continue; - - ui.clonesCombo->addItem(other->name(), other->id()); - ui.relativeScreensCombo->addItem(other->name(), other->id()); - } - connect(ui.clonesCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(onCloneChanged(int))); - } - ui.xPosSpinBox->setValue(output->pos().x()); ui.yPosSpinBox->setValue(output->pos().y()); @@ -169,15 +154,6 @@ MonitorWidget::MonitorWidget(KScreen::OutputPtr output, KScreen::ConfigPtr confi // Behavior chooser if (output->isPrimary()) ui.behaviorCombo->setCurrentIndex(PrimaryDisplay); - else if (!output->clone()) - { - // Is this right? - ui.behaviorCombo->setCurrentIndex(CloneDisplay); - int idx = ui.resolutionCombo->findData(output->clone()->id()); - ui.clonesCombo->setCurrentIndex(idx); - } - else - ui.behaviorCombo->setCurrentIndex(ExtendDisplay); // Insert orientations ui.orientationCombo->addItem(tr("None"), KScreen::Output::None); @@ -202,7 +178,6 @@ MonitorWidget::MonitorWidget(KScreen::OutputPtr output, KScreen::ConfigPtr confi connect(ui.enabledCheckbox, SIGNAL(toggled(bool)), this, SLOT(onEnabledChanged(bool))); connect(ui.behaviorCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(onBehaviorChanged(int))); - connect(ui.positioningCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(onPositioningChanged(int))); connect(ui.xPosSpinBox, SIGNAL(valueChanged(int)), this, SLOT(onPositionChanged(int))); connect(ui.yPosSpinBox, SIGNAL(valueChanged(int)), this, SLOT(onPositionChanged(int))); connect(ui.orientationCombo, SIGNAL(currentIndexChanged(int)), this, SLOT(onOrientationChanged(int))); @@ -225,7 +200,6 @@ void MonitorWidget::onEnabledChanged(bool enabled) // order here matters onResolutionChanged(ui.resolutionCombo->currentIndex()); onOrientationChanged(ui.orientationCombo->currentIndex()); - onPositioningChanged(ui.positioningCombo->currentIndex()); onBehaviorChanged(ui.behaviorCombo->currentIndex()); } } @@ -238,63 +212,12 @@ void MonitorWidget::onOrientationChanged(int idx) void MonitorWidget::onBehaviorChanged(int idx) { // Behavior should match the index of the selected element - ui.positioningCombo->setVisible(idx == ExtendDisplay); - ui.clonesCombo->setVisible(idx == CloneDisplay); - ui.relativeScreensCombo->setVisible(idx == ExtendDisplay); ui.xPosSpinBox->setVisible(idx == ExtendDisplay); ui.yPosSpinBox->setVisible(idx == ExtendDisplay); - ui.relativeScreensCombo->setEnabled(true); - if(idx == CloneDisplay) - onCloneChanged(ui.clonesCombo->currentIndex()); output->setPrimary(idx == PrimaryDisplay); -} - -void MonitorWidget::onCloneChanged(int idx) -{ - KScreen::OutputPtr other = getOutputById(ui.clonesCombo->currentData().toInt(), - config->outputs()); - output->setPos( other->pos() ); -} - -void MonitorWidget::onPositioningChanged(int idx) -{ - // Update the x/y spinboxes with the correct values - KScreen::OutputPtr other = getOutputById(ui.relativeScreensCombo->currentData().toInt(), - config->outputs()); - - // TODO: Figure out what to do here - if (!other->currentMode() || !output->currentMode()) - return; - - QSize otherSize = other->currentMode()->size(); - QSize thisSize = output->currentMode()->size(); - - int x = other->pos().x(); - int y = other->pos().y(); - - switch (idx) { - case RightOf: - x += otherSize.width(); - break; - case LeftOf: - x += thisSize.width(); - break; - case Above: - y += otherSize.height(); - break; - case Below: - y += thisSize.height(); - break; - case Manually: - default: - break; - } - - ui.xPosSpinBox->setValue(x); - ui.yPosSpinBox->setValue(y); - // Disable the other screens combo box if we don't need it - ui.relativeScreensCombo->setEnabled(idx && idx != Manually); + if(idx == PrimaryDisplay) + emit primaryOutputChanged(this); } void MonitorWidget::onPositionChanged(int value) @@ -342,6 +265,16 @@ void MonitorWidget::setOnlyMonitor(bool isOnlyMonitor) ui.behaviorCombo->setEnabled(!isOnlyMonitor); ui.xPosSpinBox->setVisible(!isOnlyMonitor); ui.yPosSpinBox->setVisible(!isOnlyMonitor); - ui.relativeScreensCombo->setVisible(!isOnlyMonitor); - ui.clonesCombo->setVisible(!isOnlyMonitor); + if(isOnlyMonitor) + { + ui.xPosSpinBox->setValue(0); + ui.yPosSpinBox->setValue(0); + } +} + +void MonitorWidget::onPrimaryOutputChanged(MonitorWidget *widget) +{ + if(widget == this) + return; + ui.behaviorCombo->setCurrentIndex(ExtendDisplay); } diff --git a/lxqt-config-monitor/monitorwidget.h b/lxqt-config-monitor/monitorwidget.h index 0e43c06..ced3caf 100644 --- a/lxqt-config-monitor/monitorwidget.h +++ b/lxqt-config-monitor/monitorwidget.h @@ -31,7 +31,6 @@ #define PrimaryDisplay 0 #define ExtendDisplay 1 -#define CloneDisplay 2 #define RightOf 0 #define LeftOf 1 @@ -54,6 +53,9 @@ public: KScreen::OutputPtr output; KScreen::ConfigPtr config; + +signals: + void primaryOutputChanged(MonitorWidget *widget); public Q_SLOTS: void setOnlyMonitor(bool isOnlyMonitor); @@ -61,12 +63,11 @@ public Q_SLOTS: private Q_SLOTS: void onEnabledChanged(bool); void onBehaviorChanged(int); - void onPositioningChanged(int); void onPositionChanged(int); void onResolutionChanged(int); void onRateChanged(int); void onOrientationChanged(int); - void onCloneChanged(int); + void onPrimaryOutputChanged(MonitorWidget *widget); private: Ui::MonitorWidget ui; diff --git a/lxqt-config-monitor/monitorwidget.ui b/lxqt-config-monitor/monitorwidget.ui index 38624e4..07488d1 100644 --- a/lxqt-config-monitor/monitorwidget.ui +++ b/lxqt-config-monitor/monitorwidget.ui @@ -21,7 +21,7 @@ Setup - + @@ -103,54 +103,9 @@ This screen extends another display - - - This screen clones another display - - - - - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - - - - false - - - - - - + Qt::Vertical @@ -163,9 +118,6 @@ - - - diff --git a/lxqt-config-monitor/settingsdialog.cpp b/lxqt-config-monitor/settingsdialog.cpp index 9411d65..8ba7c9c 100644 --- a/lxqt-config-monitor/settingsdialog.cpp +++ b/lxqt-config-monitor/settingsdialog.cpp @@ -17,8 +17,10 @@ */ #include "settingsdialog.h" +#include "managesavedsettings.h" +#include -SettingsDialog::SettingsDialog(const QString &title, LXQt::Settings *settings, QWidget *parent) +SettingsDialog::SettingsDialog(const QString &title, LXQt::Settings *settings, KScreen::ConfigPtr config, QWidget *parent) : LXQt::ConfigDialog(title, settings, parent) { setButtons(QDialogButtonBox::QDialogButtonBox::Apply | QDialogButtonBox::Close); @@ -26,4 +28,7 @@ SettingsDialog::SettingsDialog(const QString &title, LXQt::Settings *settings, Q //DaemonSettings *daemon = new DaemonSettings(settings, this); //addPage(daemon, QObject::tr("Daemon"), "system-run"); + + ManageSavedSettings * savedSettings = new ManageSavedSettings(settings, config, this); + addPage(savedSettings, QObject::tr("Manage Saved Settings"), "system-run"); } diff --git a/lxqt-config-monitor/settingsdialog.h b/lxqt-config-monitor/settingsdialog.h index fe892db..3094f2f 100644 --- a/lxqt-config-monitor/settingsdialog.h +++ b/lxqt-config-monitor/settingsdialog.h @@ -21,6 +21,8 @@ #include #include +#include +#include class SettingsDialog : public LXQt::ConfigDialog @@ -28,7 +30,7 @@ class SettingsDialog : public LXQt::ConfigDialog Q_OBJECT public: - SettingsDialog(const QString &title, LXQt::Settings *settings, QWidget *parent = 0); + SettingsDialog(const QString &title, LXQt::Settings *settings, KScreen::ConfigPtr config, QWidget *parent = 0); private Q_SLOTS: diff --git a/lxqt-config-monitor/timeoutdialog.cpp b/lxqt-config-monitor/timeoutdialog.cpp index 3b86516..55302a9 100644 --- a/lxqt-config-monitor/timeoutdialog.cpp +++ b/lxqt-config-monitor/timeoutdialog.cpp @@ -59,7 +59,7 @@ void TimeoutDialog::onTimeout() else { int remaining = maximum / TIMER_DURATION - TIMER_DURATION * time / maximum; - ui.remainingTime->setText(tr("%1 second(s) remaining").arg(remaining)); + ui.remainingTime->setText(tr("%n second(s) remaining", nullptr, remaining).arg(remaining)); ui.progressBar->setValue(time); } } diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor.ts b/lxqt-config-monitor/translations/lxqt-config-monitor.ts deleted file mode 100644 index ff4ae85..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor.ts +++ /dev/null @@ -1,260 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - - - - - External VGA Monitor - - - - - VGA Monitor - - - - - External DVI Monitor - - - - - DVI Monitor - - - - - TV - - - - - Default Monitor - - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - - MonitorSettingsDialog - - - Monitor Settings - - - - - Settings - - - - - Set position - - - - - Error - - - - - Config can not be saved - - - - - Advanced settings - - - - - MonitorWidget - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - TimeoutDialog - - - Settings are changed - - - - - Are the current settings OK for you? - - - - - %1 second(s) remaining - - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ar.desktop b/lxqt-config-monitor/translations/lxqt-config-monitor_ar.desktop new file mode 100644 index 0000000..7a9960b --- /dev/null +++ b/lxqt-config-monitor/translations/lxqt-config-monitor_ar.desktop @@ -0,0 +1,3 @@ +Name[ar]=إعدادات الشّاشة +GenericName[ar]=إعدادات الشّاشة +Comment[ar]=اضبط الشّاشات diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ca.desktop b/lxqt-config-monitor/translations/lxqt-config-monitor_ca.desktop new file mode 100644 index 0000000..c73ebb8 --- /dev/null +++ b/lxqt-config-monitor/translations/lxqt-config-monitor_ca.desktop @@ -0,0 +1,4 @@ +#Translations +Name[ca]=Ajusts del monitor +GenericName[ca]=Ajusts del monitor +Comment[ca]=Configureu els monitors diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_de.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_de.ts deleted file mode 100644 index 2b362ef..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_de.ts +++ /dev/null @@ -1,425 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Laptop-Bildschirm - - - - External VGA Monitor - Externer VGA-Bildschirm - - - - VGA Monitor - VGA-Bildschirm - - - - External DVI Monitor - Externer DVI-Bildschirm - - - - DVI Monitor - DVI-Bildschirm - - - - TV - Fernseher - - - - Default Monitor - Standardbildschirm - - - - MonitorPictureDialog - - - Dialog - Dialogfenster - - - - Keep monitors attached - - - - Magnetic attraction - Magnetische Anziehungskraft - - - - MonitorSettingsDialog - - - Monitor Settings - Bildschirmeinstellungen - - - - Settings - Einstellungen - - - Unify all monitors - Alle Bildschirme gleich behandeln - - - Monitor Position - Bildschirmposition - - - Primary monitor: - Hauptbildschirm: - - - Do you want to save changes? - Einstellungen sichern? - - - Please, check the settings before saving. - Bitte Konfiguration vor dem Sichern überprüfen. - - - Name - Name - - - Name: - Name: - - - Actual - Aktuell - - - - Set position - - - - - Error - Fehler - - - - Config can not be saved - Konfiguration kann nicht gespeichert werden - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Einschalten - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Auflösung: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Bildwiederholfrequenz: - - - Hz - Hz - - - Position: - Position: - - - x: - x: - - - y: - y: - - - Brightness: - Helligkeit: - - - Gamma: - Gamma: - - - : - : - - - Backlight: - Hintergrundbeleuchtung: - - - Auto - Automatisch - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Automatisch - - - Monitor Settings - Bildschirmeinstellungen - - - Quick Options - Schnellwahl - - - Settings - Einstellungen - - - Save settings - Einstellungen sichern - - - - QuickOptions - - Monitor Settings - Bildschirmeinstellungen - - - Show the same screen on both laptop LCD and external monitor - Gleiches Bild auf Laptop und externem Bildschirm anzeigen - - - Extended view - Erweiterter Bildschirm - - - Turn off laptop LCD and use external monitor only - Laptop-Bildschirm ausschalten und nur den externen Monitor verwenden - - - Turn off external monitor and use laptop LCD only - Externen Monitor ausschalten und nur den Laptop-Bildschirm verwenden - - - - SaveSettings - - Monitor Settings - Bildschirmeinstellungen - - - Save - Speichern - - - Saved settings - Gespeicherte Einstellungen - - - All: - Alle: - - - Hardware compatible: - Mit der Hardware kompatibel: - - - Rename - Umbenennen - - - Delete - Löschen - - - Name - Name - - - Name: - Name: - - - - TimeoutDialog - - - Settings are changed - Einstellungen wurden geändert - - - - Are the current settings OK for you? - Sind die Einstellungen korrekt? - - - - %1 second(s) remaining - %1 Sekunde(n) verbleiben - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_el.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_el.ts deleted file mode 100644 index aa6a13f..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_el.ts +++ /dev/null @@ -1,425 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Οθόνη LCD φορητού - - - - External VGA Monitor - Εξωτερική οθόνη VGA - - - - VGA Monitor - Οθόνη VGA - - - - External DVI Monitor - Εξωτερική οθόνη DVI - - - - DVI Monitor - Οθόνη DVI - - - - TV - Τηλεόραση - - - - Default Monitor - Οθόνη εξ ορισμού - - - - MonitorPictureDialog - - - Dialog - Διάλογος - - - - Keep monitors attached - - - - Magnetic attraction - Μαγνητική έλξη - - - - MonitorSettingsDialog - - - Monitor Settings - Ρυθμίσεις οθόνης - - - - Settings - Ρυθμίσεις - - - Unify all monitors - Ενοποίηση όλων των οθονών - - - Monitor Position - Θέση της οθόνης - - - Primary monitor: - Πρωτεύουσα οθόνη: - - - Do you want to save changes? - Επιθυμείτε την αποθήκευση των αλλαγών; - - - Please, check the settings before saving. - Παρακαλώ, ελέγξτε τις ρυθμίσεις πριν την αποθήκευση. - - - Name - Όνομα - - - Name: - Όνομα: - - - Actual - Τρέχον - - - - Set position - - - - - Error - Σφάλμα - - - - Config can not be saved - Δεν είναι δυνατή η αποθήκευση της διαμόρφωσης - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Ενεργοποίηση - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Ανάλυση: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Ρυθμός: - - - Hz - Hz - - - Position: - Θέση: - - - x: - x: - - - y: - y: - - - Brightness: - Φωτεινότητα: - - - Gamma: - Γάμμα: - - - : - : - - - Backlight: - Οπίσθιος φωτισμός: - - - Auto - Αυτόματο - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Αυτόματο - - - Monitor Settings - Ρυθμίσεις οθόνης - - - Quick Options - Γρήγορες επιλογές - - - Settings - Ρυθμίσεις - - - Save settings - Αποθήκευση ρυθμίσεων - - - - QuickOptions - - Monitor Settings - Ρυθμίσεις οθόνης - - - Show the same screen on both laptop LCD and external monitor - Εμφάνιση της ίδιας οθόνης στο LCD του φορητού και στην εξωτερική οθόνη - - - Extended view - Εκτεταμένη προβολή - - - Turn off laptop LCD and use external monitor only - Απενεργοποίηση της οθόνης LCD του φορητού και χρήση μόνον της εξωτερικής οθόνης - - - Turn off external monitor and use laptop LCD only - Απενεργοποίηση της εξωτερικής οθόνης και χρήση μόνον της οθόνης LCD του φορητού - - - - SaveSettings - - Monitor Settings - Ρυθμίσεις οθόνης - - - Save - Αποθήκευση - - - Saved settings - Αποθηκευμένες ρυθμίσεις - - - All: - Όλα: - - - Hardware compatible: - Συμβατά με το υλικό: - - - Rename - Μετονομασία - - - Delete - Διαγραφή - - - Name - Όνομα - - - Name: - Όνομα: - - - - TimeoutDialog - - - Settings are changed - Οι ρυθμίσεις τροποποιήθηκαν - - - - Are the current settings OK for you? - Οι τρέχουσες ρυθμίσεις σας ικανοποιούν; - - - - %1 second(s) remaining - Υπολείπεται %1 δευτερόλεπτο(α) - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_hu.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_hu.ts deleted file mode 100644 index f1f3bf6..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_hu.ts +++ /dev/null @@ -1,377 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Beépített LCD Monitor - - - - External VGA Monitor - Külső LCD Monitor - - - - VGA Monitor - VGA Monitor - - - - External DVI Monitor - Külső DVI Monitor - - - - DVI Monitor - - - - - TV - - - - - Default Monitor - Alapértelmezett Monitor - - - - MonitorPictureDialog - - - Dialog - Párbeszédablak - - - - Keep monitors attached - - - - Magnetic attraction - Mégneses elhajlás - - - - MonitorSettingsDialog - - - Monitor Settings - Monitor beállítás - - - Quick Options - Gyors lehetőségek - - - Show the same screen on both laptop LCD and external monitor - Azonos kép a beépített LCD és külső monitoron - - - Extended view - Bővített megjelenítés - - - Turn off laptop LCD and use external monitor only - Beépített LCD kikapcsolása és csak a külső használata - - - Turn off external monitor and use laptop LCD only - Külső monor lekapcsolása és csak a belső LCD használata - - - - Settings - beállítások - - - Unify all monitors - Monitorok összevonása - - - Monitor Position - Monitor helyzet - - - Primary monitor: - Elsődleges monitor: - - - Do you want to save changes? - Változtatások mentése? - - - Please, check your config before to save. - Mentés előtt ellenőrizd a beállításokat! - - - - Set position - - - - - Error - Hiba - - - - Config can not be saved - A beállítás mentetlen - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Bekapcsolás - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Felbontás: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Arány: - - - Position: - Helyzet: - - - Brightness: - Fényerő: - - - Backlight: - Háttérfény: - - - Auto - Automata - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Automata - - - Monitor Settings - Monitor beállítás - - - Quick Options - Gyors lehetőségek - - - Settings - beállítások - - - - QuickOptions - - Monitor Settings - Monitor beállítás - - - Show the same screen on both laptop LCD and external monitor - Azonos kép a beépített LCD és külső monitoron - - - Extended view - Bővített megjelenítés - - - Turn off laptop LCD and use external monitor only - Beépített LCD kikapcsolása és csak a külső használata - - - Turn off external monitor and use laptop LCD only - Külső monor lekapcsolása és csak a belső LCD használata - - - - SaveSettings - - Monitor Settings - Monitor beállítás - - - - TimeoutDialog - - - Settings are changed - Beállítások változtatása - - - - Are the current settings OK for you? - Jók a beállítások? - - - - %1 second(s) remaining - %1 másodperc van hátra - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_it.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_it.ts deleted file mode 100644 index 54b8f6b..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_it.ts +++ /dev/null @@ -1,377 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Monitor portatile LCD - - - - External VGA Monitor - Monitor esterno VGA - - - - VGA Monitor - Monitor VGA - - - - External DVI Monitor - Monitor esterno DVI - - - - DVI Monitor - Monitor DVI - - - - TV - TV - - - - Default Monitor - Monitor principale - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - Magnetic attraction - Attrazione magnetica - - - - MonitorSettingsDialog - - - Monitor Settings - Impostazioni del monitor - - - Quick Options - Opzioni veloci - - - Show the same screen on both laptop LCD and external monitor - Unifica uscite - - - Extended view - Vista estesa - - - Turn off laptop LCD and use external monitor only - Spegni monitor portatile LCD e usa solo monitor esterno - - - Turn off external monitor and use laptop LCD only - Spegni monitor esterno e usa solo monitor LCD - - - - Settings - Impostazioni - - - Unify all monitors - Unisci tutte le uscite - - - Monitor Position - Posizione dello schermo - - - Primary monitor: - Monitor principale: - - - Do you want to save changes? - Salvare i cambiamenti? - - - Please, check your config before to save. - Per favore controlla la configurazione prima di salvare. - - - - Set position - - - - - Error - Errore - - - - Config can not be saved - La configurazione non può essere salvata - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Accendi - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Risoluzione: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Frequenza: - - - Position: - Posizione: - - - Brightness: - Luminosità: - - - Backlight: - Retroilluminazione: - - - Auto - Auto - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Auto - - - Monitor Settings - Impostazioni del monitor - - - Quick Options - Opzioni veloci - - - Settings - Impostazioni - - - - QuickOptions - - Monitor Settings - Impostazioni del monitor - - - Show the same screen on both laptop LCD and external monitor - Unifica uscite - - - Extended view - Vista estesa - - - Turn off laptop LCD and use external monitor only - Spegni monitor portatile LCD e usa solo monitor esterno - - - Turn off external monitor and use laptop LCD only - Spegni monitor esterno e usa solo monitor LCD - - - - SaveSettings - - Monitor Settings - Impostazioni del monitor - - - - TimeoutDialog - - - Settings are changed - Impostazione modificate - - - - Are the current settings OK for you? - Mantenere questa configurazione? - - - - %1 second(s) remaining - %1 secondi rimanenti - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ja.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_ja.ts deleted file mode 100644 index 3954b37..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_ja.ts +++ /dev/null @@ -1,393 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - ラップトップ液晶モニター - - - - External VGA Monitor - 外部VGAモニター - - - - VGA Monitor - VGAモニター - - - - External DVI Monitor - 外部DVIモニター - - - - DVI Monitor - DVIモニター - - - - TV - TV - - - - Default Monitor - デフォルトのモニター - - - - MonitorPictureDialog - - - Dialog - ダイアログ - - - - Keep monitors attached - - - - - MonitorSettingsDialog - - - Monitor Settings - モニターの設定 - - - Quick Options - クイックオプション - - - Show the same screen on both laptop LCD and external monitor - ラップトップ液晶パネルと外部モニターで同じ画面を表示 - - - Extended view - 拡張領域 - - - Turn off laptop LCD and use external monitor only - ラップトップ液晶画面を無効にし、外部モニターのみ使う - - - Turn off external monitor and use laptop LCD only - 外部モニターを無効にし、ラップトップ液晶画面のみ使う - - - - Settings - 設定 - - - Unify all monitors - すべてのモニターの表示を共通にする - - - Monitor Position - モニターの位置 - - - Primary monitor: - プライマリーモニター: - - - Do you want to save changes? - 変更を保存しますか? - - - Please, check your config before to save. - 保存する前に、設定結果を確認してください - - - - Set position - - - - - Error - エラー - - - - Config can not be saved - 設定を保存することができませんでした - - - - Advanced settings - - - - - MonitorWidget - - Turn on - 有効にする - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - 解像度: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - リフレッシュレート: - - - Hz - Hz - - - Position: - 位置: - - - x: - X座標: - - - y: - Y座標: - - - Brightness: - 明るさ: - - - Gamma: - ガンマ: - - - : - : - - - Backlight: - バックライト: - - - Auto - 自動 - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - 自動 - - - Monitor Settings - モニターの設定 - - - Quick Options - クイックオプション - - - Settings - 設定 - - - - QuickOptions - - Monitor Settings - モニターの設定 - - - Show the same screen on both laptop LCD and external monitor - ラップトップ液晶パネルと外部モニターで同じ画面を表示 - - - Extended view - 拡張領域 - - - Turn off laptop LCD and use external monitor only - ラップトップ液晶画面を無効にし、外部モニターのみ使う - - - Turn off external monitor and use laptop LCD only - 外部モニターを無効にし、ラップトップ液晶画面のみ使う - - - - SaveSettings - - Monitor Settings - モニターの設定 - - - - TimeoutDialog - - - Settings are changed - 設定は変更されました - - - - Are the current settings OK for you? - この設定で問題ないですか? - - - - %1 second(s) remaining - 残り %1 秒 - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_pl_PL.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_pl_PL.ts deleted file mode 100644 index 33a3561..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_pl_PL.ts +++ /dev/null @@ -1,381 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Monitor LCD laptopa - - - - External VGA Monitor - Zewnętrzny monitor VGA - - - - VGA Monitor - Monitor VGA - - - - External DVI Monitor - Zewnętrzny monitor DVI - - - - DVI Monitor - Monitor DVI - - - - TV - TV - - - - Default Monitor - Domyślny monitor - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - - MonitorSettingsDialog - - - Monitor Settings - Ustawienia monitora - - - Quick Options - Opcje - - - Show the same screen on both laptop LCD and external monitor - Pokaż ten sam ekran na LCD laptopa oraz zewnętrznym monitorze - - - Extended view - Rozszerzony widok - - - Turn off laptop LCD and use external monitor only - Wyłącz LCD laptopa i użyj tylko zewnętrznego monitora - - - Turn off external monitor and use laptop LCD only - Wyłącz zewnętrzny monitor i użyj tylko LCD laptopa - - - - Settings - Ustawienia - - - Primary monitor: - Główny monitor: - - - Do you want to save changes? - Czy chcesz zachować zmiany? - - - Please, check your config before to save. - Proszę sprawdzić konfigurację przed zapisaniem. - - - - Set position - - - - - Error - Błąd - - - - Config can not be saved - Konfiguracja nie może być zapisana - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Włącz - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Rozdzielczość: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Odświeżanie: - - - Hz - Hz - - - Position: - Pozycja: - - - x: - x: - - - y: - y: - - - Brightness: - Jasność: - - - Gamma: - Gamma: - - - : - : - - - Auto - Auto - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Auto - - - Monitor Settings - Ustawienia monitora - - - Quick Options - Opcje - - - Settings - Ustawienia - - - - QuickOptions - - Monitor Settings - Ustawienia monitora - - - Show the same screen on both laptop LCD and external monitor - Pokaż ten sam ekran na LCD laptopa oraz zewnętrznym monitorze - - - Extended view - Rozszerzony widok - - - Turn off laptop LCD and use external monitor only - Wyłącz LCD laptopa i użyj tylko zewnętrznego monitora - - - Turn off external monitor and use laptop LCD only - Wyłącz zewnętrzny monitor i użyj tylko LCD laptopa - - - - SaveSettings - - Monitor Settings - Ustawienia monitora - - - - TimeoutDialog - - - Settings are changed - Ustawienia zostały zmienione - - - - Are the current settings OK for you? - Czy aktualne ustawienia są prawidłowe? - - - - %1 second(s) remaining - pozostało sekund: %1 - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_pt.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_pt.ts deleted file mode 100644 index d554fc2..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_pt.ts +++ /dev/null @@ -1,477 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - Monitor LCD de portátil - - - - External VGA Monitor - Monitor externo VGA - - - - VGA Monitor - Monitor VGA - - - - External DVI Monitor - Monitor externo DVI - - - - DVI Monitor - Monitor DVI - - - - TV - TV - - - - Default Monitor - Monitor pré-definido - - - - MonitorPictureDialog - - - Dialog - Caixa de diálogo - - - - Keep monitors attached - - - - Magnetic attraction - Atração magnética - - - - MonitorSettingsDialog - - Laptop LCD Monitor - Monitor LCD de portátil - - - External VGA Monitor - Monitor externo VGA - - - VGA Monitor - Monitor VGA - - - External DVI Monitor - Monitor externo DVI - - - DVI Monitor - Monitor DVI - - - TV - TV - - - Default Monitor - Monitor pré-definido - - - Auto - Automático - - - OK? - Aceitar? - - - Yes - Sim - - - About - Sobre - - - Left of - Esquerda de - - - Right of - Direita de - - - Above of - Acima de - - - Below of - Abaixo de - - - Show the same screen on both - Mostrar o mesmo ecrã em ambos - - - Turn off first monitor and use second monitor only - Desligar o primeiro monitor e utilizar o segundo - - - Turn off second monitor and use first monitor only - Desligar o segundo monitor e utilizar o primeiro - - - LXQt-config-monitor - -Monitor configuration tool for LXQt. - LXQt-config-monitor - -Ferramenta de configuração de monitores do LXQt. - - - - Monitor Settings - Definições do monitor - - - Quick Options - Opções rápidas - - - Show the same screen on both laptop LCD and external monitor - Mostrar o mesmo ecrã no portátil e no monitor externo - - - Extended view - Vista detalhada - - - Turn off laptop LCD and use external monitor only - Desligar ecrã do portátil e utilizar o monitor externo - - - Turn off external monitor and use laptop LCD only - Desligar o monitor externo e utilizar o ecrã do portátil - - - - Settings - Definições - - - Unify all monitors - Unificar todos os monitores - - - Monitor Position - Posição do monitor - - - Primary monitor: - Monitor principal: - - - Do you want to save changes? - Quer guardar as alterações? - - - Please, check your config before to save. - Verifique a configuraçao antes de guardar. - - - - Set position - - - - - Error - Erro - - - - Config can not be saved - Não é possível guardar a configuração - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Ligar - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Resolução: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Taxa: - - - Hz - Hz - - - Position: - Posição: - - - x: - x: - - - y: - y: - - - Brightness: - Brilho: - - - Gamma: - Gama: - - - : - : - - - Backlight: - Luz de fundo: - - - Auto - Automático - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Automático - - - Monitor Settings - Definições do monitor - - - Quick Options - Opções rápidas - - - Settings - Definições - - - - QuickOptions - - Monitor Settings - Definições do monitor - - - Show the same screen on both laptop LCD and external monitor - Mostrar o mesmo ecrã no portátil e no monitor externo - - - Extended view - Vista detalhada - - - Turn off laptop LCD and use external monitor only - Desligar ecrã do portátil e utilizar o monitor externo - - - Turn off external monitor and use laptop LCD only - Desligar o monitor externo e utilizar o ecrã do portátil - - - - SaveSettings - - Monitor Settings - Definições do monitor - - - - TimeoutDialog - - - Settings are changed - Definições alteradas - - - - Are the current settings OK for you? - As definições estão certas para si? - - - - %1 second(s) remaining - %1 segundo(s) em falta - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ru.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_ru.ts deleted file mode 100644 index 4c12d9a..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_ru.ts +++ /dev/null @@ -1,432 +0,0 @@ - - - - - ApplyDialog - - Monitor Settings - Настройки монитора - - - Save - Сохранить - - - Saved settings - Сохранённые настройки - - - All: - Все: - - - Hardware compatible: - Аппаратно-совместимые: - - - - MonitorInfo - - - Laptop LCD Monitor - ЖК-монитор лэптопа - - - - External VGA Monitor - Внешний VGA-монитор - - - - VGA Monitor - VGA-монитор - - - - External DVI Monitor - Внешний DVI-монитор - - - - DVI Monitor - DVI-монитор - - - - TV - ТВ - - - - Default Monitor - Монитор по умолчанию - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - Magnetic attraction - Магнитное притяжение - - - - MonitorSettingsDialog - - - Monitor Settings - Настройки монитора - - - - Settings - Настройки - - - Unify all monitors - Объединить все мониторы - - - Monitor Position - Положение монитора - - - Primary monitor: - Первичный монитор: - - - Apply - Применить - - - Do you want to save changes? - Вы хотите сохранить изменения? - - - Please, check the settings before saving. - Проверьте, пожалуйста, настройки перед сохранением. - - - Name - Название - - - Name: - Название: - - - Actual - Текущие - - - - Set position - - - - - Error - Ошибка - - - - Config can not be saved - Не удалось сохранить конфигурацию - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Включить - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Разрешение: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Частота: - - - Hz - Гц - - - Position: - Положение: - - - Backlight: - Подсветка: - - - Brightness: - Яркость: - - - Gamma: - Гамма: - - - Auto - Авто - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Авто - - - Monitor Settings - Настройки монитора - - - Quick Options - Быстрые настройки - - - Settings - Настройки - - - Save settings - Сохранить настройки - - - - QuickOptions - - Monitor Settings - Настройки монитора - - - Show the same screen on both laptop LCD and external monitor - Отображать одинаковый экран на внешнем мониторе и ЖК-мониторе лэптопа - - - Extended view - Расширенный вид - - - Turn off laptop LCD and use external monitor only - Выключить ЖК-монитор лэптопа и использовать только внешний монитор - - - Turn off external monitor and use laptop LCD only - Выключить внешний монитор и использовать только ЖК-монитор лэптопа - - - - SaveSettings - - Monitor Settings - Настройки монитора - - - Save - Сохранить - - - Saved settings - Сохранённые настройки - - - All: - Все: - - - Hardware compatible: - Аппаратно-совместимые: - - - Name - Название - - - Name: - Название: - - - - TimeoutDialog - - - Settings are changed - Настройки изменились - - - - Are the current settings OK for you? - Вам подходят текущие настройки? - - - - %1 second(s) remaining - Осталось %1 секунд(ы) - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.desktop b/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.desktop deleted file mode 100644 index a32362f..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.desktop +++ /dev/null @@ -1,4 +0,0 @@ -# Translations -Comment[ru_RU]=Настроить мониторы -Name[ru_RU]=Настройки монитора -GenericName[ru_RU]=Настройки монитора \ No newline at end of file diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.ts deleted file mode 100644 index 10cec65..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_ru_RU.ts +++ /dev/null @@ -1,432 +0,0 @@ - - - - - ApplyDialog - - Monitor Settings - Настройки монитора - - - Save - Сохранить - - - Saved settings - Сохранённые настройки - - - All: - Все: - - - Hardware compatible: - Аппаратно-совместимые: - - - - MonitorInfo - - - Laptop LCD Monitor - ЖК-монитор лэптопа - - - - External VGA Monitor - Внешний VGA-монитор - - - - VGA Monitor - VGA-монитор - - - - External DVI Monitor - Внешний DVI-монитор - - - - DVI Monitor - DVI-монитор - - - - TV - ТВ - - - - Default Monitor - Монитор по умолчанию - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - Magnetic attraction - Магнитное притяжение - - - - MonitorSettingsDialog - - - Monitor Settings - Настройки монитора - - - - Settings - Настройки - - - Unify all monitors - Объединить все мониторы - - - Monitor Position - Положение монитора - - - Primary monitor: - Первичный монитор: - - - Apply - Применить - - - Do you want to save changes? - Вы хотите сохранить изменения? - - - Please, check the settings before saving. - Проверьте, пожалуйста, настройки перед сохранением. - - - Name - Название - - - Name: - Название: - - - Actual - Текущие - - - - Set position - - - - - Error - Ошибка - - - - Config can not be saved - Не удалось сохранить конфигурацию - - - - Advanced settings - - - - - MonitorWidget - - Turn on - Включить - - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - Разрешение: - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Rate: - Частота: - - - Hz - Гц - - - Position: - Положение: - - - Backlight: - Подсветка: - - - Brightness: - Яркость: - - - Gamma: - Гамма: - - - Auto - Авто - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - Авто - - - Monitor Settings - Настройки монитора - - - Quick Options - Быстрые настройки - - - Settings - Настройки - - - Save settings - Сохранить настройки - - - - QuickOptions - - Monitor Settings - Настройки монитора - - - Show the same screen on both laptop LCD and external monitor - Отображать одинаковый экран на внешнем мониторе и ЖК-мониторе лэптопа - - - Extended view - Расширенный вид - - - Turn off laptop LCD and use external monitor only - Выключить ЖК-монитор лэптопа и использовать только внешний монитор - - - Turn off external monitor and use laptop LCD only - Выключить внешний монитор и использовать только ЖК-монитор лэптопа - - - - SaveSettings - - Monitor Settings - Настройки монитора - - - Save - Сохранить - - - Saved settings - Сохранённые настройки - - - All: - Все: - - - Hardware compatible: - Аппаратно-совместимые: - - - Name - Название - - - Name: - Название: - - - - TimeoutDialog - - - Settings are changed - Настройки изменились - - - - Are the current settings OK for you? - Вам подходят текущие настройки? - - - - %1 second(s) remaining - Осталось %1 секунд(ы) - - - diff --git a/lxqt-config-monitor/translations/lxqt-config-monitor_zh_TW.ts b/lxqt-config-monitor/translations/lxqt-config-monitor_zh_TW.ts deleted file mode 100644 index e59aae0..0000000 --- a/lxqt-config-monitor/translations/lxqt-config-monitor_zh_TW.ts +++ /dev/null @@ -1,329 +0,0 @@ - - - - - MonitorInfo - - - Laptop LCD Monitor - 筆記型電腦液晶螢幕 - - - - External VGA Monitor - 外接VGA螢幕 - - - - VGA Monitor - VGA 螢幕 - - - - External DVI Monitor - 外接 DVI 螢幕 - - - - DVI Monitor - DVI 螢幕 - - - - TV - 電視 - - - - Default Monitor - 預設螢幕 - - - - MonitorPictureDialog - - - Dialog - - - - - Keep monitors attached - - - - - MonitorSettingsDialog - - Laptop LCD Monitor - 筆記型電腦液晶螢幕 - - - External VGA Monitor - 外接VGA螢幕 - - - VGA Monitor - VGA 螢幕 - - - External DVI Monitor - 外接 DVI 螢幕 - - - DVI Monitor - DVI 螢幕 - - - TV - 電視 - - - Default Monitor - 預設螢幕 - - - Auto - 自動 - - - Yes - - - - About - 關於 - - - Show the same screen on both - 在兩邊都顯示相同畫面 - - - Turn off first monitor and use second monitor only - 關掉第一個螢幕,只用第二個螢幕 - - - Turn off second monitor and use first monitor only - 關掉第二個螢幕,只用第一個螢幕 - - - LXQt-config-monitor - -Monitor configuration tool for LXQt. - LXQt-config-monitor 螢幕設定工具 - - - - Monitor Settings - - - - - Settings - - - - - Set position - - - - - Error - - - - - Config can not be saved - - - - - Advanced settings - - - - - MonitorWidget - - - Setup - - - - - (x) - - - - - (y) - - - - - Resolution: - - - - - Enable this display - - - - - This is my primary display - - - - - This screen extends another display - - - - - This screen clones another display - - - - - Right of... - - - - - Left of... - - - - - Above... - - - - - Below... - - - - - Positioned manually - - - - - Advanced - - - - - Refresh rate: - - - - - Rotation: - - - - - Info - - - - - Display information - - - - Auto - 自動 - - - - Name: %1 - - - - - - Vendor: %1 - - - - - - Serial: %1 - - - - - - Display size: %1cm x %2cm - - - - - - Serial number: %1 - - - - - - EISA device ID: %1 - - - - - - None - - - - - Left - - - - - Right - - - - - Inverted - - - - - %1 Hz - - - - - QObject - - Auto - 自動 - - - - TimeoutDialog - - - Settings are changed - - - - - Are the current settings OK for you? - - - - - %1 second(s) remaining - - - - diff --git a/lxqt-config.kdev4 b/lxqt-config.kdev4 deleted file mode 100644 index 30a251d..0000000 --- a/lxqt-config.kdev4 +++ /dev/null @@ -1,3 +0,0 @@ -[Project] -Manager=KDevCMakeManager -Name=lxqt-config diff --git a/lxqt-config.png b/lxqt-config.png new file mode 100644 index 0000000000000000000000000000000000000000..d95a9592f84120fc6c063d4a7e6879d44a385b81 GIT binary patch literal 32184 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 literal 0 HcmV?d00001 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index d1e4e6e..1f9c86b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -30,6 +30,16 @@ lxqt_translate_ts(QM_FILES ${lxqt-config_UIS} INSTALL_DIR "${LXQT_TRANSLATIONS_DIR}/${PROJECT_NAME}" + PULL_TRANSLATIONS + ${PULL_TRANSLATIONS} + CLEAN_TRANSLATIONS + ${CLEAN_TRANSLATIONS} + TRANSLATIONS_REPO + ${TRANSLATIONS_REPO} + TRANSLATIONS_REFSPEC + ${TRANSLATIONS_REFSPEC} + REPO_SUBDIR + "lxqt-config/${PROJECT_NAME}" ) lxqt_app_translation_loader(QM_LOADER ${PROJECT_NAME}) diff --git a/src/main.cpp b/src/main.cpp index 0996b85..a9644e6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -26,19 +26,30 @@ * END_COMMON_COPYRIGHT_HEADER */ #include +#include #include "mainwindow.h" int main(int argc, char **argv) { LXQt::SingleApplication app(argc, argv); + app.setOrganizationName(QStringLiteral("lxqt")); + app.setApplicationName(QStringLiteral("lxqt-config")); + app.setAttribute(Qt::AA_UseHighDpiPixmaps, true); // ensure that we use lxqt-config.menu file. qputenv("XDG_MENU_PREFIX", "lxqt-"); LXQtConfig::MainWindow w; app.setActivationWindow(&w); + QSize s = QSettings{}.value("size").toSize(); + if (!s.isEmpty()) + w.resize(s); w.show(); - return app.exec(); + int ret = app.exec(); + + QSettings{}.setValue("size", w.size()); + + return ret; } diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 4cc66bf..a707c63 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -33,6 +33,8 @@ #include #include #include +#include +#include #include #include @@ -170,19 +172,34 @@ public: QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const { - int height = QStyledItemDelegate::sizeHint(option, index).height(); - return QSize(mView->gridSize().width(), qMin(height, mView->gridSize().height())); + /* We let Qt calculate the real cell size but consider the 4-px margin + around each cell and try to add a 2-px margin around the selection + rectangle for styles that, unlike Fusion, highlight the whole item. */ + QStyleOptionViewItem opt = option; + int delta = opt.rect.width() - (mView->gridSize().width() - 8); + if (delta > 0) + opt.rect.adjust(delta/2, 0 , -delta/2, 0); + QSize defaultSize = QStyledItemDelegate::sizeHint(opt, index); + return QSize(qMin(defaultSize.width() + 4, mView->gridSize().width() - 8), + qMin(defaultSize.height() + 4, mView->gridSize().height() - 8)); } protected: void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const { - QStyleOptionViewItemV4 opt = option; + QStyleOptionViewItem opt = option; initStyleOption(&opt, index); - QSize size(mView->gridSize().width(), mView->iconSize().height()); - QPixmap pixmap = opt.icon.pixmap(mView->iconSize()); - opt.icon = QIcon(pixmap.copy(QRect(QPoint(0, 0), size))); + const QSize & iconSize = option.decorationSize; + QSize size(mView->gridSize().width() - 8, // 4-px margin around each cell + iconSize.height()); + // for having sharp non-scalable icons with HDPI + int dpr = qApp->devicePixelRatio(); + if (dpr < 1) dpr = 1; + QPixmap pixmap = opt.icon.pixmap(iconSize / dpr); // -> Qt doc -> QIcon::pixmap() + if (dpr > 1 && pixmap.size() == iconSize) // exceptional (scalable or not from icon set) + pixmap = opt.icon.pixmap(iconSize); + opt.icon = QIcon(pixmap.copy(QRect(QPoint(0, 0), size * dpr))); opt.decorationSize = size; QApplication::style()->drawControl(QStyle::CE_ItemViewItem, &opt, painter); @@ -197,50 +214,23 @@ LXQtConfig::MainWindow::MainWindow() : QMainWindow() { setupUi(this); + /* To always have the intended layout on startup, + the listview should be shown after it's fully formed. */ + view->hide(); + model = new ConfigPaneModel(); view->setViewMode(QListView::IconMode); - view->setIconSize(QSize(32, 32)); - view->setGridSize(QSize(100, 100)); view->setWordWrap(true); view->setUniformItemSizes(true); view->setCategoryDrawer(new QCategoryDrawerV3(view)); - // Qt bug: signal activated should respect the hint, but it doesn't - if (style()->styleHint(QStyle::SH_ItemView_ActivateItemOnSingleClick)) - connect(view, SIGNAL(clicked(const QModelIndex&)), SLOT(activateItem(const QModelIndex&))); - else - connect(view, SIGNAL(doubleClicked(const QModelIndex&)), SLOT(activateItem(const QModelIndex&))); + connect(view, &QAbstractItemView::activated, this, &MainWindow::activateItem); view->setFocus(); + QTimer::singleShot(0, [this] { setSizing(); }); QTimer::singleShot(1, this, SLOT(load())); -} - -bool LXQtConfig::MainWindow::event(QEvent* event) -{ - // LXQt's Qt5 plugin sends a ThemeChange event - if (event->type() == QEvent::ThemeChange) - { - // Qt bug: signal activated should respect the hint, but it doesn't - if (style()->styleHint(QStyle::SH_ItemView_ActivateItemOnSingleClick)) - { - view->disconnect(this); - connect(view, SIGNAL(clicked(const QModelIndex&)), SLOT(activateItem(const QModelIndex&))); - } - else - { - view->disconnect(this); - connect(view, SIGNAL(doubleClicked(const QModelIndex&)), SLOT(activateItem(const QModelIndex&))); - } - } - else if (event->type() == QEvent::KeyRelease) - { - int key = static_cast(event)->key(); - if (key == Qt::Key_Enter || key == Qt::Key_Return) - activateItem(view->selectionModel()->currentIndex()); - } - - return QMainWindow::event(event); + new QShortcut{QKeySequence{Qt::CTRL + Qt::Key_Q}, this, SLOT(close())}; } void LXQtConfig::MainWindow::load() @@ -254,6 +244,8 @@ void LXQtConfig::MainWindow::load() view->setModel(proxyModel); view->setItemDelegate(new ConfigItemDelegate(view)); + view->show(); + QApplication::restoreOverrideCursor(); } @@ -265,3 +257,35 @@ void LXQtConfig::MainWindow::activateItem(const QModelIndex &index) QModelIndex orig = proxyModel->mapToSource(index); model->activateItem(orig); } + +void LXQtConfig::MainWindow::setSizing() +{ + // consult the style to know the icon size + int iconSize = qBound(16, view->decorationSize().height(), 256); + // DPR is automatically taken into account in setIconSize() + // but wee need to consider it explicitly below + int dpr = qApp->devicePixelRatio(); + if (dpr < 1) dpr = 1; + iconSize *= dpr; + /* To have an appropriate grid size, we suppose that + * + * (1) The text has 3 lines and each line has 16 chars (for languages like German), at most; + * (2) The selection rect has a margin of 2 px, at most; + * (3) There is, at most, a 3-px spacing between text and icon; and + * (4) There is a 4-px margin around each cell. + */ + QFontMetrics fm = fontMetrics(); + int textWidth = fm.averageCharWidth() * 16; + int textHeight = fm.lineSpacing() * 3; + QSize grid; + grid.setWidth(qMax(iconSize, textWidth) + 4); + grid.setHeight(iconSize + textHeight + 4 + 3); + view->setGridSize(grid + QSize(8, 8)); +} + +bool LXQtConfig::MainWindow::event(QEvent * event) +{ + if (QEvent::StyleChange == event->type()) + setSizing(); + return QMainWindow::event(event); +} diff --git a/src/mainwindow.h b/src/mainwindow.h index e8952ee..ae97cc9 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -50,13 +50,16 @@ class MainWindow : public QMainWindow, public Ui::MainWindow public: MainWindow(); +protected: + virtual bool event(QEvent * event) override; + private: QCategorizedSortFilterProxyModel *proxyModel; ConfigPaneModel *model; private: void builGroup(const QDomElement& xml); - bool event(QEvent *event); + void setSizing(); private slots: void load(); diff --git a/src/qcategorizedview/qcategorizedview.cpp b/src/qcategorizedview/qcategorizedview.cpp index 4c3ca6e..238c782 100644 --- a/src/qcategorizedview/qcategorizedview.cpp +++ b/src/qcategorizedview/qcategorizedview.cpp @@ -131,9 +131,9 @@ bool QCategorizedView::Private::isCategorized() const return proxyModel && categoryDrawer && proxyModel->isCategorizedModel(); } -QStyleOptionViewItemV4 QCategorizedView::Private::blockRect(const QModelIndex &representative) +QStyleOptionViewItem QCategorizedView::Private::blockRect(const QModelIndex &representative) { - QStyleOptionViewItemV4 option(q->viewOptions()); + QStyleOptionViewItem option(q->viewOptions()); const int height = categoryDrawer->categoryHeight(representative, option); const QString categoryDisplay = representative.data(QCategorizedSortFilterProxyModel::CategoryDisplayRole).toString(); QPoint pos = blockPosition(categoryDisplay); @@ -781,6 +781,11 @@ void QCategorizedView::reset() QListView::reset(); } +QSize QCategorizedView::decorationSize() const +{ + return viewOptions().decorationSize; +} + void QCategorizedView::paintEvent(QPaintEvent *event) { if (!d->isCategorized()) { @@ -800,9 +805,9 @@ void QCategorizedView::paintEvent(QPaintEvent *event) while (it != d->blocks.constEnd()) { const Private::Block &block = *it; const QModelIndex categoryIndex = d->proxyModel->index(block.firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - QStyleOptionViewItemV4 option(viewOptions()); - option.features |= d->alternatingBlockColors && block.alternate ? QStyleOptionViewItemV4::Alternate - : QStyleOptionViewItemV4::None; + QStyleOptionViewItem option(viewOptions()); + option.features |= d->alternatingBlockColors && block.alternate ? QStyleOptionViewItem::Alternate + : QStyleOptionViewItem::None; option.state |= !d->collapsibleBlocks || !block.collapsed ? QStyle::State_Open : QStyle::State_None; const int height = d->categoryDrawer->categoryHeight(categoryIndex, option); @@ -849,13 +854,13 @@ void QCategorizedView::paintEvent(QPaintEvent *event) const QModelIndex index = d->proxyModel->index(i, modelColumn(), rootIndex()); const Qt::ItemFlags flags = d->proxyModel->flags(index); - QStyleOptionViewItemV4 option(viewOptions()); + QStyleOptionViewItem option(viewOptions()); option.rect = visualRect(index); option.widget = this; - option.features |= wordWrap() ? QStyleOptionViewItemV2::WrapText - : QStyleOptionViewItemV2::None; - option.features |= alternatingRowColors() && alternateItem ? QStyleOptionViewItemV4::Alternate - : QStyleOptionViewItemV4::None; + option.features |= wordWrap() ? QStyleOptionViewItem::WrapText + : QStyleOptionViewItem::None; + option.features |= alternatingRowColors() && alternateItem ? QStyleOptionViewItem::Alternate + : QStyleOptionViewItem::None; if (flags & Qt::ItemIsSelectable) { option.state |= selectionModel()->isSelected(index) ? QStyle::State_Selected : QStyle::State_None; @@ -962,7 +967,7 @@ void QCategorizedView::mouseMoveEvent(QMouseEvent *event) while (it != d->blocks.constEnd()) { const Private::Block &block = *it; const QModelIndex categoryIndex = d->proxyModel->index(block.firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - QStyleOptionViewItemV4 option(viewOptions()); + QStyleOptionViewItem option(viewOptions()); const int height = d->categoryDrawer->categoryHeight(categoryIndex, option); QPoint pos = d->blockPosition(it.key()); pos.ry() -= height; @@ -974,7 +979,7 @@ void QCategorizedView::mouseMoveEvent(QMouseEvent *event) if (option.rect.contains(mousePos)) { if (d->categoryDrawerV3 && d->hoveredBlock->height != -1 && *d->hoveredBlock != block) { const QModelIndex categoryIndex = d->proxyModel->index(d->hoveredBlock->firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - const QStyleOptionViewItemV4 option = d->blockRect(categoryIndex); + const QStyleOptionViewItem option = d->blockRect(categoryIndex); d->categoryDrawerV3->mouseLeft(categoryIndex, option.rect); *d->hoveredBlock = block; d->hoveredCategory = it.key(); @@ -994,7 +999,7 @@ void QCategorizedView::mouseMoveEvent(QMouseEvent *event) } if (d->categoryDrawerV3 && d->hoveredBlock->height != -1) { const QModelIndex categoryIndex = d->proxyModel->index(d->hoveredBlock->firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - const QStyleOptionViewItemV4 option = d->blockRect(categoryIndex); + const QStyleOptionViewItem option = d->blockRect(categoryIndex); d->categoryDrawerV3->mouseLeft(categoryIndex, option.rect); *d->hoveredBlock = Private::Block(); d->hoveredCategory = QString(); @@ -1017,7 +1022,7 @@ void QCategorizedView::mousePressEvent(QMouseEvent *event) while (it != d->blocks.constEnd()) { const Private::Block &block = *it; const QModelIndex categoryIndex = d->proxyModel->index(block.firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - const QStyleOptionViewItemV4 option = d->blockRect(categoryIndex); + const QStyleOptionViewItem option = d->blockRect(categoryIndex); const QPoint mousePos = viewport()->mapFromGlobal(QCursor::pos()); if (option.rect.contains(mousePos)) { if (d->categoryDrawerV3) { @@ -1048,7 +1053,7 @@ void QCategorizedView::mouseReleaseEvent(QMouseEvent *event) while (it != d->blocks.constEnd()) { const Private::Block &block = *it; const QModelIndex categoryIndex = d->proxyModel->index(block.firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - const QStyleOptionViewItemV4 option = d->blockRect(categoryIndex); + const QStyleOptionViewItem option = d->blockRect(categoryIndex); const QPoint mousePos = viewport()->mapFromGlobal(QCursor::pos()); if (option.rect.contains(mousePos)) { if (d->categoryDrawerV3) { @@ -1076,7 +1081,7 @@ void QCategorizedView::leaveEvent(QEvent *event) } if (d->categoryDrawerV3 && d->hoveredBlock->height != -1) { const QModelIndex categoryIndex = d->proxyModel->index(d->hoveredBlock->firstIndex.row(), d->proxyModel->sortColumn(), rootIndex()); - const QStyleOptionViewItemV4 option = d->blockRect(categoryIndex); + const QStyleOptionViewItem option = d->blockRect(categoryIndex); d->categoryDrawerV3->mouseLeft(categoryIndex, option.rect); *d->hoveredBlock = Private::Block(); d->hoveredCategory = QString(); @@ -1449,7 +1454,8 @@ void QCategorizedView::currentChanged(const QModelIndex ¤t, } void QCategorizedView::dataChanged(const QModelIndex &topLeft, - const QModelIndex &bottomRight) + const QModelIndex &bottomRight, + const QVector & roles) { QListView::dataChanged(topLeft, bottomRight); if (!d->isCategorized()) { diff --git a/src/qcategorizedview/qcategorizedview.h b/src/qcategorizedview/qcategorizedview.h index d889402..bc29ef3 100644 --- a/src/qcategorizedview/qcategorizedview.h +++ b/src/qcategorizedview/qcategorizedview.h @@ -213,6 +213,11 @@ public: */ virtual void reset(); + /** + * @return The icon size by considering all the styling + */ + QSize decorationSize() const; + protected: /** * Reimplemented from QWidget. @@ -303,7 +308,8 @@ protected: * Reimplemented from QAbstractItemView. */ virtual void dataChanged(const QModelIndex &topLeft, - const QModelIndex &bottomRight); + const QModelIndex &bottomRight, + const QVector & roles = QVector ()); /** * Reimplemented from QAbstractItemView. diff --git a/src/qcategorizedview/qcategorizedview_p.h b/src/qcategorizedview/qcategorizedview_p.h index 8d32daa..611160b 100644 --- a/src/qcategorizedview/qcategorizedview_p.h +++ b/src/qcategorizedview/qcategorizedview_p.h @@ -47,7 +47,7 @@ public: /** * @return the block rect for the representative @p representative. */ - QStyleOptionViewItemV4 blockRect(const QModelIndex &representative); + QStyleOptionViewItem blockRect(const QModelIndex &representative); /** * Returns the first and last element that intersects with rect. diff --git a/src/translations/lxqt-config.ts b/src/translations/lxqt-config.ts deleted file mode 100644 index cf20fd0..0000000 --- a/src/translations/lxqt-config.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - - - - diff --git a/src/translations/lxqt-config_ar.desktop b/src/translations/lxqt-config_ar.desktop index 729977f..e251c85 100644 --- a/src/translations/lxqt-config_ar.desktop +++ b/src/translations/lxqt-config_ar.desktop @@ -1,4 +1,4 @@ # Translations -Comment[ar]=تهيئة أقسام ريزر كيوت -GenericName[ar]=تهيئة ريزر -Name[ar]=مركز تهيئة ريزر +Comment[ar]=اضبط نظامك +GenericName[ar]=إعدادات النّظام +Name[ar]=مركز لكسكيوت للضّبط diff --git a/src/translations/lxqt-config_ca.desktop b/src/translations/lxqt-config_ca.desktop new file mode 100644 index 0000000..6056656 --- /dev/null +++ b/src/translations/lxqt-config_ca.desktop @@ -0,0 +1,4 @@ +# Translations +Name[ca]=Centre de configuració de LXQt +GenericName[ca]=Ajusts del sistema +Comment[ca]=Configureu el vostre sistema diff --git a/src/translations/lxqt-config_cs.ts b/src/translations/lxqt-config_cs.ts deleted file mode 100644 index 77eee07..0000000 --- a/src/translations/lxqt-config_cs.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Nastavení - - - diff --git a/src/translations/lxqt-config_cs_CZ.ts b/src/translations/lxqt-config_cs_CZ.ts deleted file mode 100644 index f078a65..0000000 --- a/src/translations/lxqt-config_cs_CZ.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Nastavení - - - diff --git a/src/translations/lxqt-config_da_DK.ts b/src/translations/lxqt-config_da_DK.ts deleted file mode 100644 index 0c63869..0000000 --- a/src/translations/lxqt-config_da_DK.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Konfigurationscenter - - - diff --git a/src/translations/lxqt-config_de.ts b/src/translations/lxqt-config_de.ts deleted file mode 100644 index d20bb8b..0000000 --- a/src/translations/lxqt-config_de.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Konfigurationszentrum - - - diff --git a/src/translations/lxqt-config_el.ts b/src/translations/lxqt-config_el.ts deleted file mode 100644 index 295bb89..0000000 --- a/src/translations/lxqt-config_el.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Κέντρο διαμόρφωσης - - - diff --git a/src/translations/lxqt-config_es.ts b/src/translations/lxqt-config_es.ts deleted file mode 100644 index fb092d1..0000000 --- a/src/translations/lxqt-config_es.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centro de configuración - - - diff --git a/src/translations/lxqt-config_es_VE.ts b/src/translations/lxqt-config_es_VE.ts deleted file mode 100644 index 1b2ffee..0000000 --- a/src/translations/lxqt-config_es_VE.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centro de preferencias - - - diff --git a/src/translations/lxqt-config_eu.ts b/src/translations/lxqt-config_eu.ts deleted file mode 100644 index 806a7f4..0000000 --- a/src/translations/lxqt-config_eu.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Konfigurazio-zentroa - - - diff --git a/src/translations/lxqt-config_fi.ts b/src/translations/lxqt-config_fi.ts deleted file mode 100644 index 7aef321..0000000 --- a/src/translations/lxqt-config_fi.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Asetuskeskus - - - diff --git a/src/translations/lxqt-config_hu.ts b/src/translations/lxqt-config_hu.ts deleted file mode 100644 index 3535324..0000000 --- a/src/translations/lxqt-config_hu.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Beállító központ - - - diff --git a/src/translations/lxqt-config_it.desktop b/src/translations/lxqt-config_it.desktop index 40166fe..4c2c9d7 100644 --- a/src/translations/lxqt-config_it.desktop +++ b/src/translations/lxqt-config_it.desktop @@ -1,4 +1,4 @@ # Translations Comment[it]=Configura moduli di LXQt GenericName[it]=Configura LXQt -Name[it]=Centro di Configurazione LXQt +Name[it]=Centro di configurazione LXQt diff --git a/src/translations/lxqt-config_it.ts b/src/translations/lxqt-config_it.ts deleted file mode 100644 index 37bb554..0000000 --- a/src/translations/lxqt-config_it.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centro di configurazione - - - diff --git a/src/translations/lxqt-config_ja.ts b/src/translations/lxqt-config_ja.ts deleted file mode 100644 index 8ecd3cb..0000000 --- a/src/translations/lxqt-config_ja.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - コンフィグレーションセンター - - - diff --git a/src/translations/lxqt-config_pl.ts b/src/translations/lxqt-config_pl.ts deleted file mode 100644 index 3220cd4..0000000 --- a/src/translations/lxqt-config_pl.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centrum konfiguracji - - - diff --git a/src/translations/lxqt-config_pl_PL.ts b/src/translations/lxqt-config_pl_PL.ts deleted file mode 100644 index 35d7ed6..0000000 --- a/src/translations/lxqt-config_pl_PL.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Panel sterowania - - - diff --git a/src/translations/lxqt-config_pt.ts b/src/translations/lxqt-config_pt.ts deleted file mode 100644 index 2078832..0000000 --- a/src/translations/lxqt-config_pt.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centro de configurações - - - diff --git a/src/translations/lxqt-config_pt_BR.ts b/src/translations/lxqt-config_pt_BR.ts deleted file mode 100644 index d9c6bc5..0000000 --- a/src/translations/lxqt-config_pt_BR.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centro De Configuração - - - diff --git a/src/translations/lxqt-config_ro_RO.ts b/src/translations/lxqt-config_ro_RO.ts deleted file mode 100644 index fa45423..0000000 --- a/src/translations/lxqt-config_ro_RO.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Centru de configurare - - - diff --git a/src/translations/lxqt-config_ru.ts b/src/translations/lxqt-config_ru.ts deleted file mode 100644 index f991c62..0000000 --- a/src/translations/lxqt-config_ru.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Центр настроек - - - diff --git a/src/translations/lxqt-config_ru_RU.desktop b/src/translations/lxqt-config_ru_RU.desktop deleted file mode 100644 index 7f910fb..0000000 --- a/src/translations/lxqt-config_ru_RU.desktop +++ /dev/null @@ -1,4 +0,0 @@ -# Translations -Comment[ru_RU]=Настроить вашу систему -GenericName[ru_RU]=Системные настройки -Name[ru_RU]=Системные настройки LXQt diff --git a/src/translations/lxqt-config_ru_RU.ts b/src/translations/lxqt-config_ru_RU.ts deleted file mode 100644 index 8a40e0b..0000000 --- a/src/translations/lxqt-config_ru_RU.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Центр настроек - - - diff --git a/src/translations/lxqt-config_th_TH.ts b/src/translations/lxqt-config_th_TH.ts deleted file mode 100644 index 9ea9b8e..0000000 --- a/src/translations/lxqt-config_th_TH.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - ศูนย์การปรับแต่ง - - - diff --git a/src/translations/lxqt-config_uk.ts b/src/translations/lxqt-config_uk.ts deleted file mode 100644 index 7675d69..0000000 --- a/src/translations/lxqt-config_uk.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - Центр налаштувань - - - diff --git a/src/translations/lxqt-config_zh_CN.ts b/src/translations/lxqt-config_zh_CN.ts deleted file mode 100644 index dcbb52b..0000000 --- a/src/translations/lxqt-config_zh_CN.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - 配置中心 - - - diff --git a/src/translations/lxqt-config_zh_TW.ts b/src/translations/lxqt-config_zh_TW.ts deleted file mode 100644 index 6e1dc15..0000000 --- a/src/translations/lxqt-config_zh_TW.ts +++ /dev/null @@ -1,12 +0,0 @@ - - - - - MainWindow - - - Configuration Center - 設定中心 - - -