shift-shell/quicksettings/screenrotation/screenrotationutil.h
2023-11-05 15:09:33 -08:00

34 lines
850 B
C++

// SPDX-FileCopyrightText: 2022-2023 Devin Lin <devin@kde.org>
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include <QObject>
#include <QOrientationSensor>
#include <kscreen/config.h>
class ScreenRotationUtil : public QObject
{
Q_OBJECT
Q_PROPERTY(bool autoScreenRotationEnabled READ autoScreenRotationEnabled WRITE setAutoScreenRotationEnabled NOTIFY autoScreenRotationEnabledChanged);
Q_PROPERTY(bool available READ isAvailable NOTIFY availableChanged);
public:
ScreenRotationUtil(QObject *parent = nullptr);
bool autoScreenRotationEnabled();
void setAutoScreenRotationEnabled(bool value);
bool isAvailable();
Q_SIGNALS:
void autoScreenRotationEnabledChanged();
void availableChanged();
private:
KScreen::ConfigPtr m_config;
QOrientationSensor *m_sensor;
bool m_available;
};