Wolfgang Bauer 2018-05-02 18:41:49 +00:00 committed by Git OBS Bridge
parent db6414c456
commit 5ec30a52be
5 changed files with 19 additions and 72 deletions

View File

@ -1,62 +0,0 @@
From bfd41a95530f90ee8d44cbcfd1fa8c62978334a2 Mon Sep 17 00:00:00 2001
From: Alex Richardson <Alexander.Richardson@cl.cam.ac.uk>
Date: Sun, 8 Apr 2018 11:06:32 +0100
Subject: KDEPlatformFileDialog: Fix initial directory selection for remote
files
Summary:
Previously KDEPlatformFileDialogHelper::selectFile() would change
options()->initialDirectory() unconditionally even if it was already
set by the QFileDialog code. Since Qt 5.7.1 it is no longer necessary
to derive initialDirectory from the selectFile() call. In fact it is
actuall harmful since it will now override the correct initial directory
that was set by Qt. Without this patch I got the following debug output:
```
KDEPlatformFileDialogHelper::setDirectory QUrl("sftp://server/home/alr48/cheri/build_sdk.sh")
KDEPlatformFileDialogHelper::setDirectory QUrl("sftp://server/home/alr48/cheri/build_sdk.sh")
KDEPlatformFileDialogHelper::selectFile QUrl("file:///home/alex/build_sdk.sh")
KDEPlatformFileDialogHelper::setDirectory QUrl("file:///home/alex/)
```
The final setDirectory() call is actually a call to
`setDirectory(options->initialDirectory())` which was set in `selectFile()`.
We now depend on Qt 5.9 so we can remove this code without a check for
version >= 5.7.1.
BUG: 374913
Test Plan: Remote directory is now opened correctly (tested with Qt 5.10.0)
Reviewers: #plasma, elvisangelaccio
Reviewed By: elvisangelaccio
Subscribers: ngraham, krzyc, anthonyfieroni, elvisangelaccio, graesslin, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D4193
---
src/platformtheme/kdeplatformfiledialoghelper.cpp | 5 -----
1 file changed, 5 deletions(-)
diff --git a/src/platformtheme/kdeplatformfiledialoghelper.cpp b/src/platformtheme/kdeplatformfiledialoghelper.cpp
index 1a2b1b5..d4ea0cd 100644
--- a/src/platformtheme/kdeplatformfiledialoghelper.cpp
+++ b/src/platformtheme/kdeplatformfiledialoghelper.cpp
@@ -409,11 +409,6 @@ QUrl KDEPlatformFileDialogHelper::directory() const
void KDEPlatformFileDialogHelper::selectFile(const QUrl &filename)
{
m_dialog->selectFile(filename);
-
- // Qt 5 at least <= 5.8.0 does not derive the directory from the passed url
- // and set the initialDirectory option accordingly, also not for known schemes
- // like file://, so we have to do it ourselves
- options()->setInitialDirectory(m_dialog->directory());
}
void KDEPlatformFileDialogHelper::setDirectory(const QUrl &directory)
--
cgit v0.11.2

View File

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

View File

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

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Wed May 2 09:24:20 CEST 2018 - fabian@ritter-vogt.de
- Update to 5.12.5
* New bugfix release
* For more details please see:
* https://www.kde.org/announcements/plasma-5.12.5.php
- Changes since 5.12.4:
* KDEPlatformFileDialog: Fix initial directory selection for remote files (kde#374913)
- Remove patches, now upstream:
* Fix-initial-directory-selection-for-remote-files.patch
- Use %license
-------------------------------------------------------------------
Wed Apr 18 08:11:33 UTC 2018 - wbauer@tmo.at

View File

@ -18,7 +18,7 @@
%bcond_without lang
Name: plasma5-integration
Version: 5.12.4
Version: 5.12.5
Release: 0
# Full Plasma 5 version (e.g. 5.8.95)
%{!?_plasma5_bugfix: %global _plasma5_bugfix %{version}}
@ -29,8 +29,6 @@ License: GPL-2.0+
Group: System/GUI/KDE
Url: http://www.kde.org
Source: http://download.kde.org/stable/plasma/%{version}/plasma-integration-%{version}.tar.xz
# PATCH-FIX-UPSTREAM
Patch: Fix-initial-directory-selection-for-remote-files.patch
BuildRequires: extra-cmake-modules >= 5.17.0
BuildRequires: kf5-filesystem
BuildRequires: libQt5Gui-private-headers-devel >= 5.5.0
@ -51,7 +49,6 @@ BuildRequires: cmake(Qt5X11Extras) >= 5.5.0
BuildRequires: libQt5PlatformSupport-private-headers-devel >= 5.5.0
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcursor)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Plasma Integration is a set of plugins responsible for better
@ -76,9 +73,9 @@ KDE Plasma workspace.
Applications do not need to link to this directly.
%lang_package -n plasma5-integration-plugin
%prep
%setup -q -n plasma-integration-%{version}
%patch -p1
%build
%cmake_kf5 -d build
@ -92,8 +89,7 @@ Applications do not need to link to this directly.
%endif
%files plugin
%defattr(-,root,root)
%doc COPYING*
%license COPYING*
%{_kf5_plugindir}/
%{_kf5_sharedir}/kconf_update/