Advance Wayland and KDE package bring-up

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
2026-04-14 10:51:06 +01:00
parent 51f3c21121
commit cf12defd28
15214 changed files with 20594243 additions and 269 deletions
@@ -0,0 +1,187 @@
/*
SPDX-FileCopyrightText: 2023 Vlad Zahorodnii <vlad.zahorodnii@kde.org>
SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "gesturehandler.h"
#include "gestures.h"
#include "globalshortcuts.h"
#include "input.h"
namespace KWin
{
SwipeGestureHandler::SwipeGestureHandler(QObject *parent)
: QObject(parent)
{
}
SwipeGestureHandler::~SwipeGestureHandler()
{
}
void SwipeGestureHandler::classBegin()
{
}
void SwipeGestureHandler::componentComplete()
{
m_gesture = std::make_unique<SwipeGesture>();
m_gesture->setDirection(SwipeDirection(m_direction));
m_gesture->setMinimumDelta(QPointF(200, 200));
m_gesture->setMaximumFingerCount(m_fingerCount);
m_gesture->setMinimumFingerCount(m_fingerCount);
connect(m_gesture.get(), &SwipeGesture::triggered, this, &SwipeGestureHandler::activated);
connect(m_gesture.get(), &SwipeGesture::cancelled, this, &SwipeGestureHandler::cancelled);
connect(m_gesture.get(), &SwipeGesture::progress, this, &SwipeGestureHandler::setProgress);
switch (m_deviceType) {
case Device::Touchpad:
input()->shortcuts()->registerTouchpadSwipe(m_gesture.get());
break;
case Device::Touchscreen:
input()->shortcuts()->registerTouchscreenSwipe(m_gesture.get());
break;
}
}
SwipeGestureHandler::Direction SwipeGestureHandler::direction() const
{
return m_direction;
}
void SwipeGestureHandler::setDirection(Direction direction)
{
if (m_direction != direction) {
m_direction = direction;
Q_EMIT directionChanged();
}
}
int SwipeGestureHandler::fingerCount() const
{
return m_fingerCount;
}
void SwipeGestureHandler::setFingerCount(int fingerCount)
{
if (m_fingerCount != fingerCount) {
m_fingerCount = fingerCount;
Q_EMIT fingerCountChanged();
}
}
qreal SwipeGestureHandler::progress() const
{
return m_progress;
}
void SwipeGestureHandler::setProgress(qreal progress)
{
if (m_progress != progress) {
m_progress = progress;
Q_EMIT progressChanged();
}
}
SwipeGestureHandler::Device SwipeGestureHandler::deviceType() const
{
return m_deviceType;
}
void SwipeGestureHandler::setDeviceType(Device device)
{
if (m_deviceType != device) {
m_deviceType = device;
Q_EMIT deviceTypeChanged();
}
}
PinchGestureHandler::PinchGestureHandler(QObject *parent)
: QObject(parent)
{
}
PinchGestureHandler::~PinchGestureHandler()
{
}
void PinchGestureHandler::classBegin()
{
}
void PinchGestureHandler::componentComplete()
{
m_gesture = std::make_unique<PinchGesture>();
m_gesture->setDirection(PinchDirection(m_direction));
m_gesture->setMaximumFingerCount(m_fingerCount);
m_gesture->setMinimumFingerCount(m_fingerCount);
connect(m_gesture.get(), &PinchGesture::triggered, this, &PinchGestureHandler::activated);
connect(m_gesture.get(), &PinchGesture::cancelled, this, &PinchGestureHandler::cancelled);
connect(m_gesture.get(), &PinchGesture::progress, this, &PinchGestureHandler::setProgress);
switch (m_deviceType) {
case Device::Touchpad:
input()->shortcuts()->registerTouchpadPinch(m_gesture.get());
break;
}
}
PinchGestureHandler::Direction PinchGestureHandler::direction() const
{
return m_direction;
}
void PinchGestureHandler::setDirection(Direction direction)
{
if (m_direction != direction) {
m_direction = direction;
Q_EMIT directionChanged();
}
}
int PinchGestureHandler::fingerCount() const
{
return m_fingerCount;
}
void PinchGestureHandler::setFingerCount(int fingerCount)
{
if (m_fingerCount != fingerCount) {
m_fingerCount = fingerCount;
Q_EMIT fingerCountChanged();
}
}
qreal PinchGestureHandler::progress() const
{
return m_progress;
}
void PinchGestureHandler::setProgress(qreal progress)
{
if (m_progress != progress) {
m_progress = progress;
Q_EMIT progressChanged();
}
}
PinchGestureHandler::Device PinchGestureHandler::deviceType() const
{
return m_deviceType;
}
void PinchGestureHandler::setDeviceType(Device device)
{
if (m_deviceType != device) {
m_deviceType = device;
Q_EMIT deviceTypeChanged();
}
}
} // namespace KWin
#include "moc_gesturehandler.cpp"