Revert "Implement desktopSwitching() interface for realtime animations"
This reverts commit c7c1ac78ea
.
This change was merged prematurely.
This commit is contained in:
parent
e48357a130
commit
3c945358fc
7 changed files with 3 additions and 151 deletions
|
@ -35,16 +35,8 @@ void InputRedirection::registerAxisShortcut(Qt::KeyboardModifiers modifiers, Poi
|
||||||
|
|
||||||
void InputRedirection::registerTouchpadSwipeShortcut(SwipeDirection, uint fingerCount, QAction*)
|
void InputRedirection::registerTouchpadSwipeShortcut(SwipeDirection, uint fingerCount, QAction*)
|
||||||
{
|
{
|
||||||
Q_UNUSED(fingerCount)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void InputRedirection::registerRealtimeTouchpadSwipeShortcut(SwipeDirection direction, uint fingerCount, QAction *action, std::function<void(qreal)> cb)
|
|
||||||
{
|
|
||||||
Q_UNUSED(direction)
|
|
||||||
Q_UNUSED(fingerCount)
|
|
||||||
Q_UNUSED(action)
|
|
||||||
Q_UNUSED(cb)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Q_DECLARE_METATYPE(Qt::Orientation)
|
Q_DECLARE_METATYPE(Qt::Orientation)
|
||||||
|
|
|
@ -155,16 +155,6 @@ EffectsHandlerImpl::EffectsHandlerImpl(Compositor *compositor, Scene *scene)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
connect(ws, &Workspace::currentDesktopChanging, this,
|
|
||||||
[this](uint currentDesktop, QPointF offset, KWin::AbstractClient* c){
|
|
||||||
Q_EMIT desktopChanging(currentDesktop, offset, c ? c->effectWindow() : nullptr);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
connect(ws, &Workspace::currentDesktopChangingCancelled, this,
|
|
||||||
[this](){
|
|
||||||
Q_EMIT desktopChangingCancelled();
|
|
||||||
}
|
|
||||||
);
|
|
||||||
connect(ws, &Workspace::desktopPresenceChanged, this,
|
connect(ws, &Workspace::desktopPresenceChanged, this,
|
||||||
[this](AbstractClient *c, int old) {
|
[this](AbstractClient *c, int old) {
|
||||||
if (!c->effectWindow()) {
|
if (!c->effectWindow()) {
|
||||||
|
|
|
@ -1468,17 +1468,6 @@ Q_SIGNALS:
|
||||||
* @since 4.9
|
* @since 4.9
|
||||||
*/
|
*/
|
||||||
void desktopChanged(int oldDesktop, int newDesktop, KWin::EffectWindow *with);
|
void desktopChanged(int oldDesktop, int newDesktop, KWin::EffectWindow *with);
|
||||||
|
|
||||||
/**
|
|
||||||
* Signal emmitted while desktop is changing for animation.
|
|
||||||
* @param currentDesktop The current desktop untiotherwise.
|
|
||||||
* @param offset The current desktop offset.
|
|
||||||
* offset.x() = .6 means 60% of the way to the desktop to the right.
|
|
||||||
* Positive Values means Up and Right.
|
|
||||||
*/
|
|
||||||
void desktopChanging(uint currentDesktop, QPointF offset, KWin::EffectWindow *with);
|
|
||||||
void desktopChangingCancelled();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @since 4.7
|
* @since 4.7
|
||||||
* @deprecated
|
* @deprecated
|
||||||
|
|
|
@ -22,11 +22,9 @@
|
||||||
|
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
|
||||||
namespace KWin {
|
namespace KWin {
|
||||||
|
|
||||||
static bool s_loadingDesktopSettings = false;
|
static bool s_loadingDesktopSettings = false;
|
||||||
static const double GESTURE_SWITCH_THRESHOLD = .25;
|
|
||||||
|
|
||||||
static QString generateDesktopId()
|
static QString generateDesktopId()
|
||||||
{
|
{
|
||||||
|
@ -537,7 +535,7 @@ VirtualDesktop *VirtualDesktopManager::currentDesktop() const
|
||||||
|
|
||||||
bool VirtualDesktopManager::setCurrent(uint newDesktop)
|
bool VirtualDesktopManager::setCurrent(uint newDesktop)
|
||||||
{
|
{
|
||||||
if (newDesktop < 1 || newDesktop > count()) {
|
if (newDesktop < 1 || newDesktop > count() || newDesktop == current()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
auto d = desktopForX11Id(newDesktop);
|
auto d = desktopForX11Id(newDesktop);
|
||||||
|
@ -802,11 +800,9 @@ void VirtualDesktopManager::initShortcuts()
|
||||||
initSwitchToShortcuts();
|
initSwitchToShortcuts();
|
||||||
|
|
||||||
QAction *nextAction = addAction(QStringLiteral("Switch to Next Desktop"), i18n("Switch to Next Desktop"), &VirtualDesktopManager::slotNext);
|
QAction *nextAction = addAction(QStringLiteral("Switch to Next Desktop"), i18n("Switch to Next Desktop"), &VirtualDesktopManager::slotNext);
|
||||||
|
input()->registerTouchpadSwipeShortcut(SwipeDirection::Right, 4, nextAction);
|
||||||
QAction *previousAction = addAction(QStringLiteral("Switch to Previous Desktop"), i18n("Switch to Previous Desktop"), &VirtualDesktopManager::slotPrevious);
|
QAction *previousAction = addAction(QStringLiteral("Switch to Previous Desktop"), i18n("Switch to Previous Desktop"), &VirtualDesktopManager::slotPrevious);
|
||||||
Q_UNUSED(nextAction)
|
input()->registerTouchpadSwipeShortcut(SwipeDirection::Left, 4, previousAction);
|
||||||
Q_UNUSED(previousAction)
|
|
||||||
|
|
||||||
//shortcuts
|
|
||||||
QAction *slotRightAction = addAction(QStringLiteral("Switch One Desktop to the Right"), i18n("Switch One Desktop to the Right"), &VirtualDesktopManager::slotRight);
|
QAction *slotRightAction = addAction(QStringLiteral("Switch One Desktop to the Right"), i18n("Switch One Desktop to the Right"), &VirtualDesktopManager::slotRight);
|
||||||
KGlobalAccel::setGlobalShortcut(slotRightAction, QKeySequence(Qt::CTRL | Qt::META | Qt::Key_Right));
|
KGlobalAccel::setGlobalShortcut(slotRightAction, QKeySequence(Qt::CTRL | Qt::META | Qt::Key_Right));
|
||||||
QAction *slotLeftAction = addAction(QStringLiteral("Switch One Desktop to the Left"), i18n("Switch One Desktop to the Left"), &VirtualDesktopManager::slotLeft);
|
QAction *slotLeftAction = addAction(QStringLiteral("Switch One Desktop to the Left"), i18n("Switch One Desktop to the Left"), &VirtualDesktopManager::slotLeft);
|
||||||
|
@ -816,39 +812,6 @@ void VirtualDesktopManager::initShortcuts()
|
||||||
QAction *slotDownAction = addAction(QStringLiteral("Switch One Desktop Down"), i18n("Switch One Desktop Down"), &VirtualDesktopManager::slotDown);
|
QAction *slotDownAction = addAction(QStringLiteral("Switch One Desktop Down"), i18n("Switch One Desktop Down"), &VirtualDesktopManager::slotDown);
|
||||||
KGlobalAccel::setGlobalShortcut(slotDownAction, QKeySequence(Qt::CTRL | Qt::META | Qt::Key_Down));
|
KGlobalAccel::setGlobalShortcut(slotDownAction, QKeySequence(Qt::CTRL | Qt::META | Qt::Key_Down));
|
||||||
|
|
||||||
// Gestures
|
|
||||||
// These connections decide which desktop to end on after gesture ends
|
|
||||||
connect(m_swipeGestureReleasedRight, &QAction::triggered, this, &VirtualDesktopManager::gestureReleasedRight);
|
|
||||||
connect(m_swipeGestureReleasedLeft, &QAction::triggered, this, &VirtualDesktopManager::gestureReleasedLeft);
|
|
||||||
connect(m_swipeGestureReleasedUp, &QAction::triggered, this, &VirtualDesktopManager::gestureReleasedUp);
|
|
||||||
connect(m_swipeGestureReleasedDown, &QAction::triggered, this, &VirtualDesktopManager::gestureReleasedDown);
|
|
||||||
|
|
||||||
//These take the live feedback from a gesture
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Right, 3, m_swipeGestureReleasedRight, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setX(cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Left, 3, m_swipeGestureReleasedLeft, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setX(-cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Right, 4, m_swipeGestureReleasedRight, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setX(cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Left, 4, m_swipeGestureReleasedLeft, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setX(-cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Up, 3, m_swipeGestureReleasedUp, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setY(-cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
input()->registerRealtimeTouchpadSwipeShortcut(SwipeDirection::Down, 3, m_swipeGestureReleasedDown, [this](qreal cb) {
|
|
||||||
m_currentDesktopOffset.setY(cb);
|
|
||||||
Q_EMIT currentChanging(current(), m_currentDesktopOffset);
|
|
||||||
});
|
|
||||||
|
|
||||||
// axis events
|
// axis events
|
||||||
input()->registerAxisShortcut(Qt::ControlModifier | Qt::AltModifier, PointerAxisDown,
|
input()->registerAxisShortcut(Qt::ControlModifier | Qt::AltModifier, PointerAxisDown,
|
||||||
findChild<QAction*>(QStringLiteral("Switch to Next Desktop")));
|
findChild<QAction*>(QStringLiteral("Switch to Next Desktop")));
|
||||||
|
@ -856,44 +819,6 @@ void VirtualDesktopManager::initShortcuts()
|
||||||
findChild<QAction*>(QStringLiteral("Switch to Previous Desktop")));
|
findChild<QAction*>(QStringLiteral("Switch to Previous Desktop")));
|
||||||
}
|
}
|
||||||
|
|
||||||
void VirtualDesktopManager::gestureReleasedUp()
|
|
||||||
{
|
|
||||||
if (m_currentDesktopOffset.y() <= -GESTURE_SWITCH_THRESHOLD) {
|
|
||||||
slotUp();
|
|
||||||
} else {
|
|
||||||
Q_EMIT currentChangingCancelled();
|
|
||||||
}
|
|
||||||
m_currentDesktopOffset = QPointF(0, 0);
|
|
||||||
}
|
|
||||||
void VirtualDesktopManager::gestureReleasedDown()
|
|
||||||
{
|
|
||||||
if (m_currentDesktopOffset.y() >= GESTURE_SWITCH_THRESHOLD) {
|
|
||||||
slotDown();
|
|
||||||
} else {
|
|
||||||
Q_EMIT currentChangingCancelled();
|
|
||||||
}
|
|
||||||
m_currentDesktopOffset = QPointF(0, 0);
|
|
||||||
}
|
|
||||||
void VirtualDesktopManager::gestureReleasedLeft()
|
|
||||||
{
|
|
||||||
if (m_currentDesktopOffset.x() <= -GESTURE_SWITCH_THRESHOLD) {
|
|
||||||
slotLeft();
|
|
||||||
} else {
|
|
||||||
Q_EMIT currentChangingCancelled();
|
|
||||||
}
|
|
||||||
m_currentDesktopOffset = QPointF(0, 0);
|
|
||||||
}
|
|
||||||
void VirtualDesktopManager::gestureReleasedRight()
|
|
||||||
{
|
|
||||||
if (m_currentDesktopOffset.x() >= GESTURE_SWITCH_THRESHOLD) {
|
|
||||||
slotRight();
|
|
||||||
} else {
|
|
||||||
setCurrent(current());
|
|
||||||
Q_EMIT currentChangingCancelled();
|
|
||||||
}
|
|
||||||
m_currentDesktopOffset = QPointF(0, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
void VirtualDesktopManager::initSwitchToShortcuts()
|
void VirtualDesktopManager::initSwitchToShortcuts()
|
||||||
{
|
{
|
||||||
const QString toDesktop = QStringLiteral("Switch to Desktop %1");
|
const QString toDesktop = QStringLiteral("Switch to Desktop %1");
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
#include <QPoint>
|
#include <QPoint>
|
||||||
#include <QPointer>
|
#include <QPointer>
|
||||||
#include <QSize>
|
#include <QSize>
|
||||||
#include <QAction>
|
|
||||||
|
|
||||||
// KDE includes
|
// KDE includes
|
||||||
#include <KConfig>
|
#include <KConfig>
|
||||||
|
@ -25,7 +24,6 @@
|
||||||
class KLocalizedString;
|
class KLocalizedString;
|
||||||
class NETRootInfo;
|
class NETRootInfo;
|
||||||
class QAction;
|
class QAction;
|
||||||
class Options;
|
|
||||||
|
|
||||||
namespace KWaylandServer
|
namespace KWaylandServer
|
||||||
{
|
{
|
||||||
|
@ -392,17 +390,6 @@ Q_SIGNALS:
|
||||||
* @param newDesktop The virtual desktop changed to
|
* @param newDesktop The virtual desktop changed to
|
||||||
*/
|
*/
|
||||||
void currentChanged(uint previousDesktop, uint newDesktop);
|
void currentChanged(uint previousDesktop, uint newDesktop);
|
||||||
|
|
||||||
/**
|
|
||||||
* Signal emmitted for realtime desktop switching animations.
|
|
||||||
* @param currentDesktop The current virtual desktop
|
|
||||||
* @param offset The current total change in desktop coordinate
|
|
||||||
* Offset x and y are negative if switching Left and Down.
|
|
||||||
* Example: x = 0.6 means 60% of the way to the desktop to the right.
|
|
||||||
*/
|
|
||||||
void currentChanging(uint currentDesktop, QPointF offset);
|
|
||||||
void currentChangingCancelled();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Signal emitted whenever the desktop layout changes.
|
* Signal emitted whenever the desktop layout changes.
|
||||||
* @param columns The new number of columns in the layout
|
* @param columns The new number of columns in the layout
|
||||||
|
@ -446,14 +433,6 @@ private Q_SLOTS:
|
||||||
*/
|
*/
|
||||||
void slotDown();
|
void slotDown();
|
||||||
|
|
||||||
/* For gestured desktopSwitching
|
|
||||||
* Called when gesture ended, the thing that actually switches the desktop.
|
|
||||||
*/
|
|
||||||
void gestureReleasedUp();
|
|
||||||
void gestureReleasedDown();
|
|
||||||
void gestureReleasedLeft();
|
|
||||||
void gestureReleasedRight();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/**
|
/**
|
||||||
* Generate a desktop layout from EWMH _NET_DESKTOP_LAYOUT property parameters.
|
* Generate a desktop layout from EWMH _NET_DESKTOP_LAYOUT property parameters.
|
||||||
|
@ -498,12 +477,6 @@ private:
|
||||||
KWaylandServer::PlasmaVirtualDesktopManagementInterface *m_virtualDesktopManagement = nullptr;
|
KWaylandServer::PlasmaVirtualDesktopManagementInterface *m_virtualDesktopManagement = nullptr;
|
||||||
KSharedConfig::Ptr m_config;
|
KSharedConfig::Ptr m_config;
|
||||||
|
|
||||||
QAction *m_swipeGestureReleasedUp = new QAction();
|
|
||||||
QAction *m_swipeGestureReleasedDown = new QAction();
|
|
||||||
QAction *m_swipeGestureReleasedLeft = new QAction();
|
|
||||||
QAction *m_swipeGestureReleasedRight = new QAction();
|
|
||||||
QPointF m_currentDesktopOffset = QPointF(0, 0);
|
|
||||||
|
|
||||||
KWIN_SINGLETON_VARIABLE(VirtualDesktopManager, s_manager)
|
KWIN_SINGLETON_VARIABLE(VirtualDesktopManager, s_manager)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -236,8 +236,6 @@ void Workspace::init()
|
||||||
connect(vds, &VirtualDesktopManager::desktopCreated, this, &Workspace::slotDesktopAdded);
|
connect(vds, &VirtualDesktopManager::desktopCreated, this, &Workspace::slotDesktopAdded);
|
||||||
connect(vds, &VirtualDesktopManager::desktopRemoved, this, &Workspace::slotDesktopRemoved);
|
connect(vds, &VirtualDesktopManager::desktopRemoved, this, &Workspace::slotDesktopRemoved);
|
||||||
connect(vds, &VirtualDesktopManager::currentChanged, this, &Workspace::slotCurrentDesktopChanged);
|
connect(vds, &VirtualDesktopManager::currentChanged, this, &Workspace::slotCurrentDesktopChanged);
|
||||||
connect(vds, &VirtualDesktopManager::currentChanging, this, &Workspace::slotCurrentDesktopChanging);
|
|
||||||
connect(vds, &VirtualDesktopManager::currentChangingCancelled, this, &Workspace::slotCurrentDesktopChangingCancelled);
|
|
||||||
vds->setNavigationWrappingAround(options->isRollOverDesktops());
|
vds->setNavigationWrappingAround(options->isRollOverDesktops());
|
||||||
connect(options, &Options::rollOverDesktopsChanged, vds, &VirtualDesktopManager::setNavigationWrappingAround);
|
connect(options, &Options::rollOverDesktopsChanged, vds, &VirtualDesktopManager::setNavigationWrappingAround);
|
||||||
vds->setConfig(config);
|
vds->setConfig(config);
|
||||||
|
@ -1024,17 +1022,6 @@ void Workspace::slotCurrentDesktopChanged(uint oldDesktop, uint newDesktop)
|
||||||
Q_EMIT currentDesktopChanged(oldDesktop, movingClient);
|
Q_EMIT currentDesktopChanged(oldDesktop, movingClient);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Workspace::slotCurrentDesktopChanging(uint currentDesktop, QPointF offset)
|
|
||||||
{
|
|
||||||
closeActivePopup();
|
|
||||||
Q_EMIT currentDesktopChanging(currentDesktop, offset, movingClient);
|
|
||||||
}
|
|
||||||
|
|
||||||
void Workspace::slotCurrentDesktopChangingCancelled()
|
|
||||||
{
|
|
||||||
Q_EMIT currentDesktopChangingCancelled();
|
|
||||||
}
|
|
||||||
|
|
||||||
void Workspace::updateClientVisibilityOnDesktopChange(VirtualDesktop *newDesktop)
|
void Workspace::updateClientVisibilityOnDesktopChange(VirtualDesktop *newDesktop)
|
||||||
{
|
{
|
||||||
for (auto it = stacking_order.constBegin();
|
for (auto it = stacking_order.constBegin();
|
||||||
|
|
|
@ -491,8 +491,6 @@ private Q_SLOTS:
|
||||||
void updateCurrentActivity(const QString &new_activity);
|
void updateCurrentActivity(const QString &new_activity);
|
||||||
// virtual desktop handling
|
// virtual desktop handling
|
||||||
void slotCurrentDesktopChanged(uint oldDesktop, uint newDesktop);
|
void slotCurrentDesktopChanged(uint oldDesktop, uint newDesktop);
|
||||||
void slotCurrentDesktopChanging(uint currentDesktop, QPointF delta);
|
|
||||||
void slotCurrentDesktopChangingCancelled();
|
|
||||||
void slotDesktopAdded(VirtualDesktop *desktop);
|
void slotDesktopAdded(VirtualDesktop *desktop);
|
||||||
void slotDesktopRemoved(VirtualDesktop *desktop);
|
void slotDesktopRemoved(VirtualDesktop *desktop);
|
||||||
void slotOutputEnabled(AbstractOutput *output);
|
void slotOutputEnabled(AbstractOutput *output);
|
||||||
|
@ -510,8 +508,6 @@ Q_SIGNALS:
|
||||||
void desktopPresenceChanged(KWin::AbstractClient*, int);
|
void desktopPresenceChanged(KWin::AbstractClient*, int);
|
||||||
void currentActivityChanged();
|
void currentActivityChanged();
|
||||||
void currentDesktopChanged(int, KWin::AbstractClient*);
|
void currentDesktopChanged(int, KWin::AbstractClient*);
|
||||||
void currentDesktopChanging(uint currentDesktop, QPointF delta, KWin::AbstractClient*);//for realtime animations
|
|
||||||
void currentDesktopChangingCancelled();
|
|
||||||
void clientAdded(KWin::AbstractClient *);
|
void clientAdded(KWin::AbstractClient *);
|
||||||
void clientRemoved(KWin::AbstractClient*);
|
void clientRemoved(KWin::AbstractClient*);
|
||||||
void clientActivated(KWin::AbstractClient*);
|
void clientActivated(KWin::AbstractClient*);
|
||||||
|
|
Loading…
Reference in a new issue