X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fbcpopupmenu.C;h=4c639fe27d25890f96bd4289cc77c21c651ca569;hp=4d3144b59996a545cb9c3f80fd5d046cd8e496a5;hb=6c533a5098aa5a5ca85b97dd405bb06b26033a91;hpb=9d832a1fff11b11aaa1108c460690ed05e2bdc05 diff --git a/cinelerra-5.1/guicast/bcpopupmenu.C b/cinelerra-5.1/guicast/bcpopupmenu.C index 4d3144b5..4c639fe2 100644 --- a/cinelerra-5.1/guicast/bcpopupmenu.C +++ b/cinelerra-5.1/guicast/bcpopupmenu.C @@ -369,6 +369,7 @@ int BC_PopupMenu::repeat_event(int64_t duration) int BC_PopupMenu::button_press_event() { + int result = 0; if(get_buttonpress() == 1 && is_event_win() && use_title) @@ -404,17 +405,18 @@ int BC_PopupMenu::button_press_event() BC_MenuItem *tmp = menu_popup->menu_items.values[theval]; set_text(tmp->get_text()); - if (!tmp->handle_event()) - this->handle_event(); + result = tmp->handle_event(); + if( !result ) + result = this->handle_event(); } if(popup_down) { // Menu is down so dispatch to popup. menu_popup->dispatch_button_press(); - return 1; + result = 1; } - return 0; + return result; } int BC_PopupMenu::button_release_event() @@ -473,7 +475,7 @@ int BC_PopupMenu::cursor_leave_event() if( popup_down ) { if( !get_button_down() && !menu_popup->cursor_inside() ) { status = BUTTON_UP; - deactivate_menu(); +// deactivate_menu(); } menu_popup->dispatch_cursor_leave(); }