From: Daniel Carl Date: Thu, 16 Oct 2014 13:21:39 +0000 (+0200) Subject: Leave insert mode when user click a none editable element (#114). X-Git-Url: https://git.owens.tech/projects.html/projects.html/git?a=commitdiff_plain;h=691c6b9aade05cf75e8e4347ffb531b847f07ecc;p=vimb.git Leave insert mode when user click a none editable element (#114). --- diff --git a/src/main.c b/src/main.c index 3325072..652b8e6 100644 --- a/src/main.c +++ b/src/main.c @@ -1129,7 +1129,13 @@ static gboolean button_relase_cb(WebKitWebView *webview, GdkEventButton *event) WebKitHitTestResult *result = webkit_web_view_get_hit_test_result(webview, event); g_object_get(result, "context", &context, NULL); - if (context & WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK) { + if (vb.mode->id == 'i' && !(context & WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE)) { + /* make sure we leave insert mode if the user click on a none editable + * element - make sure the click is processed by webkit for example if + * it ws a link */ + mode_enter('n'); + propagate = false; + } else if (context & WEBKIT_HIT_TEST_RESULT_CONTEXT_LINK) { if (event->button == 2 || (event->button == 1 && event->state & GDK_CONTROL_MASK)) { /* ctrl click or middle mouse click onto link */ Arg a = {VB_TARGET_NEW};