shift-shell/components/shellsettingsplugin/kwinsettings.h
Devin Lin 22b095e340 gestures: Set kwin touch area to be gesture guide area height
Use a heuristic (the height of the gesture guide panel) to set the
gesture trigger area.
2025-12-25 22:27:44 -05:00

59 lines
1.4 KiB
C++

/*
* SPDX-FileCopyrightText: 2025 Florian RICHER <florian.richer@protonmail.com>
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#pragma once
#include <KConfigGroup>
#include <KConfigWatcher>
#include <KSharedConfig>
#include <qobject.h>
#include <qqmlintegration.h>
class KWinSettings : public QObject
{
Q_OBJECT
QML_NAMED_ELEMENT(KWinSettings)
QML_SINGLETON
Q_PROPERTY(bool doubleTapWakeup READ doubleTapWakeup WRITE setDoubleTapWakeup NOTIFY doubleTapWakeupChanged)
Q_PROPERTY(int screenEdgeTouchTarget READ screenEdgeTouchTarget WRITE setScreenEdgeTouchTarget NOTIFY screenEdgeTouchTargetChanged)
public:
KWinSettings(QObject *parent = nullptr);
/**
* Whether Double Tap to Wakeup is enabled.
*/
bool doubleTapWakeup() const;
/**
* Set whether Double Tap to Wakeup is enabled.
*
* @param enabled
*/
void setDoubleTapWakeup(bool enabled);
/**
* Get the screen edge touch target value.
*/
int screenEdgeTouchTarget() const;
/**
* Set the screen edge touch target value.
*
* @param target
*/
void setScreenEdgeTouchTarget(int target);
Q_SIGNALS:
void doubleTapWakeupChanged();
void screenEdgeTouchTargetChanged();
private:
KConfigWatcher::Ptr m_configWatcher;
KSharedConfig::Ptr m_config;
KSharedConfig::Ptr m_overlayConfig;
};