[-]
[+]
|
Changed |
_service:tar_git:patchmanager.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager.spec
^
|
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-rpmlintrc
^
|
@@ -1,7 +1,47 @@
-addFilter("^patchmanager.*: E: use-tmp-in-%postun")
-addFilter("^patchmanager.*: W: dangerous-command-in-%postun")
+# References: An exceptionally comprehensive example rpmlintrc file
+# https://github.com/coreos/tectonic-rpms/blob/master/rpmlint-config
+# but adheres to the old syntax, not the new TOML one: https://toml.io/en/
+# See also https://fedoraproject.org/wiki/Common_Rpmlint_issues and
+# https://en.opensuse.org/openSUSE:Packaging_checks#Building_Packages_in_spite_of_errors
+
+# On behalf of Jolla's tar_git / SailfishOS-OBS:
+# - It re-writes the DistURL, rendering it inconsistent
+addFilter('invalid-url DistURL')
+# - It has a limited list of FLOSS-licenses, most SDPX-IDs are missing
+addFilter('invalid-license')
+# - It extracts strange changelog entries out of Git, if a %%changelog section is used
+addFilter('incoherent-version-in-changelog')
+# - It sometimes re-writes the %version-%release strings of package names,
+# when referencing (only) a branch (i.e., not a git tag), for example,
+# 0.5.2-1 to 0.5.2+rebuild1+main.20230129011931.1.g584263a-1.8.1.jolla
+addFilter('filename-too-long-for-joliet')
+
+# On behalf of the SailfishOS:Chum specification:
+# - which re-uses the spec file tag "Url:"
+addFilter('tag-in-description Url:')
+# - which also re-uses the spec file tag "Icon:"
+addFilter('tag-in-description Icon:')
+# - which makes one easily do
+addFilter('description-line-too-long')
+setBadness('description-line-too-long', 0)
+
+# On our own behalf:
+# - This is how it ought to be
+addFilter('^patchmanager.* percent-in-%p[a-z][a-z]')
+addFilter('^patchmanager.* use-tmp-in-%postun')
+addFilter('^patchmanager.* dangerous-command-in-%postun rm')
+# - We know, do you want to contribute? :-)
+addFilter('^patchmanager.* no-soname /usr/lib/libpreloadpatchmanager\.so')
+addFilter('^patchmanager.* shlib-with-non-pic-code /usr/lib/libpreloadpatchmanager\.so')
+addFilter('^patchmanager.* non-standard-dir-in-usr libexec')
+# - This might be worth to investigate
+#addFilter('^patchmanager.* dbus-parsing-exception raised an exception')
+setBadness('dbus-parsing-exception', 0)
+# - The testcases are special
+addFilter('^patchmanager.* libdir-macro-in-noarch-package testcases')
+setBadness('libdir-macro-in-noarch-package', 0)
+addFilter('^patchmanager-testcases.* noarch-with-lib64')
+addFilter('^patchmanager-testcases.* explicit-lib-dependency libsailfishapp-launcher')
+setBadness('explicit-lib-dependency', 0)
+addFilter('^patchmanager-testcases.* desktopfile-without-binary')
-# we know.
-addFilter("^patchmanager.*: W: no-soname /usr/lib/libpreloadpatchmanager\.so")
-addFilter("^patchmanager.*: E: shlib-with-non-pic-code /usr/lib/libpreloadpatchmanager\.so")
-addFilter("^patchmanager.*: W: non-standard-dir-in-usr libexec")
|
[-]
[+]
|
Changed |
_service
^
|
@@ -11,4 +11,11 @@
<param name="debian">N</param>
<param name="dumb">N</param>
</service>
+ <service name="webhook">
+ <param name="repourl">https://github.com/nephros/patchmanager.git</param>
+ <param name="branch">obs</param>
+ <param name="build">true</param>
+ <param name="notify">true</param>
+ <param name="comment"/>
+ </service>
</services>
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/.github/workflows/ci-on-pull_req.yml
^
|
@@ -29,7 +29,7 @@
- name: Build ${{ env.ARCH }} on ${{ env.RELEASE }}
env:
- ARCH: armv7hl
+ ARCH: i486
RELEASE: 3.4.0.24
run: |
set -x
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/.github/workflows/ci-on-tags.yml
^
|
@@ -6,7 +6,7 @@
- '*'
env:
- LATEST: 4.4.0.68
+ LATEST: 4.5.0.16
jobs:
build:
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/README.md
^
|
@@ -7,10 +7,9 @@
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 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.
+To install a recent Patchmanager the SailfishOS:Chum community repository can be used, which is easily accessed with the SailfishOS:Chum GUI application, which in turn can be installed via the [SailfishOS:Chum GUI Installer](https://openrepos.net/content/olf/sailfishoschum-gui-installer). Alternatively Patchmanager can be installed from [its OpenRepos repository](https://openrepos.net/user/16848/programs) using Storeman, which can be installed via the [Storeman Installer](https://openrepos.net/content/olf/storeman-installer). While these two sources can also be used to manually download and install Patchmanager, you may alternatively obtain Patchmanager RPMs from [its releases page at GitHub](https://github.com/sailfishos-patches/patchmanager/releases). Note that the Patchmanager's OpenRepos repository and GitHub releases page also offer the final releases of Patchmanager 3.0 for SailfishOS < 3.4.0 and Patchmanager 2.3.3 for SailfishOS < 2.2.x.
-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.
+Modern Patches for Patchmanager 3 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.
If you want to translate ("localise") Patchmanager to a language you know well or enhance an existing translation, please read Patchmanager's corresponding Wiki page [Translations ("i18n", "l10n")](https://github.com/sailfishos-patches/patchmanager/wiki/Translations-(%22i18n%22,-%22l10n%22)).
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/src/bin/dialog/main.cpp
^
|
@@ -20,10 +20,6 @@
qInfo() << Q_FUNC_INFO << "applyOnBoot is active, exiting!";
return 0;
}
- if (pm.value(QStringLiteral("settings/applied"), QStringList()).toStringList().size() == 0) {
- qInfo() << Q_FUNC_INFO << "no patches active, exiting!";
- return 0;
- }
QScopedPointer<QGuiApplication> app(SailfishApp::application(argc, argv));
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/src/bin/patchmanager-daemon/main.cpp
^
|
@@ -49,13 +49,13 @@
#include <QDebug>
#ifndef BUILD_VERSION
-#define BUILD_VERSION "9.99.99"
+#define BUILD_VERSION "99.99.99"
#endif
void help()
{
- std::cout << "patchmanager" << " v" << BUILD_VERSION << std::endl;
+ std::cout << "Patchmanager " << BUILD_VERSION << std::endl;
std::cout << "Usage:" << std::endl;
std::cout << " patchmanager [--help] : Print this help text" << std::endl;
std::cout << " patchmanager -a <Patch> : Enable and activate a Patch" << std::endl;
@@ -79,7 +79,7 @@
return 0;
}
- app.setApplicationVersion(BUILD_VERSION);
+ app.setApplicationVersion(QStringLiteral(BUILD_VERSION));
PatchManagerObject patchManager;
app.installEventFilter(&patchManager);
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/src/qml/PatchManagerPage.qml
^
|
@@ -225,44 +225,57 @@
signal applyPatchFinished(string patchName)
signal unapplyPatchFinished(string patchName)
+
add: Transition {
- SequentialAnimation {
- NumberAnimation { properties: "z"; to: -1; duration: 1 }
- NumberAnimation { properties: "opacity"; to: 0.0; duration: 1 }
- NumberAnimation { properties: "x,y"; duration: 1 }
- NumberAnimation { properties: "z"; to: 0; duration: 200 }
- NumberAnimation { properties: "opacity"; from: 0.0; to: 1.0; duration: 100 }
+ ParallelAnimation {
+ NumberAnimation { property: "opacity"; from: 0; to: 1.0; duration: 400 }
+ NumberAnimation { property: "scale" ; from: 0.8; to: 1.0; duration: 400 }
}
}
+ displaced: Transition {
+ NumberAnimation { properties: "x,y"; duration: 200; easing.type: Easing.OutBounce }
+ }
remove: Transition {
ParallelAnimation {
- NumberAnimation { properties: "z"; to: -1; duration: 1 }
- NumberAnimation { properties: "x"; to: 0; duration: 100 }
- NumberAnimation { properties: "opacity"; to: 0.0; duration: 100 }
+ NumberAnimation { property: "scale"; from: 1; to: 0; duration: 200 }
+ NumberAnimation { property: "opacity"; from: 1; to: 0; duration: 200 }
}
}
- displaced: Transition {
- NumberAnimation { properties: "x,y"; duration: 200 }
- }
delegate: ListItem {
id: background
menu: contextMenu
contentHeight: content.height
+ enabled: !view.busy
+
+ /* properties */
property bool applying: appliedSwitch.busy
property int dragThreshold: width / 3
property var pressPosition
property int dragIndex: index
+
+ readonly property bool isBelowBottom: drag.target ? (content.y + content.height - view.contentY) > view.height : false
+ readonly property bool isAboveTop: drag.target ? content.y < view.contentY : false
+
+ property string patchSettingsFile
+ property bool hasPatchSettingsPage: false
+
+ /* signals / handlers */
+
+ Component.onCompleted: {
+ console.debug("Constructing delegate for:", patchObject.details.patch)
+ const qmlFile = "/usr/share/patchmanager/patches/%1/main.qml".arg(patchObject.details.patch)
+ if (PatchManager.fileExists(qmlFile)) {
+ patchSettingsFile = qmlFile
+ hasPatchSettingsPage = true
+ }
+ }
+
onDragIndexChanged: {
if (drag.target) {
view.model.move(index, dragIndex)
}
}
- enabled: !view.busy
-
- Component.onCompleted: {
- console.debug("Constructing delegate for:", patchObject.details.patch)
- }
onPressed: {
pressPosition = Qt.point(mouse.x, mouse.y)
@@ -272,9 +285,6 @@
content.x = 0
}
- readonly property bool isBelowBottom: drag.target ? (content.y + content.height - view.contentY) > view.height : false
- readonly property bool isAboveTop: drag.target ? content.y < view.contentY : false
-
onPositionChanged: {
if (menuOpen) {
return
@@ -307,37 +317,23 @@
}
}
- Timer {
- id: sctollTopTimer
- repeat: true
- interval: 1
- onTriggered: {
- if (view.contentY > view.topmostY) {
- view.contentY -= 5
- content.y -= 5
- } else {
- view.contentY = view.topmostY
-// content.y = 0
- }
- }
- }
+ onReleased: reset()
+ onCanceled: reset()
- Timer {
- id: sctollBottomTimer
- repeat: true
- interval: 1
- onTriggered: {
- // c.y: 1195.81005859375 c.h: 100 cY: 220 cH: 1638 vH: 1280 hH: 138
- if (view.contentY < view.bottommostY) {
- view.contentY += 5
- content.y += 5
- } else {
- view.contentY = view.bottommostY
-// content.y = view.contentHeight - view.height
+ onClicked: {
+ var patchName = patchObject.details.patch
+ if (hasPatchSettingsPage) {
+ var translator = PatchManager.installTranslator(patchName)
+ var page = pageStack.push(patchSettingsFile)
+ if (translator) {
+ page.Component.destruction.connect(function() { PatchManager.removeTranslator(patchName) })
}
+ } else {
+ openPatchInfo()
}
}
+ /* functions */
function reset() {
if (!drag.target) {
content.x = 0
@@ -357,29 +353,9 @@
backAnimation.start()
}
- onReleased: reset()
- onCanceled: reset()
-
- Image {
- anchors.fill: parent
- fillMode: Image.Tile
- source: "image://theme/icon-status-invalid"
- opacity: background.drag.target ? 0.33 : Math.abs(content.x) / dragThreshold / 3
- smooth: false
- }
-
- Connections {
- target: patchObject.details
- onPatchedChanged: {
- console.debug("onPatchedChanged:", patchObject.details.patch, patchObject.details.patched)
- }
- }
-
- Connections {
- target: patchObject
- onBusyChanged: {
- console.debug("onBusyChanged:", patchObject.details.patch, patchObject.busy)
- }
+ function openPatchInfo() {
+ pageStack.push(Qt.resolvedUrl("UnifiedPatchPage.qml"),
+ {modelData: patchObject.details, delegate: background})
}
function doPatch() {
@@ -415,23 +391,62 @@
}
}
- onClicked: {
- var patchName = patchObject.details.patch
- var qmlFile = "/usr/share/patchmanager/patches/%1/main.qml".arg(patchName)
- if (PatchManager.fileExists(qmlFile)) {
- var translator = PatchManager.installTranslator(patchName)
- var page = pageStack.push(qmlFile)
- if (translator) {
- page.Component.destruction.connect(function() { PatchManager.removeTranslator(patchName) })
+
+ /* helper components */
+
+ Connections {
+ target: patchObject.details
+ onPatchedChanged: {
+ console.debug("onPatchedChanged:", patchObject.details.patch, patchObject.details.patched)
+ }
+ }
+
+ Connections {
+ target: patchObject
+ onBusyChanged: {
+ console.debug("onBusyChanged:", patchObject.details.patch, patchObject.busy)
+ }
+ }
+
+ Timer {
+ id: sctollTopTimer
+ repeat: true
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/src/qml/UnifiedPatchPage.qml
^
|
@@ -157,7 +157,7 @@
}
Label {
- visible: PatchManager.developerMode && legacyPatch
+ visible: PatchManager.patchDevelMode && legacyPatch
color: Theme.primaryColor
anchors.left: parent.left
anchors.right: parent.right
@@ -256,7 +256,7 @@
SectionHeader {
text: qsTranslate("", "Patch log")
- visible: PatchManager.developerMode
+ visible: PatchManager.patchDevelMode
}
Label {
@@ -282,7 +282,7 @@
//selectionMode: TextInput.SelectWords
font.family: "Courier"
font.pixelSize: Theme.fontSizeTiny
- visible: PatchManager.developerMode
+ visible: PatchManager.patchDevelMode
onPressAndHold: {
Clipboard.text = modelData.log;
popup.publish();
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/src/qml/WebPatchPage.qml
^
|
@@ -426,7 +426,7 @@
text: Theme.highlightText(qsTranslate("", "Compatible: %1").arg(modelData.compatible.join(", ")),PatchManager.osVersion, Theme.primaryColor)
textFormat: Text.StyledText
font.pixelSize: Theme.fontSizeExtraSmall
- color: fileDelegate.isCompatible ? Theme.highlightColor : Qt.tint(Theme.highlightColor, "red")
+ color: fileDelegate.isCompatible ? Theme.highlightColor : Theme.errorColor
wrapMode: Text.WrapAtWordBoundaryOrAnywhere
}
|
[-]
[+]
|
Changed |
_service:tar_git:patchmanager-3.2.7+obs.20230220125844.15.g3812000.tar.gz/translations/settings-patchmanager-sk.ts
^
|
@@ -34,7 +34,7 @@
</message>
<message>
<location filename="../src/qml/AboutPage.qml" line="54"/>
- <location filename="../src/qml/PatchManagerPage.qml" line="147"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="168"/>
<source>About Patchmanager</source>
<translation>O Patchmanagera</translation>
</message>
@@ -88,22 +88,22 @@
<translation>Ak z nejakého dôvodu nemôžete prispieť na Openrepos, budeme si vážiť aj dar pre Free Software Foundation Europe (FSFE).</translation>
</message>
<message>
- <location filename="../src/qml/WebPatchPage.qml" line="251"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="260"/>
<source>Donate</source>
<translation>Prispieť</translation>
</message>
<message>
- <location filename="../src/qml/DevelopersPage.qml" line="162"/>
+ <location filename="../src/qml/DevelopersPage.qml" line="152"/>
<source>Developers</source>
<translation>Vývojári</translation>
</message>
<message>
- <location filename="../src/qml/DevelopersPage.qml" line="201"/>
+ <location filename="../src/qml/DevelopersPage.qml" line="191"/>
<source>%1's webpage</source>
<translation>%1 webstránka</translation>
</message>
<message>
- <location filename="../src/qml/DevelopersPage.qml" line="206"/>
+ <location filename="../src/qml/DevelopersPage.qml" line="196"/>
<source>%1's %2 account</source>
<translation>%1 %2 účet</translation>
</message>
@@ -209,91 +209,91 @@
<translation>Zatiaľ neexistuje žiaden protokol spracovania</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="152"/>
- <source>Deactivate all Patches</source>
- <translation>Inaktivácia všetkých opráv</translation>
+ <location filename="../src/qml/PatchManagerPage.qml" line="162"/>
+ <source>Disable and deactivate all Patches</source>
+ <translation>Zakázať a vypnúť všetky opravy</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="158"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="178"/>
<source>Start Patchmanager's daemon</source>
<translation>Spustiť službu Patchmanagera</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="164"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="184"/>
<source>Updates available</source>
<translation>Dostupné aktualizácie</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="164"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="184"/>
<location filename="../src/qml/WebCatalogPage.qml" line="106"/>
<source>Web Catalog</source>
<translation>Webový katalóg</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="170"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="190"/>
<source>Restart preloaded services</source>
<translation>Reštartovať predinštalované služby</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="176"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="196"/>
<source>Resolve failure</source>
<translation>Vyriešiť zlyhanie</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="183"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="203"/>
<source>Installed Patches</source>
<translation>Inštalované opravy</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="362"/>
- <location filename="../src/qml/WebPatchPage.qml" line="338"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="382"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="348"/>
<source>This Patch is incompatible with the installed SailfishOS version.</source>
<translation>Táto oprava nie je kompatibilná s inštalovanou verziou SailfishOS.</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="370"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="390"/>
<source>Removing Patch %1</source>
<translation>Odstraňovanie opravy %1</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="475"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="495"/>
<source>Compatible with:</source>
<translation>Kompatibilné s:</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="490"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="510"/>
<source>May conflict with another Patch, see %1</source>
<translation>Možný konflikt s inou opravou, pozri %1</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="491"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="511"/>
<source>May conflict with %2 other Patches, see %1</source>
<translation>Možný konflikt s %2 iných opráv, pozri %1</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="495"/>
- <location filename="../src/qml/WebPatchPage.qml" line="90"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="515"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="99"/>
<source>Patch details</source>
<translation>Podrobnosti opravy</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="499"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="519"/>
<source>Deactivate</source>
<translation>Inaktivovať</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="499"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="519"/>
<source>Activate</source>
<translation>Aktivovať</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="504"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="524"/>
<source>Remove</source>
<translation>Odstrániť</translation>
</message>
<message>
- <location filename="../src/qml/PatchManagerPage.qml" line="518"/>
- <location filename="../src/qml/WebCatalogPage.qml" line="253"/>
+ <location filename="../src/qml/PatchManagerPage.qml" line="538"/>
+ <location filename="../src/qml/WebCatalogPage.qml" line="249"/>
<source>No Patches available</source>
<translation>Žiadne opravy nie sú dostupné</translation>
</message>
@@ -329,7 +329,7 @@
</message>
<message>
<location filename="../src/qml/ScreenshotsPage.qml" line="71"/>
- <location filename="../src/qml/WebPatchPage.qml" line="277"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="286"/>
<source>Screenshots</source>
<translation>Snímky obrazovky</translation>
</message>
@@ -374,7 +374,7 @@
<translation>Ťuknúť a vložiť vyhľadávaciu podmienku</translation>
</message>
<message>
- <location filename="../src/qml/WebCatalogPage.qml" line="240"/>
+ <location filename="../src/qml/WebCatalogPage.qml" line="236"/>
<source>Update available: %1</source>
<translation>Dostupná aktualizácia: %1</translation>
</message>
@@ -389,49 +389,64 @@
<translation>Načítanie údajov opravy</translation>
</message>
<message>
- <location filename="../src/qml/WebPatchPage.qml" line="193"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="86"/>
+ <source>Open Project Page</source>
+ <translation>Otvoriť stránku projektu</translation>
+ </message>
+ <message>
+ <location filename="../src/qml/WebPatchPage.qml" line="202"/>
<source>Author: %1</source>
<translation>Autor: %1</translation>
</message>
<message>
<location filename="../src/qml/UnifiedPatchPage.qml" line="190"/>
- <location filename="../src/qml/WebPatchPage.qml" line="209"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="218"/>
<source>Links</source>
<translation>Odkazy</translation>
</message>
<message>
- <location filename="../src/qml/WebPatchPage.qml" line="230"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="239"/>
<source>Open discussion link</source>
<translation>Otvoriť odkaz diskusie</translation>
</message>
<message>
<location filename="../src/qml/UnifiedPatchPage.qml" line="208"/>
- <location filename="../src/qml/WebPatchPage.qml" line="272"/>
+ <location filename="../src/qml/WebPatchPage.qml" line="281"/>
<source>Sources</source>
|