parent
9b9d7647a4
commit
b9d26ee268
@ -54,6 +54,10 @@ Added
|
|||||||
* `tabs.mode_on_change` which replaces `tabs.persist_mode_on_change`. It can
|
* `tabs.mode_on_change` which replaces `tabs.persist_mode_on_change`. It can
|
||||||
now be set to `restore` which remembers input modes (input/passthrough)
|
now be set to `restore` which remembers input modes (input/passthrough)
|
||||||
per tab.
|
per tab.
|
||||||
|
* `input.insert_mode.auto_enter` which makes it possible to disable entering
|
||||||
|
insert mode automatically when an editable element was clicked. Together
|
||||||
|
with `input.forward_unbound_keys`, this should allow for emacs-like
|
||||||
|
"modeless" keybindings.
|
||||||
- New `:prompt-yank` command (bound to `Alt-y` by default) to yank URLs
|
- New `:prompt-yank` command (bound to `Alt-y` by default) to yank URLs
|
||||||
referenced in prompts.
|
referenced in prompts.
|
||||||
- The `hostblock_blame` script which was removed in v1.0 was updated for the new
|
- The `hostblock_blame` script which was removed in v1.0 was updated for the new
|
||||||
|
@ -201,6 +201,7 @@
|
|||||||
|<<hints.uppercase,hints.uppercase>>|Make characters in hint strings uppercase.
|
|<<hints.uppercase,hints.uppercase>>|Make characters in hint strings uppercase.
|
||||||
|<<history_gap_interval,history_gap_interval>>|Maximum time (in minutes) between two history items for them to be considered being from the same browsing session.
|
|<<history_gap_interval,history_gap_interval>>|Maximum time (in minutes) between two history items for them to be considered being from the same browsing session.
|
||||||
|<<input.forward_unbound_keys,input.forward_unbound_keys>>|Which unbound keys to forward to the webview in normal mode.
|
|<<input.forward_unbound_keys,input.forward_unbound_keys>>|Which unbound keys to forward to the webview in normal mode.
|
||||||
|
|<<input.insert_mode.auto_enter,input.insert_mode.auto_enter>>|Enter insert mode if an editable element is clicked.
|
||||||
|<<input.insert_mode.auto_leave,input.insert_mode.auto_leave>>|Leave insert mode if a non-editable element is clicked.
|
|<<input.insert_mode.auto_leave,input.insert_mode.auto_leave>>|Leave insert mode if a non-editable element is clicked.
|
||||||
|<<input.insert_mode.auto_load,input.insert_mode.auto_load>>|Automatically enter insert mode if an editable element is focused after loading the page.
|
|<<input.insert_mode.auto_load,input.insert_mode.auto_load>>|Automatically enter insert mode if an editable element is focused after loading the page.
|
||||||
|<<input.insert_mode.plugins,input.insert_mode.plugins>>|Switch to insert mode when clicking flash and other plugins.
|
|<<input.insert_mode.plugins,input.insert_mode.plugins>>|Switch to insert mode when clicking flash and other plugins.
|
||||||
@ -2400,6 +2401,14 @@ Valid values:
|
|||||||
|
|
||||||
Default: +pass:[auto]+
|
Default: +pass:[auto]+
|
||||||
|
|
||||||
|
[[input.insert_mode.auto_enter]]
|
||||||
|
=== input.insert_mode.auto_enter
|
||||||
|
Enter insert mode if an editable element is clicked.
|
||||||
|
|
||||||
|
Type: <<types,Bool>>
|
||||||
|
|
||||||
|
Default: +pass:[true]+
|
||||||
|
|
||||||
[[input.insert_mode.auto_leave]]
|
[[input.insert_mode.auto_leave]]
|
||||||
=== input.insert_mode.auto_leave
|
=== input.insert_mode.auto_leave
|
||||||
Leave insert mode if a non-editable element is clicked.
|
Leave insert mode if a non-editable element is clicked.
|
||||||
|
@ -151,8 +151,9 @@ class MouseEventFilter(QObject):
|
|||||||
|
|
||||||
if elem.is_editable():
|
if elem.is_editable():
|
||||||
log.mouse.debug("Clicked editable element!")
|
log.mouse.debug("Clicked editable element!")
|
||||||
modeman.enter(self._tab.win_id, usertypes.KeyMode.insert,
|
if config.val.input.insert_mode.auto_enter:
|
||||||
'click', only_if_normal=True)
|
modeman.enter(self._tab.win_id, usertypes.KeyMode.insert,
|
||||||
|
'click', only_if_normal=True)
|
||||||
else:
|
else:
|
||||||
log.mouse.debug("Clicked non-editable element!")
|
log.mouse.debug("Clicked non-editable element!")
|
||||||
if config.val.input.insert_mode.auto_leave:
|
if config.val.input.insert_mode.auto_leave:
|
||||||
|
@ -411,8 +411,9 @@ class AbstractWebElement(collections.abc.MutableMapping):
|
|||||||
elif self.is_editable(strict=True):
|
elif self.is_editable(strict=True):
|
||||||
log.webelem.debug("Clicking via JS focus()")
|
log.webelem.debug("Clicking via JS focus()")
|
||||||
self._click_editable(click_target)
|
self._click_editable(click_target)
|
||||||
modeman.enter(self._tab.win_id, usertypes.KeyMode.insert,
|
if config.val.input.insert_mode.auto_enter:
|
||||||
'clicking input')
|
modeman.enter(self._tab.win_id, usertypes.KeyMode.insert,
|
||||||
|
'clicking input')
|
||||||
else:
|
else:
|
||||||
self._click_fake_event(click_target)
|
self._click_fake_event(click_target)
|
||||||
elif click_target in [usertypes.ClickTarget.tab,
|
elif click_target in [usertypes.ClickTarget.tab,
|
||||||
|
@ -981,6 +981,11 @@ input.insert_mode.auto_load:
|
|||||||
desc: Automatically enter insert mode if an editable element is focused after
|
desc: Automatically enter insert mode if an editable element is focused after
|
||||||
loading the page.
|
loading the page.
|
||||||
|
|
||||||
|
input.insert_mode.auto_enter:
|
||||||
|
default: true
|
||||||
|
type: Bool
|
||||||
|
desc: Enter insert mode if an editable element is clicked.
|
||||||
|
|
||||||
input.insert_mode.auto_leave:
|
input.insert_mode.auto_leave:
|
||||||
default: true
|
default: true
|
||||||
type: Bool
|
type: Bool
|
||||||
|
Loading…
Reference in New Issue
Block a user