aboutsummaryrefslogtreecommitdiff
path: root/src/fluxbox.hh
diff options
context:
space:
mode:
authorrathnor <rathnor>2003-07-28 15:06:36 (GMT)
committerrathnor <rathnor>2003-07-28 15:06:36 (GMT)
commitd353b688dec41daddeec9696586a4519f58cce45 (patch)
tree322a29e0e31cb15a7725047c10144c4ab3d5e130 /src/fluxbox.hh
parentf9bb208da8e8926281c91f3e386ec1de48f700a2 (diff)
downloadfluxbox_pavel-d353b688dec41daddeec9696586a4519f58cce45.zip
fluxbox_pavel-d353b688dec41daddeec9696586a4519f58cce45.tar.bz2
update many things to use WinClient instead of FluxboxWindow
Diffstat (limited to 'src/fluxbox.hh')
-rw-r--r--src/fluxbox.hh32
1 files changed, 22 insertions, 10 deletions
diff --git a/src/fluxbox.hh b/src/fluxbox.hh
index 19f3d32..4f32ea3 100644
--- a/src/fluxbox.hh
+++ b/src/fluxbox.hh
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: fluxbox.hh,v 1.68 2003/07/23 10:43:30 fluxgen Exp $ 25// $Id: fluxbox.hh,v 1.69 2003/07/28 15:06:36 rathnor Exp $
26 26
27#ifndef FLUXBOX_HH 27#ifndef FLUXBOX_HH
28#define FLUXBOX_HH 28#define FLUXBOX_HH
@@ -88,9 +88,10 @@ public:
88 88
89 inline Atom getFluxboxPidAtom() const { return m_fluxbox_pid; } 89 inline Atom getFluxboxPidAtom() const { return m_fluxbox_pid; }
90 90
91 FluxboxWindow *searchGroup(Window, FluxboxWindow *); 91 // Not currently implemented until we decide how it'll be used
92 FluxboxWindow *searchWindow(Window); 92 //WinClient *searchGroup(Window);
93 inline FluxboxWindow *getFocusedWindow() { return m_focused_window; } 93 WinClient *searchWindow(Window);
94 inline WinClient *getFocusedWindow() { return m_focused_window; }
94 95
95 96
96 BScreen *searchScreen(Window w); 97 BScreen *searchScreen(Window w);
@@ -151,7 +152,7 @@ public:
151 152
152 void watchKeyRelease(BScreen &screen, unsigned int mods); 153 void watchKeyRelease(BScreen &screen, unsigned int mods);
153 154
154 void setFocusedWindow(FluxboxWindow *w); 155 void setFocusedWindow(WinClient *w);
155 void revertFocus(BScreen &screen); 156 void revertFocus(BScreen &screen);
156 void shutdown(); 157 void shutdown();
157 void load_rc(BScreen &scr); 158 void load_rc(BScreen &scr);
@@ -162,10 +163,14 @@ public:
162 void clearMenuFilenames(); 163 void clearMenuFilenames();
163 void saveTitlebarFilename(const char *); 164 void saveTitlebarFilename(const char *);
164 void saveSlitlistFilename(const char *val) { m_rc_slitlistfile = (val == 0 ? "" : val); } 165 void saveSlitlistFilename(const char *val) { m_rc_slitlistfile = (val == 0 ? "" : val); }
165 void saveWindowSearch(Window win, FluxboxWindow *fbwin); 166 void saveWindowSearch(Window win, WinClient *winclient);
166 void saveGroupSearch(Window win, FluxboxWindow *fbwin); 167 // some windows relate to the group, not the client, so we record separately
168 // searchWindow on these windows will give the active client in the group
169 void saveWindowSearchGroup(Window win, FluxboxWindow *fbwin);
170 void saveGroupSearch(Window win, WinClient *winclient);
167 void save_rc(); 171 void save_rc();
168 void removeWindowSearch(Window win); 172 void removeWindowSearch(Window win);
173 void removeWindowSearchGroup(Window win);
169 void removeGroupSearch(Window win); 174 void removeGroupSearch(Window win);
170 void restart(const char *command = 0); 175 void restart(const char *command = 0);
171 void reconfigure(); 176 void reconfigure();
@@ -243,14 +248,21 @@ private:
243 FbTk::Resource<unsigned int> m_rc_cache_life, m_rc_cache_max; 248 FbTk::Resource<unsigned int> m_rc_cache_life, m_rc_cache_max;
244 249
245 250
246 std::map<Window, FluxboxWindow *> m_window_search; 251 std::map<Window, WinClient *> m_window_search;
247 std::map<Window, FluxboxWindow *> m_group_search; 252 std::map<Window, FluxboxWindow *> m_window_search_group;
253 // A window is the group leader, which can map to several
254 // WinClients in the group, it is *not* fluxbox's concept of groups
255 // See ICCCM section 4.1.11
256 // The group leader (which may not be mapped, so may not have a WinClient)
257 // will have it's window being the group index
258 std::multimap<Window, WinClient *> m_group_search;
248 259
249 std::list<MenuTimestamp *> m_menu_timestamps; 260 std::list<MenuTimestamp *> m_menu_timestamps;
250 typedef std::list<BScreen *> ScreenList; 261 typedef std::list<BScreen *> ScreenList;
251 ScreenList m_screen_list; 262 ScreenList m_screen_list;
252 263
253 FluxboxWindow *m_focused_window, *m_masked_window; 264 WinClient *m_focused_window;
265 FluxboxWindow *m_masked_window;
254 FbTk::Timer m_timer; 266 FbTk::Timer m_timer;
255 267
256 BScreen *m_mousescreen, *m_keyscreen; 268 BScreen *m_mousescreen, *m_keyscreen;