[-]
[+]
|
Changed |
_service:tar_git:patchmanager.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,7 +2,7 @@
<service name="tar_git">
<param name="url">https://github.com/sailfishos-patches/patchmanager.git</param>
<param name="branch">master</param>
- <param name="revision">3.2.1.1</param>
+ <param name="revision">3.2.2</param>
<param name="token"/>
<param name="debian">N</param>
<param name="dumb">N</param>
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/README.md
^
|
@@ -1,13 +1,14 @@
-# Patchmanager
+# Patchmanager for SailfishOS
-Patchmanager is a tool for transparently modifying installed files per patch utility and for managing the special patch files ("Patches") for doing so.
-Since version 3.0 it does not modify original files, but alters their content when they are loaded into RAM to be run.
+Patchmanager is a tool for transparently modifying installed files by the patch utility and for managing the special patch files ("Patches") for doing so.
+Since version 3.0, Patchmanager does not modify original files on mass storage, it merely alters their content when they are loaded into RAM to be executed.
## Information for users
Note that Patchmanager does not install an application icon on the launcher, but creates a new entry in SailfishOS' Settings app.
-To install Patchmanager you should install [Storeman](https://openrepos.net/content/osetr/storeman-installer) to install Patchmanager 3.x from OpenRepos using Storeman. Alternatively you may download the [recent Patchmanager RPM from OpenRepos](https://openrepos.net/content/patchmanager/patchmanager) and install it manually.
+To install Patchmanager you should use Storeman, which can be installed via the [Storeman-Installer](https://openrepos.net/content/osetr/storeman-installer), but you also may download the [recent Patchmanager RPM from OpenRepos](https://openrepos.net/content/patchmanager/patchmanager) and install it manually.
+The modern alternative to using OpenRepos is the SailfishOS:Chum community repository, which can be easily accessed with the SailfishOS:Chum GUI application or with the ususal command line tools (`pkcon`, `zypper`), after downloading either the SailfishOS:Chum GUI application RPM or the SailfishOS:Chum repo helper RPM from [chumrpm.netlify.app](https://chumrpm.netlify.app/) and installing it. Both RPMs are also offered at OpenRepos (but the GUI app only for the recent SailfishOS release) and hence are installable by Storeman.
Modern patches for Patchmanager are provided via [the Web Catalog](https://coderus.openrepos.net/pm2/projects/), while older patches were provided as [RPMs at Openrepos](https://openrepos.net/category/patches) and some of them are still maintained.
Mind that many Patches were first released at OpenRepos but later migrated to the Web Catalog: For these you will find outdated RPMs, hence always search in the Web Catalog first.
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/patchmanager.pro
^
|
@@ -1,5 +1,5 @@
TEMPLATE = subdirs
-SUBDIRS = src
+SUBDIRS = src tests
OTHER_FILES += rpm/patchmanager.spec
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/bin/dialog/dialog.qml
^
|
@@ -1,6 +1,6 @@
/*
* Copyright (C) 2016 Andrey Kozhevnikov <coderusinbox@gmail.com>
- * Copyright (c) 2021, Patchmanager for SailfishOS contributors:
+ * Copyright (c) 2021-2022, Patchmanager for SailfishOS contributors:
* - olf "Olf0" <https://github.com/Olf0>
* - Peter G. "nephros" <sailfish@nephros.org>
*
@@ -53,7 +53,7 @@
' </interface>\n'
function show() {
- console.warn("Function show is called.")
+ console.warn("Function show is called.");
}
}
initialPage: Component {
@@ -61,8 +61,8 @@
onStatusChanged: {
if (status == PageStatus.Active && !appWindow.remorseItem) {
remorse.execute(button, qsTranslate("", "Activate all enabled Patches"), function() {
- console.info("Accepted activation of all enabled Patches.")
- dbusPm.call("loadRequest", [true])
+ console.info("Accepted activation of all enabled Patches.");
+ dbusPm.call("loadRequest", [true]);
}, 10000)
appWindow.remorseItem = remorse
}
@@ -81,6 +81,7 @@
}
Label {
+ id: label
anchors.left: parent.left
anchors.right: parent.right
anchors.margins: Theme.horizontalPageMargin
@@ -105,9 +106,9 @@
RemorseItem {
id: remorse
onCanceled: {
- console.info("Cancelled activation of all enabled Patches.")
- dbusPm.call("loadRequest", [false])
- Qt.quit()
+ console.info("Cancelled activation of all enabled Patches.");
+ dbusPm.call("loadRequest", [false]);
+ Qt.quit();
}
}
}
@@ -122,6 +123,7 @@
duration: 150
}
}
+ property var runTimeStart
}
Label {
@@ -147,27 +149,33 @@
signalsEnabled: true
function autoApplyingStarted(count) {
- console.debug(count)
- progress.maximumValue = count
- progress.minimumValue = 0
- progress.value = 0
- progress.visible = true
+ console.debug(count);
+ console.time("autoApplyingRuntime"); // this string is an ID, use the same in timeEnd();
+ progress.maximumValue = count;
+ progress.minimumValue = 0;
+ progress.value = 0;
+ progress.visible = true;
+ progress.runTimeStart = new Date().getTime();
}
function autoApplyingPatch(patch) {
- console.info(patch)
- progress.value += 1
- progress.label = patch
+ console.info(patch);
+ progress.value += 1;
+ progress.label = patch;
}
function autoApplyingFailed(patch) {
- console.warn(patch)
- failed.text += "%1\n".arg(patch)
+ console.warn(patch);
+ failed.text += "%1\n".arg(patch);
}
function autoApplyingFinished(success) {
- console.info(success)
- button.enabled = true
+ console.info(success);
+ console.timeEnd("autoApplyingRuntime"); // this string is an ID, use the same in time();
+ var t = new Date().getTime();
+ var runtime = Math.round( ( t - progress.runTimeStart ) / 10 ) / 100 ;
+ label.text = qsTranslate("", "Activating all enabled Patches took %L1 seconds.").arg(runtime);
+ button.enabled = true;
progress.label = success ? qsTranslate("", "Successfully activated all enabled Patches.")
: qsTranslate("", "Failed to activate all enabled Patches!")
}
@@ -205,8 +213,8 @@
CoverAction {
iconSource: "image://theme/icon-cover-cancel"
onTriggered: {
- appWindow.remorseItem.cancel()
- Qt.quit()
+ appWindow.remorseItem.cancel();
+ Qt.quit();
}
}
}
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/bin/patchmanager-daemon/patchmanagerobject.cpp
^
|
@@ -1886,9 +1886,11 @@
// is this parameter used anywhere??
if (!params.value(QStringLiteral("dont_notify"), false).toBool()) {
- bool donotify = getSettings(QStringLiteral("notifyOnSuccess"), true).toBool();
- if (ok && donotify) {
- notify(displayName.toString(), apply ? NotifyActionSuccessApply : NotifyActionSuccessUnapply);
+ if (ok) {
+ bool donotify = getSettings(QStringLiteral("notifyOnSuccess"), true).toBool();
+ if (donotify) {
+ notify(displayName.toString(), apply ? NotifyActionSuccessApply : NotifyActionSuccessUnapply);
+ }
} else {
notify(displayName.toString(), apply ? NotifyActionFailedApply : NotifyActionFailedUnapply);
}
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/qml/DevelopersPage.qml
^
|
@@ -43,16 +43,6 @@
ListModel {
id: model
ListElement {
- icon: "/usr/share/patchmanager/data/webosinternals.png"
- category: "AUSMT"
- name: "webOS Internals"
- nickname: ""
- description: "Team behind AUSMT"
- socialmedia: "https://twitter.com/webosinternals"
- socialmedianame: "Twitter"
- website: "http://www.webos-internals.org/wiki/Main_Page"
- }
- ListElement {
icon: "/usr/share/patchmanager/data/sfiet_konstantin.jpg"
category: "Patchmanager"
name: "Lucien Xu"
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/qml/PatchManagerPage.qml
^
|
@@ -1,7 +1,7 @@
/*
* Copyright (C) 2013 Lucien XU <sfietkonstantin@free.fr>
* Copyright (C) 2016 Andrey Kozhevnikov <coderusinbox@gmail.com>
- * Copyright (c) 2021, Patchmanager for SailfishOS contributors:
+ * Copyright (c) 2021, 2022, Patchmanager for SailfishOS contributors:
* - olf "Olf0" <https://github.com/Olf0>
* - Peter G. "nephros" <sailfish@nephros.org>
* - Vlad G. "b100dian" <https://github.com/b100dian>
@@ -37,11 +37,26 @@
import QtQuick 2.0
import Sailfish.Silica 1.0
+import Nemo.Configuration 1.0
import org.SfietKonstantin.patchmanager 2.0
Page {
id: container
+ /*
+ * The usual, system-wide configuration values are set via D-Bus plugin by the
+ * Patchmanager daemon, which stores them in /etc/patchmanager2.conf
+ * This configuration group "uisettings" is for settings which *solely* affect
+ * the PM GUI application and consequently also are per-user settings.
+ */
+ ConfigurationGroup {
+ id: uisettings
+ path: "/org/SfietKonstantin/patchmanager/uisettings"
+
+ property bool showUnapplyAll: false
+ }
+
+
Timer {
id : startTimer
interval: 1500
@@ -138,16 +153,16 @@
PullDownMenu {
busy: view.busy
enabled: !busy
-
+
/*
Disabled due to discussion at https://github.com/sailfishos-patches/patchmanager/pull/272#issuecomment-1047685536
-
+ */
+
MenuItem {
text: qsTranslate("", "Deactivate all Patches")
onClicked: menuRemorse.execute( text, function() { PatchManager.call(PatchManager.unapplyAllPatches()) } )
- visible: PatchManager.loaded
+ visible: uisettings.showUnapplyAll
}
- */
MenuItem {
text: qsTranslate("", "About Patchmanager")
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/qml/SettingsPage.qml
^
|
@@ -1,7 +1,7 @@
/*
* Copyright (C) 2013 Lucien XU <sfietkonstantin@free.fr>
* Copyright (C) 2016 Andrey Kozhevnikov <coderusinbox@gmail.com>
- * Copyright (c) 2021, Patchmanager for SailfishOS contributors:
+ * Copyright (c) 2021, 2022, Patchmanager for SailfishOS contributors:
* - olf "Olf0" <https://github.com/Olf0>
* - Peter G. "nephros" <sailfish@nephros.org>
* - Vlad G. "b100dian" <https://github.com/b100dian>
@@ -37,9 +37,24 @@
import QtQuick 2.0
import Sailfish.Silica 1.0
+import Nemo.Configuration 1.0
import org.SfietKonstantin.patchmanager 2.0
Page {
+
+ /*
+ * The usual, system-wide configuration values are set via D-Bus plugin by the
+ * Patchmanager daemon, which stores them in /etc/patchmanager2.conf
+ * This configuration group "uisettings" is for settings which *solely* affect
+ * the PM GUI application and consequently also are per-user settings.
+ */
+ ConfigurationGroup {
+ id: uisettings
+ path: "/org/SfietKonstantin/patchmanager/uisettings"
+
+ property bool showUnapplyAll: false
+ }
+
SilicaFlickable {
id: flick
anchors.fill: parent
@@ -73,6 +88,14 @@
automaticCheck: false
}
+ TextSwitch {
+ text: qsTranslate("", "Show 'Deactivate all Patches' pulley menu entry")
+ description: qsTranslate("", "Enable an additional pulley menu entry for Patchmanager's main page to deactivate all Patches.")
+ checked: uisettings.showUnapplyAll
+ onClicked: uisettings.showUnapplyAll = !uisettings.showUnapplyAll
+ automaticCheck: false
+ }
+
TextSwitch {
text: qsTranslate("", "Allow incompatible Patches")
description: qsTranslate("", "Enable activating Patches, which are not marked as compatible with the installed SailfishOS version. Note that Patches, which are actually incompatible, will not work.")
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/src/qml/qml.pro
^
|
@@ -1,46 +1,46 @@
-TARGET = patchmanager
-PLUGIN_IMPORT_PATH = org/SfietKonstantin/patchmanager
-
-TEMPLATE = lib
-QT = core qml network dbus gui
-CONFIG += qt plugin hide_symbols
-
-HEADERS += \
- patchmanager.h \
- webcatalog.h \
- webpatchesmodel.h \
- webdownloader.h \
- patchmanagermodel.h \
- PatchObject.hpp
-
-SOURCES += \
- plugin.cpp \
- patchmanager.cpp \
- webpatchesmodel.cpp \
- webdownloader.cpp \
- patchmanagermodel.cpp \
- PatchObject.cpp
-
-DISTFILES += qmldir \
- PatchManagerPage.qml \
- AboutPage.qml \
- DevelopersPage.qml \
- RestartServicesDialog.qml \
- UnifiedPatchPage.qml \
- WebCatalogPage.qml \
- WebPatchPage.qml \
- ItemErrorComponent.qml \
- ScreenshotsPage.qml \
- SettingsPage.qml
-
-target.path = $$[QT_INSTALL_QML]/$$PLUGIN_IMPORT_PATH
-
-qmlfiles.files += $${DISTFILES}
-qmlfiles.path = $$[QT_INSTALL_QML]/$$PLUGIN_IMPORT_PATH
-
-INSTALLS += target qmlfiles
-
-pm_dbus_interface.files = ../bin/patchmanager-daemon/dbus/org.SfietKonstantin.patchmanager.xml
-pm_dbus_interface.source_flags = -c PatchManagerInterface
-pm_dbus_interface.header_flags = -c PatchManagerInterface -i ../bin/patchmanager-daemon/patchmanager_include.h
-DBUS_INTERFACES += pm_dbus_interface
+TARGET = patchmanager
+PLUGIN_IMPORT_PATH = org/SfietKonstantin/patchmanager
+
+TEMPLATE = lib
+QT = core qml network dbus gui
+CONFIG += qt plugin hide_symbols
+
+HEADERS += \
+ patchmanager.h \
+ webcatalog.h \
+ webpatchesmodel.h \
+ webdownloader.h \
+ patchmanagermodel.h \
+ PatchObject.hpp
+
+SOURCES += \
+ plugin.cpp \
+ patchmanager.cpp \
+ webpatchesmodel.cpp \
+ webdownloader.cpp \
+ patchmanagermodel.cpp \
+ PatchObject.cpp
+
+DISTFILES += qmldir \
+ PatchManagerPage.qml \
+ AboutPage.qml \
+ DevelopersPage.qml \
+ RestartServicesDialog.qml \
+ UnifiedPatchPage.qml \
+ WebCatalogPage.qml \
+ WebPatchPage.qml \
+ ItemErrorComponent.qml \
+ ScreenshotsPage.qml \
+ SettingsPage.qml
+
+target.path = $$[QT_INSTALL_QML]/$$PLUGIN_IMPORT_PATH
+
+qmlfiles.files += $${DISTFILES}
+qmlfiles.path = $$[QT_INSTALL_QML]/$$PLUGIN_IMPORT_PATH
+
+INSTALLS += target qmlfiles
+
+pm_dbus_interface.files = ../bin/patchmanager-daemon/dbus/org.SfietKonstantin.patchmanager.xml
+pm_dbus_interface.source_flags = -c PatchManagerInterface
+pm_dbus_interface.header_flags = -c PatchManagerInterface -i ../bin/patchmanager-daemon/patchmanager_include.h
+DBUS_INTERFACES += pm_dbus_interface
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/README_patching.md
^
|
@@ -0,0 +1,42 @@
+## Patching Test Cases
+
+The patching test infrastructure consists of:
+
+ - The QML module under `$LIBDIR/qt5/qml/…` (which expands to, e.g., `/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/`), which are some QML component files and a `qmldir` file so they can be used as a module.
+ - The `patchmanager-testcase` app as a QML file and `.desktop` file under `/usr/share/`, which imports the above module and thus shows changes to the module's components.
+ - A set of patches which act on those files in various ways.
+
+#### Why did you invent `org.SfietKonstantin.patchmanagertests`?
+
+In order to have something that lives under `$LIBDIR` so the 32-/64-bit mangling can be tested.
+
+#### How do I use these?
+
+1. Basically, you install the package, open the Patchmanager, and look for the Patches named "Test Case".
+ Read their descriptions for "detailed" information on what they do.
+
+2. Activate / apply these Patches.
+
+3. Open the "Test Cases" companion app via its launcher icon or `sailfish-qml patchmanager-testcase`. See whether the Patches' changes show up as expected.
+
+4. Note that some Patches may be supposed to "fail" applying, as that may be the specific test case.
+
+#### What do these Patches do?
+
+I'll cop out of this one and refer to "read the source Luke" here.
+
+Also, unless Patch author for a specific test case was too lazy, the Patch's description should provide this information.
+
+Note that not all of them have a visible effect on the app, most of the time the primary goal is to test the patching process itself, not so much changing the test app.
+
+#### How do I add a Test Case / Patch?
+
+ 1. Create a patch as usual and store it under `/tests/patching/<testcase patch name>/patch/`. You should have at least `patch.json` and a `unified_diff.patch` file in that directory.
+ Please describe what your test case is about and how to check success or failure in the `description` of the `patch.json` file.
+
+ 1. Optionally (but this is encouraged) also add the "source files" used to generate the patch under `/tests/patching/<testcase patch name>/patch-source/`.
+
+ 1. Create a `.pro` file `/tests/patching/<testcase patch name>/patch/<testcase patch name>.pro` which installs your patch.
+
+ 1. Add your test case directory to the `SUBDIRS` of the `/tests/patching/patching.pro` file.
+
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/32-to-64-alt.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+patch.path = /usr/share/patchmanager/patches/pm-test-case-32-to-64-alt
+patch.files = patch/unified_diff.patch patch/patch.json
+
+INSTALLS += patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch-source/a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase1Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch-source/a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase2Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch-source/a/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch-source/b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 1"
+ value: "patched successfully"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch-source/b/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch/patch.json
^
|
@@ -0,0 +1,13 @@
+{
+ "description": "Patchmanager Test Case: Mangle 32-to-64 bit.\nThis patch contains 32 bit paths.\nUses plain diff (+++ /path/to/foo)\nToo see results, open the PM Test app and look at the first UI element",
+ "name": "pm-test-case-32-to-64-alt",
+ "display_name": "PM Test Case 1: 2/2",
+ "category": "other",
+ "author": "patchmanager",
+ "version": "1.0.0",
+ "compatible": [
+ "4.0.1.48",
+ "4.1.0.24",
+ "4.2.0.21"
+ ]
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64-alt/patch/unified_diff.patch
^
|
@@ -0,0 +1,17 @@
+diff -aur /usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml /usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
+--- /usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml 2022-01-13 22:57:01.146436801 +0100
++++ /usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml 2022-01-13 22:57:01.113436784 +0100
+@@ -3,5 +3,5 @@
+
+ DetailItem {
+ label: "Case 1"
+- value: "unpatched"
++ value: "patched successfully"
+ }
+Only in a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests: TestCase2Item.qml
+diff -aur a/usr/share/patchmanager-test/testfile b/usr/share/patchmanager-test/testfile
+--- a/usr/share/patchmanager-test/testfile 2022-01-13 22:57:01.109436782 +0100
++++ b/usr/share/patchmanager-test/testfile 2022-01-13 22:57:01.116436786 +0100
+@@ -1 +1 @@
+-this should not be affected
++this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/32-to-64.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+patch.path = /usr/share/patchmanager/patches/pm-test-case-32-to-64
+patch.files = patch/unified_diff.patch patch/patch.json
+
+INSTALLS += patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch-source/a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase1Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch-source/a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase2Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch-source/a/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch-source/b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 1"
+ value: "patched successfully"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch-source/b/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch/patch.json
^
|
@@ -0,0 +1,13 @@
+{
+ "description": "Patchmanager Test Case: Mangle 32-to-64 bit.\nThis patch contains 32 bit paths.\nUses git-style diff (+++ a/path/to/foo)\nToo see results, open the PM Test app and look at the first UI element",
+ "name": "pm-test-case-32-to-64",
+ "display_name": "PM Test Case 1: 1/2",
+ "category": "other",
+ "author": "patchmanager",
+ "version": "1.0.0",
+ "compatible": [
+ "4.0.1.48",
+ "4.1.0.24",
+ "4.2.0.21"
+ ]
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/32-to-64/patch/unified_diff.patch
^
|
@@ -0,0 +1,17 @@
+diff -aur a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
+--- a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml 2022-01-13 22:57:01.146436801 +0100
++++ b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml 2022-01-13 22:57:01.113436784 +0100
+@@ -3,5 +3,5 @@
+
+ DetailItem {
+ label: "Case 1"
+- value: "unpatched"
++ value: "patched successfully"
+ }
+Only in a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests: TestCase2Item.qml
+diff -aur a/usr/share/patchmanager-test/testfile b/usr/share/patchmanager-test/testfile
+--- a/usr/share/patchmanager-test/testfile 2022-01-13 22:57:01.109436782 +0100
++++ b/usr/share/patchmanager-test/testfile 2022-01-13 22:57:01.116436786 +0100
+@@ -1 +1 @@
+-this should not be affected
++this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/64-to-32-multi-candidate.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+patch.path = /usr/share/patchmanager/patches/pm-test-case-64-to-32-multi-candidate
+patch.files = patch/unified_diff.patch patch/patch.json
+
+INSTALLS += patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/a/usr/lib64/maliit/plugins/jolla-keyboard.qml
^
|
@@ -0,0 +1,674 @@
+/*
+ * Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
+ * Copyright (c) 2012 - 2020 Jolla Ltd.
+ * Copyright (c) 2020 Open Mobile Platform LLC.
+ *
+ * Contact: Pekka Vuorela <pekka.vuorela@jollamobile.com>
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice, this list
+ * of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, this list
+ * of conditions and the following disclaimer in the documentation and/or other materials
+ * provided with the distribution.
+ * Neither the name of Nokia Corporation nor the names of its contributors may be
+ * used to endorse or promote products derived from this software without specific
+ * prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+ * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+import QtQuick 2.0
+import com.jolla 1.0
+import QtFeedback 5.0
+import com.meego.maliitquick 1.0
+import org.nemomobile.configuration 1.0
+import com.jolla.keyboard 1.0
+import Sailfish.Silica 1.0
+import Sailfish.Silica.Background 1.0
+import com.jolla.keyboard.translations 1.0
+import org.nemomobile.dbus 2.0
+import org.nemomobile.systemsettings 1.0
+
+SilicaControl {
+ id: canvas
+
+ KeyboardGeometry { id: geometry }
+
+ width: MInputMethodQuick.screenWidth
+ height: MInputMethodQuick.screenHeight
+
+ property bool portraitRotated: width > height
+ property bool portraitLayout: portraitRotated ?
+ (MInputMethodQuick.appOrientation == 90 || MInputMethodQuick.appOrientation == 270) :
+ (MInputMethodQuick.appOrientation == 0 || MInputMethodQuick.appOrientation == 180)
+
+ property alias activeIndex: keyboard.currentIndex
+ property alias layoutModel: _layoutModel
+
+ property Item phraseEngine // for hwr
+
+ property string paletteJson: MInputMethodQuick.extensions.palette || ""
+ property var editorPalette: ({})
+
+ property string currentLayout: previousLayoutConfig.value
+
+ palette {
+ colorScheme: editorPalette.colorScheme
+ highlightColor: editorPalette.highlightColor
+ }
+
+ Component.onCompleted: {
+ MInputMethodQuick.actionKeyOverride.setDefaultIcon("image://theme/icon-m-enter")
+ MInputMethodQuick.actionKeyOverride.setDefaultLabel("")
+ activeIndex = activeIndex
+ }
+
+ onPaletteJsonChanged: {
+ if (paletteJson !== "") {
+ editorPalette = JSON.parse(paletteJson)
+ }
+ }
+
+ onPortraitLayoutChanged: keyboard.updateLayoutIfAllowed(true)
+
+ Timer {
+ running: canvas.paletteJson === ""
+ interval: 300
+ onTriggered: canvas.editorPalette = {}
+ }
+
+ function updateIMArea() {
+ if (!MInputMethodQuick.active)
+ return
+
+ var x = 0, y = 0, width = 0, height = 0;
+ var angle = MInputMethodQuick.appOrientation
+
+ var layoutHeight = keyboard.currentLayoutHeight
+
+ switch (angle) {
+ case 0:
+ y = MInputMethodQuick.screenHeight - layoutHeight
+ // fall through
+ case 180:
+ width = keyboard.width
+ height = layoutHeight
+ break;
+
+ case 270:
+ x = MInputMethodQuick.screenWidth - layoutHeight
+ // fall through
+ case 90:
+ width = layoutHeight
+ height = keyboard.width
+ break;
+ }
+
+ MInputMethodQuick.setInputMethodArea(Qt.rect(x, y, width, height))
+ MInputMethodQuick.setScreenRegion(Qt.rect(x, y, width, height))
+ }
+ function captureFullScreen() {
+ if (!MInputMethodQuick.active)
+ return
+
+ MInputMethodQuick.setScreenRegion(Qt.rect(x, y, width, height))
+ }
+
+ function switchLayout(index) {
+ keyboard.currentIndex = index
+ keyboard.overriddenLayoutFile = ""
+ }
+
+ function switchToPreviousCharacterLayout() {
+ var previousLayout = previousLayoutConfig.value + ""
+
+ if (previousLayout.length > 0) {
+ for (var index = 0; index < _layoutModel.count; index++) {
+ var layout = _layoutModel.get(index)
+ if (layout.enabled && layout.layout === previousLayout) {
+ keyboard.currentIndex = index
+ return
+ }
+ }
+ }
+
+ for (index = 0; index < _layoutModel.count; index++) {
+ layout = _layoutModel.get(index)
+ if (layout.enabled && layout.type !== "emojis") {
+ keyboard.currentIndex = index
+ return
+ }
+ }
+ }
+
+ InputHandlerManager {
+ id: handlerManager
+ }
+
+ DBusAdaptor {
+ id: dbusAdaptor
+
+ service: "com.jolla.keyboard"
+ path: "/com/jolla/keyboard"
+ iface: "com.jolla.keyboard"
+ xml: "\t<interface name=\"com.jolla.keyboard\">\n" +
+ "\t\t<method name=\"clearData\">\n" +
+ "\t\t</method>\n" +
+ "\t\t<signal name=\"keyboardHeightChanged\">\n" +
+ "\t\t\t<arg name=\"keyboardHeight\" type=\"f\" direction=\"out\"/>\n" +
+ "\t\t</signal>\n" +
+ "\t</interface>\n"
+
+ function clearData() {
+ console.log("got clear data request from dbus")
+ _layoutModel.useHandlers([])
+ handlerManager.clearHandlerData()
+ _layoutModel.updateInputHandlers()
+ keyboard.inputHandler = basicInputHandler // just to make sure
+ }
+ }
+
+ ProfileControl { id: soundSettings}
+
+ Binding {
+ // explicitly turn off playing sound with pulseaudio so bluetooth sets don't try to play sound with zero volume
+ // TODO: follow currently active profile so if e.g. silent overrides touchscreen tones, playing is not tried.
+ target: SampleCache
+ property: "outputEnabled"
+ value: soundSettings.touchscreenToneLevel !== 0
+ }
+
+ LayoutModel {
+ id: _layoutModel
+
+ property var inputHandlers: new Array
+
+ filter: LayoutModel.ShowEnabled
+
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase2Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/a/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/b/usr/lib64/jolla-mediaplayer/plugins/jolla/TestCaseItem.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 1"
+ value: "unpatched"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/b/usr/lib64/maliit/plugins/jolla-keyboard.qml
^
|
@@ -0,0 +1,680 @@
+/*
+ * Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
+ * Copyright (c) 2012 - 2020 Jolla Ltd.
+ * Copyright (c) 2020 Open Mobile Platform LLC.
+ *
+ * Contact: Pekka Vuorela <pekka.vuorela@jollamobile.com>
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice, this list
+ * of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, this list
+ * of conditions and the following disclaimer in the documentation and/or other materials
+ * provided with the distribution.
+ * Neither the name of Nokia Corporation nor the names of its contributors may be
+ * used to endorse or promote products derived from this software without specific
+ * prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+ * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+/*
+ *
+ * this comment has been added by a Patchmanager Test Case patch
+ *
+ */
+
+import QtQuick 2.0
+import com.jolla 1.0
+import QtFeedback 5.0
+import com.meego.maliitquick 1.0
+import org.nemomobile.configuration 1.0
+import com.jolla.keyboard 1.0
+import Sailfish.Silica 1.0
+import Sailfish.Silica.Background 1.0
+import com.jolla.keyboard.translations 1.0
+import org.nemomobile.dbus 2.0
+import org.nemomobile.systemsettings 1.0
+
+SilicaControl {
+ id: canvas
+
+ KeyboardGeometry { id: geometry }
+
+ width: MInputMethodQuick.screenWidth
+ height: MInputMethodQuick.screenHeight
+
+ property bool portraitRotated: width > height
+ property bool portraitLayout: portraitRotated ?
+ (MInputMethodQuick.appOrientation == 90 || MInputMethodQuick.appOrientation == 270) :
+ (MInputMethodQuick.appOrientation == 0 || MInputMethodQuick.appOrientation == 180)
+
+ property alias activeIndex: keyboard.currentIndex
+ property alias layoutModel: _layoutModel
+
+ property Item phraseEngine // for hwr
+
+ property string paletteJson: MInputMethodQuick.extensions.palette || ""
+ property var editorPalette: ({})
+
+ property string currentLayout: previousLayoutConfig.value
+
+ palette {
+ colorScheme: editorPalette.colorScheme
+ highlightColor: editorPalette.highlightColor
+ }
+
+ Component.onCompleted: {
+ MInputMethodQuick.actionKeyOverride.setDefaultIcon("image://theme/icon-m-enter")
+ MInputMethodQuick.actionKeyOverride.setDefaultLabel("")
+ activeIndex = activeIndex
+ }
+
+ onPaletteJsonChanged: {
+ if (paletteJson !== "") {
+ editorPalette = JSON.parse(paletteJson)
+ }
+ }
+
+ onPortraitLayoutChanged: keyboard.updateLayoutIfAllowed(true)
+
+ Timer {
+ running: canvas.paletteJson === ""
+ interval: 300
+ onTriggered: canvas.editorPalette = {}
+ }
+
+ function updateIMArea() {
+ if (!MInputMethodQuick.active)
+ return
+
+ var x = 0, y = 0, width = 0, height = 0;
+ var angle = MInputMethodQuick.appOrientation
+
+ var layoutHeight = keyboard.currentLayoutHeight
+
+ switch (angle) {
+ case 0:
+ y = MInputMethodQuick.screenHeight - layoutHeight
+ // fall through
+ case 180:
+ width = keyboard.width
+ height = layoutHeight
+ break;
+
+ case 270:
+ x = MInputMethodQuick.screenWidth - layoutHeight
+ // fall through
+ case 90:
+ width = layoutHeight
+ height = keyboard.width
+ break;
+ }
+
+ MInputMethodQuick.setInputMethodArea(Qt.rect(x, y, width, height))
+ MInputMethodQuick.setScreenRegion(Qt.rect(x, y, width, height))
+ }
+ function captureFullScreen() {
+ if (!MInputMethodQuick.active)
+ return
+
+ MInputMethodQuick.setScreenRegion(Qt.rect(x, y, width, height))
+ }
+
+ function switchLayout(index) {
+ keyboard.currentIndex = index
+ keyboard.overriddenLayoutFile = ""
+ }
+
+ function switchToPreviousCharacterLayout() {
+ var previousLayout = previousLayoutConfig.value + ""
+
+ if (previousLayout.length > 0) {
+ for (var index = 0; index < _layoutModel.count; index++) {
+ var layout = _layoutModel.get(index)
+ if (layout.enabled && layout.layout === previousLayout) {
+ keyboard.currentIndex = index
+ return
+ }
+ }
+ }
+
+ for (index = 0; index < _layoutModel.count; index++) {
+ layout = _layoutModel.get(index)
+ if (layout.enabled && layout.type !== "emojis") {
+ keyboard.currentIndex = index
+ return
+ }
+ }
+ }
+
+ InputHandlerManager {
+ id: handlerManager
+ }
+
+ DBusAdaptor {
+ id: dbusAdaptor
+
+ service: "com.jolla.keyboard"
+ path: "/com/jolla/keyboard"
+ iface: "com.jolla.keyboard"
+ xml: "\t<interface name=\"com.jolla.keyboard\">\n" +
+ "\t\t<method name=\"clearData\">\n" +
+ "\t\t</method>\n" +
+ "\t\t<signal name=\"keyboardHeightChanged\">\n" +
+ "\t\t\t<arg name=\"keyboardHeight\" type=\"f\" direction=\"out\"/>\n" +
+ "\t\t</signal>\n" +
+ "\t</interface>\n"
+
+ function clearData() {
+ console.log("got clear data request from dbus")
+ _layoutModel.useHandlers([])
+ handlerManager.clearHandlerData()
+ _layoutModel.updateInputHandlers()
+ keyboard.inputHandler = basicInputHandler // just to make sure
+ }
+ }
+
+ ProfileControl { id: soundSettings}
+
+ Binding {
+ // explicitly turn off playing sound with pulseaudio so bluetooth sets don't try to play sound with zero volume
+ // TODO: follow currently active profile so if e.g. silent overrides touchscreen tones, playing is not tried.
+ target: SampleCache
+ property: "outputEnabled"
+ value: soundSettings.touchscreenToneLevel !== 0
+ }
+
+ LayoutModel {
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 2"
+ value: "patched successfully (case 2.2)"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch-source/b/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch/patch.json
^
|
@@ -0,0 +1,13 @@
+{
+ "description": "Patchmanager Test Case: Mangle 64-to-32 bit.\nThis patch contains multiple 64 bit paths.\nTo see results, open the PM Test app and look at the second UI element.",
+ "name": "64-to-32-multi-candidate",
+ "display_name": "PM Test Case 2-2",
+ "category": "other",
+ "author": "patchmanager",
+ "version": "1.0.0",
+ "compatible": [
+ "4.0.1.48",
+ "4.1.0.24",
+ "4.2.0.21"
+ ]
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32-multi-candidate/patch/unified_diff.patch
^
|
@@ -0,0 +1,43 @@
+diff -Naur a/usr/lib64/jolla-mediaplayer/plugins/jolla/TestCaseItem.qml b/usr/lib64/jolla-mediaplayer/plugins/jolla/TestCaseItem.qml
+--- a/usr/lib64/jolla-mediaplayer/plugins/jolla/TestCaseItem.qml 1970-01-01 01:00:00.000000000 +0100
++++ b/usr/lib64/jolla-mediaplayer/plugins/jolla/TestCaseItem.qml 2022-01-18 16:25:12.131546847 +0100
+@@ -0,0 +1,7 @@
++import QtQuick 2.1
++import Sailfish.Silica 1.0
++
++DetailItem {
++ label: "Case 1"
++ value: "unpatched"
++}
+diff -Naur a/usr/lib64/maliit/plugins/jolla-keyboard.qml b/usr/lib64/maliit/plugins/jolla-keyboard.qml
+--- a/usr/lib64/maliit/plugins/jolla-keyboard.qml 2022-01-18 15:50:48.785362836 +0100
++++ b/usr/lib64/maliit/plugins/jolla-keyboard.qml 2022-01-18 15:50:48.791362804 +0100
+@@ -29,6 +29,12 @@
+ *
+ */
+
++/*
++ *
++ * this comment has been added by a Patchmanager Test Case patch
++ *
++ */
++
+ import QtQuick 2.0
+ import com.jolla 1.0
+ import QtFeedback 5.0
+diff -Naur a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
+--- a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml 2022-01-18 15:29:00.144669103 +0100
++++ b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml 2022-01-18 15:50:48.793362793 +0100
+@@ -3,5 +3,5 @@
+
+ DetailItem {
+ label: "Case 2"
+- value: "unpatched"
++ value: "patched successfully (case 2.2)"
+ }
+diff -Naur a/usr/share/patchmanager-test/testfile b/usr/share/patchmanager-test/testfile
+--- a/usr/share/patchmanager-test/testfile 2022-01-18 15:50:48.789362815 +0100
++++ b/usr/share/patchmanager-test/testfile 2022-01-18 15:50:48.795362782 +0100
+@@ -1 +1 @@
+-this should not be affected
++this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/64-to-32.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+patch.path = /usr/share/patchmanager/patches/pm-test-case-64-to-32
+patch.files = patch/unified_diff.patch patch/patch.json
+
+INSTALLS += patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch-source/a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase1Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase1Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch-source/a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/TestCase2Item.qml)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch-source/a/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch-source/b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 2"
+ value: "patched successfully (case 2-1)"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch-source/b/usr/share/patchmanager-test/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch/patch.json
^
|
@@ -0,0 +1,13 @@
+{
+ "description": "Patchmanager Test Case: Mangle 64-to-32 bit.\nThis patch contains a 64 bit path.\nTo see results, open the PM Test app and look at the second UI element.",
+ "name": "pm-test-case-64-to-32",
+ "display_name": "PM Test Case 2-1",
+ "category": "other",
+ "author": "patchmanager",
+ "version": "1.0.0",
+ "compatible": [
+ "4.0.1.48",
+ "4.1.0.24",
+ "4.2.0.21"
+ ]
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/64-to-32/patch/unified_diff.patch
^
|
@@ -0,0 +1,17 @@
+Only in a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests: TestCase1Item.qml
+diff -aur a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml
+--- a/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml 2022-01-18 15:29:00.144669103 +0100
++++ b/usr/lib64/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase2Item.qml 2022-01-18 15:57:23.017219645 +0100
+@@ -3,5 +3,5 @@
+
+ DetailItem {
+ label: "Case 2"
+- value: "unpatched"
++ value: "patched successfully (case 2-1)"
+ }
+diff -aur a/usr/share/patchmanager-test/testfile b/usr/share/patchmanager-test/testfile
+--- a/usr/share/patchmanager-test/testfile 2022-01-18 15:29:00.123669124 +0100
++++ b/usr/share/patchmanager-test/testfile 2022-01-18 15:29:00.127669120 +0100
+@@ -1 +1 @@
+-this should not be affected
++this should not be affected, but still patched
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/add-a-file.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+patch.path = /usr/share/patchmanager/patches/pm-test-case-add-a-file
+patch.files = patch/unified_diff.patch patch/patch.json
+
+INSTALLS += patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch-source/a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir
^
|
+(symlink to ../../../../../../../../../../app/lib/patchmanagertests/qmldir)
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch-source/b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase3Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 3"
+ value: "patched successfully"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch-source/b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir
^
|
@@ -0,0 +1,4 @@
+module org.SfietKonstantin.patchmanagertests
+TestCase1Item 1.0 TestCase1Item.qml
+TestCase2Item 1.0 TestCase2Item.qml
+TestCase3Item 1.0 TestCase3Item.qml
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch-source/b/usr/share/patchmanager-test/testfile-added
^
|
@@ -0,0 +1 @@
+this was added by add-a-file patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch/patch.json
^
|
@@ -0,0 +1,13 @@
+{
+ "description": "Patchmanager Test Case: Add new files, register in plugin qmldir\nToo see results, open the PM Test app. The app should fail to lanch if something went wrong.",
+ "name": "pm-test-case-add-a-file",
+ "display_name": "PM Test Case 3",
+ "category": "other",
+ "author": "patchmanager",
+ "version": "1.0.0",
+ "compatible": [
+ "4.0.1.48",
+ "4.1.0.24",
+ "4.2.0.21"
+ ]
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/add-a-file/patch/unified_diff.patch
^
|
@@ -0,0 +1,24 @@
+diff -Naur a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir
+--- a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir 2022-01-14 00:20:59.894129978 +0100
++++ b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/qmldir 2022-01-14 00:32:02.491893033 +0100
+@@ -1,3 +1,4 @@
+ module org.SfietKonstantin.patchmanagertests
+ TestCase1Item 1.0 TestCase1Item.qml
+ TestCase2Item 1.0 TestCase2Item.qml
++TestCase3Item 1.0 TestCase3Item.qml
+diff -Naur a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase3Item.qml b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase3Item.qml
+--- a/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase3Item.qml 1970-01-01 01:00:00.000000000 +0100
++++ b/usr/lib/qt5/qml/org/SfietKonstantin/patchmanagertests/TestCase3Item.qml 2022-01-14 00:31:29.328904009 +0100
+@@ -0,0 +1,7 @@
++import QtQuick 2.1
++import Sailfish.Silica 1.0
++
++DetailItem {
++ label: "Case 3"
++ value: "patched successfully"
++}
+diff -Naur a/usr/share/patchmanager-test/testfile-added b/usr/share/patchmanager-test/testfile-added
+--- a/usr/share/patchmanager-test/testfile-added 1970-01-01 01:00:00.000000000 +0100
++++ b/usr/share/patchmanager-test/testfile-added 2022-01-14 00:30:55.841910769 +0100
+@@ -0,0 +1 @@
++this was added by add-a-file patch
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/app.pro
^
|
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = lib share qml
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/lib/lib.pro
^
|
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = patchmanagertests
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/lib/patchmanagertests/TestCase1Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 1"
+ value: "unpatched"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/lib/patchmanagertests/TestCase2Item.qml
^
|
@@ -0,0 +1,7 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+
+DetailItem {
+ label: "Case 2"
+ value: "unpatched"
+}
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/lib/patchmanagertests/patchmanagertests.pro
^
|
@@ -0,0 +1,14 @@
+TARGET = patchmanagertests
+PLUGIN_IMPORT_PATH = org/SfietKonstantin/patchmanagertests
+
+TEMPLATE = lib
+QT = core qml gui
+CONFIG += qt plugin hide_symbols
+
+DISTFILES += qmldir \
+ TestCase1Item.qml TestCase2Item.qml
+
+qmlfiles.files += $${DISTFILES}
+qmlfiles.path = $$[QT_INSTALL_QML]/$$PLUGIN_IMPORT_PATH
+
+INSTALLS += qmlfiles
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/lib/patchmanagertests/qmldir
^
|
@@ -0,0 +1,3 @@
+module org.SfietKonstantin.patchmanagertests
+TestCase1Item 1.0 TestCase1Item.qml
+TestCase2Item 1.0 TestCase2Item.qml
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/qml/patchmanager-testcase.desktop
^
|
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Type=Application
+X-Nemo-Application-Type=silica-qt5
+Exec=invoker --type=silica-qt5 sailfish-qml patchmanager-testcase
+Icon=icon-m-patchmanager2
+Name=PM Test Case
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/qml/patchmanager-testcase.qml
^
|
@@ -0,0 +1,29 @@
+import QtQuick 2.1
+import Sailfish.Silica 1.0
+import org.SfietKonstantin.patchmanagertests 1.0
+
+ApplicationWindow {
+ id: app
+ initialPage: Component {
+ Page {
+ id: page
+ Column {
+ id: column
+ spacing: Theme.paddingLarge
+ width: parent.width - Theme.horizontalPageMargin * 2
+ anchors.horizontalCenter: parent.horizontalCenter
+ PageHeader{ title: "Test Case Application" }
+ TestCase1Item { anchors.horizontalCenter: parent.horizontalCenter }
+ TestCase2Item { anchors.horizontalCenter: parent.horizontalCenter }
+ }
+ }
+ }
+ cover: Component {
+ CoverPlaceholder {
+ anchors.fill: parent
+ anchors.centerIn: parent
+ text: "PM Test"
+ }
+ }
+}
+
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/qml/qml.pro
^
|
@@ -0,0 +1,9 @@
+TEMPLATE = aux
+
+qmlpages.path = /usr/share/patchmanager-testcase/qml
+qmlpages.files = patchmanager-testcase.qml
+
+desktop.path = /usr/share/applications
+desktop.files = patchmanager-testcase.desktop
+
+INSTALLS += desktop qmlpages
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/share/share.pro
^
|
@@ -0,0 +1,6 @@
+TEMPLATE = aux
+
+files.path = /usr/share/patchmanager-test
+files.files = testfile
+
+INSTALLS += files
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/app/share/testfile
^
|
@@ -0,0 +1 @@
+this should not be affected
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/patching/patching.pro
^
|
@@ -0,0 +1,7 @@
+TEMPLATE = subdirs
+SUBDIRS = app \
+ add-a-file \
+ 32-to-64 \
+ 64-to-32 \
+ 32-to-64-alt \
+ 64-to-32-multi-candidate
|
[-]
[+]
|
Added |
_service:tar_git:patchmanager-3.2.2.tar.bz2/tests/tests.pro
^
|
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = patching
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/translations/settings-patchmanager-sv.ts
^
|
@@ -8,22 +8,27 @@
<translation>Tillämpa alla aktiva korrigeringar</translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="88"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="89"/>
<source>Patchmanager will start to activate all enabled Patches in 10 seconds.</source>
<translation>Patchmanager tillämpar alla aktiva korrigeringar om 10 sekunder.</translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="101"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="102"/>
<source>Quit</source>
<translation>Avsluta</translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="171"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="177"/>
+ <source>Activating all enabled Patches took %L1 seconds.</source>
+ <translation>Tillämpning av alla aktiva korrigeringar tog %L1 sekunder.</translation>
+ </message>
+ <message>
+ <location filename="../src/bin/dialog/dialog.qml" line="179"/>
<source>Successfully activated all enabled Patches.</source>
<translation>Tillämpade alla aktiva korrigeringar.</translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="172"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="180"/>
<source>Failed to activate all enabled Patches!</source>
<translation>Kunde inte tillämpade alla aktiva korrigeringar!</translation>
</message>
@@ -35,7 +40,7 @@
</message>
<message>
<location filename="../src/bin/patchmanager-daemon/patchmanagerobject.cpp" line="283"/>
- <location filename="../src/bin/dialog/dialog.qml" line="200"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="208"/>
<location filename="../src/qml/AboutPage.qml" line="68"/>
<location filename="../src/qml/RestartServicesDialog.qml" line="79"/>
<source>Patchmanager</source>
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.2.tar.bz2/translations/settings-patchmanager.ts
^
|
@@ -10,22 +10,27 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="88"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="89"/>
<source>Patchmanager will start to activate all enabled Patches in 10 seconds.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="101"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="102"/>
<source>Quit</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="171"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="177"/>
+ <source>Activating all enabled Patches took %L1 seconds.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location filename="../src/bin/dialog/dialog.qml" line="179"/>
<source>Successfully activated all enabled Patches.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../src/bin/dialog/dialog.qml" line="172"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="180"/>
<source>Failed to activate all enabled Patches!</source>
<translation type="unfinished"></translation>
</message>
@@ -37,7 +42,7 @@
</message>
<message>
<location filename="../src/bin/patchmanager-daemon/patchmanagerobject.cpp" line="283"/>
- <location filename="../src/bin/dialog/dialog.qml" line="200"/>
+ <location filename="../src/bin/dialog/dialog.qml" line="208"/>
<location filename="../src/qml/AboutPage.qml" line="68"/>
<location filename="../src/qml/RestartServicesDialog.qml" line="79"/>
<source>Patchmanager</source>
|