diff --git a/qutebrowser/browser/webelem.py b/qutebrowser/browser/webelem.py
index e47a67235..ecf8d43da 100644
--- a/qutebrowser/browser/webelem.py
+++ b/qutebrowser/browser/webelem.py
@@ -38,7 +38,7 @@ from qutebrowser.utils import log, usertypes, utils
Group = usertypes.enum('Group', ['all', 'links', 'images', 'url', 'prevnext',
- 'focus'])
+ 'focus', 'inputs'])
SELECTORS = {
@@ -50,6 +50,9 @@ SELECTORS = {
Group.url: '[src], [href]',
Group.prevnext: 'a, area, button, link, [role=button]',
Group.focus: '*:focus',
+ Group.inputs: ('input[type=text], input[type=email], input[type=url], '
+ 'input[type=tel], input[type=number], '
+ 'input[type=password], input[type=search], textarea'),
}
diff --git a/tests/unit/browser/test_webelem.py b/tests/unit/browser/test_webelem.py
index 459a8b1b1..8ab0eaa53 100644
--- a/tests/unit/browser/test_webelem.py
+++ b/tests/unit/browser/test_webelem.py
@@ -128,11 +128,19 @@ class SelectionAndFilterTests:
('', [webelem.Group.all,
webelem.Group.url]),
- ('', [webelem.Group.all]),
+ ('', [webelem.Group.all, webelem.Group.inputs]),
('', [webelem.Group.all]),
('', [webelem.Group.all]),
('', []),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
+ ('', [webelem.Group.inputs,
+ webelem.Group.all]),
+ ('', [webelem.Group.inputs, webelem.Group.all]),
('', [webelem.Group.all]),
('', [webelem.Group.all, webelem.Group.prevnext,