REFACTOR:Move confiView(s) to ViewPart:: namespace

pull/3/head
Michail Vourlakos 6 years ago
parent b732dab283
commit 0510293c21

@ -22,14 +22,14 @@ set(lattedock-app_SRCS
settings/delegates/colorcmbboxitemdelegate.cpp
settings/delegates/layoutnamedelegate.cpp
view/contextmenu.cpp
view/dockconfigview.cpp
view/docksecconfigview.cpp
view/effects.cpp
view/panelshadows.cpp
view/positioner.cpp
view/screenedgeghostwindow.cpp
view/view.cpp
view/visibilitymanager.cpp
view/settings/primaryconfigview.cpp
view/settings/secondaryconfigview.cpp
wm/abstractwindowinterface.cpp
wm/waylandinterface.cpp
wm/windowinfowrap.cpp

@ -22,6 +22,7 @@
#define LATTECORONA_H
// local
#include "plasmaquick/configview.h"
#include "../liblatte2/types.h"
// Qt

@ -18,15 +18,15 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "dockconfigview.h"
#include "primaryconfigview.h"
// local
#include "view.h"
#include "panelshadows_p.h"
#include "../lattecorona.h"
#include "../layoutmanager.h"
#include "../settings/universalsettings.h"
#include "../wm/abstractwindowinterface.h"
#include "../panelshadows_p.h"
#include "../view.h"
#include "../../lattecorona.h"
#include "../../layoutmanager.h"
#include "../../settings/universalsettings.h"
#include "../../wm/abstractwindowinterface.h"
// Qt
#include <QFontMetrics>
@ -46,8 +46,9 @@
#include <Plasma/Package>
namespace Latte {
namespace ViewPart {
DockConfigView::DockConfigView(Plasma::Containment *containment, Latte::View *view, QWindow *parent)
PrimaryConfigView::PrimaryConfigView(Plasma::Containment *containment, Latte::View *view, QWindow *parent)
: PlasmaQuick::ConfigView(containment, parent),
m_latteView(view)
{
@ -70,8 +71,8 @@ DockConfigView::DockConfigView(Plasma::Containment *containment, Latte::View *vi
syncGeometry();
syncSlideEffect();
});
connections << connect(m_latteView->visibility(), &VisibilityManager::modeChanged, this, &DockConfigView::syncGeometry);
connections << connect(containment, &Plasma::Containment::immutabilityChanged, this, &DockConfigView::immutabilityChanged);
connections << connect(m_latteView->visibility(), &VisibilityManager::modeChanged, this, &PrimaryConfigView::syncGeometry);
connections << connect(containment, &Plasma::Containment::immutabilityChanged, this, &PrimaryConfigView::immutabilityChanged);
m_thicknessSyncTimer.setSingleShot(true);
m_thicknessSyncTimer.setInterval(200);
@ -84,13 +85,13 @@ DockConfigView::DockConfigView(Plasma::Containment *containment, Latte::View *vi
});
if (m_corona) {
connections << connect(m_corona, &Latte::Corona::raiseViewsTemporaryChanged, this, &DockConfigView::raiseDocksTemporaryChanged);
connections << connect(m_corona, &Latte::Corona::raiseViewsTemporaryChanged, this, &PrimaryConfigView::raiseDocksTemporaryChanged);
}
}
DockConfigView::~DockConfigView()
PrimaryConfigView::~PrimaryConfigView()
{
qDebug() << "DockConfigView deleting ...";
qDebug() << "ConfigView deleting ...";
deleteSecondaryWindow();
@ -105,7 +106,7 @@ DockConfigView::~DockConfigView()
}
void DockConfigView::init()
void PrimaryConfigView::init()
{
qDebug() << "dock config view : initialization started...";
@ -137,17 +138,17 @@ void DockConfigView::init()
qDebug() << "dock config view : initialization ended...";
}
inline Qt::WindowFlags DockConfigView::wFlags() const
inline Qt::WindowFlags PrimaryConfigView::wFlags() const
{
return (flags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint) & ~Qt::WindowDoesNotAcceptFocus;
}
QWindow *DockConfigView::secondaryWindow()
QWindow *PrimaryConfigView::secondaryWindow()
{
return m_secConfigView;
}
void DockConfigView::setAdvanced(bool advanced)
void PrimaryConfigView::setAdvanced(bool advanced)
{
if (m_advanced == advanced) {
return;
@ -162,7 +163,7 @@ void DockConfigView::setAdvanced(bool advanced)
}
}
void DockConfigView::createSecondaryWindow()
void PrimaryConfigView::createSecondaryWindow()
{
//! do not proceed when secondary window is already created
//! or when main dock settings window has not updated yet
@ -173,7 +174,7 @@ void DockConfigView::createSecondaryWindow()
QRect geometry = m_latteView->screenGeometry();
m_secConfigView = new DockSecConfigView(m_latteView, this);
m_secConfigView = new SecondaryConfigView(m_latteView, this);
m_secConfigView->init();
if (m_secConfigView->geometryWhenVisible().intersects(geometryWhenVisible())) {
@ -192,19 +193,19 @@ void DockConfigView::createSecondaryWindow()
}
}
void DockConfigView::deleteSecondaryWindow()
void PrimaryConfigView::deleteSecondaryWindow()
{
if (m_secConfigView) {
m_secConfigView->deleteLater();
}
}
QRect DockConfigView::geometryWhenVisible() const
QRect PrimaryConfigView::geometryWhenVisible() const
{
return m_geometryWhenVisible;
}
void DockConfigView::syncGeometry()
void PrimaryConfigView::syncGeometry()
{
if (!m_latteView->managedLayout() || !m_latteView->containment() || !rootObject())
return;
@ -271,7 +272,7 @@ void DockConfigView::syncGeometry()
}
}
void DockConfigView::syncSlideEffect()
void PrimaryConfigView::syncSlideEffect()
{
if (!m_latteView->containment())
return;
@ -303,7 +304,7 @@ void DockConfigView::syncSlideEffect()
m_corona->wm()->slideWindow(*this, slideLocation);
}
void DockConfigView::showEvent(QShowEvent *ev)
void PrimaryConfigView::showEvent(QShowEvent *ev)
{
QQuickWindow::showEvent(ev);
@ -319,12 +320,12 @@ void DockConfigView::showEvent(QShowEvent *ev)
m_latteView->containment()->setUserConfiguring(true);
m_screenSyncTimer.start();
QTimer::singleShot(400, this, &DockConfigView::syncGeometry);
QTimer::singleShot(400, this, &PrimaryConfigView::syncGeometry);
emit showSignal();
}
void DockConfigView::hideEvent(QHideEvent *ev)
void PrimaryConfigView::hideEvent(QHideEvent *ev)
{
if (!m_latteView) {
QQuickWindow::hideEvent(ev);
@ -350,7 +351,7 @@ void DockConfigView::hideEvent(QHideEvent *ev)
deleteLater();
}
void DockConfigView::focusOutEvent(QFocusEvent *ev)
void PrimaryConfigView::focusOutEvent(QFocusEvent *ev)
{
Q_UNUSED(ev);
@ -365,7 +366,7 @@ void DockConfigView::focusOutEvent(QFocusEvent *ev)
}
}
void DockConfigView::setupWaylandIntegration()
void PrimaryConfigView::setupWaylandIntegration()
{
if (m_shellSurface || !KWindowSystem::isPlatformWayland() || !m_latteView || !m_latteView->containment()) {
// already setup
@ -395,7 +396,7 @@ void DockConfigView::setupWaylandIntegration()
}
}
bool DockConfigView::event(QEvent *e)
bool PrimaryConfigView::event(QEvent *e)
{
if (e->type() == QEvent::PlatformSurface) {
if (auto pe = dynamic_cast<QPlatformSurfaceEvent *>(e)) {
@ -426,18 +427,18 @@ bool DockConfigView::event(QEvent *e)
}
void DockConfigView::immutabilityChanged(Plasma::Types::ImmutabilityType type)
void PrimaryConfigView::immutabilityChanged(Plasma::Types::ImmutabilityType type)
{
if (type != Plasma::Types::Mutable && isVisible())
hideConfigWindow();
}
bool DockConfigView::sticker() const
bool PrimaryConfigView::sticker() const
{
return m_blockFocusLost;
}
void DockConfigView::setSticker(bool blockFocusLost)
void PrimaryConfigView::setSticker(bool blockFocusLost)
{
if (m_blockFocusLost == blockFocusLost)
return;
@ -445,11 +446,11 @@ void DockConfigView::setSticker(bool blockFocusLost)
m_blockFocusLost = blockFocusLost;
}
bool DockConfigView::showInlineProperties() const
bool PrimaryConfigView::showInlineProperties() const
{
return m_showInlineProperties;
}
void DockConfigView::setShowInlineProperties(bool show)
void PrimaryConfigView::setShowInlineProperties(bool show)
{
if (m_showInlineProperties == show) {
return;
@ -459,14 +460,14 @@ void DockConfigView::setShowInlineProperties(bool show)
emit showInlinePropertiesChanged();
}
void DockConfigView::addPanelSpacer()
void PrimaryConfigView::addPanelSpacer()
{
if (m_latteView && m_latteView->containment()) {
m_latteView->containment()->createApplet(QStringLiteral("org.kde.latte.spacer"));
}
}
void DockConfigView::hideConfigWindow()
void PrimaryConfigView::hideConfigWindow()
{
if (m_shellSurface) {
//!NOTE: Avoid crash in wayland environment with qt5.9
@ -476,7 +477,7 @@ void DockConfigView::hideConfigWindow()
}
}
void DockConfigView::updateLaunchersForGroup(int groupInt)
void PrimaryConfigView::updateLaunchersForGroup(int groupInt)
{
Types::LaunchersGroup group = (Types::LaunchersGroup)groupInt;
@ -536,12 +537,12 @@ void DockConfigView::updateLaunchersForGroup(int groupInt)
}
//!BEGIN borders
Plasma::FrameSvg::EnabledBorders DockConfigView::enabledBorders() const
Plasma::FrameSvg::EnabledBorders PrimaryConfigView::enabledBorders() const
{
return m_enabledBorders;
}
void DockConfigView::updateEnabledBorders()
void PrimaryConfigView::updateEnabledBorders()
{
if (!this->screen()) {
return;
@ -582,4 +583,5 @@ void DockConfigView::updateEnabledBorders()
//!END borders
}
// kate: indent-mode cstyle; indent-width 4; replace-tabs on;
}

@ -18,13 +18,13 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DOCKCONFIGVIEW_H
#define DOCKCONFIGVIEW_H
#ifndef PRIMARYCONFIGVIEW_H
#define PRIMARYCONFIGVIEW_H
// local
#include "docksecconfigview.h"
#include "../plasmaquick/configview.h"
#include "../../liblatte2/types.h"
#include "secondaryconfigview.h"
#include "../../plasmaquick/configview.h"
#include "../../../liblatte2/types.h"
//Qt
#include <QObject>
@ -55,8 +55,9 @@ class View;
}
namespace Latte {
namespace ViewPart {
class DockConfigView : public PlasmaQuick::ConfigView
class PrimaryConfigView : public PlasmaQuick::ConfigView
{
Q_OBJECT
//! used when the secondary config window can not be shown
@ -71,8 +72,8 @@ public:
SecondaryConfig
};
DockConfigView(Plasma::Containment *containment, Latte::View *view, QWindow *parent = nullptr);
~DockConfigView() override;
PrimaryConfigView(Plasma::Containment *containment, Latte::View *view, QWindow *parent = nullptr);
~PrimaryConfigView() override;
void init() override;
Qt::WindowFlags wFlags() const;
@ -129,7 +130,7 @@ private:
QRect m_geometryWhenVisible;
QPointer<Latte::View> m_latteView;
QPointer<DockSecConfigView> m_secConfigView;
QPointer<SecondaryConfigView> m_secConfigView;
QTimer m_screenSyncTimer;
QTimer m_thicknessSyncTimer;
QList<QMetaObject::Connection> connections;
@ -141,5 +142,6 @@ private:
};
}
#endif //DOCKCONFIGVIEW_H
// kate: indent-mode cstyle; indent-width 4; replace-tabs on;
}
#endif //PRIMARYCONFIGVIEW_H

@ -17,14 +17,14 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "docksecconfigview.h"
#include "secondaryconfigview.h"
// local
#include "dockconfigview.h"
#include "panelshadows_p.h"
#include "view.h"
#include "../lattecorona.h"
#include "../wm/abstractwindowinterface.h"
#include "primaryconfigview.h"
#include "../panelshadows_p.h"
#include "../view.h"
#include "../../lattecorona.h"
#include "../../wm/abstractwindowinterface.h"
// Qt
#include <QFontMetrics>
@ -44,8 +44,9 @@
#include <Plasma/Package>
namespace Latte {
namespace ViewPart {
DockSecConfigView::DockSecConfigView(Latte::View *view, QWindow *parent)
SecondaryConfigView::SecondaryConfigView(Latte::View *view, QWindow *parent)
: QQuickView(nullptr),
m_parent(parent),
m_latteView(view)
@ -70,7 +71,7 @@ DockSecConfigView::DockSecConfigView(Latte::View *view, QWindow *parent)
syncGeometry();
syncSlideEffect();
});
connections << connect(m_latteView->visibility(), &VisibilityManager::modeChanged, this, &DockSecConfigView::syncGeometry);
connections << connect(m_latteView->visibility(), &VisibilityManager::modeChanged, this, &SecondaryConfigView::syncGeometry);
m_thicknessSyncTimer.setSingleShot(true);
m_thicknessSyncTimer.setInterval(200);
@ -83,7 +84,7 @@ DockSecConfigView::DockSecConfigView(Latte::View *view, QWindow *parent)
});
}
DockSecConfigView::~DockSecConfigView()
SecondaryConfigView::~SecondaryConfigView()
{
qDebug() << "SecDockConfigView deleting ...";
@ -98,7 +99,7 @@ DockSecConfigView::~DockSecConfigView()
}
void DockSecConfigView::init()
void SecondaryConfigView::init()
{
qDebug() << "dock secondary config view : initialization started...";
@ -127,17 +128,17 @@ void DockSecConfigView::init()
qDebug() << "dock secondary config view : initialization ended...";
}
inline Qt::WindowFlags DockSecConfigView::wFlags() const
inline Qt::WindowFlags SecondaryConfigView::wFlags() const
{
return (flags() | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint) & ~Qt::WindowDoesNotAcceptFocus;
}
QRect DockSecConfigView::geometryWhenVisible() const
QRect SecondaryConfigView::geometryWhenVisible() const
{
return m_geometryWhenVisible;
}
void DockSecConfigView::syncGeometry()
void SecondaryConfigView::syncGeometry()
{
if (!m_latteView->managedLayout() || !m_latteView->containment() || !rootObject())
return;
@ -201,7 +202,7 @@ void DockSecConfigView::syncGeometry()
}
}
void DockSecConfigView::syncSlideEffect()
void SecondaryConfigView::syncSlideEffect()
{
if (!m_latteView->containment())
return;
@ -233,7 +234,7 @@ void DockSecConfigView::syncSlideEffect()
m_corona->wm()->slideWindow(*this, slideLocation);
}
void DockSecConfigView::showEvent(QShowEvent *ev)
void SecondaryConfigView::showEvent(QShowEvent *ev)
{
QQuickWindow::showEvent(ev);
@ -246,12 +247,12 @@ void DockSecConfigView::showEvent(QShowEvent *ev)
syncSlideEffect();
m_screenSyncTimer.start();
QTimer::singleShot(400, this, &DockSecConfigView::syncGeometry);
QTimer::singleShot(400, this, &SecondaryConfigView::syncGeometry);
emit showSignal();
}
void DockSecConfigView::focusOutEvent(QFocusEvent *ev)
void SecondaryConfigView::focusOutEvent(QFocusEvent *ev)
{
Q_UNUSED(ev);
@ -261,14 +262,14 @@ void DockSecConfigView::focusOutEvent(QFocusEvent *ev)
|| focusWindow->flags().testFlag(Qt::ToolTip)))
return;
const auto parent = qobject_cast<DockConfigView *>(m_parent);
const auto parent = qobject_cast<PrimaryConfigView *>(m_parent);
if (parent && !parent->sticker() && !parent->isActive()) {
parent->hideConfigWindow();
}
}
void DockSecConfigView::setupWaylandIntegration()
void SecondaryConfigView::setupWaylandIntegration()
{
if (m_shellSurface || !KWindowSystem::isPlatformWayland() || !m_latteView || !m_latteView->containment()) {
// already setup
@ -298,7 +299,7 @@ void DockSecConfigView::setupWaylandIntegration()
}
}
bool DockSecConfigView::event(QEvent *e)
bool SecondaryConfigView::event(QEvent *e)
{
if (e->type() == QEvent::PlatformSurface) {
if (auto pe = dynamic_cast<QPlatformSurfaceEvent *>(e)) {
@ -328,7 +329,7 @@ bool DockSecConfigView::event(QEvent *e)
return QQuickView::event(e);
}
void DockSecConfigView::hideConfigWindow()
void SecondaryConfigView::hideConfigWindow()
{
if (m_shellSurface) {
//!NOTE: Avoid crash in wayland environment with qt5.9
@ -339,12 +340,12 @@ void DockSecConfigView::hideConfigWindow()
}
//!BEGIN borders
Plasma::FrameSvg::EnabledBorders DockSecConfigView::enabledBorders() const
Plasma::FrameSvg::EnabledBorders SecondaryConfigView::enabledBorders() const
{
return m_enabledBorders;
}
void DockSecConfigView::updateEnabledBorders()
void SecondaryConfigView::updateEnabledBorders()
{
if (!this->screen()) {
return;
@ -384,6 +385,6 @@ void DockSecConfigView::updateEnabledBorders()
//!END borders
}
// kate: indent-mode cstyle; indent-width 4; replace-tabs on;
}

@ -17,11 +17,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DOCKSECCONFIGVIEW_H
#define DOCKSECCONFIGVIEW_H
#ifndef SECONDARYCONFIGVIEW_H
#define SECONDARYCONFIGVIEW_H
// local
#include "../../liblatte2/types.h"
#include "../../../liblatte2/types.h"
//Qt
#include <QObject>
@ -52,16 +52,17 @@ class View;
}
namespace Latte {
namespace ViewPart {
class DockSecConfigView : public QQuickView
class SecondaryConfigView : public QQuickView
{
Q_OBJECT
Q_PROPERTY(Plasma::FrameSvg::EnabledBorders enabledBorders READ enabledBorders NOTIFY enabledBordersChanged)
public:
DockSecConfigView(Latte::View *view, QWindow *parent);
~DockSecConfigView() override;
SecondaryConfigView(Latte::View *view, QWindow *parent);
~SecondaryConfigView() override;
void init();
Qt::WindowFlags wFlags() const;
@ -106,5 +107,6 @@ private:
};
}
#endif //DOCKSECCONFIGVIEW_H
// kate: indent-mode cstyle; indent-width 4; replace-tabs on;
}
#endif //SECONDARYCONFIGVIEW_H

@ -22,10 +22,10 @@
// local
#include "contextmenu.h"
#include "dockconfigview.h"
#include "effects.h"
#include "positioner.h"
#include "visibilitymanager.h"
#include "settings/primaryconfigview.h"
#include "../lattecorona.h"
#include "../layout.h"
#include "../layoutmanager.h"
@ -294,7 +294,7 @@ void View::removeView()
bool View::settingsWindowIsShown()
{
auto configView = qobject_cast<DockConfigView *>(m_configView);
auto configView = qobject_cast<ViewPart::PrimaryConfigView *>(m_configView);
return (configView != nullptr);
}
@ -338,7 +338,7 @@ void View::showConfigurationInterface(Plasma::Applet *applet)
bool delayConfigView = false;
if (c && containment() && c->isContainment() && c->id() == this->containment()->id()) {
m_configView = new DockConfigView(c, this);
m_configView = new ViewPart::PrimaryConfigView(c, this);
delayConfigView = true;
} else {
m_configView = new PlasmaQuick::ConfigView(applet);
@ -656,7 +656,7 @@ void View::applyActivitiesToWindows()
if (m_configView) {
m_visibility->setWindowOnActivities(*m_configView, activities);
auto configView = qobject_cast<DockConfigView *>(m_configView);
auto configView = qobject_cast<ViewPart::PrimaryConfigView *>(m_configView);
if (configView && configView->secondaryWindow()) {
m_visibility->setWindowOnActivities(*configView->secondaryWindow(), activities);
@ -775,7 +775,7 @@ void View::moveToLayout(QString layoutName)
void View::setBlockHiding(bool block)
{
if (!block) {
auto *configView = qobject_cast<DockConfigView *>(m_configView);
auto *configView = qobject_cast<ViewPart::PrimaryConfigView *>(m_configView);
if (m_alternativesIsShown || (configView && configView->sticker() && configView->isVisible())) {
return;
@ -796,7 +796,7 @@ void View::hideWindowsForSlidingOut()
setBlockHiding(false);
if (m_configView) {
auto configDialog = qobject_cast<DockConfigView *>(m_configView);
auto configDialog = qobject_cast<ViewPart::PrimaryConfigView *>(m_configView);
if (configDialog) {
configDialog->hideConfigWindow();

@ -22,10 +22,10 @@
#define VIEW_H
// local
#include "dockconfigview.h"
#include "effects.h"
#include "positioner.h"
#include "visibilitymanager.h"
#include "settings/primaryconfigview.h"
#include "../layout.h"
#include "../plasmaquick/containmentview.h"
#include "../plasmaquick/configview.h"

Loading…
Cancel
Save