1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
// Copyright (C) 2021 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#ifndef EXAMPLESHELLSURFACE_H
#define EXAMPLESHELLSURFACE_H
#include <QtWaylandClient/private/qwaylandclientshellapi_p.h>
#include "qwayland-example-shell.h"
using namespace QtWaylandClient;
//! [ExampleShellSurface]
class ExampleShellSurface : public QWaylandShellSurface
, public QtWayland::qt_example_shell_surface
//! [ExampleShellSurface]
{
public:
ExampleShellSurface(struct ::qt_example_shell_surface *shell_surface, QWaylandWindow *window);
~ExampleShellSurface() override;
//! [virtuals]
bool wantsDecorations() const override;
void setTitle(const QString &) override;
void requestWindowStates(Qt::WindowStates states) override;
void applyConfigure() override;
//! [virtuals]
protected:
//! [events]
void example_shell_surface_minimize(uint32_t minimized) override;
//! [events]
private:
Qt::WindowStates m_pendingStates;
bool m_stateChanged = false;
};
#endif // EXAMPLESHELLSURFACE_H
|