Wolfgang Bauer 2018-10-16 12:23:51 +00:00 committed by Git OBS Bridge
parent 36983faed4
commit babf98c6af
5 changed files with 25 additions and 81 deletions

View File

@ -1,72 +0,0 @@
From cc4ecfdcd48a52a67f60eb69ed69e91ca42ee405 Mon Sep 17 00:00:00 2001
From: Valeriy Malov <jazzvoid@gmail.com>
Date: Mon, 10 Sep 2018 17:39:40 +0300
Subject: [PATCH] Manually resize KCMUtilDialog to sizeHint()
Summary:
Workaround for https://bugreports.qt.io/browse/QTBUG-3459
Currently adjustSize() is limited to 2/3 of the screen size for windows
This adds unnecessary scrollbars on dialogs that would otherwise fit the
screen
Manually resize the window after adjustSize() happens to avoid this
limitation
CCBUG: 389585
Test Plan:
Tested on a 1366x768 laptop, with this patch networkmanagement window opens
in full screen height (respecting the panel)
Reviewers: #frameworks, ngraham
Reviewed By: ngraham
Subscribers: davidedmundson, acrouthamel, kde-frameworks-devel
Tags: #frameworks
Differential Revision: https://phabricator.kde.org/D15406
---
src/kcmultidialog.cpp | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/kcmultidialog.cpp b/src/kcmultidialog.cpp
index d5f2f10..2fd7cb8 100644
--- a/src/kcmultidialog.cpp
+++ b/src/kcmultidialog.cpp
@@ -27,8 +27,10 @@
#include "kcmoduleproxy.h"
+#include <QApplication>
#include <QDebug>
#include <QDesktopServices>
+#include <QDesktopWidget>
#include <QProcess>
#include <QPushButton>
#include <QScrollArea>
@@ -261,9 +263,18 @@ KCMultiDialog::~KCMultiDialog()
void KCMultiDialog::showEvent(QShowEvent *ev)
{
- resize(QSize(800, 550));
- adjustSize();
KPageDialog::showEvent(ev);
+ adjustSize();
+ /**
+ * adjustSize() relies on sizeHint but is limited to 2/3 of the desktop size
+ * Workaround for https://bugreports.qt.io/browse/QTBUG-3459
+ *
+ * We adjust the size after passing the show event
+ * because otherwise window pos is set to (0,0)
+ */
+ const QSize maxSize = QApplication::desktop()->availableGeometry(pos()).size();
+ resize(qMin(sizeHint().width(), maxSize.width()),
+ qMin(sizeHint().height(), maxSize.height()));
}
void KCMultiDialog::slotDefaultClicked()
--
2.18.0

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d70e08568a16cb294fae094383afdd4565f2fc39d8020fb347d35807c4453fe1
size 236768

3
kcmutils-5.51.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c838d4671e87314897da62c62d3663d97e38ecb560fd5bf922a5806f7d611305
size 237068

View File

@ -1,3 +1,22 @@
-------------------------------------------------------------------
Tue Oct 16 08:01:52 UTC 2018 - Luca Beltrame <lbeltrame@kde.org>
- Run spec-cleaner
-------------------------------------------------------------------
Mon Oct 15 11:51:47 UTC 2018 - lbeltrame@kde.org
- Update to 5.51.0
* New feature release
* For more details please see:
* https://www.kde.org/announcements/kde-frameworks-5.51.0.php
- Changes since 5.50.0:
* manage return events
* MAke sure to build with strict compile flags
* Manually resize KCMUtilDialog to sizeHint()
- Dropped patches, now upstream:
* 0001-Manually-resize-KCMUtilDialog-to-sizeHint.patch
-------------------------------------------------------------------
Thu Sep 13 21:58:44 UTC 2018 - lbeltrame@kde.org

View File

@ -17,23 +17,21 @@
%define lname libKF5KCMUtils5
%define _tar_path 5.50
%define _tar_path 5.51
# Full KF5 version (e.g. 5.33.0)
%{!?_kf5_version: %global _kf5_version %{version}}
# Last major and minor KF5 version (e.g. 5.33)
%{!?_kf5_bugfix_version: %define _kf5_bugfix_version %(echo %{_kf5_version} | awk -F. '{print $1"."$2}')}
%bcond_without lang
Name: kcmutils
Version: 5.50.0
Version: 5.51.0
Release: 0
Summary: Classes to work with KCModules
License: LGPL-2.1-or-later
Group: System/GUI/KDE
URL: http://www.kde.org
URL: https://www.kde.org
Source: http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%{version}.tar.xz
Source1: baselibs.conf
# PATCH-FIX-UPSTREAM
Patch0: 0001-Manually-resize-KCMUtilDialog-to-sizeHint.patch
BuildRequires: cmake >= 3.0
BuildRequires: extra-cmake-modules >= %{_kf5_bugfix_version}
BuildRequires: fdupes
@ -85,7 +83,6 @@ created with the KConfigWidgets framework. Development files.
%prep
%setup -q
%autopatch -p1
%build
%cmake_kf5 -d build