diff options
author | markt <markt> | 2007-06-30 16:54:05 (GMT) |
---|---|---|
committer | markt <markt> | 2007-06-30 16:54:05 (GMT) |
commit | 0f9f19344466cf25170750f768815daf3bdfd2ae (patch) | |
tree | 65584eade13f0135102e0284b1981c3ee8ba6282 /src/WinClient.hh | |
parent | 8e75ace959d2a5d56d30cb6a06ce895f397c1f19 (diff) | |
download | fluxbox-0f9f19344466cf25170750f768815daf3bdfd2ae.zip fluxbox-0f9f19344466cf25170750f768815daf3bdfd2ae.tar.bz2 |
fixed implementation of _NET_WM_STATE_MODAL
Diffstat (limited to 'src/WinClient.hh')
-rw-r--r-- | src/WinClient.hh | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/WinClient.hh b/src/WinClient.hh index 40daa8e..01517c2 100644 --- a/src/WinClient.hh +++ b/src/WinClient.hh | |||
@@ -57,9 +57,6 @@ public: | |||
57 | // not aware of anything that makes this false at present | 57 | // not aware of anything that makes this false at present |
58 | inline bool isClosable() const { return true; } | 58 | inline bool isClosable() const { return true; } |
59 | 59 | ||
60 | void addModal(); // some transient of ours (or us) is modal | ||
61 | void removeModal(); // some transient (or us) is no longer modal | ||
62 | |||
63 | /// updates from wm class hints | 60 | /// updates from wm class hints |
64 | void updateWMClassHint(); | 61 | void updateWMClassHint(); |
65 | void updateWMProtocols(); | 62 | void updateWMProtocols(); |
@@ -127,7 +124,9 @@ public: | |||
127 | inline const TransientList &transientList() const { return transients; } | 124 | inline const TransientList &transientList() const { return transients; } |
128 | inline bool isTransient() const { return transient_for != 0; } | 125 | inline bool isTransient() const { return transient_for != 0; } |
129 | 126 | ||
130 | inline bool isModal() const { return m_modal > 0; } | 127 | inline bool isModal() const { return m_modal_count > 0; } |
128 | inline bool isStateModal() const { return m_modal; } | ||
129 | void setStateModal(bool state); | ||
131 | 130 | ||
132 | const FbTk::FbPixmap &iconPixmap() const { return m_icon_pixmap; } | 131 | const FbTk::FbPixmap &iconPixmap() const { return m_icon_pixmap; } |
133 | const FbTk::FbPixmap &iconMask() const { return m_icon_mask; } | 132 | const FbTk::FbPixmap &iconMask() const { return m_icon_mask; } |
@@ -188,11 +187,16 @@ private: | |||
188 | /// removes client from any waiting list and clears empty waiting lists | 187 | /// removes client from any waiting list and clears empty waiting lists |
189 | void removeTransientFromWaitingList(); | 188 | void removeTransientFromWaitingList(); |
190 | 189 | ||
190 | // some transient of ours (or us) is modal | ||
191 | void addModal() { ++m_modal_count; } | ||
192 | // some transient (or us) is no longer modal | ||
193 | void removeModal() { --m_modal_count; } | ||
194 | |||
191 | FluxboxWindow *m_win; | 195 | FluxboxWindow *m_win; |
192 | 196 | ||
193 | // number of transients which we are modal for | 197 | // number of transients which we are modal for |
194 | // or indicates that we are modal if don't have any transients | 198 | int m_modal_count; |
195 | int m_modal; | 199 | bool m_modal; |
196 | bool send_focus_message, send_close_message; | 200 | bool send_focus_message, send_close_message; |
197 | 201 | ||
198 | int m_win_gravity; | 202 | int m_win_gravity; |