diff options
author | rathnor <rathnor> | 2003-10-06 06:22:43 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2003-10-06 06:22:43 (GMT) |
commit | dda34421a3d586e6efd70a4a672266267dda7474 (patch) | |
tree | ad2dcb5335a03081542a91a6c8617cf89586304a | |
parent | 9a155ea7b5cf1b76aa7b9864aa3c1a7342f1f67c (diff) | |
download | fluxbox-dda34421a3d586e6efd70a4a672266267dda7474.zip fluxbox-dda34421a3d586e6efd70a4a672266267dda7474.tar.bz2 |
fix shape - all menus shaped, and some weird shape bugs
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/IconbarTool.cc | 7 | ||||
-rw-r--r-- | src/IconbarTool.hh | 5 | ||||
-rw-r--r-- | src/Shape.cc | 20 | ||||
-rw-r--r-- | src/Toolbar.cc | 5 | ||||
-rw-r--r-- | src/Toolbar.hh | 5 | ||||
-rw-r--r-- | src/ToolbarHandler.cc | 10 | ||||
-rw-r--r-- | src/ToolbarHandler.hh | 6 | ||||
-rw-r--r-- | src/WinClient.cc | 10 | ||||
-rw-r--r-- | src/Window.cc | 5 | ||||
-rw-r--r-- | src/Window.hh | 6 | ||||
-rw-r--r-- | src/Workspace.cc | 5 | ||||
-rw-r--r-- | src/Workspace.hh | 4 |
13 files changed, 52 insertions, 42 deletions
@@ -1,5 +1,11 @@ | |||
1 | (Format: Year/Month/Day) | 1 | (Format: Year/Month/Day) |
2 | Changes for 0.9.6: | 2 | Changes for 0.9.6: |
3 | *03/10/06: | ||
4 | * Fix shaped windows+menus (Simon) | ||
5 | - make sure all existing menus use shape | ||
6 | - fix Shape itself, particularly to work properly with borders | ||
7 | Shape.cc IconBarTool.hh/cc Toolbar.hh/cc ToolbarHandler.hh/cc | ||
8 | Window.hh/cc Workspace.hh/cc WinClient.cc | ||
3 | *03/10/05: | 9 | *03/10/05: |
4 | * Fix frame size when changing titlebar size (Simon) | 10 | * Fix frame size when changing titlebar size (Simon) |
5 | - also send configure notify when toggling decorations | 11 | - also send configure notify when toggling decorations |
diff --git a/src/IconbarTool.cc b/src/IconbarTool.cc index a5cd936..34ca188 100644 --- a/src/IconbarTool.cc +++ b/src/IconbarTool.cc | |||
@@ -20,7 +20,7 @@ | |||
20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
21 | // DEALINGS IN THE SOFTWARE. | 21 | // DEALINGS IN THE SOFTWARE. |
22 | 22 | ||
23 | // $Id: IconbarTool.cc,v 1.12 2003/09/15 20:19:36 fluxgen Exp $ | 23 | // $Id: IconbarTool.cc,v 1.13 2003/10/06 06:22:42 rathnor Exp $ |
24 | 24 | ||
25 | #include "IconbarTool.hh" | 25 | #include "IconbarTool.hh" |
26 | 26 | ||
@@ -30,7 +30,7 @@ | |||
30 | #include "IconButton.hh" | 30 | #include "IconButton.hh" |
31 | #include "Workspace.hh" | 31 | #include "Workspace.hh" |
32 | #include "fluxbox.hh" | 32 | #include "fluxbox.hh" |
33 | 33 | #include "FbMenu.hh" | |
34 | 34 | ||
35 | #include "FbTk/Menu.hh" | 35 | #include "FbTk/Menu.hh" |
36 | #include "FbTk/MenuItem.hh" | 36 | #include "FbTk/MenuItem.hh" |
@@ -181,7 +181,8 @@ IconbarTool::IconbarTool(const FbTk::FbWindow &parent, IconbarTheme &theme, BScr | |||
181 | m_empty_pm(0), | 181 | m_empty_pm(0), |
182 | m_rc_mode(screen.resourceManager(), WORKSPACE, | 182 | m_rc_mode(screen.resourceManager(), WORKSPACE, |
183 | screen.name() + ".iconbar.mode", screen.altName() + ".Iconbar.Mode"), | 183 | screen.name() + ".iconbar.mode", screen.altName() + ".Iconbar.Mode"), |
184 | m_menu(*screen.menuTheme(), menu.screenNumber(), screen.imageControl()) { | 184 | m_menu(*screen.menuTheme(), menu.screenNumber(), screen.imageControl(), |
185 | *screen.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())) { | ||
185 | 186 | ||
186 | // setup menu | 187 | // setup menu |
187 | setupModeMenu(m_menu, *this); | 188 | setupModeMenu(m_menu, *this); |
diff --git a/src/IconbarTool.hh b/src/IconbarTool.hh index d80bf85..c805fec 100644 --- a/src/IconbarTool.hh +++ b/src/IconbarTool.hh | |||
@@ -20,13 +20,14 @@ | |||
20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
21 | // DEALINGS IN THE SOFTWARE. | 21 | // DEALINGS IN THE SOFTWARE. |
22 | 22 | ||
23 | // $Id: IconbarTool.hh,v 1.8 2003/09/10 11:08:14 fluxgen Exp $ | 23 | // $Id: IconbarTool.hh,v 1.9 2003/10/06 06:22:42 rathnor Exp $ |
24 | 24 | ||
25 | #ifndef ICONBARTOOL_HH | 25 | #ifndef ICONBARTOOL_HH |
26 | #define ICONBARTOOL_HH | 26 | #define ICONBARTOOL_HH |
27 | 27 | ||
28 | #include "ToolbarItem.hh" | 28 | #include "ToolbarItem.hh" |
29 | #include "Container.hh" | 29 | #include "Container.hh" |
30 | #include "FbMenu.hh" | ||
30 | 31 | ||
31 | #include "FbTk/Observer.hh" | 32 | #include "FbTk/Observer.hh" |
32 | #include "FbTk/Resource.hh" | 33 | #include "FbTk/Resource.hh" |
@@ -108,7 +109,7 @@ private: | |||
108 | IconList m_icon_list; | 109 | IconList m_icon_list; |
109 | FbTk::Resource<Mode> m_rc_mode; | 110 | FbTk::Resource<Mode> m_rc_mode; |
110 | 111 | ||
111 | FbTk::Menu m_menu; | 112 | FbMenu m_menu; |
112 | }; | 113 | }; |
113 | 114 | ||
114 | #endif // ICONBARTOOL_HH | 115 | #endif // ICONBARTOOL_HH |
diff --git a/src/Shape.cc b/src/Shape.cc index 1f531e0..b4ac635 100644 --- a/src/Shape.cc +++ b/src/Shape.cc | |||
@@ -19,7 +19,7 @@ | |||
19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. | 20 | // DEALINGS IN THE SOFTWARE. |
21 | 21 | ||
22 | // $Id: Shape.cc,v 1.6 2003/09/17 14:16:53 fluxgen Exp $ | 22 | // $Id: Shape.cc,v 1.7 2003/10/06 06:22:42 rathnor Exp $ |
23 | 23 | ||
24 | #include "Shape.hh" | 24 | #include "Shape.hh" |
25 | #include "FbTk/FbWindow.hh" | 25 | #include "FbTk/FbWindow.hh" |
@@ -49,8 +49,9 @@ Pixmap createShape(FbTk::FbWindow &win, int place) { | |||
49 | static char bottom_left_bits[] = { 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xc0 }; | 49 | static char bottom_left_bits[] = { 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xc0 }; |
50 | static char bottom_right_bits[] = { 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x03 }; | 50 | static char bottom_right_bits[] = { 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x03 }; |
51 | 51 | ||
52 | const int win_width = win.width() + 2*win.borderWidth() + 1; | 52 | const int borderw = win.borderWidth(); |
53 | const int win_height = win.height() + 2*win.borderWidth(); | 53 | const int win_width = win.width() + 2*borderw; |
54 | const int win_height = win.height() + 2*borderw; | ||
54 | const int pixmap_width = min(8, win_width); | 55 | const int pixmap_width = min(8, win_width); |
55 | const int pixmap_height = min(8, win_height); | 56 | const int pixmap_height = min(8, win_height); |
56 | 57 | ||
@@ -60,7 +61,7 @@ Pixmap createShape(FbTk::FbWindow &win, int place) { | |||
60 | memset(data, 0xFF, data_size); | 61 | memset(data, 0xFF, data_size); |
61 | 62 | ||
62 | XImage *ximage = XCreateImage(disp, | 63 | XImage *ximage = XCreateImage(disp, |
63 | DefaultVisual(disp, DefaultScreen(disp)), | 64 | DefaultVisual(disp, win.screenNumber()), |
64 | 1, | 65 | 1, |
65 | XYPixmap, 0, | 66 | XYPixmap, 0, |
66 | data, | 67 | data, |
@@ -76,7 +77,7 @@ Pixmap createShape(FbTk::FbWindow &win, int place) { | |||
76 | if (place & Shape::TOPLEFT) { | 77 | if (place & Shape::TOPLEFT) { |
77 | for (int y=0; y<pixmap_height; y++) { | 78 | for (int y=0; y<pixmap_height; y++) { |
78 | for (int x=0; x<pixmap_width; x++) { | 79 | for (int x=0; x<pixmap_width; x++) { |
79 | XPutPixel(ximage, x + 1, y, (left_bits[y] & (0x01 << x)) ? 1 : 0); | 80 | XPutPixel(ximage, x, y, (left_bits[y] & (0x01 << x)) ? 1 : 0); |
80 | } | 81 | } |
81 | } | 82 | } |
82 | } | 83 | } |
@@ -93,7 +94,7 @@ Pixmap createShape(FbTk::FbWindow &win, int place) { | |||
93 | if (place & Shape::BOTTOMLEFT) { | 94 | if (place & Shape::BOTTOMLEFT) { |
94 | for (int y=0; y<pixmap_height; y++) { | 95 | for (int y=0; y<pixmap_height; y++) { |
95 | for (int x=0; x<pixmap_width; x++) { | 96 | for (int x=0; x<pixmap_width; x++) { |
96 | XPutPixel(ximage, x + 1, y + win_height - pixmap_height, | 97 | XPutPixel(ximage, x, y + win_height - pixmap_height, |
97 | (bottom_left_bits[y] & (0x01 << x)) ? 1 : 0); | 98 | (bottom_left_bits[y] & (0x01 << x)) ? 1 : 0); |
98 | } | 99 | } |
99 | } | 100 | } |
@@ -108,11 +109,6 @@ Pixmap createShape(FbTk::FbWindow &win, int place) { | |||
108 | } | 109 | } |
109 | } | 110 | } |
110 | 111 | ||
111 | for (int y = 0; y<pixmap_height; ++y) { | ||
112 | XPutPixel(ximage, 0, y, 1); | ||
113 | } | ||
114 | |||
115 | |||
116 | Pixmap pm = XCreatePixmap(disp, win.window(), win_width, win_height, 1); | 112 | Pixmap pm = XCreatePixmap(disp, win.window(), win_width, win_height, 1); |
117 | 113 | ||
118 | FbTk::GContext gc(pm); | 114 | FbTk::GContext gc(pm); |
@@ -179,7 +175,7 @@ void Shape::update() { | |||
179 | XShapeCombineMask(FbTk::App::instance()->display(), | 175 | XShapeCombineMask(FbTk::App::instance()->display(), |
180 | m_win->window(), | 176 | m_win->window(), |
181 | ShapeBounding, | 177 | ShapeBounding, |
182 | -2, 0, | 178 | -m_win->borderWidth(), -m_win->borderWidth(), |
183 | m_shape, | 179 | m_shape, |
184 | ShapeSet); | 180 | ShapeSet); |
185 | 181 | ||
diff --git a/src/Toolbar.cc b/src/Toolbar.cc index c76b7bd..ad53499 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc | |||
@@ -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: Toolbar.cc,v 1.122 2003/09/08 18:17:19 fluxgen Exp $ | 25 | // $Id: Toolbar.cc,v 1.123 2003/10/06 06:22:42 rathnor Exp $ |
26 | 26 | ||
27 | #include "Toolbar.hh" | 27 | #include "Toolbar.hh" |
28 | 28 | ||
@@ -224,7 +224,8 @@ Toolbar::Toolbar(BScreen &scrn, FbTk::XLayer &layer, FbTk::Menu &menu, size_t wi | |||
224 | m_screen(scrn), | 224 | m_screen(scrn), |
225 | m_toolbarmenu(menu), | 225 | m_toolbarmenu(menu), |
226 | m_placementmenu(*scrn.menuTheme(), | 226 | m_placementmenu(*scrn.menuTheme(), |
227 | scrn.screenNumber(), scrn.imageControl()), | 227 | scrn.screenNumber(), scrn.imageControl(), |
228 | *scrn.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())), | ||
228 | m_layermenu(*scrn.menuTheme(), | 229 | m_layermenu(*scrn.menuTheme(), |
229 | scrn.screenNumber(), | 230 | scrn.screenNumber(), |
230 | scrn.imageControl(), | 231 | scrn.imageControl(), |
diff --git a/src/Toolbar.hh b/src/Toolbar.hh index 719dac3..c85eb44 100644 --- a/src/Toolbar.hh +++ b/src/Toolbar.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: Toolbar.hh,v 1.46 2003/08/29 00:44:41 fluxgen Exp $ | 25 | // $Id: Toolbar.hh,v 1.47 2003/10/06 06:22:43 rathnor Exp $ |
26 | 26 | ||
27 | #ifndef TOOLBAR_HH | 27 | #ifndef TOOLBAR_HH |
28 | #define TOOLBAR_HH | 28 | #define TOOLBAR_HH |
@@ -45,6 +45,7 @@ | |||
45 | 45 | ||
46 | class BScreen; | 46 | class BScreen; |
47 | class Strut; | 47 | class Strut; |
48 | class FbMenu; | ||
48 | class Container; | 49 | class Container; |
49 | class IconButton; | 50 | class IconButton; |
50 | class Shape; | 51 | class Shape; |
@@ -163,7 +164,7 @@ private: | |||
163 | 164 | ||
164 | FbTk::Timer m_hide_timer; ///< timer to for auto hide toolbar | 165 | FbTk::Timer m_hide_timer; ///< timer to for auto hide toolbar |
165 | FbTk::Menu &m_toolbarmenu; | 166 | FbTk::Menu &m_toolbarmenu; |
166 | FbTk::Menu m_placementmenu; | 167 | FbMenu m_placementmenu; |
167 | LayerMenu<Toolbar> m_layermenu; | 168 | LayerMenu<Toolbar> m_layermenu; |
168 | 169 | ||
169 | // themes | 170 | // themes |
diff --git a/src/ToolbarHandler.cc b/src/ToolbarHandler.cc index f6fd015..4a8ff3d 100644 --- a/src/ToolbarHandler.cc +++ b/src/ToolbarHandler.cc | |||
@@ -20,7 +20,7 @@ | |||
20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
21 | // DEALINGS IN THE SOFTWARE. | 21 | // DEALINGS IN THE SOFTWARE. |
22 | 22 | ||
23 | // $Id: ToolbarHandler.cc,v 1.28 2003/09/08 18:18:25 fluxgen Exp $ | 23 | // $Id: ToolbarHandler.cc,v 1.29 2003/10/06 06:22:43 rathnor Exp $ |
24 | 24 | ||
25 | /** | 25 | /** |
26 | * The ToolbarHandler class acts as a rough interface to the toolbar. | 26 | * The ToolbarHandler class acts as a rough interface to the toolbar. |
@@ -33,7 +33,7 @@ | |||
33 | #include "Screen.hh" | 33 | #include "Screen.hh" |
34 | #include "Workspace.hh" | 34 | #include "Workspace.hh" |
35 | #include "MenuItem.hh" | 35 | #include "MenuItem.hh" |
36 | #include "Menu.hh" | 36 | #include "FbMenu.hh" |
37 | #include "FbCommands.hh" | 37 | #include "FbCommands.hh" |
38 | #include "RefCount.hh" | 38 | #include "RefCount.hh" |
39 | #include "SimpleCommand.hh" | 39 | #include "SimpleCommand.hh" |
@@ -51,9 +51,11 @@ ToolbarHandler::ToolbarHandler(BScreen &screen) | |||
51 | m_toolbar(0), | 51 | m_toolbar(0), |
52 | m_current_workspace(0), | 52 | m_current_workspace(0), |
53 | m_modemenu(*screen.menuTheme(), | 53 | m_modemenu(*screen.menuTheme(), |
54 | screen.screenNumber(), screen.imageControl()), | 54 | screen.screenNumber(), screen.imageControl(), |
55 | *screen.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())), | ||
55 | m_toolbarmenu(*screen.menuTheme(), | 56 | m_toolbarmenu(*screen.menuTheme(), |
56 | screen.screenNumber(), screen.imageControl()) { | 57 | screen.screenNumber(), screen.imageControl(), |
58 | *screen.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())) { | ||
57 | m_modemenu.setInternalMenu(); | 59 | m_modemenu.setInternalMenu(); |
58 | m_toolbarmenu.setInternalMenu(); | 60 | m_toolbarmenu.setInternalMenu(); |
59 | 61 | ||
diff --git a/src/ToolbarHandler.hh b/src/ToolbarHandler.hh index 02d131d..538ac78 100644 --- a/src/ToolbarHandler.hh +++ b/src/ToolbarHandler.hh | |||
@@ -20,7 +20,7 @@ | |||
20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 20 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
21 | // DEALINGS IN THE SOFTWARE. | 21 | // DEALINGS IN THE SOFTWARE. |
22 | 22 | ||
23 | // $Id: ToolbarHandler.hh,v 1.8 2003/09/08 18:18:25 fluxgen Exp $ | 23 | // $Id: ToolbarHandler.hh,v 1.9 2003/10/06 06:22:43 rathnor Exp $ |
24 | 24 | ||
25 | #ifndef TOOLBARHANDLER_HH | 25 | #ifndef TOOLBARHANDLER_HH |
26 | #define TOOLBARHANDLER_HH | 26 | #define TOOLBARHANDLER_HH |
@@ -90,8 +90,8 @@ private: | |||
90 | std::auto_ptr<Toolbar> m_toolbar; | 90 | std::auto_ptr<Toolbar> m_toolbar; |
91 | unsigned int m_current_workspace; | 91 | unsigned int m_current_workspace; |
92 | ToolbarMode m_mode; | 92 | ToolbarMode m_mode; |
93 | FbTk::Menu m_modemenu; | 93 | FbMenu m_modemenu; |
94 | FbTk::Menu m_toolbarmenu; | 94 | FbMenu m_toolbarmenu; |
95 | }; | 95 | }; |
96 | 96 | ||
97 | #endif // TOOLBARHANDLER_HH | 97 | #endif // TOOLBARHANDLER_HH |
diff --git a/src/WinClient.cc b/src/WinClient.cc index dadabe3..0e5e2e9 100644 --- a/src/WinClient.cc +++ b/src/WinClient.cc | |||
@@ -19,7 +19,7 @@ | |||
19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 19 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
20 | // DEALINGS IN THE SOFTWARE. | 20 | // DEALINGS IN THE SOFTWARE. |
21 | 21 | ||
22 | // $Id: WinClient.cc,v 1.29 2003/10/02 16:14:41 rathnor Exp $ | 22 | // $Id: WinClient.cc,v 1.30 2003/10/06 06:22:43 rathnor Exp $ |
23 | 23 | ||
24 | #include "WinClient.hh" | 24 | #include "WinClient.hh" |
25 | 25 | ||
@@ -633,17 +633,17 @@ void WinClient::applySizeHints(int &width, int &height, | |||
633 | int i = width, j = height; | 633 | int i = width, j = height; |
634 | 634 | ||
635 | // Check minimum size | 635 | // Check minimum size |
636 | if (width < 0 || width < min_width) | 636 | if (width < 0 || width < static_cast<signed>(min_width)) |
637 | width = min_width; | 637 | width = min_width; |
638 | 638 | ||
639 | if (height < 0 || height < min_height) | 639 | if (height < 0 || height < static_cast<signed>(min_height)) |
640 | height = min_height; | 640 | height = min_height; |
641 | 641 | ||
642 | // Check maximum size | 642 | // Check maximum size |
643 | if (max_width > 0 && width > max_width) | 643 | if (max_width > 0 && width > static_cast<signed>(max_width)) |
644 | width = max_width; | 644 | width = max_width; |
645 | 645 | ||
646 | if (max_height > 0 && height > max_height) | 646 | if (max_height > 0 && height > static_cast<signed>(max_height)) |
647 | height = max_height; | 647 | height = max_height; |
648 | 648 | ||
649 | // enforce incremental size limits, wrt base size | 649 | // enforce incremental size limits, wrt base size |
diff --git a/src/Window.cc b/src/Window.cc index ccf52a2..f7c80cd 100644 --- a/src/Window.cc +++ b/src/Window.cc | |||
@@ -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: Window.cc,v 1.240 2003/10/05 09:03:43 rathnor Exp $ | 25 | // $Id: Window.cc,v 1.241 2003/10/06 06:22:43 rathnor Exp $ |
26 | 26 | ||
27 | #include "Window.hh" | 27 | #include "Window.hh" |
28 | 28 | ||
@@ -260,7 +260,8 @@ FluxboxWindow::FluxboxWindow(WinClient &client, BScreen &scr, FbWinFrameTheme &t | |||
260 | maximized(MAX_NONE), | 260 | maximized(MAX_NONE), |
261 | m_screen(scr), | 261 | m_screen(scr), |
262 | display(0), | 262 | display(0), |
263 | m_windowmenu(*scr.menuTheme(), scr.screenNumber(), scr.imageControl()), | 263 | m_windowmenu(*scr.menuTheme(), scr.screenNumber(), scr.imageControl(), |
264 | *scr.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())), | ||
264 | m_old_decoration(DECOR_NORMAL), | 265 | m_old_decoration(DECOR_NORMAL), |
265 | m_client(&client), | 266 | m_client(&client), |
266 | m_frame(new FbWinFrame(tm, scr.imageControl(), scr.screenNumber(), 0, 0, 100, 100)), | 267 | m_frame(new FbWinFrame(tm, scr.imageControl(), scr.screenNumber(), 0, 0, 100, 100)), |
diff --git a/src/Window.hh b/src/Window.hh index 8831522..480d637 100644 --- a/src/Window.hh +++ b/src/Window.hh | |||
@@ -22,13 +22,13 @@ | |||
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: Window.hh,v 1.98 2003/10/05 02:31:23 rathnor Exp $ | 25 | // $Id: Window.hh,v 1.99 2003/10/06 06:22:43 rathnor Exp $ |
26 | 26 | ||
27 | #ifndef WINDOW_HH | 27 | #ifndef WINDOW_HH |
28 | #define WINDOW_HH | 28 | #define WINDOW_HH |
29 | 29 | ||
30 | #include "FbMenu.hh" | ||
30 | #include "Timer.hh" | 31 | #include "Timer.hh" |
31 | #include "Menu.hh" | ||
32 | #include "Subject.hh" | 32 | #include "Subject.hh" |
33 | #include "EventHandler.hh" | 33 | #include "EventHandler.hh" |
34 | #include "XLayerItem.hh" | 34 | #include "XLayerItem.hh" |
@@ -419,7 +419,7 @@ private: | |||
419 | Display *display; /// display connection | 419 | Display *display; /// display connection |
420 | BlackboxAttributes m_blackbox_attrib; | 420 | BlackboxAttributes m_blackbox_attrib; |
421 | 421 | ||
422 | FbTk::Menu m_windowmenu; | 422 | FbMenu m_windowmenu; |
423 | 423 | ||
424 | timeval m_last_focus_time; | 424 | timeval m_last_focus_time; |
425 | 425 | ||
diff --git a/src/Workspace.cc b/src/Workspace.cc index 3bec41a..b0a4ab6 100644 --- a/src/Workspace.cc +++ b/src/Workspace.cc | |||
@@ -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: Workspace.cc,v 1.81 2003/08/24 11:16:42 fluxgen Exp $ | 25 | // $Id: Workspace.cc,v 1.82 2003/10/06 06:22:43 rathnor Exp $ |
26 | 26 | ||
27 | #include "Workspace.hh" | 27 | #include "Workspace.hh" |
28 | 28 | ||
@@ -118,7 +118,8 @@ Workspace::Workspace(BScreen &scrn, FbTk::MultLayers &layermanager, | |||
118 | const std::string &name, unsigned int i): | 118 | const std::string &name, unsigned int i): |
119 | m_screen(scrn), | 119 | m_screen(scrn), |
120 | m_lastfocus(0), | 120 | m_lastfocus(0), |
121 | m_clientmenu(*scrn.menuTheme(), scrn.screenNumber(), scrn.imageControl()), | 121 | m_clientmenu(*scrn.menuTheme(), scrn.screenNumber(), scrn.imageControl(), |
122 | *scrn.layerManager().getLayer(Fluxbox::instance()->getMenuLayer())), | ||
122 | m_layermanager(layermanager), | 123 | m_layermanager(layermanager), |
123 | m_name(name), | 124 | m_name(name), |
124 | m_id(i) { | 125 | m_id(i) { |
diff --git a/src/Workspace.hh b/src/Workspace.hh index 466b3a2..a385963 100644 --- a/src/Workspace.hh +++ b/src/Workspace.hh | |||
@@ -27,7 +27,7 @@ | |||
27 | 27 | ||
28 | #include "NotCopyable.hh" | 28 | #include "NotCopyable.hh" |
29 | 29 | ||
30 | #include "Menu.hh" | 30 | #include "FbMenu.hh" |
31 | #include "MultLayers.hh" | 31 | #include "MultLayers.hh" |
32 | 32 | ||
33 | #include <X11/Xlib.h> | 33 | #include <X11/Xlib.h> |
@@ -94,7 +94,7 @@ private: | |||
94 | 94 | ||
95 | BScreen &m_screen; | 95 | BScreen &m_screen; |
96 | FluxboxWindow *m_lastfocus; | 96 | FluxboxWindow *m_lastfocus; |
97 | FbTk::Menu m_clientmenu; | 97 | FbMenu m_clientmenu; |
98 | 98 | ||
99 | typedef std::vector<std::string> Group; | 99 | typedef std::vector<std::string> Group; |
100 | typedef std::vector<Group> GroupList; | 100 | typedef std::vector<Group> GroupList; |