This commit is contained in:
parent
3e668167e4
commit
bb10ac1f5e
@ -0,0 +1,54 @@
|
||||
From 76cb47f1279ea012a9eda11c4ead7f28db4c1399 Mon Sep 17 00:00:00 2001
|
||||
From: Anthony Fieroni <bvbfan@abv.bg>
|
||||
Date: Tue, 1 Dec 2015 09:27:15 +0000
|
||||
Subject: [PATCH 1/9] Forward mouse enter and leave events on feathered edges
|
||||
|
||||
REVIEW: 126175
|
||||
BUG: 354651
|
||||
---
|
||||
shell/panelview.cpp | 22 ++++++++++++++++++++--
|
||||
1 file changed, 20 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/shell/panelview.cpp b/shell/panelview.cpp
|
||||
index 34075013b22995d81c98d933db596dff520bd812..28faac44350ccc0ab6a4246045795ba99c7a6ea8 100644
|
||||
--- a/shell/panelview.cpp
|
||||
+++ b/shell/panelview.cpp
|
||||
@@ -748,6 +748,7 @@ bool PanelView::event(QEvent *e)
|
||||
* on the mouse edge, forward the click in the containment boundaries
|
||||
*/
|
||||
switch (e->type()) {
|
||||
+ case QEvent::Enter:
|
||||
case QEvent::MouseMove:
|
||||
case QEvent::MouseButtonPress:
|
||||
case QEvent::MouseButtonRelease: {
|
||||
@@ -755,8 +756,25 @@ bool PanelView::event(QEvent *e)
|
||||
|
||||
//first, don't mess with position if the cursor is actually outside the view:
|
||||
//somebody is doing a click and drag that must not break when the cursor i outside
|
||||
- if (geometry().contains(me->screenPos().toPoint()) && !containmentContainsPosition(me->windowPos())) {
|
||||
- auto me2 = new QMouseEvent(me->type(),
|
||||
+ if (geometry().contains(me->screenPos().toPoint())) {
|
||||
+ if (!containmentContainsPosition(me->windowPos())) {
|
||||
+ auto me2 = new QMouseEvent(me->type(),
|
||||
+ positionAdjustedForContainment(me->windowPos()),
|
||||
+ positionAdjustedForContainment(me->windowPos()),
|
||||
+ positionAdjustedForContainment(me->windowPos()) + position(),
|
||||
+ me->button(), me->buttons(), me->modifiers());
|
||||
+
|
||||
+ QCoreApplication::postEvent(this, me2);
|
||||
+ return true;
|
||||
+ }
|
||||
+ }
|
||||
+ break;
|
||||
+ }
|
||||
+ case QEvent::Leave: {
|
||||
+ QMouseEvent *me = static_cast<QMouseEvent *>(e);
|
||||
+ // don't forget to trigger QEvent::Leave if current mouse position is outside the panel
|
||||
+ if (!geometry().contains(me->screenPos().toPoint())) {
|
||||
+ auto me2 = new QMouseEvent(QEvent::Leave,
|
||||
positionAdjustedForContainment(me->windowPos()),
|
||||
positionAdjustedForContainment(me->windowPos()),
|
||||
positionAdjustedForContainment(me->windowPos()) + position(),
|
||||
--
|
||||
2.6.2
|
||||
|
@ -0,0 +1,34 @@
|
||||
From 2b59ccd531dcdb7d86577cee1d987f95a9db9bf0 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Klapetek <mklapetek@kde.org>
|
||||
Date: Wed, 9 Dec 2015 13:29:24 -0500
|
||||
Subject: [PATCH 1/4] [notifications] Check if the popup is visible before
|
||||
updating its geometry
|
||||
|
||||
This slot gets triggered also on popup hiding, which is unwanted.
|
||||
Should also prevent a crash when unloading notifications applet while
|
||||
there is an active popup on screen.
|
||||
|
||||
BUG: 356402
|
||||
FIXED-IN: 5.5.1
|
||||
---
|
||||
applets/notifications/plugin/notificationshelper.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/applets/notifications/plugin/notificationshelper.cpp b/applets/notifications/plugin/notificationshelper.cpp
|
||||
index ab002d952a358c616bb2ffefc7207da2057062a0..208dcc5de9027fea4dd02c70e597789015084bb9 100644
|
||||
--- a/applets/notifications/plugin/notificationshelper.cpp
|
||||
+++ b/applets/notifications/plugin/notificationshelper.cpp
|
||||
@@ -130,8 +130,8 @@ void NotificationsHelper::addNotificationPopup(QObject *win)
|
||||
|
||||
void NotificationsHelper::onPopupShown()
|
||||
{
|
||||
- QObject *popup = sender();
|
||||
- if (!popup) {
|
||||
+ QWindow *popup = qobject_cast<QWindow*>(sender());
|
||||
+ if (!popup || !popup->isVisible()) {
|
||||
return;
|
||||
}
|
||||
|
||||
--
|
||||
2.6.2
|
||||
|
@ -0,0 +1,62 @@
|
||||
From 5c5bbc3f8c4297cfd6862072aa33a45d947fa41b Mon Sep 17 00:00:00 2001
|
||||
From: Martin Klapetek <mklapetek@kde.org>
|
||||
Date: Wed, 9 Dec 2015 14:07:07 -0500
|
||||
Subject: [PATCH 2/4] [notifications] Move reading globalConfig() from ctor to
|
||||
init()
|
||||
|
||||
The globalConfig() in ctor returns a non-(yet-)existing KConfigGroup
|
||||
which makes it always return the default value. So the config access
|
||||
must be delayed for init().
|
||||
|
||||
Custom notification position is now correctly remembered.
|
||||
|
||||
BUG: 356419
|
||||
FIXED-IN: 5.5.1
|
||||
---
|
||||
applets/notifications/lib/notificationsapplet.cpp | 10 +++++++---
|
||||
applets/notifications/lib/notificationsapplet.h | 1 +
|
||||
2 files changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/applets/notifications/lib/notificationsapplet.cpp b/applets/notifications/lib/notificationsapplet.cpp
|
||||
index fdfb6578f9abeca6067db45fea9f4ec6f5857eec..33184c4fdd9d091f2ba39f354c7c9d2a66b2b48b 100644
|
||||
--- a/applets/notifications/lib/notificationsapplet.cpp
|
||||
+++ b/applets/notifications/lib/notificationsapplet.cpp
|
||||
@@ -28,16 +28,20 @@
|
||||
NotificationsApplet::NotificationsApplet(QObject *parent, const QVariantList &data)
|
||||
: Plasma::Applet(parent, data)
|
||||
{
|
||||
- KConfigGroup globalGroup = globalConfig();
|
||||
- m_popupPosition = (NotificationsHelper::PositionOnScreen)globalGroup.readEntry("popupPosition", 0); //0 is default
|
||||
-
|
||||
connect(this, &Plasma::Applet::locationChanged,
|
||||
this, &NotificationsApplet::onAppletLocationChanged);
|
||||
}
|
||||
|
||||
NotificationsApplet::~NotificationsApplet()
|
||||
{
|
||||
+}
|
||||
+
|
||||
+void NotificationsApplet::init()
|
||||
+{
|
||||
+ KConfigGroup globalGroup = globalConfig();
|
||||
+ m_popupPosition = (NotificationsHelper::PositionOnScreen)globalGroup.readEntry("popupPosition", 0); //0 is default
|
||||
|
||||
+ Plasma::Applet::init();
|
||||
}
|
||||
|
||||
void NotificationsApplet::onAppletLocationChanged(Plasma::Types::Location location)
|
||||
diff --git a/applets/notifications/lib/notificationsapplet.h b/applets/notifications/lib/notificationsapplet.h
|
||||
index bad3071a29d3a341f4b16609398443e7a9925bf9..5b262f1b4d33119b1f8032fbd26cc5dfb2ebeb36 100644
|
||||
--- a/applets/notifications/lib/notificationsapplet.h
|
||||
+++ b/applets/notifications/lib/notificationsapplet.h
|
||||
@@ -38,6 +38,7 @@ public:
|
||||
Q_INVOKABLE uint screenPosition() const;
|
||||
|
||||
public Q_SLOTS:
|
||||
+ void init() Q_DECL_OVERRIDE;
|
||||
void onScreenPositionChanged(uint position);
|
||||
void onAppletLocationChanged(Plasma::Types::Location location);
|
||||
|
||||
--
|
||||
2.6.2
|
||||
|
@ -0,0 +1,32 @@
|
||||
From 6381dbd9b7a0f33dd024a98ef18a5143ba929b0e Mon Sep 17 00:00:00 2001
|
||||
From: Imran Tatriev <itatriev@gmail.com>
|
||||
Date: Thu, 10 Dec 2015 15:35:35 +0000
|
||||
Subject: [PATCH 3/4] Make "comment" section of the timezones configuration
|
||||
searchable
|
||||
|
||||
BUG: 354238
|
||||
REVIEW: 126302
|
||||
FIXED-IN: 5.5.1
|
||||
---
|
||||
applets/digital-clock/plugin/timezonemodel.cpp | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/applets/digital-clock/plugin/timezonemodel.cpp b/applets/digital-clock/plugin/timezonemodel.cpp
|
||||
index 5d2350505e286280dd59dd7964ea1819026150e4..2fe7b16275f623908cfcfb3bffbb9185dd55011e 100644
|
||||
--- a/applets/digital-clock/plugin/timezonemodel.cpp
|
||||
+++ b/applets/digital-clock/plugin/timezonemodel.cpp
|
||||
@@ -40,8 +40,10 @@ bool TimeZoneFilterProxy::filterAcceptsRow(int source_row, const QModelIndex &so
|
||||
|
||||
const QString city = sourceModel()->index(source_row, 0, source_parent).data(TimeZoneModel::CityRole).toString();
|
||||
const QString region = sourceModel()->index(source_row, 0, source_parent).data(TimeZoneModel::RegionRole).toString();
|
||||
+ const QString comment = sourceModel()->index(source_row, 0, source_parent).data(TimeZoneModel::CommentRole).toString();
|
||||
|
||||
- if (m_stringMatcher.indexIn(city) != -1 || m_stringMatcher.indexIn(region) != -1) {
|
||||
+ if (m_stringMatcher.indexIn(city) != -1 || m_stringMatcher.indexIn(region) != -1 ||
|
||||
+ m_stringMatcher.indexIn(comment) != -1) {
|
||||
return true;
|
||||
}
|
||||
|
||||
--
|
||||
2.6.2
|
||||
|
@ -0,0 +1,42 @@
|
||||
From 5d56df0d53851a8cd61344d356bcb552220dd3ed Mon Sep 17 00:00:00 2001
|
||||
From: Martin Klapetek <mklapetek@kde.org>
|
||||
Date: Thu, 10 Dec 2015 16:29:43 -0500
|
||||
Subject: [PATCH 4/4] [notifications] Fix default notification position setting
|
||||
|
||||
It can happen that the onAppletLocationChanged() slot gets called before
|
||||
init(), making init() reset the calculated position from the slot.
|
||||
|
||||
CCBUG: 356461
|
||||
---
|
||||
applets/notifications/lib/notificationsapplet.cpp | 7 +++++--
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/applets/notifications/lib/notificationsapplet.cpp b/applets/notifications/lib/notificationsapplet.cpp
|
||||
index 33184c4fdd9d091f2ba39f354c7c9d2a66b2b48b..891cdb0a21d87cb6bf6a5ab3bcd0fddf71047d75 100644
|
||||
--- a/applets/notifications/lib/notificationsapplet.cpp
|
||||
+++ b/applets/notifications/lib/notificationsapplet.cpp
|
||||
@@ -28,8 +28,6 @@
|
||||
NotificationsApplet::NotificationsApplet(QObject *parent, const QVariantList &data)
|
||||
: Plasma::Applet(parent, data)
|
||||
{
|
||||
- connect(this, &Plasma::Applet::locationChanged,
|
||||
- this, &NotificationsApplet::onAppletLocationChanged);
|
||||
}
|
||||
|
||||
NotificationsApplet::~NotificationsApplet()
|
||||
@@ -41,7 +39,12 @@ void NotificationsApplet::init()
|
||||
KConfigGroup globalGroup = globalConfig();
|
||||
m_popupPosition = (NotificationsHelper::PositionOnScreen)globalGroup.readEntry("popupPosition", 0); //0 is default
|
||||
|
||||
+ connect(this, &Plasma::Applet::locationChanged,
|
||||
+ this, &NotificationsApplet::onAppletLocationChanged);
|
||||
+
|
||||
Plasma::Applet::init();
|
||||
+
|
||||
+ onAppletLocationChanged(location());
|
||||
}
|
||||
|
||||
void NotificationsApplet::onAppletLocationChanged(Plasma::Types::Location location)
|
||||
--
|
||||
2.6.2
|
||||
|
@ -6,6 +6,12 @@ Sat Dec 12 17:32:52 UTC 2015 - hrvoje.senjan@gmail.com
|
||||
https://dot.kde.org/2015/12/08/plasma-55-beautiful-new-artwork
|
||||
- Move to cmake(...) BuildRequires where possible
|
||||
- Drop no longer needed fix-wayland-requirement.patch and rb125743.patch
|
||||
- Added patches from upstream:
|
||||
0001-notifications-Check-if-the-popup-is-visible-before-u.patch
|
||||
0002-notifications-Move-reading-globalConfig-from-ctor-to.patch
|
||||
0003-Make-comment-section-of-the-timezones-configuration-.patch
|
||||
0004-notifications-Fix-default-notification-position-sett.patch
|
||||
0001-Forward-mouse-enter-and-leave-events-on-feathered-ed.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 4 12:02:33 UTC 2015 - alarrosa@suse.com
|
||||
|
@ -34,6 +34,11 @@ Patch1: create_kdehome.patch
|
||||
# PATCH-FIX_OPENSUSE fix-breeze-sddm-theme-with-many-users.patch alarrosa@suse.com -- Asks for user/password and hide the user list when there's a large number of users
|
||||
Patch2: fix-breeze-sddm-theme-with-many-users.patch
|
||||
# PATCHES 100-200 and above are from upstream 5.5 branch
|
||||
Patch100: 0001-Forward-mouse-enter-and-leave-events-on-feathered-ed.patch
|
||||
Patch101: 0001-notifications-Check-if-the-popup-is-visible-before-u.patch
|
||||
Patch102: 0002-notifications-Move-reading-globalConfig-from-ctor-to.patch
|
||||
Patch103: 0003-Make-comment-section-of-the-timezones-configuration-.patch
|
||||
Patch104: 0004-notifications-Fix-default-notification-position-sett.patch
|
||||
# PATCHES 201-300 and above are from upstream master/5.6 branch
|
||||
BuildRequires: kf5-filesystem
|
||||
BuildRequires: update-desktop-files
|
||||
@ -202,6 +207,11 @@ workspace. Development files.
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch100 -Rp1
|
||||
%patch101 -p1
|
||||
%patch102 -p1
|
||||
%patch103 -p1
|
||||
%patch104 -p1
|
||||
|
||||
%build
|
||||
%cmake_kf5 -d build -- -DKDE4_COMMON_PAM_SERVICE=xdm -DKDE_DEFAULT_HOME=.kde4 -DCMAKE_INSTALL_LOCALEDIR=share/locale/kf5
|
||||
|
Loading…
x
Reference in New Issue
Block a user