text = gtk_clipboard_wait_for_text(SECONDARY_CLIPBOARD());
         }
         if (text) {
+            /* TODO should we show the full ynaked content with
+             * vb_set_input_text, wich migh get very large? */
             vb_echo_force(VB_MSG_NORMAL, false, "Yanked: %s", text);
             g_free(text);
 
 
         return false;
     }
-    /* use current arg.s a new clipboard content */
+    /* use current arg.s as new clipboard content */
     Arg a = {arg->i};
     if (arg->i & COMMAND_YANK_URI) {
         /* yank current url */
 
     /* check for escape or modkeys or counts */
     if (IS_ESCAPE_KEY(keyval, state)) {
         vb.state.modkey = vb.state.count = 0;
+
+        /* remove focus from possible focused inputbox - this allows to clear
+         * the inputbox also if esc is pressed from inputbox for example after
+         * yanking some text or the result of the :shecllcmd */
+        gtk_widget_grab_focus(GTK_WIDGET(vb.gui.webview));
+
         /* switch to normal mode and clear the command line */
         vb_set_mode(VB_MODE_NORMAL, true);
 
         return true;
     } else if (GPOINTER_TO_INT(is_input) && keyval == GDK_Return) {
+        /* simulate the gtk entries activate callback */
         vb_input_activate();
         return true;
     }