2
* Copyright (C) 2013-2016 Canonical, Ltd.
4
* This program is free software: you can redistribute it and/or modify it under
5
* the terms of the GNU Lesser General Public License version 3, as published by
6
* the Free Software Foundation.
8
* This program is distributed in the hope that it will be useful, but WITHOUT
9
* ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
10
* SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
* Lesser General Public License for more details.
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
#ifndef NATIVEINTEGRATION_H
18
#define NATIVEINTEGRATION_H
21
#include <QSharedPointer>
22
#include <qpa/qplatformnativeinterface.h>
30
namespace qtmir { class PromptSessionManager; }
31
namespace mir { namespace shell { class PersistentSurfaceStore; }}
33
class NativeInterface : public QPlatformNativeInterface
37
NativeInterface(QMirServer *);
39
void *nativeResourceForIntegration(const QByteArray &resource) override;
41
QVariantMap windowProperties(QPlatformWindow *window) const override;
42
QVariant windowProperty(QPlatformWindow *window, const QString &name) const override;
43
QVariant windowProperty(QPlatformWindow *window, const QString &name, const QVariant &defaultValue) const override;
45
std::shared_ptr<qtmir::PromptSessionManager> thePromptSessionManager() const;
46
std::shared_ptr<mir::shell::PersistentSurfaceStore> thePersistentSurfaceStore() const;
49
QMirServer *m_qMirServer;
52
#endif // NATIVEINTEGRATION_H