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
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/blender/editors/interface/interface_handlers.c22
-rw-r--r--source/blender/windowmanager/intern/wm_keymap.c3
2 files changed, 16 insertions, 9 deletions
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 6adabc56f80..6de197f5cac 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -2708,15 +2708,19 @@ static int button_modal_state(uiHandleButtonState state)
BUTTON_STATE_TEXT_SELECTING, BUTTON_STATE_MENU_OPEN);
}
-static void button_tooltip_timer_start(uiBut *but)
+static void button_tooltip_timer_reset(uiBut *but)
{
uiHandleButtonData *data;
data= but->active;
- /* XXX 2.50 U missing from context */
+ if(data->tooltiptimer) {
+ WM_event_remove_window_timer(data->window, data->tooltiptimer);
+ data->tooltiptimer= NULL;
+ }
+
if(U.flag & USER_TOOLTIPS)
- if(!data->tooltiptimer && !but->block->tooltipdisabled)
+ if(!but->block->tooltipdisabled)
data->tooltiptimer= WM_event_add_window_timer(data->window, BUTTON_TOOLTIP_DELAY, ~0);
}
@@ -2732,7 +2736,7 @@ static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState s
if(state == BUTTON_STATE_HIGHLIGHT) {
but->flag &= ~UI_SELECT;
- button_tooltip_timer_start(but);
+ button_tooltip_timer_reset(but);
/* automatic open pulldown block timer */
if(but->type==BLOCK || but->type==MENU || but->type==PULLDOWN || but->type==ICONTEXTROW) {
@@ -2766,7 +2770,6 @@ static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState s
data->autoopentimer= NULL;
}
}
- ED_region_tag_redraw(data->region);
/* text editing */
if(state == BUTTON_STATE_TEXT_EDITING && data->state != BUTTON_STATE_TEXT_SELECTING)
@@ -2809,6 +2812,9 @@ static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState s
}
data->state= state;
+
+ /* redraw */
+ ED_region_tag_redraw(data->region);
}
static void button_activate_init(bContext *C, ARegion *ar, uiBut *but, uiButtonActivateType type)
@@ -2966,7 +2972,7 @@ static int ui_handle_button_event(bContext *C, wmEvent *event, uiBut *but)
else if(event->x!=event->prevx || event->y!=event->prevy) {
/* re-enable tooltip on mouse move */
ui_blocks_set_tooltips(ar, 1);
- button_tooltip_timer_start(but);
+ button_tooltip_timer_reset(but);
}
break;
@@ -2976,10 +2982,8 @@ static int ui_handle_button_event(bContext *C, wmEvent *event, uiBut *but)
WM_event_remove_window_timer(data->window, data->tooltiptimer);
data->tooltiptimer= NULL;
- if(!data->tooltip) {
+ if(!data->tooltip)
data->tooltip= ui_tooltip_create(C, data->region, but);
- ED_region_tag_redraw(data->region);
- }
}
/* handle menu auto open timer */
else if(event->customdata == data->autoopentimer) {
diff --git a/source/blender/windowmanager/intern/wm_keymap.c b/source/blender/windowmanager/intern/wm_keymap.c
index 8e08c9d0dbf..9a231148c36 100644
--- a/source/blender/windowmanager/intern/wm_keymap.c
+++ b/source/blender/windowmanager/intern/wm_keymap.c
@@ -495,6 +495,9 @@ static char *wm_keymap_item_to_string(wmKeymapItem *kmi, char *str, int len)
if(kmi->ctrl)
strcat(buf, "Ctrl ");
+ if(kmi->alt)
+ strcat(buf, "Alt ");
+
if(kmi->oskey)
strcat(buf, "OS ");