From b49d25720986db7c3ce3837a32af94e4be9ea88f Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 7 Feb 2012 16:53:14 +0000 Subject: [PATCH] Fix #30076: RenderLayer area blocks mouse scrolling In fact all list templates used to block mouse scroll. It's because mouse scrolls list's scroll bar. But mouse scroll also used to be "eaten" even if there's no scroll in list template. This commit makes scroll even be ignored by list templates if there's no scroll bar on list. --- .../editors/interface/interface_handlers.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c index cadc57c9881..7e413cf75f7 100644 --- a/source/blender/editors/interface/interface_handlers.c +++ b/source/blender/editors/interface/interface_handlers.c @@ -5859,15 +5859,17 @@ static int ui_handle_list_event(bContext *C, wmEvent *event, ARegion *ar) retval= WM_UI_HANDLER_BREAK; } else if(ELEM(event->type, WHEELUPMOUSE, WHEELDOWNMOUSE)) { - /* list template will clamp */ - if(event->type == WHEELUPMOUSE) - pa->list_scroll--; - else - pa->list_scroll++; + if(pa->list_last_len > pa->list_size) { + /* list template will clamp */ + if(event->type == WHEELUPMOUSE) + pa->list_scroll--; + else + pa->list_scroll++; - ED_region_tag_redraw(ar); + ED_region_tag_redraw(ar); - retval= WM_UI_HANDLER_BREAK; + retval= WM_UI_HANDLER_BREAK; + } } }