diff options
Diffstat (limited to 'src/SystemTray.cc')
-rw-r--r-- | src/SystemTray.cc | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/SystemTray.cc b/src/SystemTray.cc index 85f0fba..5ba89c3 100644 --- a/src/SystemTray.cc +++ b/src/SystemTray.cc | |||
@@ -153,7 +153,8 @@ private: | |||
153 | SystemTray &m_tray; | 153 | SystemTray &m_tray; |
154 | }; | 154 | }; |
155 | 155 | ||
156 | SystemTray::SystemTray(const FbTk::FbWindow& parent, ButtonTheme& theme, BScreen& screen): | 156 | SystemTray::SystemTray(const FbTk::FbWindow& parent, |
157 | FbTk::ThemeProxy<ButtonTheme> &theme, BScreen& screen): | ||
157 | ToolbarItem(ToolbarItem::FIXED), | 158 | ToolbarItem(ToolbarItem::FIXED), |
158 | m_window(parent, 0, 0, 1, 1, ExposureMask | ButtonPressMask | ButtonReleaseMask | | 159 | m_window(parent, 0, 0, 1, 1, ExposureMask | ButtonPressMask | ButtonReleaseMask | |
159 | SubstructureNotifyMask | SubstructureRedirectMask), | 160 | SubstructureNotifyMask | SubstructureRedirectMask), |
@@ -164,7 +165,7 @@ SystemTray::SystemTray(const FbTk::FbWindow& parent, ButtonTheme& theme, BScreen | |||
164 | 165 | ||
165 | FbTk::EventManager::instance()->add(*this, m_window); | 166 | FbTk::EventManager::instance()->add(*this, m_window); |
166 | FbTk::EventManager::instance()->add(*this, m_selection_owner); | 167 | FbTk::EventManager::instance()->add(*this, m_selection_owner); |
167 | m_theme.reconfigSig().attach(this); | 168 | m_theme->reconfigSig().attach(this); |
168 | screen.bgChangeSig().attach(this); | 169 | screen.bgChangeSig().attach(this); |
169 | 170 | ||
170 | Fluxbox* fluxbox = Fluxbox::instance(); | 171 | Fluxbox* fluxbox = Fluxbox::instance(); |
@@ -282,14 +283,14 @@ unsigned int SystemTray::width() const { | |||
282 | if (orientation() == FbTk::ROT90 || orientation() == FbTk::ROT270) | 283 | if (orientation() == FbTk::ROT90 || orientation() == FbTk::ROT270) |
283 | return m_window.width(); | 284 | return m_window.width(); |
284 | 285 | ||
285 | return m_num_visible_clients * (height() - 2 * m_theme.border().width()); | 286 | return m_num_visible_clients * (height() - 2 * m_theme->border().width()); |
286 | } | 287 | } |
287 | 288 | ||
288 | unsigned int SystemTray::height() const { | 289 | unsigned int SystemTray::height() const { |
289 | if (orientation() == FbTk::ROT0 || orientation() == FbTk::ROT180) | 290 | if (orientation() == FbTk::ROT0 || orientation() == FbTk::ROT180) |
290 | return m_window.height(); | 291 | return m_window.height(); |
291 | 292 | ||
292 | return m_num_visible_clients * (width() - 2 * m_theme.border().width()); | 293 | return m_num_visible_clients * (width() - 2 * m_theme->border().width()); |
293 | } | 294 | } |
294 | 295 | ||
295 | unsigned int SystemTray::borderWidth() const { | 296 | unsigned int SystemTray::borderWidth() const { |
@@ -463,7 +464,7 @@ void SystemTray::handleEvent(XEvent &event) { | |||
463 | 464 | ||
464 | void SystemTray::rearrangeClients() { | 465 | void SystemTray::rearrangeClients() { |
465 | unsigned int w_rot0 = width(), h_rot0 = height(); | 466 | unsigned int w_rot0 = width(), h_rot0 = height(); |
466 | const unsigned int bw = m_theme.border().width(); | 467 | const unsigned int bw = m_theme->border().width(); |
467 | FbTk::translateSize(orientation(), w_rot0, h_rot0); | 468 | FbTk::translateSize(orientation(), w_rot0, h_rot0); |
468 | unsigned int trayw = m_num_visible_clients*h_rot0 + bw, trayh = h_rot0; | 469 | unsigned int trayw = m_num_visible_clients*h_rot0 + bw, trayh = h_rot0; |
469 | FbTk::translateSize(orientation(), trayw, trayh); | 470 | FbTk::translateSize(orientation(), trayw, trayh); |
@@ -529,14 +530,14 @@ void SystemTray::showClient(TrayWindow *traywin) { | |||
529 | 530 | ||
530 | void SystemTray::update(FbTk::Subject* subject) { | 531 | void SystemTray::update(FbTk::Subject* subject) { |
531 | 532 | ||
532 | if (!m_theme.texture().usePixmap()) { | 533 | if (!m_theme->texture().usePixmap()) { |
533 | m_window.setBackgroundColor(m_theme.texture().color()); | 534 | m_window.setBackgroundColor(m_theme->texture().color()); |
534 | } | 535 | } |
535 | else { | 536 | else { |
536 | if(m_pixmap) | 537 | if(m_pixmap) |
537 | m_screen.imageControl().removeImage(m_pixmap); | 538 | m_screen.imageControl().removeImage(m_pixmap); |
538 | m_pixmap = m_screen.imageControl().renderImage(width(), height(), | 539 | m_pixmap = m_screen.imageControl().renderImage(width(), height(), |
539 | m_theme.texture(), orientation()); | 540 | m_theme->texture(), orientation()); |
540 | m_window.setBackgroundPixmap(m_pixmap); | 541 | m_window.setBackgroundPixmap(m_pixmap); |
541 | } | 542 | } |
542 | 543 | ||