Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2013-04-11 12:33:19 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-04-11 12:33:19 +0400
commitacac5b8402e93ff45ada9b353fcb6b3d931cb764 (patch)
tree7b2f8cf090ead678083291f7fa3470b76438bf4c /source/blender/editors/interface/interface_handlers.c
parent075a655cc6956a1e215206d75a9c0621d4af4bf8 (diff)
fix for crash in own recent commit. searchbox's need their own keynav state since they won't always be in a uiPopupBlockHandle.
Diffstat (limited to 'source/blender/editors/interface/interface_handlers.c')
-rw-r--r--source/blender/editors/interface/interface_handlers.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 6f94d64c717..cce20cfd41a 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -183,6 +183,9 @@ typedef struct uiHandleButtonData {
/* search box (watch uiFreeActiveButtons) */
ARegion *searchbox;
+#ifdef USE_KEYNAV_LIMIT
+ struct uiKeyNavLock searchbox_keynav_state;
+#endif
/* post activate */
uiButtonActivateType posttype;
@@ -2132,7 +2135,7 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
case MOUSEPAN:
if (data->searchbox) {
#ifdef USE_KEYNAV_LIMIT
- if ((event->type == MOUSEMOVE) && ui_mouse_motion_keynav_test(&block->handle->keynav_state, event)) {
+ if ((event->type == MOUSEMOVE) && ui_mouse_motion_keynav_test(&data->searchbox_keynav_state, event)) {
/* pass */
}
else {
@@ -2216,7 +2219,7 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
case DOWNARROWKEY:
if (data->searchbox) {
#ifdef USE_KEYNAV_LIMIT
- ui_mouse_motion_keynav_init(&block->handle->keynav_state, event);
+ ui_mouse_motion_keynav_init(&data->searchbox_keynav_state, event);
#endif
ui_searchbox_event(C, data->searchbox, but, event);
break;
@@ -2231,7 +2234,7 @@ static void ui_do_but_textedit(bContext *C, uiBlock *block, uiBut *but, uiHandle
case UPARROWKEY:
if (data->searchbox) {
#ifdef USE_KEYNAV_LIMIT
- ui_mouse_motion_keynav_init(&block->handle->keynav_state, event);
+ ui_mouse_motion_keynav_init(&data->searchbox_keynav_state, event);
#endif
ui_searchbox_event(C, data->searchbox, but, event);
break;