diff --git a/client.h b/client.h
index d64c6972e..17c91a098 100644
--- a/client.h
+++ b/client.h
@@ -483,7 +483,7 @@ public:
const QKeySequence &shortcut() const;
void setShortcut(const QString& cut);
- WindowOperation mouseButtonToWindowOperation(Qt::MouseButtons button);
+ Options::WindowOperation mouseButtonToWindowOperation(Qt::MouseButtons button);
bool performMouseCommand(Options::MouseCommand, const QPoint& globalPos);
QRect adjustedClientArea(const QRect& desktop, const QRect& area) const;
diff --git a/decorations/decoratedclient.cpp b/decorations/decoratedclient.cpp
index 3d7700f45..d67a8743f 100644
--- a/decorations/decoratedclient.cpp
+++ b/decorations/decoratedclient.cpp
@@ -142,7 +142,7 @@ DELEGATE(WId, decorationId, frameId)
#define DELEGATE(name, op) \
void DecoratedClientImpl::name() \
{ \
- Workspace::self()->performWindowOperation(m_client, KDecorationDefines::op); \
+ Workspace::self()->performWindowOperation(m_client, Options::op); \
}
DELEGATE(requestToggleShade, ShadeOp)
diff --git a/options.cpp b/options.cpp
index 33d9d050a..c8cb62f4b 100644
--- a/options.cpp
+++ b/options.cpp
@@ -1155,7 +1155,7 @@ double Options::animationTimeFactor() const
return factors[ animationSpeed ];
}
-KDecorationDefines::WindowOperation Options::operationMaxButtonClick(Qt::MouseButtons button) const
+Options::WindowOperation Options::operationMaxButtonClick(Qt::MouseButtons button) const
{
return button == Qt::RightButton ? opMaxButtonRightClick :
button == Qt::MidButton ? opMaxButtonMiddleClick :
diff --git a/options.h b/options.h
index 9119bd51d..e4fb473a5 100644
--- a/options.h
+++ b/options.h
@@ -47,13 +47,14 @@ enum HiddenPreviews {
class Settings;
-class Options : public QObject, public KDecorationDefines
+class Options : public QObject
{
Q_OBJECT
Q_ENUMS(FocusPolicy)
Q_ENUMS(GlSwapStrategy)
Q_ENUMS(MouseCommand)
Q_ENUMS(MouseWheelCommand)
+ Q_ENUMS(WindowOperation)
Q_PROPERTY(FocusPolicy focusPolicy READ focusPolicy WRITE setFocusPolicy NOTIFY focusPolicyChanged)
Q_PROPERTY(bool nextFocusPrefersMouse READ isNextFocusPrefersMouse WRITE setNextFocusPrefersMouse NOTIFY nextFocusPrefersMouseChanged)
@@ -347,6 +348,37 @@ public:
return m_legacyFullscreenSupport;
}
+ enum WindowOperation {
+ MaximizeOp = 5000,
+ RestoreOp,
+ MinimizeOp,
+ MoveOp,
+ UnrestrictedMoveOp,
+ ResizeOp,
+ UnrestrictedResizeOp,
+ CloseOp,
+ OnAllDesktopsOp,
+ ShadeOp,
+ KeepAboveOp,
+ KeepBelowOp,
+ OperationsOp,
+ WindowRulesOp,
+ ToggleStoreSettingsOp = WindowRulesOp, ///< @obsolete
+ HMaximizeOp,
+ VMaximizeOp,
+ LowerOp,
+ FullScreenOp,
+ NoBorderOp,
+ NoOp,
+ SetupWindowShortcutOp,
+ ApplicationRulesOp,
+ RemoveTabFromGroupOp, // Remove from group
+ CloseTabGroupOp, // Close the group
+ ActivateNextTabOp, // Move left in the group
+ ActivatePreviousTabOp, // Move right in the group
+ TabDragOp,
+ };
+
WindowOperation operationTitlebarDblClick() const {
return OpTitlebarDblClick;
}
@@ -914,4 +946,6 @@ extern Options* options;
} // namespace
+Q_DECLARE_METATYPE(KWin::Options::WindowOperation)
+
#endif
diff --git a/useractions.cpp b/useractions.cpp
index 1343198d3..937af4c02 100644
--- a/useractions.cpp
+++ b/useractions.cpp
@@ -740,7 +740,7 @@ void UserActionsMenu::slotWindowOperation(QAction *action)
QMetaObject::invokeMethod(workspace(), "performWindowOperation",
Qt::QueuedConnection,
Q_ARG(KWin::Client*, c.data()),
- Q_ARG(KDecorationDefines::WindowOperation, op));
+ Q_ARG(Options::WindowOperation, op));
}
void UserActionsMenu::slotSendToDesktop(QAction *action)
diff --git a/workspace.h b/workspace.h
index baffc4dc3..3815498aa 100644
--- a/workspace.h
+++ b/workspace.h
@@ -26,6 +26,7 @@ along with this program. If not, see .
// kwin
#include
#include "sm.h"
+#include "options.h"
#include "utils.h"
// Qt
#include
@@ -330,7 +331,7 @@ public:
void unregisterEventFilter(X11EventFilter *filter);
public Q_SLOTS:
- void performWindowOperation(KWin::Client* c, KDecorationDefines::WindowOperation op);
+ void performWindowOperation(KWin::Client* c, Options::WindowOperation op);
// Keybindings
//void slotSwitchToWindow( int );
void slotWindowToDesktop();