Fix URLs, add konsole.patch to repo
This commit is contained in:
parent
a562d5fdab
commit
5dc1c631ac
3 changed files with 70 additions and 9 deletions
7
.SRCINFO
7
.SRCINFO
|
@ -1,7 +1,7 @@
|
||||||
pkgbase = konsole-osc52
|
pkgbase = konsole-osc52
|
||||||
pkgdesc = KDE terminal emulator patched with OSC52 copy support
|
pkgdesc = KDE terminal emulator patched with OSC52 copy support
|
||||||
pkgver = 23.08.1
|
pkgver = 23.08.1
|
||||||
pkgrel = 1
|
pkgrel = 2
|
||||||
url = https://apps.kde.org/konsole/
|
url = https://apps.kde.org/konsole/
|
||||||
arch = x86_64
|
arch = x86_64
|
||||||
groups = kde-applications
|
groups = kde-applications
|
||||||
|
@ -16,9 +16,10 @@ pkgbase = konsole-osc52
|
||||||
depends = kparts
|
depends = kparts
|
||||||
depends = knewstuff
|
depends = knewstuff
|
||||||
optdepends = keditbookmarks: to manage bookmarks
|
optdepends = keditbookmarks: to manage bookmarks
|
||||||
|
provides = konsole
|
||||||
conflicts = konsole
|
conflicts = konsole
|
||||||
source = https://download.kde.org/stable/release-service/23.08.1/src/konsole-osc52-23.08.1.tar.xz
|
source = https://download.kde.org/stable/release-service/23.08.1/src/konsole-23.08.1.tar.xz
|
||||||
source = https://download.kde.org/stable/release-service/23.08.1/src/konsole-osc52-23.08.1.tar.xz.sig
|
source = https://download.kde.org/stable/release-service/23.08.1/src/konsole-23.08.1.tar.xz.sig
|
||||||
source = https://git.exozy.me/exozyme/exozyme/raw/branch/main/src/konsole.patch
|
source = https://git.exozy.me/exozyme/exozyme/raw/branch/main/src/konsole.patch
|
||||||
validpgpkeys = CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7
|
validpgpkeys = CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7
|
||||||
validpgpkeys = F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87
|
validpgpkeys = F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87
|
||||||
|
|
15
PKGBUILD
15
PKGBUILD
|
@ -3,9 +3,10 @@
|
||||||
# Contributor: Antonio Rojas <arojas@archlinux.org>
|
# Contributor: Antonio Rojas <arojas@archlinux.org>
|
||||||
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
# Contributor: Andrea Scarpino <andrea@archlinux.org>
|
||||||
|
|
||||||
pkgname=konsole-osc52
|
_pkgname=konsole
|
||||||
|
pkgname=$_pkgname-osc52
|
||||||
pkgver=23.08.1
|
pkgver=23.08.1
|
||||||
pkgrel=1
|
pkgrel=2
|
||||||
arch=(x86_64)
|
arch=(x86_64)
|
||||||
url='https://apps.kde.org/konsole/'
|
url='https://apps.kde.org/konsole/'
|
||||||
pkgdesc='KDE terminal emulator patched with OSC52 copy support'
|
pkgdesc='KDE terminal emulator patched with OSC52 copy support'
|
||||||
|
@ -14,8 +15,10 @@ groups=(kde-applications kde-utilities)
|
||||||
depends=(knotifyconfig kpty kparts knewstuff)
|
depends=(knotifyconfig kpty kparts knewstuff)
|
||||||
makedepends=(extra-cmake-modules kdoctools)
|
makedepends=(extra-cmake-modules kdoctools)
|
||||||
optdepends=('keditbookmarks: to manage bookmarks')
|
optdepends=('keditbookmarks: to manage bookmarks')
|
||||||
conflicts=(konsole)
|
provides=($_pkgname)
|
||||||
source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig} https://git.exozy.me/exozyme/exozyme/raw/branch/main/src/konsole.patch)
|
conflicts=($_pkgname)
|
||||||
|
source=(https://download.kde.org/stable/release-service/$pkgver/src/$_pkgname-$pkgver.tar.xz{,.sig}
|
||||||
|
$_pkgname.patch)
|
||||||
sha256sums=('1ea81c62e150243ba178463418e6caf01bcca5bded37992b8a1bd87dffca1f4c'
|
sha256sums=('1ea81c62e150243ba178463418e6caf01bcca5bded37992b8a1bd87dffca1f4c'
|
||||||
'SKIP'
|
'SKIP'
|
||||||
'e7c2ca3b30e018139a139e99141202a2efc8e4e880e2965b09537f9a97865e53')
|
'e7c2ca3b30e018139a139e99141202a2efc8e4e880e2965b09537f9a97865e53')
|
||||||
|
@ -24,11 +27,11 @@ validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aac
|
||||||
D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
|
D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.becker@kde.org>
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
patch -d $pkgname-$pkgver -p1 < konsole.patch
|
patch -d $_pkgname-$pkgver -p1 < $_pkgname.patch
|
||||||
}
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
cmake -B build -S $pkgname-$pkgver \
|
cmake -B build -S $_pkgname-$pkgver \
|
||||||
-DBUILD_TESTING=OFF
|
-DBUILD_TESTING=OFF
|
||||||
cmake --build build
|
cmake --build build
|
||||||
}
|
}
|
||||||
|
|
57
konsole.patch
Normal file
57
konsole.patch
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
diff --git a/src/Vt102Emulation.cpp b/src/Vt102Emulation.cpp
|
||||||
|
index bebd5e399..a434ee4ab 100644
|
||||||
|
--- a/src/Vt102Emulation.cpp
|
||||||
|
+++ b/src/Vt102Emulation.cpp
|
||||||
|
@@ -12,7 +12,9 @@
|
||||||
|
#include <cstdio>
|
||||||
|
|
||||||
|
// Qt
|
||||||
|
+#include <QApplication>
|
||||||
|
#include <QBuffer>
|
||||||
|
+#include <QClipboard>
|
||||||
|
#include <QEvent>
|
||||||
|
#include <QKeyEvent>
|
||||||
|
#include <QTimer>
|
||||||
|
@@ -1147,6 +1149,29 @@ void Vt102Emulation::processSessionAttributeRequest(const int tokenSize, const u
|
||||||
|
connect(notification, &KNotification::defaultActivated, this, [this, notification]() {
|
||||||
|
_currentScreen->currentTerminalDisplay()->notificationClicked(notification->xdgActivationToken());
|
||||||
|
});
|
||||||
|
+ }
|
||||||
|
+ if (attribute == 52) {
|
||||||
|
+ // Clipboard
|
||||||
|
+ QStringList params = value.split(QLatin1Char(';'));
|
||||||
|
+ if (params.length() == 0) {
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ QClipboard::Mode mode;
|
||||||
|
+ if (params[0] == QLatin1Char('c')) {
|
||||||
|
+ mode = QClipboard::Clipboard;
|
||||||
|
+ } else if (params[0] == QLatin1Char('p')) {
|
||||||
|
+ mode = QClipboard::Selection;
|
||||||
|
+ } else {
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (params.length() == 2) {
|
||||||
|
+ // Copy to clipboard
|
||||||
|
+ QApplication::clipboard()->setText(QString::fromUtf8(QByteArray::fromBase64(params[1].toUtf8())), mode);
|
||||||
|
+ } else {
|
||||||
|
+ QApplication::clipboard()->clear(mode);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
diff --git a/src/Vt102Emulation.h b/src/Vt102Emulation.h
|
||||||
|
index 3e067549a..a34bfc590 100644
|
||||||
|
--- a/src/Vt102Emulation.h
|
||||||
|
+++ b/src/Vt102Emulation.h
|
||||||
|
@@ -124,7 +124,7 @@ private:
|
||||||
|
void resetModes();
|
||||||
|
|
||||||
|
void resetTokenizer();
|
||||||
|
-#define MAX_TOKEN_LENGTH 256 // Max length of tokens (e.g. window title)
|
||||||
|
+#define MAX_TOKEN_LENGTH 65536 // Max length of tokens (e.g. window title)
|
||||||
|
void addToCurrentToken(uint cc);
|
||||||
|
int tokenBufferPos;
|
||||||
|
|
Loading…
Reference in a new issue