* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/
@ 2017-05-31 20:21 Andreas Sturmlechner
0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2017-05-31 20:21 UTC (permalink / raw
To: gentoo-commits
commit: 5ee12cc942812f6368b3824a6aa2174a17eb338f
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed May 31 19:39:48 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed May 31 20:21:28 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ee12cc9
kde-frameworks/kdeclarative: Fix plasmashell/taskman memleak
See also: https://bugs.kde.org/show_bug.cgi?id=380270
Package-Manager: Portage-2.3.5, Repoman-2.3.1
.../files/kdeclarative-5.34.0-memleak.patch | 73 ++++++++++++++++++++++
.../kdeclarative/kdeclarative-5.34.0-r1.ebuild | 34 ++++++++++
2 files changed, 107 insertions(+)
diff --git a/kde-frameworks/kdeclarative/files/kdeclarative-5.34.0-memleak.patch b/kde-frameworks/kdeclarative/files/kdeclarative-5.34.0-memleak.patch
new file mode 100644
index 00000000000..43fdb8a4bf6
--- /dev/null
+++ b/kde-frameworks/kdeclarative/files/kdeclarative-5.34.0-memleak.patch
@@ -0,0 +1,73 @@
+From 695f24fb522a5ae6fe2530cbd72d3966b234b025 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Wed, 31 May 2017 10:08:25 +0100
+Subject: [PATCH] Don't leak MimeData object
+
+Summary:
+A DeclarativeDropArea creates a new DeclarativeDragDropEvent on every
+enter/move/leave event.
+
+The getter method for the mimeData property creates a new MimeData
+QObject wrapper, which then leaks.
+
+Use of the mimeData object outside of the event shouldn't be expected to
+work, and a quick grep couldn't find any usage.
+
+BUG: 380270
+
+Test Plan: Dragged some things
+
+Reviewers: #plasma, mart, hein
+
+Reviewed By: #plasma, mart, hein
+
+Subscribers: hein, plasma-devel, #frameworks
+
+Tags: #plasma, #frameworks
+
+Differential Revision: https://phabricator.kde.org/D6017
+---
+ src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.cpp | 4 ++--
+ src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.h | 5 ++---
+ 2 files changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.cpp b/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.cpp
+index 5c1b0e3..a75f85f 100644
+--- a/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.cpp
++++ b/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.cpp
+@@ -65,7 +65,7 @@ DeclarativeMimeData* DeclarativeDragDropEvent::mimeData()
+ if (!m_data && m_event) {
+ // TODO This should be using MimeDataWrapper eventually, although this is an API break,
+ // so will need to be done carefully.
+- m_data = new DeclarativeMimeData(m_event->mimeData());
++ m_data.reset(new DeclarativeMimeData(m_event->mimeData()));
+ }
+- return m_data;
++ return m_data.data();
+ }
+diff --git a/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.h b/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.h
+index 3fd846d..b35568a 100644
+--- a/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.h
++++ b/src/qmlcontrols/draganddrop/DeclarativeDragDropEvent.h
+@@ -26,8 +26,7 @@
+
+ #include <QObject>
+ #include "DeclarativeDropArea.h"
+-
+-class DeclarativeMimeData;
++#include "DeclarativeMimeData.h"
+
+ class DeclarativeDragDropEvent : public QObject
+ {
+@@ -115,7 +114,7 @@ private:
+ int m_y;
+ Qt::MouseButtons m_buttons;
+ Qt::KeyboardModifiers m_modifiers;
+- DeclarativeMimeData* m_data;
++ QScopedPointer<DeclarativeMimeData> m_data;
+ QDropEvent* m_event;
+ };
+
+--
+2.13.0
+
diff --git a/kde-frameworks/kdeclarative/kdeclarative-5.34.0-r1.ebuild b/kde-frameworks/kdeclarative/kdeclarative-5.34.0-r1.ebuild
new file mode 100644
index 00000000000..da3138effd9
--- /dev/null
+++ b/kde-frameworks/kdeclarative/kdeclarative-5.34.0-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+KDE_TEST="false"
+inherit kde5
+
+DESCRIPTION="Framework providing integration of QML and KDE work spaces"
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE=""
+
+# drop qtdeclarative subslot operator when QT_MINIMAL >= 5.8.0
+DEPEND="
+ $(add_frameworks_dep kconfig)
+ $(add_frameworks_dep kcoreaddons)
+ $(add_frameworks_dep kglobalaccel)
+ $(add_frameworks_dep ki18n)
+ $(add_frameworks_dep kiconthemes)
+ $(add_frameworks_dep kio)
+ $(add_frameworks_dep kpackage)
+ $(add_frameworks_dep kservice)
+ $(add_frameworks_dep kwidgetsaddons)
+ $(add_frameworks_dep kwindowsystem)
+ $(add_qt_dep qtdeclarative '' '' '5=')
+ $(add_qt_dep qtgui)
+ $(add_qt_dep qtnetwork)
+ $(add_qt_dep qtwidgets)
+ media-libs/libepoxy
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-memleak.patch" )
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/
@ 2019-04-22 10:41 Andreas Sturmlechner
0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2019-04-22 10:41 UTC (permalink / raw
To: gentoo-commits
commit: 251bc4947ad197e05b31fb1e2b2b7f717fbf2497
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 21 20:50:18 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Apr 22 10:41:18 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=251bc494
kde-frameworks/kdeclarative: Fix crashes on window moves etc.
KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=403453
Package-Manager: Portage-2.3.64, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../kdeclarative-5.57.0-fix-plotter-crash.patch | 262 +++++++++++++++++++++
.../kdeclarative/kdeclarative-5.57.0-r1.ebuild | 33 +++
2 files changed, 295 insertions(+)
diff --git a/kde-frameworks/kdeclarative/files/kdeclarative-5.57.0-fix-plotter-crash.patch b/kde-frameworks/kdeclarative/files/kdeclarative-5.57.0-fix-plotter-crash.patch
new file mode 100644
index 00000000000..14165109513
--- /dev/null
+++ b/kde-frameworks/kdeclarative/files/kdeclarative-5.57.0-fix-plotter-crash.patch
@@ -0,0 +1,262 @@
+From 0aab7d23a2ce155c4beb5cf77fcac02c93b183b7 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Thu, 18 Apr 2019 11:15:06 +0100
+Subject: Plotter: Scope GL Program to lifespan of scenegraph node
+
+Summary:
+Currently the QOpenGLProgram was static. This works when you only have
+one OpenGL context that is never invalidated.
+
+Instead we shoul have a new program created for each context. There is
+no benefit of being static when we can use the cached shader loading.
+
+As we need a program per context, we would need to handle windowChanged
+and sceneGraphInvalidated manually. Instead we can scope the program to
+the QSGNode which will be deleted and recreated on the render thread
+automatically by the scene graph backend.
+
+We can also drop ManagedTextureNode and use
+QSGSimpleTextureNode::setOwnsTexture which does the same thing.
+
+BUG: 403453
+
+Test Plan:
+Created a CPU load viewer on my panel
+Dragged it to my desktop
+Previously that didn't render anything
+Now it does
+
+It should fix the crashes that we
+see on window moves and handling sceneGraphInvalidated
+
+Reviewers: #plasma
+
+Subscribers: kde-frameworks-devel
+
+Tags: #frameworks
+
+Differential Revision: https://phabricator.kde.org/D20656
+---
+ src/qmlcontrols/kquickcontrolsaddons/plotter.cpp | 106 ++++++++++++++---------
+ src/qmlcontrols/kquickcontrolsaddons/plotter.h | 11 +--
+ 2 files changed, 68 insertions(+), 49 deletions(-)
+
+diff --git a/src/qmlcontrols/kquickcontrolsaddons/plotter.cpp b/src/qmlcontrols/kquickcontrolsaddons/plotter.cpp
+index 650151d..8495bbd 100644
+--- a/src/qmlcontrols/kquickcontrolsaddons/plotter.cpp
++++ b/src/qmlcontrols/kquickcontrolsaddons/plotter.cpp
+@@ -44,8 +44,6 @@
+
+ #include <QDebug>
+
+-#include <QuickAddons/ManagedTextureNode>
+-
+ #include <math.h>
+
+ //completely arbitrary
+@@ -262,16 +260,58 @@ void PlotTexture::recreate(const QSize &size)
+ m_size = size;
+ }
+
++class PlotSGNode: public QSGSimpleTextureNode
++{
++public:
++ PlotSGNode();
++ void bind() {
++ m_program->bind();
++ }
++ void setMatrix(const QMatrix4x4 &matrix) {
++ m_program->setUniformValue(u_matrix, matrix);
++ }
++ void setColor1(const QColor &color) {
++ m_program->setUniformValue(u_color1, color);
++ }
++ void setColor2(const QColor &color) {
++ m_program->setUniformValue(u_color2, color);
++ }
++ void setYMin(float min) {
++ m_program->setUniformValue(u_yMin, min);
++ }
++ void setYMax(float max) {
++ m_program->setUniformValue(u_yMax, max);
++ }
++ ~PlotSGNode() = default;
++private:
++ QScopedPointer<QOpenGLShaderProgram> m_program;
++ int u_matrix;
++ int u_color1;
++ int u_color2;
++ int u_yMin;
++ int u_yMax;
+
++};
++
++PlotSGNode::PlotSGNode():
++ m_program(new QOpenGLShaderProgram)
++{
++ setOwnsTexture(true);
++ m_program->addCacheableShaderFromSourceCode(QOpenGLShader::Vertex, vs_source);
++ m_program->addCacheableShaderFromSourceCode(QOpenGLShader::Fragment, fs_source);
++ m_program->bindAttributeLocation("vertex", 0);
++ m_program->link();
++
++ u_yMin = m_program->uniformLocation("yMin");
++ u_yMax = m_program->uniformLocation("yMax");
++ u_color1 = m_program->uniformLocation("color1");
++ u_color2 = m_program->uniformLocation("color2");
++ u_matrix = m_program->uniformLocation("matrix");
++}
+
+-// ----------------------
+
+-QOpenGLShaderProgram *Plotter::s_program = nullptr;
+-int Plotter::u_matrix;
+-int Plotter::u_color1;
+-int Plotter::u_color2;
+-int Plotter::u_yMin;
+-int Plotter::u_yMax;
++
++// ----------------------
+
+ Plotter::Plotter(QQuickItem *parent)
+ : QQuickItem(parent),
+@@ -652,18 +692,18 @@ void Plotter::render()
+ glEnableVertexAttribArray(0);
+
+ // Bind the shader program
+- s_program->bind();
+- s_program->setUniformValue(u_matrix, m_matrix);
++ m_node->bind();
++ m_node->setMatrix(m_matrix);
+
+ // Draw the lines
+ QColor color1 = m_gridColor;
+ QColor color2 = m_gridColor;
+ color1.setAlphaF(0.10);
+ color2.setAlphaF(0.40);
+- s_program->setUniformValue(u_yMin, (float) 0.0);
+- s_program->setUniformValue(u_yMax, (float) height());
+- s_program->setUniformValue(u_color1, color1);
+- s_program->setUniformValue(u_color2, color2);
++ m_node->setYMin((float) 0.0);
++ m_node->setYMax((float) height());
++ m_node->setColor1(color1);
++ m_node->setColor2(color2);
+
+ glDrawArrays(GL_LINES, 0, (m_horizontalLineCount+1) * 2 );
+
+@@ -677,18 +717,18 @@ void Plotter::render()
+ color2 = data->color();
+ color2.setAlphaF(0.60);
+ // Draw the graph
+- s_program->setUniformValue(u_yMin, min);
+- s_program->setUniformValue(u_yMax, max);
+- s_program->setUniformValue(u_color1, data->color());
+- s_program->setUniformValue(u_color2, color2);
++ m_node->setYMin(min);
++ m_node->setYMax(max);
++ m_node->setColor1(data->color());
++ m_node->setColor2(color2);
+
+ //+2 is for the bottom line
+ glDrawArrays(GL_TRIANGLE_STRIP, m_horizontalLineCount*2 + 2 + oldCount.first + oldCount.second, verticesCounts[data].first);
+
+ oldCount.first += verticesCounts[data].first;
+
+- s_program->setUniformValue(u_color1, data->color());
+- s_program->setUniformValue(u_color2, data->color());
++ m_node->setColor1(data->color());
++ m_node->setColor2(data->color());
+ glDrawArrays(GL_LINE_STRIP, m_horizontalLineCount*2 + 2 + oldCount.first + oldCount.second, verticesCounts[data].second);
+
+ oldCount.second += verticesCounts[data].second;
+@@ -697,8 +737,8 @@ void Plotter::render()
+
+ glDisable(GL_BLEND);
+
+- s_program->setUniformValue(u_color1, m_gridColor);
+- s_program->setUniformValue(u_color2, m_gridColor);
++ m_node->setColor1(m_gridColor);
++ m_node->setColor2(m_gridColor);
+ glDrawArrays(GL_LINES, vertices.count()-2, 2);
+
+ if (m_haveMSAA && m_haveFramebufferBlit) {
+@@ -723,7 +763,7 @@ QSGNode *Plotter::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *updateP
+ return nullptr;
+ }
+
+- ManagedTextureNode *n = static_cast<ManagedTextureNode *>(oldNode);
++ PlotSGNode *n = static_cast<PlotSGNode *>(oldNode);
+
+ if (width() == 0 && height() == 0) {
+ delete oldNode;
+@@ -731,8 +771,8 @@ QSGNode *Plotter::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *updateP
+ }
+
+ if (!n) {
+- n = new ManagedTextureNode();
+- n->setTexture(QSharedPointer<QSGTexture>(new PlotTexture(window()->openglContext())));
++ n = new PlotSGNode();
++ n->setTexture(new PlotTexture(window()->openglContext()));
+ n->setFiltering(QSGTexture::Linear);
+
+ m_node = n;
+@@ -786,20 +826,6 @@ QSGNode *Plotter::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *updateP
+ m_initialized = true;
+ }
+
+- if (!s_program) {
+- s_program = new QOpenGLShaderProgram;
+- s_program->addShaderFromSourceCode(QOpenGLShader::Vertex, vs_source);
+- s_program->addShaderFromSourceCode(QOpenGLShader::Fragment, fs_source);
+- s_program->bindAttributeLocation("vertex", 0);
+- s_program->link();
+-
+- u_yMin = s_program->uniformLocation("yMin");
+- u_yMax = s_program->uniformLocation("yMax");
+- u_color1 = s_program->uniformLocation("color1");
+- u_color2 = s_program->uniformLocation("color2");
+- u_matrix = s_program->uniformLocation("matrix");
+- }
+-
+ //we need a size always equal or smaller, size.toSize() won't do
+ const QSize targetTextureSize(qRound(boundingRect().size().width()), qRound(boundingRect().size().height()));
+ if (n->texture()->textureSize() != targetTextureSize) {
+diff --git a/src/qmlcontrols/kquickcontrolsaddons/plotter.h b/src/qmlcontrols/kquickcontrolsaddons/plotter.h
+index 01c0ef2..11ae233 100644
+--- a/src/qmlcontrols/kquickcontrolsaddons/plotter.h
++++ b/src/qmlcontrols/kquickcontrolsaddons/plotter.h
+@@ -47,7 +47,7 @@
+ #include <QQuickWindow>
+ #include <QMutex>
+
+-class ManagedTextureNode;
++class PlotSGNode;
+
+ /**
+ * a Plotter can draw a graph of values arriving from an arbitrary number of data sources
+@@ -242,7 +242,7 @@ private:
+ QList<PlotData *> m_plotData;
+
+ GLuint m_fbo = 0;
+- ManagedTextureNode *m_node = nullptr;
++ PlotSGNode *m_node = nullptr;
+ qreal m_min;
+ qreal m_max;
+ qreal m_rangeMax;
+@@ -262,13 +262,6 @@ private:
+ int m_samples;
+ QPointer <QQuickWindow> m_window;
+ QMutex m_mutex;
+-
+- static QOpenGLShaderProgram *s_program;
+- static int u_matrix;
+- static int u_color1;
+- static int u_color2;
+- static int u_yMin;
+- static int u_yMax;
+ };
+
+ #endif
+--
+cgit v1.1
diff --git a/kde-frameworks/kdeclarative/kdeclarative-5.57.0-r1.ebuild b/kde-frameworks/kdeclarative/kdeclarative-5.57.0-r1.ebuild
new file mode 100644
index 00000000000..823e38edc29
--- /dev/null
+++ b/kde-frameworks/kdeclarative/kdeclarative-5.57.0-r1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+KDE_TEST="false"
+inherit kde5
+
+DESCRIPTION="Framework providing integration of QML and KDE work spaces"
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE=""
+
+DEPEND="
+ $(add_frameworks_dep kconfig)
+ $(add_frameworks_dep kcoreaddons)
+ $(add_frameworks_dep kglobalaccel)
+ $(add_frameworks_dep ki18n)
+ $(add_frameworks_dep kiconthemes)
+ $(add_frameworks_dep kio)
+ $(add_frameworks_dep kpackage)
+ $(add_frameworks_dep kservice)
+ $(add_frameworks_dep kwidgetsaddons)
+ $(add_frameworks_dep kwindowsystem)
+ $(add_qt_dep qtdeclarative)
+ $(add_qt_dep qtgui)
+ $(add_qt_dep qtnetwork)
+ $(add_qt_dep qtwidgets)
+ media-libs/libepoxy
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-fix-plotter-crash.patch" )
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/
@ 2020-09-29 12:49 Andreas Sturmlechner
0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2020-09-29 12:49 UTC (permalink / raw
To: gentoo-commits
commit: 9277805e61e6c5580c31cad8d2cfc7de686ce692
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 28 22:04:46 2020 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Sep 29 12:45:27 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9277805e
kde-frameworks/kdeclarative: Fix assign Alt-based keyboard shortcuts
...which also trigger buttons in the KCM.
Upstream commit 88aabf069a0e454777c15227126732a04c8cb8b2
KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=425979
Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
...ck-shortcuts-when-recording-key-sequences.patch | 104 +++++++++++++++++++++
.../kdeclarative/kdeclarative-5.74.0-r1.ebuild | 39 ++++++++
2 files changed, 143 insertions(+)
diff --git a/kde-frameworks/kdeclarative/files/kdeclarative-5.74.0-block-shortcuts-when-recording-key-sequences.patch b/kde-frameworks/kdeclarative/files/kdeclarative-5.74.0-block-shortcuts-when-recording-key-sequences.patch
new file mode 100644
index 00000000000..66808f910bf
--- /dev/null
+++ b/kde-frameworks/kdeclarative/files/kdeclarative-5.74.0-block-shortcuts-when-recording-key-sequences.patch
@@ -0,0 +1,104 @@
+From 88aabf069a0e454777c15227126732a04c8cb8b2 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Fri, 18 Sep 2020 00:13:07 +0100
+Subject: [PATCH] Block shortcuts when recording key sequences
+
+Otherwise you can't select alt+a as a shortcut without triggering the
+nmenomic generated shortcut on the "add application" button.
+
+Testing done:
+- clicked "Add custom shortcut", pressed alt+a, it was recorded
+successfully
+
+- focussed "Add custom shortcut", pressed alt+a, the relevant shortcut
+activated
+
+Note that isRecording was already declared, but not defined, which is
+why it looks like my diff misses something.
+
+BUG: 425979
+---
+ src/qmlcontrols/kquickcontrols/KeySequenceItem.qml | 7 +++++++
+ .../kquickcontrols/private/keysequencehelper.cpp | 8 +++++++-
+ .../kquickcontrols/private/keysequencehelper.h | 7 +++++++
+ 3 files changed, 21 insertions(+), 1 deletion(-)
+
+diff --git a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
+index 9d8e035..d1fbc02 100644
+--- a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
++++ b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
+@@ -83,6 +83,13 @@ RowLayout {
+ }
+ }
+
++ Keys.onShortcutOverride: {
++ if (_helper.isRecording) {
++ _helper.keyPressed(event.key, event.modifiers);
++ event.accepted = true;
++ }
++ }
++
+ Keys.onPressed: {
+ _helper.keyPressed(event.key, event.modifiers);
+ event.accepted = true;
+diff --git a/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp b/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp
+index ba7ce01..26b0331 100644
+--- a/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp
++++ b/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp
+@@ -237,7 +237,10 @@ void KeySequenceHelper::setCheckAgainstShortcutTypes(KeySequenceHelper::Shortcut
+ Q_EMIT checkAgainstShortcutTypesChanged();
+ }
+
+-
++bool KeySequenceHelper::isRecording() const
++{
++ return d->isRecording;
++}
+
+ void KeySequenceHelper::clearKeySequence()
+ {
+@@ -251,6 +254,7 @@ void KeySequenceHelperPrivate::startRecording()
+ oldKeySequence = keySequence;
+ keySequence = QKeySequence();
+ isRecording = true;
++ emit q->isRecordingChanged();
+ grabbedWindow = QQuickRenderControl::renderWindowFor(q->window());
+ if (!grabbedWindow) {
+ grabbedWindow = q->window();
+@@ -265,6 +269,8 @@ void KeySequenceHelper::doneRecording()
+ {
+ d->modifierlessTimeout.stop();
+ d->isRecording = false;
++ emit isRecordingChanged();
++
+ d->stealActions.clear();
+ if (d->grabbedWindow) {
+ d->grabbedWindow->setKeyboardGrabEnabled(false);
+diff --git a/src/qmlcontrols/kquickcontrols/private/keysequencehelper.h b/src/qmlcontrols/kquickcontrols/private/keysequencehelper.h
+index c9068e8..daeedc5 100644
+--- a/src/qmlcontrols/kquickcontrols/private/keysequencehelper.h
++++ b/src/qmlcontrols/kquickcontrols/private/keysequencehelper.h
+@@ -51,6 +51,12 @@ class KeySequenceHelper : public QQuickItem
+ NOTIFY checkAgainstShortcutTypesChanged
+ )
+
++ Q_PROPERTY(
++ bool isRecording
++ READ isRecording
++ NOTIFY isRecordingChanged
++ )
++
+ public:
+
+ enum ShortcutType {
+@@ -116,6 +122,7 @@ Q_SIGNALS:
+ void shortcutDisplayChanged(const QString &string);
+ void captureFinished();
+ void checkAgainstShortcutTypesChanged();
++ void isRecordingChanged();
+
+ public Q_SLOTS:
+ void captureKeySequence();
+--
+GitLab
+
diff --git a/kde-frameworks/kdeclarative/kdeclarative-5.74.0-r1.ebuild b/kde-frameworks/kdeclarative/kdeclarative-5.74.0-r1.ebuild
new file mode 100644
index 00000000000..6e28a831ed9
--- /dev/null
+++ b/kde-frameworks/kdeclarative/kdeclarative-5.74.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.14.2
+inherit ecm kde.org
+
+DESCRIPTION="Framework providing integration of QML and KDE work spaces"
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE=""
+
+# drop qtgui subslot operator when QT_MINIMAL >= 5.15.0
+DEPEND="
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5=
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ =kde-frameworks/kconfig-${PVCUT}*:5
+ =kde-frameworks/kcoreaddons-${PVCUT}*:5
+ =kde-frameworks/kglobalaccel-${PVCUT}*:5
+ =kde-frameworks/ki18n-${PVCUT}*:5
+ =kde-frameworks/kiconthemes-${PVCUT}*:5
+ =kde-frameworks/kio-${PVCUT}*:5
+ =kde-frameworks/knotifications-${PVCUT}*:5
+ =kde-frameworks/kpackage-${PVCUT}*:5
+ =kde-frameworks/kservice-${PVCUT}*:5
+ =kde-frameworks/kwidgetsaddons-${PVCUT}*:5
+ =kde-frameworks/kwindowsystem-${PVCUT}*:5
+ media-libs/libepoxy
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-block-shortcuts-when-recording-key-sequences.patch
+)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/
@ 2021-11-27 11:08 Andreas Sturmlechner
0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2021-11-27 11:08 UTC (permalink / raw
To: gentoo-commits
commit: c82423d5bf28e87d5a53389b589f49d0cb431e21
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 27 09:50:16 2021 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 27 11:07:50 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c82423d5
kde-frameworks/kdeclarative: Fix broken KeyEvent emitting
Upstream commit 2caa62d11f322ca5c9829b6bc91839e8afd42686
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=445277
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
...-KeySequenceItem-record-on-correct-window.patch | 36 ++++++++++++++++++++
.../kdeclarative/kdeclarative-5.88.0-r1.ebuild | 39 ++++++++++++++++++++++
2 files changed, 75 insertions(+)
diff --git a/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch b/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch
new file mode 100644
index 000000000000..bf4d6fc5dddb
--- /dev/null
+++ b/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch
@@ -0,0 +1,36 @@
+From 2caa62d11f322ca5c9829b6bc91839e8afd42686 Mon Sep 17 00:00:00 2001
+From: David Redondo <kde@david-redondo.de>
+Date: Mon, 22 Nov 2021 14:22:14 +0100
+Subject: [PATCH] KeySequenceItem: Make sure we record on the correct window
+
+Unfortunately renderWindowFor is just a simple function call and
+so the binding is not updated when it would change. Now we make sure
+to update the window before each recording.
+BUG:445277
+---
+ src/qmlcontrols/kquickcontrols/KeySequenceItem.qml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
+index 7b404bd..a41bf18 100644
+--- a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
++++ b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
+@@ -42,7 +42,6 @@ RowLayout {
+
+ KQuickControlsPrivate.KeySequenceHelper {
+ id: _helper
+- window: renderWindow(parent.Window.window)
+ onGotKeySequence: {
+ if (isKeySequenceAvailable(keySequence)) {
+ root.keySequence = keySequence
+@@ -95,6 +94,7 @@ RowLayout {
+
+ onCheckedChanged: {
+ if (checked) {
++ _helper.window = _helper.renderWindow(parent.Window.window)
+ mainButton.forceActiveFocus()
+ _helper.startRecording()
+ }
+--
+GitLab
+
diff --git a/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild b/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild
new file mode 100644
index 000000000000..e3888c95d29e
--- /dev/null
+++ b/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_TEST="false"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.15.2
+inherit ecm kde.org
+
+DESCRIPTION="Framework providing integration of QML and KDE work spaces"
+
+LICENSE="LGPL-2+"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE=""
+
+DEPEND="
+ >=dev-qt/qtdeclarative-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ =kde-frameworks/kconfig-${PVCUT}*:5
+ =kde-frameworks/kcoreaddons-${PVCUT}*:5
+ =kde-frameworks/kglobalaccel-${PVCUT}*:5
+ =kde-frameworks/ki18n-${PVCUT}*:5
+ =kde-frameworks/kiconthemes-${PVCUT}*:5
+ =kde-frameworks/kio-${PVCUT}*:5
+ =kde-frameworks/knotifications-${PVCUT}*:5
+ =kde-frameworks/kpackage-${PVCUT}*:5
+ =kde-frameworks/kservice-${PVCUT}*:5
+ =kde-frameworks/kwidgetsaddons-${PVCUT}*:5
+ =kde-frameworks/kwindowsystem-${PVCUT}*:5
+ media-libs/libepoxy
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-KeySequenceItem-record-on-correct-window.patch" # KDE-bug 445277
+)
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/
@ 2022-02-10 9:13 Andreas Sturmlechner
0 siblings, 0 replies; 5+ messages in thread
From: Andreas Sturmlechner @ 2022-02-10 9:13 UTC (permalink / raw
To: gentoo-commits
commit: b4dbafca90db40d5572b7aecfa460aed5a60ed59
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 10 08:20:39 2022 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Feb 10 09:10:54 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4dbafca
kde-frameworks/kdeclarative: drop 5.88.0*
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
kde-frameworks/kdeclarative/Manifest | 1 -
...-KeySequenceItem-record-on-correct-window.patch | 36 --------------------
.../kdeclarative/kdeclarative-5.88.0-r1.ebuild | 39 ----------------------
3 files changed, 76 deletions(-)
diff --git a/kde-frameworks/kdeclarative/Manifest b/kde-frameworks/kdeclarative/Manifest
index 9b2f8846ecb6..028560a85955 100644
--- a/kde-frameworks/kdeclarative/Manifest
+++ b/kde-frameworks/kdeclarative/Manifest
@@ -1,2 +1 @@
-DIST kdeclarative-5.88.0.tar.xz 191048 BLAKE2B 113ed6a1ff297251cec4baf143352d3b8cb1d80cd0aca45ad21ec4d1583a5a9603897c9edfda99fe0bfc3c5c09a78c609c563602accb2e2fe7b76c3b1e7e0d1e SHA512 f72221bd6bd5fa739994482607161ea2ed7e659c18c4c9f3a161a765925c10a18cf7b5737a0489e589de13201c624d5a597e248eddaa77e1006b22ef8f19efb2
DIST kdeclarative-5.90.0.tar.xz 199308 BLAKE2B 6cc7cbe7ab1b70fe238c32ba61f7187c251ffe04129a3681c2c441584fc8b3ee8d6026465c918a1477897f20e748f8451823e7551b905e1769cbffbfd11c80a7 SHA512 6e2dc0c19f16915b35f0c0bd1526b986987fbd450ad75666c1b5c94e2f30efbef857ffff424f3026a3da3762209dbb166d48a8146540b0d625d2203d4dda0679
diff --git a/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch b/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch
deleted file mode 100644
index bf4d6fc5dddb..000000000000
--- a/kde-frameworks/kdeclarative/files/kdeclarative-5.88.0-KeySequenceItem-record-on-correct-window.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 2caa62d11f322ca5c9829b6bc91839e8afd42686 Mon Sep 17 00:00:00 2001
-From: David Redondo <kde@david-redondo.de>
-Date: Mon, 22 Nov 2021 14:22:14 +0100
-Subject: [PATCH] KeySequenceItem: Make sure we record on the correct window
-
-Unfortunately renderWindowFor is just a simple function call and
-so the binding is not updated when it would change. Now we make sure
-to update the window before each recording.
-BUG:445277
----
- src/qmlcontrols/kquickcontrols/KeySequenceItem.qml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
-index 7b404bd..a41bf18 100644
---- a/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
-+++ b/src/qmlcontrols/kquickcontrols/KeySequenceItem.qml
-@@ -42,7 +42,6 @@ RowLayout {
-
- KQuickControlsPrivate.KeySequenceHelper {
- id: _helper
-- window: renderWindow(parent.Window.window)
- onGotKeySequence: {
- if (isKeySequenceAvailable(keySequence)) {
- root.keySequence = keySequence
-@@ -95,6 +94,7 @@ RowLayout {
-
- onCheckedChanged: {
- if (checked) {
-+ _helper.window = _helper.renderWindow(parent.Window.window)
- mainButton.forceActiveFocus()
- _helper.startRecording()
- }
---
-GitLab
-
diff --git a/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild b/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild
deleted file mode 100644
index 49aae073b5e3..000000000000
--- a/kde-frameworks/kdeclarative/kdeclarative-5.88.0-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_TEST="false"
-PVCUT=$(ver_cut 1-2)
-QTMIN=5.15.2
-inherit ecm kde.org
-
-DESCRIPTION="Framework providing integration of QML and KDE work spaces"
-
-LICENSE="LGPL-2+"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
-IUSE=""
-
-DEPEND="
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtnetwork-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- =kde-frameworks/kconfig-${PVCUT}*:5
- =kde-frameworks/kcoreaddons-${PVCUT}*:5
- =kde-frameworks/kglobalaccel-${PVCUT}*:5
- =kde-frameworks/ki18n-${PVCUT}*:5
- =kde-frameworks/kiconthemes-${PVCUT}*:5
- =kde-frameworks/kio-${PVCUT}*:5
- =kde-frameworks/knotifications-${PVCUT}*:5
- =kde-frameworks/kpackage-${PVCUT}*:5
- =kde-frameworks/kservice-${PVCUT}*:5
- =kde-frameworks/kwidgetsaddons-${PVCUT}*:5
- =kde-frameworks/kwindowsystem-${PVCUT}*:5
- media-libs/libepoxy
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=(
- "${FILESDIR}/${P}-KeySequenceItem-record-on-correct-window.patch" # KDE-bug 445277
-)
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-02-10 9:13 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-27 11:08 [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kdeclarative/files/, kde-frameworks/kdeclarative/ Andreas Sturmlechner
-- strict thread matches above, loose matches on Subject: below --
2022-02-10 9:13 Andreas Sturmlechner
2020-09-29 12:49 Andreas Sturmlechner
2019-04-22 10:41 Andreas Sturmlechner
2017-05-31 20:21 Andreas Sturmlechner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox