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:
authorTon Roosendaal <ton@blender.org>2004-11-22 14:48:51 +0300
committerTon Roosendaal <ton@blender.org>2004-11-22 14:48:51 +0300
commit39022ffb88ea97667d1f0f23d7730ee62f427b31 (patch)
treed3bdae46168da63c1075f15130c0e64489db2726 /source/blender/src/interface.c
parent46fbe6b01e095ddb66f3bf6e0516569cfdca8f74 (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.c9
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) {