forked from pool/breeze
This commit is contained in:
parent
1d26ceaa5c
commit
69edd5cd18
@ -1,42 +0,0 @@
|
|||||||
From 6b0d93d316f14cf00e7b7a5f6f13c4d16ee0ce68 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
|
||||||
Date: Sun, 22 Mar 2015 19:52:14 +0100
|
|
||||||
Subject: [PATCH 1/5] Cleanup code to align with master Check for
|
|
||||||
drawBordersOnMaximizedWindows when testing edges flags. BUG: 345424
|
|
||||||
|
|
||||||
---
|
|
||||||
kdecoration/breezedecoration.cpp | 10 +++++++---
|
|
||||||
1 file changed, 7 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/kdecoration/breezedecoration.cpp b/kdecoration/breezedecoration.cpp
|
|
||||||
index 1c042861e1207c812032eb772849c88b503a3792..dc4219c161f7a2467906083cf62039d5a0645303 100644
|
|
||||||
--- a/kdecoration/breezedecoration.cpp
|
|
||||||
+++ b/kdecoration/breezedecoration.cpp
|
|
||||||
@@ -278,9 +278,14 @@ namespace Breeze
|
|
||||||
auto s = settings();
|
|
||||||
const auto c = client().data();
|
|
||||||
const Qt::Edges edges = c->adjacentScreenEdges();
|
|
||||||
- int left = isMaximizedHorizontally() || edges.testFlag(Qt::LeftEdge) ? 0 : borderSize();
|
|
||||||
- int right = isMaximizedHorizontally() || edges.testFlag(Qt::RightEdge) ? 0 : borderSize();
|
|
||||||
|
|
||||||
+ // left, right and bottom borders
|
|
||||||
+ auto testFlag = [&]( Qt::Edge edge ) { return edges.testFlag(edge) && !m_internalSettings->drawBorderOnMaximizedWindows(); };
|
|
||||||
+ const int left = isMaximizedHorizontally() || testFlag(Qt::LeftEdge) ? 0 : borderSize();
|
|
||||||
+ const int right = isMaximizedHorizontally() || testFlag(Qt::RightEdge) ? 0 : borderSize();
|
|
||||||
+ const int bottom = isMaximizedVertically() || c->isShaded() || testFlag(Qt::BottomEdge) ? 0 : borderSize(true);
|
|
||||||
+
|
|
||||||
+ // top border
|
|
||||||
QFontMetrics fm(s->font());
|
|
||||||
int top = qMax(fm.boundingRect(c->caption()).height(), buttonHeight() );
|
|
||||||
|
|
||||||
@@ -292,7 +297,6 @@ namespace Breeze
|
|
||||||
// padding above
|
|
||||||
top += baseSize*TitleBar_TopMargin;
|
|
||||||
|
|
||||||
- int bottom = isMaximizedVertically() || c->isShaded() || edges.testFlag(Qt::BottomEdge) ? 0 : borderSize(true);
|
|
||||||
setBorders(QMargins(left, top, right, bottom));
|
|
||||||
|
|
||||||
// extended sizes
|
|
||||||
--
|
|
||||||
2.3.3
|
|
||||||
|
|
@ -1,66 +0,0 @@
|
|||||||
From 46b78432e25a124e9b85b007723435700aec047a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
|
||||||
Date: Sun, 22 Mar 2015 20:22:18 +0100
|
|
||||||
Subject: [PATCH 2/5] set button's visibility depending on the availability of
|
|
||||||
the corresponding feature CCBUG: 343641
|
|
||||||
|
|
||||||
---
|
|
||||||
kdecoration/breezebutton.cpp | 36 +++++++++++++++++++++++++++++++++++-
|
|
||||||
1 file changed, 35 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/kdecoration/breezebutton.cpp b/kdecoration/breezebutton.cpp
|
|
||||||
index 5ac0cfe420c6de50db30491e90dc0244666add33..1a3c0c2b0f66a2c8582798b82dee97dcc7785b12 100644
|
|
||||||
--- a/kdecoration/breezebutton.cpp
|
|
||||||
+++ b/kdecoration/breezebutton.cpp
|
|
||||||
@@ -63,13 +63,47 @@ namespace Breeze
|
|
||||||
if (auto d = qobject_cast<Decoration*>(decoration))
|
|
||||||
{
|
|
||||||
Button *b = new Button(type, d, parent);
|
|
||||||
- if (type == KDecoration2::DecorationButtonType::Menu)
|
|
||||||
+ switch( type )
|
|
||||||
{
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::Close:
|
|
||||||
+ b->setVisible( d->client().data()->isCloseable() );
|
|
||||||
+ QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::closeableChanged, b, &Breeze::Button::setVisible );
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::Maximize:
|
|
||||||
+ b->setVisible( d->client().data()->isMaximizeable() );
|
|
||||||
+ QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::maximizeableChanged, b, &Breeze::Button::setVisible );
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::Minimize:
|
|
||||||
+ b->setVisible( d->client().data()->isMinimizeable() );
|
|
||||||
+ QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::minimizeableChanged, b, &Breeze::Button::setVisible );
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::ContextHelp:
|
|
||||||
+ b->setVisible( d->client().data()->providesContextHelp() );
|
|
||||||
+ QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::providesContextHelpChanged, b, &Breeze::Button::setVisible );
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::Shade:
|
|
||||||
+ b->setVisible( d->client().data()->isShadeable() );
|
|
||||||
+ QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::shadeableChanged, b, &Breeze::Button::setVisible );
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ case KDecoration2::DecorationButtonType::Menu:
|
|
||||||
QObject::connect(d->client().data(), &KDecoration2::DecoratedClient::iconChanged, b, [b]() { b->update(); });
|
|
||||||
+ break;
|
|
||||||
+
|
|
||||||
+ default: break;
|
|
||||||
+
|
|
||||||
}
|
|
||||||
+
|
|
||||||
return b;
|
|
||||||
}
|
|
||||||
+
|
|
||||||
return nullptr;
|
|
||||||
+
|
|
||||||
}
|
|
||||||
|
|
||||||
//__________________________________________________________________
|
|
||||||
--
|
|
||||||
2.3.3
|
|
||||||
|
|
@ -1,87 +0,0 @@
|
|||||||
From 695e4aa231fccbe77a6b0a4e21ff6a84f87a5c44 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
|
||||||
Date: Sun, 22 Mar 2015 20:39:47 +0100
|
|
||||||
Subject: [PATCH 3/5] Properly update size grip visibility on maximizedChanged,
|
|
||||||
shadedChanged and resizeableChanged
|
|
||||||
|
|
||||||
---
|
|
||||||
kdecoration/breezedecoration.cpp | 24 +++++++++++++++++-------
|
|
||||||
kdecoration/breezedecoration.h | 1 +
|
|
||||||
2 files changed, 18 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/kdecoration/breezedecoration.cpp b/kdecoration/breezedecoration.cpp
|
|
||||||
index dc4219c161f7a2467906083cf62039d5a0645303..08f6f7b17c4b0b7790d82630b168cedd832b6328 100644
|
|
||||||
--- a/kdecoration/breezedecoration.cpp
|
|
||||||
+++ b/kdecoration/breezedecoration.cpp
|
|
||||||
@@ -165,21 +165,21 @@ namespace Breeze
|
|
||||||
);
|
|
||||||
|
|
||||||
connect(client().data(), &KDecoration2::DecoratedClient::activeChanged, this, &Decoration::updateAnimationState);
|
|
||||||
- connect(client().data(), &KDecoration2::DecoratedClient::paletteChanged, this,
|
|
||||||
+ connect(client().data(), &KDecoration2::DecoratedClient::paletteChanged, this,
|
|
||||||
[this]() {
|
|
||||||
m_colorSettings.update(client().data()->palette());
|
|
||||||
m_useSeparator = (m_colorSettings.palette().color( QPalette::Window ) != m_colorSettings.activeTitleBar() );
|
|
||||||
update();
|
|
||||||
}
|
|
||||||
);
|
|
||||||
- connect(client().data(), &KDecoration2::DecoratedClient::widthChanged, this, &Decoration::updateTitleBar);
|
|
||||||
+ connect(client().data(), &KDecoration2::DecoratedClient::widthChanged, this, &Decoration::updateTitleBar);
|
|
||||||
connect(client().data(), &KDecoration2::DecoratedClient::maximizedChanged, this, &Decoration::updateTitleBar);
|
|
||||||
connect(client().data(), &KDecoration2::DecoratedClient::maximizedChanged, this, &Decoration::setOpaque);
|
|
||||||
|
|
||||||
- connect(client().data(), &KDecoration2::DecoratedClient::widthChanged, this, &Decoration::updateButtonsGeometry);
|
|
||||||
+ connect(client().data(), &KDecoration2::DecoratedClient::widthChanged, this, &Decoration::updateButtonsGeometry);
|
|
||||||
connect(client().data(), &KDecoration2::DecoratedClient::maximizedChanged, this, &Decoration::updateButtonsGeometry);
|
|
||||||
- connect(client().data(), &KDecoration2::DecoratedClient::shadedChanged, this, &Decoration::recalculateBorders);
|
|
||||||
- connect(client().data(), &KDecoration2::DecoratedClient::shadedChanged, this, &Decoration::updateButtonsGeometry);
|
|
||||||
+ connect(client().data(), &KDecoration2::DecoratedClient::shadedChanged, this, &Decoration::recalculateBorders);
|
|
||||||
+ connect(client().data(), &KDecoration2::DecoratedClient::shadedChanged, this, &Decoration::updateButtonsGeometry);
|
|
||||||
|
|
||||||
createButtons();
|
|
||||||
createShadow();
|
|
||||||
@@ -208,6 +208,14 @@ namespace Breeze
|
|
||||||
}
|
|
||||||
|
|
||||||
//________________________________________________________________
|
|
||||||
+ void Decoration::updateSizeGripVisibility()
|
|
||||||
+ {
|
|
||||||
+ auto c = client().data();
|
|
||||||
+ if( m_sizeGrip )
|
|
||||||
+ { m_sizeGrip->setVisible( c->isResizeable() && !isMaximized() && !c->isShaded() ); }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ //________________________________________________________________
|
|
||||||
int Decoration::borderSize(bool bottom) const
|
|
||||||
{
|
|
||||||
const int baseSize = settings()->smallSpacing();
|
|
||||||
@@ -582,10 +590,12 @@ namespace Breeze
|
|
||||||
KDecoration2::DecoratedClient *c( client().data() );
|
|
||||||
if( !c ) return;
|
|
||||||
|
|
||||||
- if( ( c->isResizeable() && c->windowId() != 0 ) )
|
|
||||||
+ if( c->windowId() != 0 )
|
|
||||||
{
|
|
||||||
m_sizeGrip = new SizeGrip( this );
|
|
||||||
- m_sizeGrip->setVisible( !( isMaximized() || c->isShaded() ) );
|
|
||||||
+ connect( client().data(), &KDecoration2::DecoratedClient::maximizedChanged, this, &Breeze::Decoration::updateSizeGripVisibility );
|
|
||||||
+ connect( client().data(), &KDecoration2::DecoratedClient::shadedChanged, this, &Breeze::Decoration::updateSizeGripVisibility );
|
|
||||||
+ connect( client().data(), &KDecoration2::DecoratedClient::resizeableChanged, this, &Breeze::Decoration::updateSizeGripVisibility );
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
diff --git a/kdecoration/breezedecoration.h b/kdecoration/breezedecoration.h
|
|
||||||
index ac1ab3bdc136fd3e4a1e970e86abd0fb92cb6c56..16ff8ff84636f435c7c59d0a0f4835fb509b9b57 100644
|
|
||||||
--- a/kdecoration/breezedecoration.h
|
|
||||||
+++ b/kdecoration/breezedecoration.h
|
|
||||||
@@ -107,6 +107,7 @@ namespace Breeze
|
|
||||||
void updateButtonsGeometry();
|
|
||||||
void updateTitleBar();
|
|
||||||
void updateAnimationState();
|
|
||||||
+ void updateSizeGripVisibility();
|
|
||||||
|
|
||||||
private:
|
|
||||||
|
|
||||||
--
|
|
||||||
2.3.3
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
|||||||
From 8c2940fb798150af56ee36af694a92ceb710ebf1 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Hugo Pereira Da Costa <hugo.pereira@free.fr>
|
|
||||||
Date: Mon, 23 Mar 2015 09:12:58 +0100
|
|
||||||
Subject: [PATCH 4/5] Fixed foreground color for pressed buttons
|
|
||||||
|
|
||||||
---
|
|
||||||
kdecoration/breezebutton.cpp | 6 +++++-
|
|
||||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/kdecoration/breezebutton.cpp b/kdecoration/breezebutton.cpp
|
|
||||||
index 1a3c0c2b0f66a2c8582798b82dee97dcc7785b12..591824838152532c5868c137d9268163161ac83c 100644
|
|
||||||
--- a/kdecoration/breezebutton.cpp
|
|
||||||
+++ b/kdecoration/breezebutton.cpp
|
|
||||||
@@ -348,7 +348,11 @@ namespace Breeze
|
|
||||||
|
|
||||||
auto d = qobject_cast<Decoration*>( decoration() );
|
|
||||||
if( !d ) return QColor();
|
|
||||||
- if( type() == KDecoration2::DecorationButtonType::Close ) {
|
|
||||||
+ if( isPressed() ) {
|
|
||||||
+
|
|
||||||
+ return d->titleBarColor();
|
|
||||||
+
|
|
||||||
+ } else if( type() == KDecoration2::DecorationButtonType::Close ) {
|
|
||||||
|
|
||||||
return d->titleBarColor();
|
|
||||||
|
|
||||||
--
|
|
||||||
2.3.3
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:5b480d0fd8f277796e7a67d5ac4e255c4479909e5aa0b283e4e0aa21035e8460
|
|
||||||
size 28140232
|
|
3
breeze-5.2.95.tar.xz
Normal file
3
breeze-5.2.95.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:237f866e4debb28b24d274e3e2049dbd2631170288ed2a913e53971fa2c64099
|
||||||
|
size 23461540
|
14
breeze.spec
14
breeze.spec
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: breeze
|
Name: breeze
|
||||||
Version: 5.2.2
|
Version: 5.2.95
|
||||||
Release: 0
|
Release: 0
|
||||||
BuildRequires: cmake >= 2.8.12
|
BuildRequires: cmake >= 2.8.12
|
||||||
BuildRequires: extra-cmake-modules >= 0.0.12
|
BuildRequires: extra-cmake-modules >= 0.0.12
|
||||||
@ -48,14 +48,6 @@ Url: http://www.kde.org
|
|||||||
#Source: http://download.kde.org/stable/plasma/%{version}/%{name}-%{version}.tar.xz
|
#Source: http://download.kde.org/stable/plasma/%{version}/%{name}-%{version}.tar.xz
|
||||||
Source: %{name}-%{version}.tar.xz
|
Source: %{name}-%{version}.tar.xz
|
||||||
Source99: %{name}-rpmlintrc
|
Source99: %{name}-rpmlintrc
|
||||||
# PATCH-FIX-UPSTREAM 0001-Cleanup-code-to-align-with-master.patch
|
|
||||||
Patch0: 0001-Cleanup-code-to-align-with-master.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0002-set-button-s-visibility-depending-on-the-availabilit.patch
|
|
||||||
Patch1: 0002-set-button-s-visibility-depending-on-the-availabilit.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0003-Properly-update-size-grip-visibility-on-maximizedCha.patch
|
|
||||||
Patch2: 0003-Properly-update-size-grip-visibility-on-maximizedCha.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0004-Fixed-foreground-color-for-pressed-buttons.patch
|
|
||||||
Patch3: 0004-Fixed-foreground-color-for-pressed-buttons.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -112,10 +104,6 @@ This package provides Breeze KWin decoration.
|
|||||||
%lang_package -n breeze5-style
|
%lang_package -n breeze5-style
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%cmake_kf5 -d build -- -DBUILD_po=OFF -DCMAKE_INSTALL_LOCALEDIR=share/locale/kf5
|
%cmake_kf5 -d build -- -DBUILD_po=OFF -DCMAKE_INSTALL_LOCALEDIR=share/locale/kf5
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
|
|
||||||
|
|
||||||
Name: breeze4-style
|
Name: breeze4-style
|
||||||
Version: 5.2.2
|
Version: 5.2.95
|
||||||
Release: 0
|
Release: 0
|
||||||
BuildRequires: automoc4
|
BuildRequires: automoc4
|
||||||
BuildRequires: cmake >= 2.8.12
|
BuildRequires: cmake >= 2.8.12
|
||||||
@ -31,14 +31,6 @@ Group: System/GUI/KDE
|
|||||||
Url: http://www.kde.org
|
Url: http://www.kde.org
|
||||||
#Source: http://download.kde.org/stable/plasma/%{version}/breeze-%{version}.tar.xz
|
#Source: http://download.kde.org/stable/plasma/%{version}/breeze-%{version}.tar.xz
|
||||||
Source: breeze-%{version}.tar.xz
|
Source: breeze-%{version}.tar.xz
|
||||||
# PATCH-FIX-UPSTREAM 0001-Cleanup-code-to-align-with-master.patch
|
|
||||||
Patch0: 0001-Cleanup-code-to-align-with-master.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0002-set-button-s-visibility-depending-on-the-availabilit.patch
|
|
||||||
Patch1: 0002-set-button-s-visibility-depending-on-the-availabilit.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0003-Properly-update-size-grip-visibility-on-maximizedCha.patch
|
|
||||||
Patch2: 0003-Properly-update-size-grip-visibility-on-maximizedCha.patch
|
|
||||||
# PATCH-FIX-UPSTREAM 0004-Fixed-foreground-color-for-pressed-buttons.patch
|
|
||||||
Patch3: 0004-Fixed-foreground-color-for-pressed-buttons.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -47,10 +39,6 @@ This package contains kde4 backport of new default Plasma 5 style.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n breeze-%{version}
|
%setup -q -n breeze-%{version}
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%cmake_kde4 -d build -- -DBUILD_po=OFF -DUSE_KDE4=ON
|
%cmake_kde4 -d build -- -DBUILD_po=OFF -DUSE_KDE4=ON
|
||||||
|
Loading…
Reference in New Issue
Block a user