summaryrefslogtreecommitdiff
path: root/src/protocols/OutputManagement.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/protocols/OutputManagement.hpp')
-rw-r--r--src/protocols/OutputManagement.hpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/protocols/OutputManagement.hpp b/src/protocols/OutputManagement.hpp
index cb03661e..f26e9c91 100644
--- a/src/protocols/OutputManagement.hpp
+++ b/src/protocols/OutputManagement.hpp
@@ -141,8 +141,12 @@ class COutputConfiguration {
SP<CZwlrOutputConfigurationV1> m_resource;
std::vector<WP<COutputConfigurationHead>> m_heads;
WP<COutputManager> m_owner;
+ WP<COutputConfiguration> m_self;
bool applyTestConfiguration(bool test);
+
+ friend class COutputManagementProtocol;
+ friend class COutputManager;
};
class COutputManagementProtocol : public IWaylandProtocol {
@@ -154,6 +158,8 @@ class COutputManagementProtocol : public IWaylandProtocol {
// doesn't have to return one
SP<SWlrManagerSavedOutputState> getOutputStateFor(PHLMONITOR pMonitor);
+ void sendPendingSuccessEvents();
+
private:
void destroyResource(COutputManager* resource);
void destroyResource(COutputHead* resource);
@@ -169,6 +175,7 @@ class COutputManagementProtocol : public IWaylandProtocol {
std::vector<SP<COutputMode>> m_modes;
std::vector<SP<COutputConfiguration>> m_configurations;
std::vector<SP<COutputConfigurationHead>> m_configurationHeads;
+ std::vector<WP<COutputConfiguration>> m_pendingConfigurationSuccessEvents;
SP<COutputHead> headFromResource(wl_resource* r);
SP<COutputMode> modeFromResource(wl_resource* r);