summaryrefslogtreecommitdiff
path: root/tests/end2end/test_insert_mode.py
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-07-20 14:19:38 +0200
committerFlorian Bruhin <me@the-compiler.org>2020-07-20 14:19:38 +0200
commit9bcf0b2369b240b290080dc9dd59f2c2fe2ec603 (patch)
tree80c94ccf8c4f4bbfae8b1ec90b9334fc274c94d4 /tests/end2end/test_insert_mode.py
parent4ea97581506a57b77571042b173b774da72bfc97 (diff)
downloadqutebrowser-9bcf0b2369b240b290080dc9dd59f2c2fe2ec603.tar.gz
qutebrowser-9bcf0b2369b240b290080dc9dd59f2c2fe2ec603.zip
Avoid leaving insert mode when page finished loading
Diffstat (limited to 'tests/end2end/test_insert_mode.py')
-rw-r--r--tests/end2end/test_insert_mode.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/end2end/test_insert_mode.py b/tests/end2end/test_insert_mode.py
index 609e1f68b..c52890fdf 100644
--- a/tests/end2end/test_insert_mode.py
+++ b/tests/end2end/test_insert_mode.py
@@ -102,3 +102,22 @@ def test_auto_leave_insert_mode_reload(quteproc, leave_on_load):
else:
quteproc.wait_for(
message='Ignoring leave_on_load request due to setting.')
+
+
+def test_auto_leave_insert_mode_delayed_load(quteproc):
+ """Test insert mode leave behavior with a delayed load.
+
+ If we finish loading after the user focused an insert field, we should not
+ exit insert mode.
+ """
+ quteproc.set_setting('input.insert_mode.leave_on_load', 'true')
+ quteproc.open_path('data/insert_mode_settings/html/delayed.html', wait=False)
+ quteproc.wait_for(message="Changing title for idx 0 to "
+ "'Input with delayed load'")
+
+ quteproc.send_cmd(':click-element --force-event id qute-input')
+ quteproc.wait_for(message='Entering mode KeyMode.insert (reason: *)')
+
+ quteproc.open_path('delayed-image-continue', new_bg_tab=True)
+ quteproc.ensure_not_logged(message='Leaving mode KeyMode.insert '
+ '(reason: load started)')