use FbMenu::window instead of WindowCmd<>::window for displaying items in the window menu
This commit is contained in:
parent
fd0389d2e1
commit
41b2e0ced4
4 changed files with 20 additions and 21 deletions
|
@ -35,14 +35,11 @@ FbMenu::FbMenu(FbTk::ThemeProxy<FbTk::MenuTheme> &tm,
|
|||
|
||||
}
|
||||
|
||||
void FbMenu::show() {
|
||||
WindowCmd<void>::setWindow(s_window);
|
||||
FbTk::Menu::show();
|
||||
}
|
||||
|
||||
void FbMenu::buttonPressEvent(XButtonEvent &be) {
|
||||
WinClient *old = WindowCmd<void>::client();
|
||||
WindowCmd<void>::setWindow(s_window);
|
||||
FbTk::Menu::buttonPressEvent(be);
|
||||
WindowCmd<void>::setClient(old);
|
||||
}
|
||||
|
||||
void FbMenu::buttonReleaseEvent(XButtonEvent &be) {
|
||||
|
@ -55,13 +52,17 @@ void FbMenu::buttonReleaseEvent(XButtonEvent &be) {
|
|||
screen->getHeadWidth(head),
|
||||
screen->getHeadHeight(head));
|
||||
}
|
||||
WindowCmd<void>::setWindow(s_window);
|
||||
|
||||
// now get on with the show
|
||||
WinClient *old = WindowCmd<void>::client();
|
||||
WindowCmd<void>::setWindow(s_window);
|
||||
FbTk::Menu::buttonReleaseEvent(be);
|
||||
WindowCmd<void>::setClient(old);
|
||||
}
|
||||
|
||||
void FbMenu::keyPressEvent(XKeyEvent &ke) {
|
||||
WinClient *old = WindowCmd<void>::client();
|
||||
WindowCmd<void>::setWindow(s_window);
|
||||
FbTk::Menu::keyPressEvent(ke);
|
||||
WindowCmd<void>::setClient(old);
|
||||
}
|
||||
|
|
|
@ -42,7 +42,6 @@ public:
|
|||
virtual ~FbMenu() { }
|
||||
void raise() { m_layeritem.raise(); }
|
||||
void lower() { m_layeritem.lower(); }
|
||||
void show();
|
||||
void buttonPressEvent(XButtonEvent &be);
|
||||
void buttonReleaseEvent(XButtonEvent &be);
|
||||
void keyPressEvent(XKeyEvent &ke);
|
||||
|
|
|
@ -168,14 +168,14 @@ private:
|
|||
class MenuContext: public LayerObject {
|
||||
public:
|
||||
void moveToLayer(int layer_number) {
|
||||
if (WindowCmd<void>::window() == 0)
|
||||
if (FbMenu::window() == 0)
|
||||
return;
|
||||
WindowCmd<void>::window()->moveToLayer(layer_number);
|
||||
FbMenu::window()->moveToLayer(layer_number);
|
||||
}
|
||||
int layerNumber() const {
|
||||
if (WindowCmd<void>::window() == 0)
|
||||
if (FbMenu::window() == 0)
|
||||
return -1;
|
||||
return WindowCmd<void>::window()->layerItem().getLayerNum();
|
||||
return FbMenu::window()->layerItem().getLayerNum();
|
||||
}
|
||||
|
||||
};
|
||||
|
|
|
@ -29,7 +29,6 @@
|
|||
#include "FbMenu.hh"
|
||||
#include "FbCommands.hh"
|
||||
#include "fluxbox.hh"
|
||||
#include "WindowCmd.hh"
|
||||
#include "Layer.hh"
|
||||
|
||||
#include "FbTk/I18n.hh"
|
||||
|
@ -250,23 +249,23 @@ public:
|
|||
}
|
||||
|
||||
bool isSelected() const {
|
||||
if (WindowCmd<void>::window() == 0)
|
||||
if (FbMenu::window() == 0)
|
||||
return false;
|
||||
|
||||
if (WindowCmd<void>::window()->numClients()) // ensure it HAS clients
|
||||
return Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), m_attrib);
|
||||
if (FbMenu::window()->numClients()) // ensure it HAS clients
|
||||
return Remember::instance().isRemembered(FbMenu::window()->winClient(), m_attrib);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
bool isEnabled() const {
|
||||
if (WindowCmd<void>::window() == 0)
|
||||
if (FbMenu::window() == 0)
|
||||
return false;
|
||||
|
||||
if (m_attrib != Remember::REM_JUMPWORKSPACE)
|
||||
return true;
|
||||
else if (WindowCmd<void>::window()->numClients())
|
||||
return (Remember::instance().isRemembered(WindowCmd<void>::window()->winClient(), Remember::REM_WORKSPACE));
|
||||
else if (FbMenu::window()->numClients())
|
||||
return (Remember::instance().isRemembered(FbMenu::window()->winClient(), Remember::REM_WORKSPACE));
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
@ -274,11 +273,11 @@ public:
|
|||
void click(int button, int time, unsigned int mods) {
|
||||
// reconfigure only does stuff if the apps file has changed
|
||||
Remember::instance().checkReload();
|
||||
if (WindowCmd<void>::window() != 0) {
|
||||
if (FbMenu::window() != 0) {
|
||||
if (isSelected()) {
|
||||
Remember::instance().forgetAttrib(WindowCmd<void>::window()->winClient(), m_attrib);
|
||||
Remember::instance().forgetAttrib(FbMenu::window()->winClient(), m_attrib);
|
||||
} else {
|
||||
Remember::instance().rememberAttrib(WindowCmd<void>::window()->winClient(), m_attrib);
|
||||
Remember::instance().rememberAttrib(FbMenu::window()->winClient(), m_attrib);
|
||||
}
|
||||
}
|
||||
Remember::instance().save();
|
||||
|
|
Loading…
Reference in a new issue