diff options
author | rathnor <rathnor> | 2004-08-28 14:25:52 (GMT) |
---|---|---|
committer | rathnor <rathnor> | 2004-08-28 14:25:52 (GMT) |
commit | 11f8d9c21f6da5abf01d942589914b26e04c20d9 (patch) | |
tree | 6d5b13c276bdf887f549ebf08e83dea44b7a6c17 | |
parent | cbc8e23ed2d8f8c3702e8ff53943b5844d1b9de2 (diff) | |
download | fluxbox_pavel-11f8d9c21f6da5abf01d942589914b26e04c20d9.zip fluxbox_pavel-11f8d9c21f6da5abf01d942589914b26e04c20d9.tar.bz2 |
fix menu rendering bug with selected items
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | src/FbTk/Menu.cc | 14 |
2 files changed, 10 insertions, 7 deletions
@@ -1,5 +1,8 @@ | |||
1 | (Format: Year/Month/Day) | 1 | (Format: Year/Month/Day) |
2 | Changes for 0.9.10: | 2 | Changes for 0.9.10: |
3 | *04/08/28: | ||
4 | * Fix menu render bug with previously highlighted items (Simon) | ||
5 | FbTk/Menu.cc | ||
3 | *04/08/27: | 6 | *04/08/27: |
4 | * Protect Fluxbox::shutdown better from being double-called (Simon) | 7 | * Protect Fluxbox::shutdown better from being double-called (Simon) |
5 | fluxbox.cc | 8 | fluxbox.cc |
diff --git a/src/FbTk/Menu.cc b/src/FbTk/Menu.cc index 8c09c7f..95fa9ad 100644 --- a/src/FbTk/Menu.cc +++ b/src/FbTk/Menu.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: Menu.cc,v 1.72 2004/08/03 21:25:51 fluxgen Exp $ | 25 | // $Id: Menu.cc,v 1.73 2004/08/28 14:25:52 rathnor Exp $ |
26 | 26 | ||
27 | //use GNU extensions | 27 | //use GNU extensions |
28 | #ifndef _GNU_SOURCE | 28 | #ifndef _GNU_SOURCE |
@@ -695,17 +695,17 @@ void Menu::internal_hide() { | |||
695 | tmp->submenu()->internal_hide(); | 695 | tmp->submenu()->internal_hide(); |
696 | } | 696 | } |
697 | 697 | ||
698 | if (shown && shown->menu.window == menu.window) | ||
699 | shown = (Menu *) 0; | ||
700 | |||
701 | torn = visible = false; | ||
702 | which_sub = which_press = which_sub = -1; | ||
703 | |||
704 | // if we have an active index we need to redraw it | 698 | // if we have an active index we need to redraw it |
705 | // as non active | 699 | // as non active |
706 | int old = m_active_index; | 700 | int old = m_active_index; |
707 | m_active_index = -1; | 701 | m_active_index = -1; |
708 | drawItem(old, true); // clear old area from highlight | 702 | drawItem(old, true); // clear old area from highlight |
703 | |||
704 | if (shown && shown->menu.window == menu.window) | ||
705 | shown = (Menu *) 0; | ||
706 | |||
707 | torn = visible = false; | ||
708 | which_sub = which_press = which_sub = -1; | ||
709 | 709 | ||
710 | menu.window.hide(); | 710 | menu.window.hide(); |
711 | } | 711 | } |