Hello community, here is the log from the commit of package krfb for openSUSE:Factory checked in at 2020-09-10 22:52:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/krfb (Old) and /work/SRC/openSUSE:Factory/.krfb.new.4249 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "krfb" Thu Sep 10 22:52:25 2020 rev:95 rq:831843 version:20.08.1 Changes: -------- --- /work/SRC/openSUSE:Factory/krfb/krfb.changes 2020-08-18 14:00:45.662253813 +0200 +++ /work/SRC/openSUSE:Factory/.krfb.new.4249/krfb.changes 2020-09-10 22:53:39.516273079 +0200 @@ -1,0 +2,20 @@ +Tue Sep 1 20:50:40 UTC 2020 - Luca Beltrame <[email protected]> + +- Update to 20.08.1 + * New bugfix release + * For more details please see: + * https://kde.org/announcements/releases/2020-09-apps-update +- No code change since 20.08.0 +- Rebased patches against 20.08.1: + - 0001-Declare-and-use-logging-categories.patch + +------------------------------------------------------------------- +Mon Aug 31 15:57:48 UTC 2020 - Stefan BrĂ¼ns <[email protected]> + +- Fix wrong framebuffer size when display scale is not 1.0 + * Add 0001-Declare-and-use-logging-categories.patch + * Add 0003-Compensate-for-global-scale-factor-when-using-xcb-fb.patch +- Cleanup build dependencies (remove KF5Completion and telepathy): + * Add 0001-Replace-KLineEdit-with-QLineEdit.patch + +------------------------------------------------------------------- Old: ---- krfb-20.08.0.tar.xz krfb-20.08.0.tar.xz.sig New: ---- 0001-Declare-and-use-logging-categories.patch 0001-Replace-KLineEdit-with-QLineEdit.patch 0003-Compensate-for-global-scale-factor-when-using-xcb-fb.patch krfb-20.08.1.tar.xz krfb-20.08.1.tar.xz.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ krfb.spec ++++++ --- /var/tmp/diff_new_pack.fmHVXQ/_old 2020-09-10 22:53:40.508274531 +0200 +++ /var/tmp/diff_new_pack.fmHVXQ/_new 2020-09-10 22:53:40.512274537 +0200 @@ -21,20 +21,24 @@ %{!?_kapp_version: %define _kapp_version %(echo %{version}| awk -F. '{print $1"."$2}')} %bcond_without lang Name: krfb -Version: 20.08.0 +Version: 20.08.1 Release: 0 Summary: Screen sharing using the VNC/RFB protocol License: GPL-2.0-or-later Group: Productivity/Networking/Other Source: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz +# PATCH-FIX-UPSTREAM +Patch0: 0001-Declare-and-use-logging-categories.patch +# PATCH-FIX-UPSTREAM +Patch1: 0001-Replace-KLineEdit-with-QLineEdit.patch +# PATCH-FIX-UPSTREAM +Patch2: 0003-Compensate-for-global-scale-factor-when-using-xcb-fb.patch BuildRequires: LibVNCServer-devel BuildRequires: extra-cmake-modules BuildRequires: pipewire-devel BuildRequires: pkgconfig -BuildRequires: telepathy-qt5-devel BuildRequires: update-desktop-files BuildRequires: xcb-util-image-devel -BuildRequires: cmake(KF5Completion) BuildRequires: cmake(KF5Config) BuildRequires: cmake(KF5CoreAddons) BuildRequires: cmake(KF5Crash) @@ -68,12 +72,15 @@ %prep %setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 %build %ifarch ppc ppc64 export RPM_OPT_FLAGS="%{optflags} -mminimal-toc" %endif - %cmake_kf5 -d build -- -DBUILD_EXPERIMENTAL_TUBES_SUPPORT="on" + %cmake_kf5 -d build -- %cmake_build %install @@ -99,6 +106,7 @@ %{_kf5_servicetypesdir}/krfb-framebuffer*.desktop %{_kf5_servicetypesdir}/krfb-events.desktop %{_kf5_sharedir}/krfb/ +%{_kf5_debugdir}/krfb.categories %if %{with lang} %files lang -f %{name}.lang ++++++ 0001-Declare-and-use-logging-categories.patch ++++++ >From 7299923943687a9e9e411c6b0a8d74e04d5a9b04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Tue, 11 Aug 2020 19:50:46 +0200 Subject: [PATCH 1/3] Declare and use logging categories Adds the following logging categories: - kf.rfb - kf.rfb.framebuffer.qt - kf.rfb.framebuffer.xcb --- CMakeLists.txt | 7 +++++ framebuffers/qt/CMakeLists.txt | 8 ++++++ framebuffers/xcb/CMakeLists.txt | 8 ++++++ framebuffers/xcb/xcb_framebuffer.cpp | 40 +++++++++++++++------------- krfb/CMakeLists.txt | 8 ++++++ krfb/eventsmanager.cpp | 12 ++++----- krfb/framebuffermanager.cpp | 14 +++++----- krfb/invitationsrfbclient.cpp | 6 ++--- krfb/invitationsrfbserver.cpp | 4 +-- krfb/main.cpp | 8 +++--- krfb/rfbclient.cpp | 1 - krfb/rfbserver.cpp | 8 +++--- krfb/rfbservermanager.cpp | 1 - 13 files changed, 78 insertions(+), 47 deletions(-) Index: krfb-20.08.1/CMakeLists.txt =================================================================== --- krfb-20.08.1.orig/CMakeLists.txt 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/CMakeLists.txt 2020-09-02 07:05:40.725370922 +0200 @@ -20,6 +20,7 @@ include(ECMInstallIcons) include(ECMAddAppIcon) include(ECMSetupVersion) +include(ECMQtDeclareLoggingCategory) include(FeatureSummary) include(CheckIncludeFile) @@ -104,6 +105,12 @@ add_subdirectory(doc) add_subdirectory(icons) +ecm_qt_install_logging_categories( + EXPORT KRFB + FILE krfb.categories + DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} +) + feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) ki18n_install(po) if (KF5DocTools_FOUND) Index: krfb-20.08.1/framebuffers/qt/CMakeLists.txt =================================================================== --- krfb-20.08.1.orig/framebuffers/qt/CMakeLists.txt 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/framebuffers/qt/CMakeLists.txt 2020-09-02 07:05:40.725370922 +0200 @@ -7,6 +7,14 @@ qtframebufferplugin.cpp ) +ecm_qt_declare_logging_category(krfb_framebuffer_qt_SRCS + HEADER krfb_fb_qt_debug.h + IDENTIFIER KRFB_FB_QT + CATEGORY_NAME kf.rfb.framebuffer.qt + DESCRIPTION "KRFB Qt frambuffer plugin" + EXPORT KRFB +) + add_library(krfb_framebuffer_qt MODULE ${krfb_framebuffer_qt_SRCS} Index: krfb-20.08.1/framebuffers/xcb/CMakeLists.txt =================================================================== --- krfb-20.08.1.orig/framebuffers/xcb/CMakeLists.txt 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/framebuffers/xcb/CMakeLists.txt 2020-09-02 07:05:40.725370922 +0200 @@ -7,6 +7,14 @@ xcb_framebuffer.cpp ) +ecm_qt_declare_logging_category(krfb_framebuffer_xcb_SRCS + HEADER krfb_fb_xcb_debug.h + IDENTIFIER KRFB_FB_XCB + CATEGORY_NAME kf.rfb.framebuffer.xcb + DESCRIPTION "KRFB XCB frambuffer plugin" + EXPORT KRFB +) + add_library(krfb_framebuffer_xcb MODULE ${krfb_framebuffer_xcb_SRCS}) target_link_libraries (krfb_framebuffer_xcb Index: krfb-20.08.1/framebuffers/xcb/xcb_framebuffer.cpp =================================================================== --- krfb-20.08.1.orig/framebuffers/xcb/xcb_framebuffer.cpp 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/framebuffers/xcb/xcb_framebuffer.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -8,6 +8,7 @@ */ #include "xcb_framebuffer.h" +#include "krfb_fb_xcb_debug.h" #include <xcb/xcb.h> #include <xcb/xproto.h> @@ -23,7 +24,6 @@ #include <QGuiApplication> #include <QScreen> #include <QAbstractNativeEventFilter> -#include <QDebug> class KrfbXCBEventFilter: public QAbstractNativeEventFilter @@ -68,7 +68,7 @@ } #ifdef _DEBUG - qDebug() << "xcb framebuffer: XDamage extension version:" << + qCDebug(KRFB_FB_XCB) << "xcb framebuffer: XDamage extension version:" << xdamage_version->major_version << "." << xdamage_version->minor_version; #endif @@ -163,7 +163,7 @@ QScreen *primaryScreen = QGuiApplication::primaryScreen(); if (primaryScreen) { - qDebug() << "xcb framebuffer: Primary screen: " << primaryScreen->name() + qCDebug(KRFB_FB_XCB) << "xcb framebuffer: Primary screen: " << primaryScreen->name() << ", geometry: " << primaryScreen->geometry() << ", depth: " << primaryScreen->depth(); // @@ -183,7 +183,7 @@ XCB_IMAGE_FORMAT_Z_PIXMAP); if (d->framebufferImage) { #ifdef _DEBUG - qDebug() << "xcb framebuffer: Got primary screen image. bpp: " << d->framebufferImage->bpp + qCDebug(KRFB_FB_XCB) << "xcb framebuffer: Got primary screen image. bpp: " << d->framebufferImage->bpp << ", size (" << d->framebufferImage->width << d->framebufferImage->height << ")" << ", depth: " << d->framebufferImage->depth << ", padded width: " << d->framebufferImage->stride; @@ -211,15 +211,15 @@ nullptr); // data = 0 if (d->updateTile) { #ifdef _DEBUG - qDebug() << "xcb framebuffer: Successfully created new empty image in native format"; - qDebug() << " size: " << d->updateTile->width << "x" << d->updateTile->height - << "(stride: " << d->updateTile->stride << ")"; - qDebug() << " bpp, depth: " << d->updateTile->bpp << d->updateTile->depth; // 32, 24 - qDebug() << " addr of base, data: " << d->updateTile->base << (void *)d->updateTile->data; - qDebug() << " size: " << d->updateTile->size; - qDebug() << " image byte order = " << d->updateTile->byte_order; // == 0 .._LSB_FIRST - qDebug() << " image bit order = " << d->updateTile->bit_order; // == 1 .._MSB_FIRST - qDebug() << " image plane_mask = " << d->updateTile->plane_mask; // == 16777215 == 0x00FFFFFF + qCDebug(KRFB_FB_XCB) << "xcb framebuffer: Successfully created new empty image in native format" + << "\n size: " << d->updateTile->width << "x" << d->updateTile->height + << "(stride: " << d->updateTile->stride << ")" + << "\n bpp, depth: " << d->updateTile->bpp << d->updateTile->depth // 32, 24 + << "\n addr of base, data: " << d->updateTile->base << (void *)d->updateTile->data + << "\n size: " << d->updateTile->size + << "\n image byte order = " << d->updateTile->byte_order // == 0 .._LSB_FIRST + << "\n image bit order = " << d->updateTile->bit_order // == 1 .._MSB_FIRST + << "\n image plane_mask = " << d->updateTile->plane_mask; // == 16777215 == 0x00FFFFFF #endif // allocate shared memory block only once, make its size large enough @@ -237,7 +237,7 @@ xcb_shm_attach(QX11Info::connection(), d->shminfo.shmseg, d->shminfo.shmid, 0); #ifdef _DEBUG - qDebug() << " shm id: " << d->shminfo.shmseg << ", addr: " << (void *)d->shminfo.shmaddr; + qCDebug(KRFB_FB_XCB) << " shm id: " << d->shminfo.shmseg << ", addr: " << (void *)d->shminfo.shmaddr; #endif // will return 1 on success (yes!) @@ -273,7 +273,7 @@ } #ifdef _DEBUG - qDebug() << "xcb framebuffer: XCBFrameBuffer(), xshm base event = " << d->x11EvtFilter->xshmBaseEvent + qCDebug(KRFB_FB_XCB) << "xcb framebuffer: XCBFrameBuffer(), xshm base event = " << d->x11EvtFilter->xshmBaseEvent << ", xshm base error = " << d->x11EvtFilter->xdamageBaseError << ", xdamage base event = " << d->x11EvtFilter->xdamageBaseEvent << ", xdamage base error = " << d->x11EvtFilter->xdamageBaseError; @@ -420,10 +420,12 @@ format.blueMax = root_visualtype->blue_mask >> format.blueShift; #ifdef _DEBUG - qDebug() << " Calculated redShift =" << (int)format.redShift; - qDebug() << " Calculated greenShift =" << (int)format.greenShift; - qDebug() << " Calculated blueShift =" << (int)format.blueShift; - qDebug( " Calculated max values: R%d G%d B%d", + qCDebug(KRFB_FB_XCB, + " Calculated redShift = %d\n" + " Calculated greenShift = %d\n" + " Calculated blueShift = %d\n" + " Calculated max values: R%d G%d B%d", + format.redShift, format.greenShift, format.blueShift format.redMax, format.greenMax, format.blueMax); #endif } else { Index: krfb-20.08.1/krfb/CMakeLists.txt =================================================================== --- krfb-20.08.1.orig/krfb/CMakeLists.txt 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/krfb/CMakeLists.txt 2020-09-02 07:05:40.725370922 +0200 @@ -66,6 +66,14 @@ invitationsrfbclient.cpp ) +ecm_qt_declare_logging_category(krfb_SRCS + HEADER krfbdebug.h + IDENTIFIER KRFB + CATEGORY_NAME kf.rfb + DESCRIPTION "KRFB Application" + EXPORT KRFB +) + kconfig_add_kcfg_files (krfb_SRCS krfbconfig.kcfgc ) Index: krfb-20.08.1/krfb/eventsmanager.cpp =================================================================== --- krfb-20.08.1.orig/krfb/eventsmanager.cpp 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/krfb/eventsmanager.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -23,8 +23,8 @@ #include "eventsplugin.h" #include "krfbconfig.h" #include "rfbservermanager.h" +#include "krfbdebug.h" -#include <QDebug> #include <QGlobalStatic> #include <KPluginFactory> @@ -79,18 +79,18 @@ KPluginFactory *factory = KPluginLoader(data.fileName()).factory(); if (!factory) { - qDebug() << "KPluginFactory could not load the plugin:" << data.fileName(); + qCDebug(KRFB) << "KPluginFactory could not load the plugin:" << data.fileName(); continue; } else { - qDebug() << "found plugin at " << data.fileName(); + qCDebug(KRFB) << "found plugin at " << data.fileName(); } EventsPlugin *plugin = factory->create<EventsPlugin>(this); if (plugin) { m_plugins.insert(data.pluginId(), plugin); - qDebug() << "Loaded plugin with name " << data.pluginId(); + qCDebug(KRFB) << "Loaded plugin with name " << data.pluginId(); } else { - qDebug() << "unable to load plugin for " << data.fileName(); + qCDebug(KRFB) << "unable to load plugin for " << data.fileName(); } unique.insert (data.name()); } @@ -113,6 +113,6 @@ } // No valid events plugin found. - qDebug() << "No valid event handlers found. returning null."; + qCDebug(KRFB) << "No valid event handlers found. returning null."; return QSharedPointer<EventHandler>(); } Index: krfb-20.08.1/krfb/framebuffermanager.cpp =================================================================== --- krfb-20.08.1.orig/krfb/framebuffermanager.cpp 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/krfb/framebuffermanager.cpp 2020-09-02 07:06:44.709582831 +0200 @@ -22,8 +22,8 @@ #include "framebufferplugin.h" #include "krfbconfig.h" +#include "krfbdebug.h" -#include <QDebug> #include <QGlobalStatic> #include <KPluginFactory> @@ -78,18 +78,18 @@ KPluginFactory *factory = KPluginLoader(data.fileName()).factory(); if (!factory) { - qDebug() << "KPluginFactory could not load the plugin:" << data.fileName(); + qDebug(KRFB) << "KPluginFactory could not load the plugin:" << data.fileName(); continue; } else { - qDebug() << "found plugin at " << data.fileName(); + qDebug(KRFB) << "found plugin at " << data.fileName(); } FrameBufferPlugin *plugin = factory->create<FrameBufferPlugin>(this); if (plugin) { m_plugins.insert(data.pluginId(), plugin); - qDebug() << "Loaded plugin with name " << data.pluginId(); + qDebug(KRFB) << "Loaded plugin with name " << data.pluginId(); } else { - qDebug() << "unable to load plugin for " << data.fileName(); + qDebug(KRFB) << "unable to load plugin for " << data.fileName(); } unique.insert (data.name()); } @@ -118,7 +118,7 @@ while (iter != m_plugins.constEnd()) { if (iter.key() == KrfbConfig::preferredFrameBufferPlugin()) { - qDebug() << "Using FrameBuffer:" << KrfbConfig::preferredFrameBufferPlugin(); + qDebug(KRFB) << "Using FrameBuffer:" << KrfbConfig::preferredFrameBufferPlugin(); QSharedPointer<FrameBuffer> frameBuffer(iter.value()->frameBuffer(id)); @@ -133,6 +133,6 @@ } // No valid framebuffer plugin found. - qDebug() << "No valid framebuffer found. returning null."; + qDebug(KRFB) << "No valid framebuffer found. returning null."; return QSharedPointer<FrameBuffer>(); } Index: krfb-20.08.1/krfb/invitationsrfbclient.cpp =================================================================== --- krfb-20.08.1.orig/krfb/invitationsrfbclient.cpp 2020-09-02 07:05:32.869344897 +0200 +++ krfb-20.08.1/krfb/invitationsrfbclient.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -24,11 +24,11 @@ #include "krfbconfig.h" #include "sockethelpers.h" #include "connectiondialog.h" +#include "krfbdebug.h" #include <KNotification> #include <KLocalizedString> -#include <QDebug> #include <QSocketNotifier> #include <poll.h> #include <KConfigGroup> @@ -115,7 +115,7 @@ //the clientGoneHook which in turn will remove this RfbClient instance //from the server manager and will call deleteLater() to delete it if (d->client->sock == -1) { - qDebug() << "disconnected from socket signal"; + qCDebug(KRFB) << "disconnected from socket signal"; d->notifier->setEnabled(false); rfbClientConnectionGone(d->client); break; @@ -125,7 +125,7 @@ bool PendingInvitationsRfbClient::checkPassword(const QByteArray & encryptedPassword) { - qDebug() << "about to start authentication"; + qCDebug(KRFB) << "about to start authentication"; if(InvitationsRfbServer::instance->allowUnattendedAccess() && vncAuthCheckPassword( InvitationsRfbServer::instance->unattendedPassword().toLocal8Bit(), Index: krfb-20.08.1/krfb/invitationsrfbserver.cpp =================================================================== --- krfb-20.08.1.orig/krfb/invitationsrfbserver.cpp 2020-09-02 07:05:32.873344910 +0200 +++ krfb-20.08.1/krfb/invitationsrfbserver.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -22,10 +22,10 @@ #include "invitationsrfbclient.h" #include "krfbconfig.h" #include "rfbservermanager.h" +#include "krfbdebug.h" #include <QTimer> #include <QApplication> #include <QHostInfo> -#include <QDebug> #include <QRandomGenerator> #include <KLocalizedString> @@ -188,7 +188,7 @@ } else { - qDebug() << "Could not open KWallet, Falling back to config file"; + qCDebug(KRFB) << "Could not open KWallet, Falling back to config file"; KConfigGroup krfbConfig(KSharedConfig::openConfig(),"Security"); desktopPassword = KStringHandler::obscure(krfbConfig.readEntry( Index: krfb-20.08.1/krfb/main.cpp =================================================================== --- krfb-20.08.1.orig/krfb/main.cpp 2020-09-02 07:05:32.873344910 +0200 +++ krfb-20.08.1/krfb/main.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -20,6 +20,7 @@ #include "invitationsrfbserver.h" #include "krfbconfig.h" #include "krfb_version.h" +#include "krfbdebug.h" #include <KAboutData> #include <KDBusService> @@ -27,7 +28,6 @@ #include <KMessageBox> #include <KWindowSystem> -#include <QDebug> #include <QPixmap> #include <qwindowdefs.h> #include <QX11Info> @@ -59,13 +59,13 @@ static void checkOldX11PluginConfig() { if (KrfbConfig::preferredFrameBufferPlugin() == QStringLiteral("x11")) { - qDebug() << "Detected deprecated configuration: preferredFrameBufferPlugin = x11"; + qCDebug(KRFB) << "Detected deprecated configuration: preferredFrameBufferPlugin = x11"; KConfigSkeletonItem *config_item = KrfbConfig::self()->findItem( QStringLiteral("preferredFrameBufferPlugin")); if (config_item) { config_item->setProperty(QStringLiteral("xcb")); KrfbConfig::self()->save(); - qDebug() << " Fixed preferredFrameBufferPlugin from x11 to xcb."; + qCDebug(KRFB) << " Fixed preferredFrameBufferPlugin from x11 to xcb."; } } } @@ -81,7 +81,7 @@ if (config_item) { config_item->setProperty(QStringLiteral("pw")); KrfbConfig::self()->save(); - qDebug() << "Wayland: Fixed preferredFrameBufferPlugin to \"pw\"."; + qCDebug(KRFB) << "Wayland: Fixed preferredFrameBufferPlugin to \"pw\"."; } } } Index: krfb-20.08.1/krfb/rfbclient.cpp =================================================================== --- krfb-20.08.1.orig/krfb/rfbclient.cpp 2020-09-02 07:05:32.873344910 +0200 +++ krfb-20.08.1/krfb/rfbclient.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -23,7 +23,6 @@ #include "sockethelpers.h" #include "eventsmanager.h" #include <QSocketNotifier> -#include <QDebug> #include <poll.h> #include <strings.h> //for bzero() Index: krfb-20.08.1/krfb/rfbserver.cpp =================================================================== --- krfb-20.08.1.orig/krfb/rfbserver.cpp 2020-09-02 07:05:32.873344910 +0200 +++ krfb-20.08.1/krfb/rfbserver.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -19,11 +19,11 @@ */ #include "rfbserver.h" #include "rfbservermanager.h" +#include "krfbdebug.h" #include <QSocketNotifier> #include <QApplication> #include <QClipboard> #include <QPointer> -#include <QDebug> #include <QX11Info> struct RfbServer::Private @@ -92,7 +92,7 @@ if (!d->screen) { d->screen = RfbServerManager::instance()->newScreen(); if (!d->screen) { - qDebug() << "Unable to get rbfserver screen"; + qCDebug(KRFB) << "Unable to get rbfserver screen"; return false; } @@ -125,14 +125,14 @@ d->screen->authPasswdData = (void *)nullptr; } - qDebug() << "Starting server. Listen port:" << listeningPort() + qCDebug(KRFB) << "Starting server. Listen port:" << listeningPort() << "Listen Address:" << listeningAddress() << "Password enabled:" << passwordRequired(); rfbInitServer(d->screen); if (!rfbIsActive(d->screen)) { - qDebug() << "Failed to start server"; + qCDebug(KRFB) << "Failed to start server"; rfbShutdownServer(d->screen, false); return false; }; Index: krfb-20.08.1/krfb/rfbservermanager.cpp =================================================================== --- krfb-20.08.1.orig/krfb/rfbservermanager.cpp 2020-09-02 07:05:32.873344910 +0200 +++ krfb-20.08.1/krfb/rfbservermanager.cpp 2020-09-02 07:05:40.725370922 +0200 @@ -29,7 +29,6 @@ #include <QDesktopWidget> #include <QGlobalStatic> #include <QHostInfo> -#include <QDebug> #include <KLocalizedString> #include <KUser> ++++++ 0001-Replace-KLineEdit-with-QLineEdit.patch ++++++ >From 58eab99e6b5fbcd7c9bb4f9a5f0bd5feb0b3edf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Wed, 12 Aug 2020 18:27:23 +0200 Subject: [PATCH] Replace KLineEdit with QLineEdit The password field uses none of the KLineEdit features like completion, so QLineEdit suffices. --- CMakeLists.txt | 1 - krfb/CMakeLists.txt | 1 - krfb/mainwindow.cpp | 3 +-- krfb/mainwindow.h | 4 ++-- 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index aadd4b7..bd9ed41 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,6 @@ find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core DBus Widgets X11Extr find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS I18n - Completion Config CoreAddons Crash diff --git a/krfb/CMakeLists.txt b/krfb/CMakeLists.txt index a292226..43752b5 100644 --- a/krfb/CMakeLists.txt +++ b/krfb/CMakeLists.txt @@ -93,7 +93,6 @@ target_link_libraries (krfb ${X11_X11_LIB} ${X11_Xdamage_LIB} Qt5::Network - KF5::Completion KF5::CoreAddons KF5::DBusAddons KF5::DNSSD diff --git a/krfb/mainwindow.cpp b/krfb/mainwindow.cpp index 555d301..14924f6 100644 --- a/krfb/mainwindow.cpp +++ b/krfb/mainwindow.cpp @@ -21,7 +21,6 @@ #include <KMessageWidget> #include <KStandardAction> #include <KActionCollection> -#include <KLineEdit> #include <KNewPasswordDialog> #include <KPluginLoader> #include <KPluginMetaData> @@ -107,7 +106,7 @@ MainWindow::MainWindow(QWidget *parent) setAttribute(Qt::WA_DeleteOnClose, false); m_passwordEditable = false; - m_passwordLineEdit = new KLineEdit(this); + m_passwordLineEdit = new QLineEdit(this); m_passwordLineEdit->setVisible(false); m_passwordLineEdit->setAlignment(Qt::AlignHCenter); diff --git a/krfb/mainwindow.h b/krfb/mainwindow.h index 9f2939e..bbe69cd 100644 --- a/krfb/mainwindow.h +++ b/krfb/mainwindow.h @@ -15,7 +15,7 @@ #include <KXmlGuiWindow> -class KLineEdit; +class QLineEdit; class MainWindow : public KXmlGuiWindow { @@ -43,7 +43,7 @@ class MainWindow : public KXmlGuiWindow private: Ui::MainWidget m_ui; bool m_passwordEditable; - KLineEdit *m_passwordLineEdit; + QLineEdit *m_passwordLineEdit; }; #endif -- 2.28.0 ++++++ 0003-Compensate-for-global-scale-factor-when-using-xcb-fb.patch ++++++ >From a5656776a21f8b6f893431f9e18327a24ad1fa9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Thu, 13 Aug 2020 09:30:06 +0200 Subject: [PATCH 3/3] Compensate for global scale factor when using xcb fb plugin The screen geometry is reported in device independent pixels, so it has to be multiplied by the devicePixelRatio to get the size of the underlying framebuffer. Otherwise, only the top left of the screen will be captured. This matches the behavior of QScreen::grabWindow(...), which also returns a QPixmap of the given size scaled by devicePixelRatio. --- framebuffers/xcb/xcb_framebuffer.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/framebuffers/xcb/xcb_framebuffer.cpp b/framebuffers/xcb/xcb_framebuffer.cpp index 07569bf..626b3ad 100644 --- a/framebuffers/xcb/xcb_framebuffer.cpp +++ b/framebuffers/xcb/xcb_framebuffer.cpp @@ -163,11 +163,15 @@ XCBFrameBuffer::XCBFrameBuffer(WId winid, QObject *parent): QScreen *primaryScreen = QGuiApplication::primaryScreen(); if (primaryScreen) { + qreal scaleFactor = primaryScreen->devicePixelRatio(); + d->area = { primaryScreen->geometry().topLeft() * scaleFactor, + primaryScreen->geometry().bottomRight() * scaleFactor }; qCDebug(KRFB_FB_XCB) << "xcb framebuffer: Primary screen: " << primaryScreen->name() << ", geometry: " << primaryScreen->geometry() + << ", device scaling: " << scaleFactor + << ", native size: " << d->area << ", depth: " << primaryScreen->depth(); // - d->area = primaryScreen->geometry(); } else { qWarning() << "xcb framebuffer: ERROR: Failed to get application's primary screen info!"; return; -- 2.28.0 ++++++ krfb-20.08.0.tar.xz -> krfb-20.08.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krfb-20.08.0/CMakeLists.txt new/krfb-20.08.1/CMakeLists.txt --- old/krfb-20.08.0/CMakeLists.txt 2020-08-07 09:06:27.000000000 +0200 +++ new/krfb-20.08.1/CMakeLists.txt 2020-09-01 08:31:57.000000000 +0200 @@ -3,7 +3,7 @@ # KDE Application Version, managed by release script set (RELEASE_SERVICE_VERSION_MAJOR "20") set (RELEASE_SERVICE_VERSION_MINOR "08") -set (RELEASE_SERVICE_VERSION_MICRO "0") +set (RELEASE_SERVICE_VERSION_MICRO "1") set (RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") project(krfb VERSION ${RELEASE_SERVICE_VERSION}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krfb-20.08.0/krfb/framebuffermanager.cpp new/krfb-20.08.1/krfb/framebuffermanager.cpp --- old/krfb-20.08.0/krfb/framebuffermanager.cpp 2020-08-05 10:17:31.000000000 +0200 +++ new/krfb-20.08.1/krfb/framebuffermanager.cpp 2020-08-31 21:23:23.000000000 +0200 @@ -89,7 +89,7 @@ m_plugins.insert(data.pluginId(), plugin); qDebug() << "Loaded plugin with name " << data.pluginId(); } else { - qDebug() << "unable to load pluign for " << data.fileName(); + qDebug() << "unable to load plugin for " << data.fileName(); } unique.insert (data.name()); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krfb-20.08.0/krfb/org.kde.krfb.appdata.xml new/krfb-20.08.1/krfb/org.kde.krfb.appdata.xml --- old/krfb-20.08.0/krfb/org.kde.krfb.appdata.xml 2020-08-05 10:17:31.000000000 +0200 +++ new/krfb-20.08.1/krfb/org.kde.krfb.appdata.xml 2020-08-31 21:23:23.000000000 +0200 @@ -151,9 +151,9 @@ </provides> <project_group>KDE</project_group> <releases> + <release version="20.08.1" date="2020-09-03"/> <release version="20.08.0" date="2020-08-13"/> <release version="20.04.3" date="2020-07-09"/> <release version="20.04.2" date="2020-06-11"/> - <release version="20.04.1" date="2020-05-14"/> </releases> </component> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/krfb-20.08.0/po/zh_CN/krfb.po new/krfb-20.08.1/po/zh_CN/krfb.po --- old/krfb-20.08.0/po/zh_CN/krfb.po 2020-08-07 09:06:27.000000000 +0200 +++ new/krfb-20.08.1/po/zh_CN/krfb.po 2020-09-01 08:31:56.000000000 +0200 @@ -12,7 +12,7 @@ "Project-Id-Version: kdeorg\n" "Report-Msgid-Bugs-To: https://bugs.kde.org\n" "POT-Creation-Date: 2019-08-11 02:53+0200\n" -"PO-Revision-Date: 2020-07-31 15:03\n" +"PO-Revision-Date: 2020-08-12 20:42\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n"
