aboutsummaryrefslogtreecommitdiff
path: root/src/Gnome.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/Gnome.hh')
-rw-r--r--src/Gnome.hh106
1 files changed, 53 insertions, 53 deletions
diff --git a/src/Gnome.hh b/src/Gnome.hh
index 3f1346b..c8a6925 100644
--- a/src/Gnome.hh
+++ b/src/Gnome.hh
@@ -19,7 +19,7 @@
19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 19// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20// DEALINGS IN THE SOFTWARE. 20// DEALINGS IN THE SOFTWARE.
21 21
22// $Id: Gnome.hh,v 1.3 2002/10/16 19:01:58 fluxgen Exp $ 22// $Id: Gnome.hh,v 1.4 2002/12/01 13:41:57 rathnor Exp $
23 23
24#ifndef GNOME_HH 24#ifndef GNOME_HH
25#define GNOME_HH 25#define GNOME_HH
@@ -31,67 +31,67 @@
31 31
32class Gnome:public AtomHandler { 32class Gnome:public AtomHandler {
33public: 33public:
34 enum GnomeLayer { 34 enum GnomeLayer {
35 WIN_LAYER_DESKTOP = 0, 35 WIN_LAYER_DESKTOP = 0,
36 WIN_LAYER_BELOW = 2, 36 WIN_LAYER_BELOW = 2,
37 WIN_LAYER_NORMAL = 4, 37 WIN_LAYER_NORMAL = 4,
38 WIN_LAYER_ONTOP = 6, 38 WIN_LAYER_ONTOP = 6,
39 WIN_LAYER_DOCK = 8, 39 WIN_LAYER_DOCK = 8,
40 WIN_LAYER_ABOVE_DOCK = 10, 40 WIN_LAYER_ABOVE_DOCK = 10,
41 WIN_LAYER_MENU = 12 41 WIN_LAYER_MENU = 12
42 }; 42 };
43 43
44 enum GnomeState { 44 enum GnomeState {
45 WIN_STATE_STICKY = (1<<0), // everyone knows sticky 45 WIN_STATE_STICKY = (1<<0), // everyone knows sticky
46 WIN_STATE_MINIMIZED = (1<<1), // Reserved - definition is unclear 46 WIN_STATE_MINIMIZED = (1<<1), // Reserved - definition is unclear
47 WIN_STATE_MAXIMIZED_VERT = (1<<2), // window in maximized V state 47 WIN_STATE_MAXIMIZED_VERT = (1<<2), // window in maximized V state
48 WIN_STATE_MAXIMIZED_HORIZ = (1<<3), // window in maximized H state 48 WIN_STATE_MAXIMIZED_HORIZ = (1<<3), // window in maximized H state
49 WIN_STATE_HIDDEN = (1<<4), // not on taskbar but window visible 49 WIN_STATE_HIDDEN = (1<<4), // not on taskbar but window visible
50 WIN_STATE_SHADED = (1<<5), // shaded (MacOS / Afterstep style) 50 WIN_STATE_SHADED = (1<<5), // shaded (MacOS / Afterstep style)
51 WIN_STATE_HID_WORKSPACE = (1<<6), // not on current desktop 51 WIN_STATE_HID_WORKSPACE = (1<<6), // not on current desktop
52 WIN_STATE_HID_TRANSIENT = (1<<7), // owner of transient is hidden 52 WIN_STATE_HID_TRANSIENT = (1<<7), // owner of transient is hidden
53 WIN_STATE_FIXED_POSITION = (1<<8), // window is fixed in position even 53 WIN_STATE_FIXED_POSITION = (1<<8), // window is fixed in position even
54 WIN_STATE_ARRANGE_IGNORE = (1<<9) // ignore for auto arranging 54 WIN_STATE_ARRANGE_IGNORE = (1<<9) // ignore for auto arranging
55 }; 55 };
56 56
57 enum GnomeHints { 57 enum GnomeHints {
58 WIN_HINTS_SKIP_FOCUS = (1<<0), // skip this window 58 WIN_HINTS_SKIP_FOCUS = (1<<0), // skip this window
59 WIN_HINTS_SKIP_WINLIST = (1<<1), // do not show in window list 59 WIN_HINTS_SKIP_WINLIST = (1<<1), // do not show in window list
60 WIN_HINTS_SKIP_TASKBAR = (1<<2), // do not show on taskbar 60 WIN_HINTS_SKIP_TASKBAR = (1<<2), // do not show on taskbar
61 WIN_HINTS_GROUP_TRANSIENT = (1<<3), // Reserved - definition is unclear 61 WIN_HINTS_GROUP_TRANSIENT = (1<<3), // Reserved - definition is unclear
62 WIN_HINTS_FOCUS_ON_CLICK = (1<<4) // app only accepts focus if clicked 62 WIN_HINTS_FOCUS_ON_CLICK = (1<<4) // app only accepts focus if clicked
63 }; 63 };
64 64
65 Gnome(); 65 Gnome();
66 ~Gnome(); 66 ~Gnome();
67 void initForScreen(const BScreen &screen); 67 void initForScreen(const BScreen &screen);
68 void setupWindow(FluxboxWindow &win); 68 void setupWindow(FluxboxWindow &win);
69 69
70 void updateClientList(const BScreen &screen); 70 void updateClientList(const BScreen &screen);
71 void updateWorkspaceNames(const BScreen &screen); 71 void updateWorkspaceNames(const BScreen &screen);
72 void updateCurrentWorkspace(const BScreen &screen); 72 void updateCurrentWorkspace(const BScreen &screen);
73 void updateWorkspaceCount(const BScreen &screen); 73 void updateWorkspaceCount(const BScreen &screen);
74 74
75 void updateState(FluxboxWindow &win); 75 void updateState(FluxboxWindow &win);
76 void updateHints(FluxboxWindow &win); 76 void updateHints(FluxboxWindow &win);
77 void updateWorkspace(FluxboxWindow &win); 77 void updateWorkspace(FluxboxWindow &win);
78 78
79 79
80 bool checkClientMessage(const XClientMessageEvent &ce, BScreen * const screen, FluxboxWindow * const win); 80 bool checkClientMessage(const XClientMessageEvent &ce, BScreen * const screen, FluxboxWindow * const win);
81 81
82private: 82private:
83 void setLayer(GnomeLayer layer); 83 void setLayer(GnomeLayer layer);
84 void setState(FluxboxWindow *win, int state); 84 void setState(FluxboxWindow *win, int state);
85 void setLayer(int layer); 85 void setLayer(int layer);
86 void createAtoms(); 86 void createAtoms();
87 Atom m_gnome_wm_win_layer, m_gnome_wm_win_state, m_gnome_wm_win_hints, 87 Atom m_gnome_wm_win_layer, m_gnome_wm_win_state, m_gnome_wm_win_hints,
88 m_gnome_wm_win_app_state, m_gnome_wm_win_expanded_size, 88 m_gnome_wm_win_app_state, m_gnome_wm_win_expanded_size,
89 m_gnome_wm_win_icons, m_gnome_wm_win_workspace, 89 m_gnome_wm_win_icons, m_gnome_wm_win_workspace,
90 m_gnome_wm_win_workspace_count, m_gnome_wm_win_workspace_names, 90 m_gnome_wm_win_workspace_count, m_gnome_wm_win_workspace_names,
91 m_gnome_wm_win_client_list; 91 m_gnome_wm_win_client_list;
92 Atom m_gnome_wm_prot; 92 Atom m_gnome_wm_prot;
93 Atom m_gnome_wm_supporting_wm_check; 93 Atom m_gnome_wm_supporting_wm_check;
94 std::vector<Window> m_gnomewindows; 94 std::vector<Window> m_gnomewindows;
95}; 95};
96 96
97#endif // GNOME_HH 97#endif // GNOME_HH