diff options
author | Ton Roosendaal <ton@blender.org> | 2004-11-22 14:48:51 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2004-11-22 14:48:51 +0300 |
commit | 39022ffb88ea97667d1f0f23d7730ee62f427b31 (patch) | |
tree | d3bdae46168da63c1075f15130c0e64489db2726 /source/blender/src/interface.c | |
parent | 46fbe6b01e095ddb66f3bf6e0516569cfdca8f74 (diff) |
Bug fix, irc report.
Move to layer buttons, using SHIFT+hotkeys to set button values and use
mouse to press OK undid the last change, this due to active flag hanging
on that button. It now clears hotkey active flags on mouseclick first.
Diffstat (limited to 'source/blender/src/interface.c')
-rw-r--r-- | source/blender/src/interface.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source/blender/src/interface.c b/source/blender/src/interface.c index aed87eec60d..10a46dec81e 100644 --- a/source/blender/src/interface.c +++ b/source/blender/src/interface.c @@ -3112,7 +3112,7 @@ static int ui_do_block(uiBlock *block, uiEvent *uevent) case LEFTARROWKEY: // later on implement opening/closing sublevels of pupmenus case RIGHTARROWKEY: break; - + case PAD8: case PAD2: case UPARROWKEY: case DOWNARROWKEY: @@ -3261,7 +3261,10 @@ static int ui_do_block(uiBlock *block, uiEvent *uevent) default: for(but= block->buttons.first; but; but= but->next) { - + + // active flag clear, it can have been set with number keys or arrows, prevents next loop from wrong selection on click + if(uevent->event==LEFTMOUSE) but->flag &= ~UI_ACTIVE; + but->flag &= ~UI_MOUSE_OVER; /* check boundbox */ @@ -3328,7 +3331,7 @@ static int ui_do_block(uiBlock *block, uiEvent *uevent) /* when mouse outside, don't do button */ if(inside || uevent->event!=LEFTMOUSE) { butevent= ui_do_button(block, but, uevent); - + /* add undo pushes if... */ if( !(block->flag & UI_BLOCK_LOOP)) { if(!G.obedit) { |