Hello community, here is the log from the commit of package kscreen5 for openSUSE:Factory checked in at 2019-11-15 22:34:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kscreen5 (Old) and /work/SRC/openSUSE:Factory/.kscreen5.new.26869 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kscreen5" Fri Nov 15 22:34:55 2019 rev:85 rq:747840 version:5.17.3 Changes: -------- --- /work/SRC/openSUSE:Factory/kscreen5/kscreen5.changes 2019-10-31 18:11:09.073752961 +0100 +++ /work/SRC/openSUSE:Factory/.kscreen5.new.26869/kscreen5.changes 2019-11-15 22:34:56.576003096 +0100 @@ -1,0 +2,12 @@ +Tue Nov 12 11:01:07 UTC 2019 - Fabian Vogt <[email protected]> + +- Update to 5.17.3 + * New bugfix release + * For more details please see: + * https://www.kde.org/announcements/plasma-5.17.3.php +- Changes since 5.17.2: + * fix(kded): read rotated output size (kde#413627) + * fix: use output hashMd5 for control files + * fix: create control files only when needed + +------------------------------------------------------------------- Old: ---- kscreen-5.17.2.tar.xz kscreen-5.17.2.tar.xz.sig New: ---- kscreen-5.17.3.tar.xz kscreen-5.17.3.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kscreen5.spec ++++++ --- /var/tmp/diff_new_pack.QlZwty/_old 2019-11-15 22:34:57.400002734 +0100 +++ /var/tmp/diff_new_pack.QlZwty/_new 2019-11-15 22:34:57.420002725 +0100 @@ -18,7 +18,7 @@ %bcond_without lang Name: kscreen5 -Version: 5.17.2 +Version: 5.17.3 Release: 0 # Full Plasma 5 version (e.g. 5.8.95) %{!?_plasma5_bugfix: %define _plasma5_bugfix %{version}} ++++++ kscreen-5.17.2.tar.xz -> kscreen-5.17.3.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/CMakeLists.txt new/kscreen-5.17.3/CMakeLists.txt --- old/kscreen-5.17.2/CMakeLists.txt 2019-10-29 19:15:43.000000000 +0100 +++ new/kscreen-5.17.3/CMakeLists.txt 2019-11-12 11:17:36.000000000 +0100 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.0) project(KScreen) -set(PROJECT_VERSION "5.17.2") +set(PROJECT_VERSION "5.17.3") set(KSCREEN_VERSION ${PROJECT_VERSION}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/common/control.cpp new/kscreen-5.17.3/common/control.cpp --- old/kscreen-5.17.2/common/control.cpp 2019-10-29 19:14:54.000000000 +0100 +++ new/kscreen-5.17.3/common/control.cpp 2019-11-12 11:16:57.000000000 +0100 @@ -26,11 +26,16 @@ QString Control::s_dirName = QStringLiteral("control/"); -QString Control::dirPath() +QString Control::dirPath() const { return Globals::dirPath() % s_dirName; } +QString Control::filePathFromHash(const QString &hash) const +{ + return dirPath() % hash; +} + Control::OutputRetention Control::convertVariantToOutputRetention(QVariant variant) { if (variant.canConvert<int>()) { @@ -49,7 +54,7 @@ : m_config(config) { // qDebug() << "Looking for control file:" << config->connectedOutputsHash(); - QFile file(filePath(config->connectedOutputsHash())); + QFile file(filePathFromHash(config->connectedOutputsHash())); if (file.open(QIODevice::ReadOnly)) { // This might not be reached, bus this is ok. The control file will // eventually be created on first write later on. @@ -67,7 +72,7 @@ const auto outputs = config->outputs(); allIds.reserve(outputs.count()); for (const KScreen::OutputPtr &output : outputs) { - const auto outputId = output->hash(); + const auto outputId = output->hashMd5(); if (allIds.contains(outputId) && !m_duplicateOutputIds.contains(outputId)) { m_duplicateOutputIds << outputId; } @@ -81,21 +86,17 @@ // in case of such a change while object exists? } -QString ControlConfig::filePath(const QString &hash) +QString ControlConfig::dirPath() const { - const QString dir = dirPath() % QStringLiteral("configs/"); - if (!QDir().mkpath(dir)) { - return QString(); - } - return dir % hash; + return Control::dirPath() % QStringLiteral("configs/"); } -QString ControlConfig::filePath() +QString ControlConfig::filePath() const { if (!m_config) { return QString(); } - return ControlConfig::filePath(m_config->connectedOutputsHash()); + return filePathFromHash(m_config->connectedOutputsHash()); } bool ControlConfig::infoIsOutput(const QVariantMap &info, const QString &outputId, const QString &outputName) const @@ -123,7 +124,7 @@ Control::OutputRetention ControlConfig::getOutputRetention(const KScreen::OutputPtr &output) const { - return getOutputRetention(output->hash(), output->name()); + return getOutputRetention(output->hashMd5(), output->name()); } Control::OutputRetention ControlConfig::getOutputRetention(const QString &outputId, const QString &outputName) const @@ -149,7 +150,7 @@ void ControlConfig::setOutputRetention(const KScreen::OutputPtr &output, OutputRetention value) { - setOutputRetention(output->hash(), output->name(), value); + setOutputRetention(output->hashMd5(), output->name(), value); } void ControlConfig::setOutputRetention(const QString &outputId, const QString &outputName, OutputRetention value) @@ -179,8 +180,20 @@ bool ControlConfig::writeFile() { + const QString path = filePath(); + + if (m_info.isEmpty()) { + // Nothing to write. Default control. Remove file if it exists. + QFile::remove(path); + return true; + } + if (!QDir().mkpath(dirPath())) { + // TODO: error message + return false; + } + // write updated data to file - QFile file(filePath()); + QFile file(path); if (!file.open(QIODevice::WriteOnly)) { // TODO: logging category? // qCWarning(KSCREEN_COMMON) << "Failed to open config control file for writing! " << file.errorString(); @@ -206,19 +219,15 @@ { } -QString ControlOutput::filePath(const QString &hash) +QString ControlOutput::dirPath() const { - const QString dir = dirPath() % QStringLiteral("outputs/"); - if (!QDir().mkpath(dir)) { - return QString(); - } - return dir % hash; + return Control::dirPath() % QStringLiteral("outputs/"); } -QString ControlOutput::filePath() +QString ControlOutput::filePath() const { if (!m_output) { return QString(); } - return ControlOutput::filePath(m_output->hash()); + return filePathFromHash(m_output->hashMd5()); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/common/control.h new/kscreen-5.17.3/common/control.h --- old/kscreen-5.17.2/common/control.h 2019-10-29 19:14:54.000000000 +0100 +++ new/kscreen-5.17.3/common/control.h 2019-11-12 11:16:57.000000000 +0100 @@ -36,10 +36,11 @@ virtual ~Control() = default; - virtual QString filePath() = 0; - protected: - static QString dirPath(); + virtual QString dirPath() const; + virtual QString filePath() const = 0; + QString filePathFromHash(const QString &hash) const; + static OutputRetention convertVariantToOutputRetention(QVariant variant); private: @@ -59,8 +60,8 @@ bool writeFile(); - QString filePath() override; - static QString filePath(const QString &hash); + QString dirPath() const override; + QString filePath() const override; private: QVariantList getOutputs() const; @@ -80,8 +81,8 @@ // TODO: scale auto value - QString filePath() override; - static QString filePath(const QString &hash); + QString dirPath() const override; + QString filePath() const override; private: KScreen::OutputPtr m_output; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/kded/output.cpp new/kscreen-5.17.3/kded/output.cpp --- old/kscreen-5.17.2/kded/output.cpp 2019-10-29 19:14:54.000000000 +0100 +++ new/kscreen-5.17.3/kded/output.cpp 2019-11-12 11:16:57.000000000 +0100 @@ -152,12 +152,25 @@ if (it == outputsInfo.end()) { return false; } + + auto isPortrait = [](const QVariant &info) { + bool ok; + const int rot = info.toInt(&ok); + if (!ok) { + return false; + } + return rot & KScreen::Output::Rotation::Left || + rot & KScreen::Output::Rotation::Right; + }; + const QVariantMap outputInfo = it->toMap(); const QVariantMap posInfo = outputInfo[QStringLiteral("pos")].toMap(); const QVariant scaleInfo = outputInfo[QStringLiteral("scale")]; const QVariantMap modeInfo = outputInfo[QStringLiteral("mode")].toMap(); const QVariantMap modeSize = modeInfo[QStringLiteral("size")].toMap(); + const bool portrait = isPortrait(outputInfo[QStringLiteral("rotation")]); + if (posInfo.isEmpty() || modeSize.isEmpty() || !scaleInfo.canConvert<int>()) { return false; } @@ -167,7 +180,11 @@ return false; } const QPoint pos = QPoint(posInfo[QStringLiteral("x")].toInt(), posInfo[QStringLiteral("y")].toInt()); - const QSize size = QSize(modeSize[QStringLiteral("width")].toInt() / scale, modeSize[QStringLiteral("height")].toInt() / scale); + QSize size = QSize(modeSize[QStringLiteral("width")].toInt() / scale, + modeSize[QStringLiteral("height")].toInt() / scale); + if (portrait) { + size.transpose(); + } geo = QRect(pos, size); return true; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/po/de/kcm_kscreen.po new/kscreen-5.17.3/po/de/kcm_kscreen.po --- old/kscreen-5.17.2/po/de/kcm_kscreen.po 2019-10-29 19:15:11.000000000 +0100 +++ new/kscreen-5.17.3/po/de/kcm_kscreen.po 2019-11-12 11:17:09.000000000 +0100 @@ -7,7 +7,7 @@ "Project-Id-Version: kscreen\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2019-10-22 07:35+0200\n" -"PO-Revision-Date: 2019-09-23 14:42+0200\n" +"PO-Revision-Date: 2019-11-05 11:59+0100\n" "Last-Translator: Burkhard Lück <[email protected]>\n" "Language-Team: German <[email protected]>\n" "Language: de\n" @@ -98,16 +98,16 @@ msgstr "" #: package/contents/ui/main.qml:97 -#, fuzzy, kde-format -#| msgid "A new output has been added. " +#, kde-format msgid "A new output has been added. Settings have been reloaded." -msgstr "Eine neue Ausgabe ist hinzugefügt worden." +msgstr "" +"Eine neue Ausgabe ist hinzugefügt worden. Die Einstellungen wurden neu " +"geladen." #: package/contents/ui/main.qml:99 -#, fuzzy, kde-format -#| msgid "An output has been removed. " +#, kde-format msgid "An output has been removed. Settings have been reloaded." -msgstr "Eine Ausgabe wurde entfernt." +msgstr "Eine Ausgabe wurde entfernt. Die Einstellungen wurden neu geladen." #: package/contents/ui/Output.qml:146 #, kde-format @@ -169,17 +169,17 @@ #: package/contents/ui/Panel.qml:115 #, kde-format msgid "Save displays' properties:" -msgstr "" +msgstr "Eigenschaften der Anzeige speichern:" #: package/contents/ui/Panel.qml:121 #, kde-format msgid "For any display arrangement" -msgstr "" +msgstr "Für jede Anzeigenanordnung" #: package/contents/ui/Panel.qml:128 #, kde-format msgid "For only this specific display arrangement" -msgstr "" +msgstr "Nur für diese spezielle Anzeigenanordnung" #: package/contents/ui/RotationButton.qml:60 #, kde-format @@ -204,9 +204,9 @@ #: package/contents/ui/Screen.qml:62 #, kde-format msgid "Identify" -msgstr "" +msgstr "Identifizieren" #: package/contents/ui/Screen.qml:70 #, kde-format msgid "Center View" -msgstr "" \ No newline at end of file +msgstr "Ansicht zentrieren" \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/po/eu/kcm_kscreen.po new/kscreen-5.17.3/po/eu/kcm_kscreen.po --- old/kscreen-5.17.2/po/eu/kcm_kscreen.po 2019-10-29 19:15:13.000000000 +0100 +++ new/kscreen-5.17.3/po/eu/kcm_kscreen.po 2019-11-12 11:17:12.000000000 +0100 @@ -10,7 +10,7 @@ "Project-Id-Version: kscreen\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2019-10-22 07:35+0200\n" -"PO-Revision-Date: 2019-09-08 02:46+0200\n" +"PO-Revision-Date: 2019-11-02 18:52+0100\n" "Last-Translator: Iñigo Salvador Azurmendi <[email protected]>\n" "Language-Team: Basque <[email protected]>\n" "Language: eu\n" @@ -18,7 +18,7 @@ "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Lokalize 19.08.0\n" +"X-Generator: Lokalize 19.08.2\n" #, kde-format msgctxt "NAME OF TRANSLATORS" @@ -38,7 +38,7 @@ #: kcm.cpp:60 #, kde-format msgid "Manage and configure monitors and displays" -msgstr "" +msgstr "Kudeatu eta konfiguratu monitoreak eta bistaratzaileak" #: kcm.cpp:62 #, kde-format @@ -71,16 +71,16 @@ msgstr "Beste irudi-irteera batek ere erreplikatzen du" #: package/contents/ui/main.qml:44 -#, fuzzy, kde-format -#| msgid "Are you sure you want to disable all outputs? " +#, kde-format msgid "" "Are you sure you want to disable all outputs? This might render the device " "unusable." -msgstr "Ziur zaude irudi-irteera guztiak desgaitu nahi dituzula?" +msgstr "" +"Ziur zaude irudi-irteera guztiak desgaitu nahi dituzula? Honek gailua " +"erabilgaitz utzi dezake." #: package/contents/ui/main.qml:50 -#, fuzzy, kde-format -#| msgid "Disable all outputs" +#, kde-format msgid "Disable All Outputs" msgstr "Ezgaitu irudi-irteera guztiak" @@ -99,18 +99,17 @@ #, kde-format msgid "New global scale applied. Change will come into effect after restart." msgstr "" +"Eskala orokor berria ezarri da. Aldaketa berrabiarazi ondoren gauzatuko dira." #: package/contents/ui/main.qml:97 -#, fuzzy, kde-format -#| msgid "A new output has been added. " +#, kde-format msgid "A new output has been added. Settings have been reloaded." -msgstr "Irudi-irteera berri bat gehitu da." +msgstr "Irudi-irteera berri bat gehitu da. Ezarpenak birzamatu egin dira." #: package/contents/ui/main.qml:99 -#, fuzzy, kde-format -#| msgid "An output has been removed. " +#, kde-format msgid "An output has been removed. Settings have been reloaded." -msgstr "Irudi-irteera bat kendu da." +msgstr "Irudi-irteera bat kendu da. Ezarpenak birzamatu egin dira." #: package/contents/ui/Output.qml:146 #, kde-format @@ -141,7 +140,7 @@ #, kde-format msgctxt "Scale factor (e.g. 1.0x, 1.5x, 2.0x)" msgid "%1x" -msgstr "" +msgstr "%1x" #: package/contents/ui/OutputPanel.qml:82 #, kde-format @@ -162,7 +161,7 @@ #: package/contents/ui/Panel.qml:34 #, kde-format msgid "Settings for %1" -msgstr "" +msgstr "%1(r)en ezarpenak" #: package/contents/ui/Panel.qml:88 #, kde-format @@ -172,17 +171,17 @@ #: package/contents/ui/Panel.qml:115 #, kde-format msgid "Save displays' properties:" -msgstr "" +msgstr "Gorde bistaratzailearen propietateak:" #: package/contents/ui/Panel.qml:121 #, kde-format msgid "For any display arrangement" -msgstr "" +msgstr "Bistaratzaileen edozein antolamendutarako" #: package/contents/ui/Panel.qml:128 #, kde-format msgid "For only this specific display arrangement" -msgstr "" +msgstr "Bistaratzaileen antolamendu zehatz honetarako" #: package/contents/ui/RotationButton.qml:60 #, kde-format @@ -210,7 +209,6 @@ msgstr "Identifikatu" #: package/contents/ui/Screen.qml:70 -#, fuzzy, kde-format -#| msgid "Center view" +#, kde-format msgid "Center View" msgstr "Erdiratu ikuspegia" \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kscreen-5.17.2/po/nn/kcm_kscreen.po new/kscreen-5.17.3/po/nn/kcm_kscreen.po --- old/kscreen-5.17.2/po/nn/kcm_kscreen.po 2019-10-29 19:15:28.000000000 +0100 +++ new/kscreen-5.17.3/po/nn/kcm_kscreen.po 2019-11-12 11:17:24.000000000 +0100 @@ -6,7 +6,7 @@ "Project-Id-Version: \n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2019-10-22 07:35+0200\n" -"PO-Revision-Date: 2019-10-26 12:40+0200\n" +"PO-Revision-Date: 2019-11-08 19:55+0100\n" "Last-Translator: Karl Ove Hufthammer <[email protected]>\n" "Language-Team: Norwegian Nynorsk <[email protected]>\n" "Language: nn\n" @@ -119,12 +119,12 @@ #: package/contents/ui/OutputPanel.qml:32 #, kde-format msgid "Enabled" -msgstr "På" +msgstr "Bruk skjermen" #: package/contents/ui/OutputPanel.qml:39 #, kde-format msgid "Primary" -msgstr "Primær" +msgstr "Hovudskjerm" #: package/contents/ui/OutputPanel.qml:46 #, kde-format @@ -211,4 +211,4 @@ #: package/contents/ui/Screen.qml:70 #, kde-format msgid "Center View" -msgstr "Sentervising" \ No newline at end of file +msgstr "Sentrer visinga" \ No newline at end of file
