commit: 2f661486a6cbd40050d651f9e76cb66709bed663 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> AuthorDate: Thu Jan 31 23:07:10 2019 +0000 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org> CommitDate: Fri Feb 1 20:14:20 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f661486
app-office/libreoffice: Set KFileWidget's custom widget only once Package-Manager: Portage-2.3.59, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org> ...-set-kfilewidgets-custom-widget-only-once.patch | 42 ++++++++++++++++++++++ app-office/libreoffice/libreoffice-6.1.5.2.ebuild | 1 + 2 files changed, 43 insertions(+) diff --git a/app-office/libreoffice/files/libreoffice-6.1.5.2-gtk3_kde5-set-kfilewidgets-custom-widget-only-once.patch b/app-office/libreoffice/files/libreoffice-6.1.5.2-gtk3_kde5-set-kfilewidgets-custom-widget-only-once.patch new file mode 100644 index 00000000000..69134a8b992 --- /dev/null +++ b/app-office/libreoffice/files/libreoffice-6.1.5.2-gtk3_kde5-set-kfilewidgets-custom-widget-only-once.patch @@ -0,0 +1,42 @@ +From 7b54f3db98e96231fc9f16429f325cdb1f37498c Mon Sep 17 00:00:00 2001 +From: Michael Weghorn <m.wegh...@posteo.de> +Date: Thu, 31 Jan 2019 09:52:51 +0100 +Subject: tdf#123077 gtk3_kde5: Set KFileWidget's custom widget only once + +Since the event filter is only used to set the custom +widget in the KFileWidget, it can and needs to be removed +again once this has been done; which also avoids crashes. + +(s. https://gerrit.libreoffice.org/#/c/67185/ for more +infos, where the same thing is done for kde5) + +Change-Id: I5c719fb17510916b4730ed5c00bb638df2f183e3 +Reviewed-on: https://gerrit.libreoffice.org/67184 +Tested-by: Jenkins +Reviewed-by: Michael Weghorn <m.wegh...@posteo.de> +(cherry picked from commit 30cc54a4532a732a0cf6dfe9943521978ff7292f) +Reviewed-on: https://gerrit.libreoffice.org/67203 +Reviewed-by: Katarina Behrens <katarina.behr...@cib.de> +--- + vcl/unx/gtk3_kde5/kde5_filepicker.cxx | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx +index 33f64ad0..9914869 100644 +--- a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx ++++ b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx +@@ -265,7 +265,11 @@ bool KDE5FilePicker::eventFilter(QObject* o, QEvent* e) + { + KWindowSystem::setMainWindow(w, _winId); + if (auto* fileWidget = w->findChild<KFileWidget*>({}, Qt::FindDirectChildrenOnly)) ++ { + fileWidget->setCustomWidget(_extraControls); ++ // remove event filter again; the only purpose was to set the custom widget here ++ qApp->removeEventFilter(this); ++ } + } + } + return QObject::eventFilter(o, e); +-- +cgit v1.1 + diff --git a/app-office/libreoffice/libreoffice-6.1.5.2.ebuild b/app-office/libreoffice/libreoffice-6.1.5.2.ebuild index e59e17836c2..3524ee2f86e 100644 --- a/app-office/libreoffice/libreoffice-6.1.5.2.ebuild +++ b/app-office/libreoffice/libreoffice-6.1.5.2.ebuild @@ -252,6 +252,7 @@ PATCHES=( # master branch "${FILESDIR}/${P}-gtk3_kde5-non-native-fpicker-for-non-plasma.patch" + "${FILESDIR}/${P}-gtk3_kde5-set-kfilewidgets-custom-widget-only-once.patch" ) S="${WORKDIR}/${PN}-${MY_PV}"