diff options
Diffstat (limited to 'src/Screen.hh')
-rw-r--r-- | src/Screen.hh | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/Screen.hh b/src/Screen.hh index eb2a306..771899f 100644 --- a/src/Screen.hh +++ b/src/Screen.hh | |||
@@ -370,14 +370,14 @@ public: | |||
370 | // Xinerama-related functions | 370 | // Xinerama-related functions |
371 | 371 | ||
372 | /// @return true if xinerama is available | 372 | /// @return true if xinerama is available |
373 | bool hasXinerama() const { return m_xinerama_avail; } | 373 | bool hasXinerama() const { return m_xinerama.avail; } |
374 | /// @return umber of xinerama heads | 374 | /// @return umber of xinerama heads |
375 | int numHeads() const { return m_xinerama_num_heads; } | 375 | int numHeads() const { return m_xinerama.heads.size(); } |
376 | 376 | ||
377 | void initXinerama(); | 377 | void initXinerama(); |
378 | void clearXinerama(); | ||
378 | void clearHeads(); | 379 | void clearHeads(); |
379 | /// clean up xinerama | 380 | /// clean up xinerama |
380 | void clearXinerama(); | ||
381 | 381 | ||
382 | /** | 382 | /** |
383 | * Determines head number for a position | 383 | * Determines head number for a position |
@@ -475,7 +475,7 @@ private: | |||
475 | 475 | ||
476 | FbTk::MultLayers m_layermanager; | 476 | FbTk::MultLayers m_layermanager; |
477 | 477 | ||
478 | bool root_colormap_installed, managed; | 478 | bool root_colormap_installed; |
479 | 479 | ||
480 | std::auto_ptr<FbTk::ImageControl> m_image_control; | 480 | std::auto_ptr<FbTk::ImageControl> m_image_control; |
481 | std::auto_ptr<FbMenu> m_configmenu, m_rootmenu, m_workspacemenu, m_windowmenu; | 481 | std::auto_ptr<FbMenu> m_configmenu, m_rootmenu, m_workspacemenu, m_windowmenu; |
@@ -525,21 +525,26 @@ private: | |||
525 | const ClientPattern *m_cycle_opts; | 525 | const ClientPattern *m_cycle_opts; |
526 | 526 | ||
527 | // Xinerama related private data | 527 | // Xinerama related private data |
528 | bool m_xinerama_avail; | ||
529 | int m_xinerama_num_heads; | ||
530 | int m_xinerama_center_x, m_xinerama_center_y; | ||
531 | |||
532 | std::vector<HeadArea *> m_head_areas; | ||
533 | |||
534 | struct XineramaHeadInfo { | 528 | struct XineramaHeadInfo { |
535 | int _x, _y, _width, _height; | 529 | int _x, _y, _width, _height; |
536 | int x() const { return _x; } | 530 | int x() const { return _x; } |
537 | int y() const { return _y; } | 531 | int y() const { return _y; } |
538 | int width() const { return _width; } | 532 | int width() const { return _width; } |
539 | int height() const { return _height; } | 533 | int height() const { return _height; } |
540 | } *m_xinerama_headinfo; | 534 | }; |
535 | struct { | ||
536 | bool avail; | ||
537 | int center_x; | ||
538 | int center_y; | ||
539 | std::vector<XineramaHeadInfo> heads; | ||
540 | } m_xinerama; | ||
541 | |||
542 | std::vector<HeadArea*> m_head_areas; | ||
543 | |||
541 | 544 | ||
542 | bool m_restart, m_shutdown; | 545 | bool m_restart; |
546 | bool m_shutdown; | ||
547 | bool managed; | ||
543 | }; | 548 | }; |
544 | 549 | ||
545 | 550 | ||