diff options
-rw-r--r-- | src/FbMenu.cc | 13 | ||||
-rw-r--r-- | src/FbMenu.hh | 1 | ||||
-rw-r--r-- | src/MenuCreator.cc | 8 | ||||
-rw-r--r-- | src/Remember.cc | 19 |
4 files changed, 20 insertions, 21 deletions
diff --git a/src/FbMenu.cc b/src/FbMenu.cc index 769241d..5bc3622 100644 --- a/src/FbMenu.cc +++ b/src/FbMenu.cc | |||
@@ -35,14 +35,11 @@ FbMenu::FbMenu(FbTk::ThemeProxy<FbTk::MenuTheme> &tm, | |||
35 | 35 | ||
36 | } | 36 | } |
37 | 37 | ||
38 | void FbMenu::show() { | ||
39 | WindowCmd<void>::setWindow(s_window); | ||
40 | FbTk::Menu::show(); | ||
41 | } | ||
42 | |||
43 | void FbMenu::buttonPressEvent(XButtonEvent &be) { | 38 | void FbMenu::buttonPressEvent(XButtonEvent &be) { |
39 | WinClient *old = WindowCmd<void>::client(); | ||
44 | WindowCmd<void>::setWindow(s_window); | 40 | WindowCmd<void>::setWindow(s_window); |
45 | FbTk::Menu::buttonPressEvent(be); | 41 | FbTk::Menu::buttonPressEvent(be); |
42 | WindowCmd<void>::setClient(old); | ||
46 | } | 43 | } |
47 | 44 | ||
48 | void FbMenu::buttonReleaseEvent(XButtonEvent &be) { | 45 | void FbMenu::buttonReleaseEvent(XButtonEvent &be) { |
@@ -55,13 +52,17 @@ void FbMenu::buttonReleaseEvent(XButtonEvent &be) { | |||
55 | screen->getHeadWidth(head), | 52 | screen->getHeadWidth(head), |
56 | screen->getHeadHeight(head)); | 53 | screen->getHeadHeight(head)); |
57 | } | 54 | } |
58 | WindowCmd<void>::setWindow(s_window); | ||
59 | 55 | ||
60 | // now get on with the show | 56 | // now get on with the show |
57 | WinClient *old = WindowCmd<void>::client(); | ||
58 | WindowCmd<void>::setWindow(s_window); | ||
61 | FbTk::Menu::buttonReleaseEvent(be); | 59 | FbTk::Menu::buttonReleaseEvent(be); |
60 | WindowCmd<void>::setClient(old); | ||
62 | } | 61 | } |
63 | 62 | ||
64 | void FbMenu::keyPressEvent(XKeyEvent &ke) { | 63 | void FbMenu::keyPressEvent(XKeyEvent &ke) { |
64 | WinClient *old = WindowCmd<void>::client(); | ||
65 | WindowCmd<void>::setWindow(s_window); | 65 | WindowCmd<void>::setWindow(s_window); |
66 | FbTk::Menu::keyPressEvent(ke); | 66 | FbTk::Menu::keyPressEvent(ke); |
67 | WindowCmd<void>::setClient(old); | ||
67 | } | 68 | } |
diff --git a/src/FbMenu.hh b/src/FbMenu.hh index 11ed3c3..2e709fd 100644 --- a/src/FbMenu.hh +++ b/src/FbMenu.hh | |||
@@ -42,7 +42,6 @@ public: | |||
42 | virtual ~FbMenu() { } | 42 | virtual ~FbMenu() { } |
43 | void raise() { m_layeritem.raise(); } | 43 | void raise() { m_layeritem.raise(); } |
44 | void lower() { m_layeritem.lower(); } | 44 | void lower() { m_layeritem.lower(); } |
45 | void show(); | ||
46 | void buttonPressEvent(XButtonEvent &be); | 45 | void buttonPressEvent(XButtonEvent &be); |
47 | void buttonReleaseEvent(XButtonEvent &be); | 46 | void buttonReleaseEvent(XButtonEvent &be); |
48 | void keyPressEvent(XKeyEvent &ke); | 47 | void keyPressEvent(XKeyEvent &ke); |
diff --git a/src/MenuCreator.cc b/src/MenuCreator.cc index db9aca2..8f9b9a7 100644 --- a/src/MenuCreator.cc +++ b/src/MenuCreator.cc | |||
@@ -168,14 +168,14 @@ private: | |||
168 | class MenuContext: public LayerObject { | 168 | class MenuContext: public LayerObject { |
169 | public: | 169 | public: |
170 | void moveToLayer(int layer_number) { | 170 | void moveToLayer(int layer_number) { |
171 | if (WindowCmd<void>::window() == 0) | 171 | if (FbMenu::window() == 0) |
172 | return; | 172 | return; |
173 | WindowCmd<void>::window()->moveToLayer(layer_number); | 173 | FbMenu::window()->moveToLayer(layer_number); |
174 | } | 174 | } |
175 | int layerNumber() const { | 175 | int layerNumber() const { |
176 | if (WindowCmd<void>::window() == 0) | 176 | if (FbMenu::window() == 0) |
177 | return -1; | 177 | return -1; |
178 | return WindowCmd<void>::window()->layerItem().getLayerNum(); | 178 | return FbMenu::window()->layerItem().getLayerNum(); |
179 | } | 179 | } |
180 | 180 | ||
181 | }; | 181 | }; |
diff --git a/src/Remember.cc b/src/Remember.cc index 0fa778f..6a611bf 100644 --- a/src/Remember.cc +++ b/src/Remember.cc | |||
@@ -29,7 +29,6 @@ | |||
29 | #include "FbMenu.hh" | 29 | #include "FbMenu.hh" |
30 | #include "FbCommands.hh" | 30 | #include "FbCommands.hh" |
31 | #include "fluxbox.hh" | 31 | #include "fluxbox.hh" |
32 | #include "WindowCmd.hh" | ||
33 | #include "Layer.hh" | 32 | #include "Layer.hh" |
34 | 33 | ||
35 | #include "FbTk/I18n.hh" | 34 | #include "FbTk/I18n.hh" |
@@ -250,23 +249,23 @@ public: | |||
250 | } | 249 | } |
251 | 250 | ||
252 | bool isSelected() const { | 251 | bool isSelected() const { |
253 | if (WindowCmd<void>::window() == 0) | 252 | if (FbMenu::window() == 0) |
254 | return false; | 253 | return false; |
255 | 254 | ||
256 | if (WindowCmd<void>::window()->numClients()) // ensure it HAS clients | 255 | if (FbMenu::window()->numClients()) // ensure it HAS clients |
257 | return Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), m_attrib); | 256 | return Remember::instance().isRemembered(FbMenu::window()->winClient(), m_attrib); |
258 | else | 257 | else |
259 | return false; | 258 | return false; |
260 | } | 259 | } |
261 | 260 | ||
262 | bool isEnabled() const { | 261 | bool isEnabled() const { |
263 | if (WindowCmd<void>::window() == 0) | 262 | if (FbMenu::window() == 0) |
264 | return false; | 263 | return false; |
265 | 264 | ||
266 | if (m_attrib != Remember::REM_JUMPWORKSPACE) | 265 | if (m_attrib != Remember::REM_JUMPWORKSPACE) |
267 | return true; | 266 | return true; |
268 | else if (WindowCmd<void>::window()->numClients()) | 267 | else if (FbMenu::window()->numClients()) |
269 | return (Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), Remember::REM_WORKSPACE)); | 268 | return (Remember::instance().isRemembered(FbMenu::window()->winClient(), Remember::REM_WORKSPACE)); |
270 | else | 269 | else |
271 | return false; | 270 | return false; |
272 | } | 271 | } |
@@ -274,11 +273,11 @@ public: | |||
274 | void click(int button, int time, unsigned int mods) { | 273 | void click(int button, int time, unsigned int mods) { |
275 | // reconfigure only does stuff if the apps file has changed | 274 | // reconfigure only does stuff if the apps file has changed |
276 | Remember::instance().checkReload(); | 275 | Remember::instance().checkReload(); |
277 | if (WindowCmd<void>::window() != 0) { | 276 | if (FbMenu::window() != 0) { |
278 | if (isSelected()) { | 277 | if (isSelected()) { |
279 | Remember::instance().forgetAttrib(WindowCmd<void>::window()->winClient(), m_attrib); | 278 | Remember::instance().forgetAttrib(FbMenu::window()->winClient(), m_attrib); |
280 | } else { | 279 | } else { |
281 | Remember::instance().rememberAttrib(WindowCmd<void>::window()->winClient(), m_attrib); | 280 | Remember::instance().rememberAttrib(FbMenu::window()->winClient(), m_attrib); |
282 | } | 281 | } |
283 | } | 282 | } |
284 | Remember::instance().save(); | 283 | Remember::instance().save(); |