Florian Bruhin
18848315f5
urlmatch: Make it possible to leave off trailing slash
2018-02-20 22:45:16 +01:00
Florian Bruhin
17b235b523
Add error handling for parsing patterns from YAML
2018-02-20 22:29:21 +01:00
Florian Bruhin
439d51875f
Add config.pattern()
2018-02-20 20:54:26 +01:00
Florian Bruhin
3ade923edb
Add basic pattern support for config.py
2018-02-20 18:43:42 +01:00
Florian Bruhin
a3dfec20c1
Rename --url to --pattern
2018-02-20 17:56:47 +01:00
Florian Bruhin
9685445559
Fix issues with Python 3.5
2018-02-20 17:56:47 +01:00
Florian Bruhin
e482c76874
YamlConfig: Refuse to read a newer config version
2018-02-20 17:08:28 +01:00
Florian Bruhin
03114ccf51
Migrate YAML config files in old format
2018-02-20 16:14:06 +01:00
Florian Bruhin
b3d788fead
Add YamlConfig._pop_object
2018-02-20 15:46:05 +01:00
Florian Bruhin
f2bba2e4fa
Fix navigation handling
2018-02-20 12:30:41 +01:00
Florian Bruhin
d511c5436d
Remove dead config code
2018-02-20 12:30:34 +01:00
Florian Bruhin
19c00ff92a
configutils: Clean up comments
2018-02-20 12:30:34 +01:00
Florian Bruhin
63c77a4d76
urlmatch: Fix equality with non-UrlPattern types
2018-02-20 12:30:34 +01:00
Florian Bruhin
685e3ffcfe
Fix and test UrlPattern/configutils.Values stringification
2018-02-20 12:30:34 +01:00
Florian Bruhin
50c847562f
configutils.Values: Make it possible to pass values
2018-02-20 12:30:34 +01:00
Florian Bruhin
ab02fcb116
configutils.Values: Add __repr__
2018-02-20 12:30:34 +01:00
Florian Bruhin
1ada821092
Make sure config options exist
2018-02-19 22:09:54 +01:00
Florian Bruhin
cea664e396
Don't emit changed in unset if unneeded
2018-02-19 22:09:54 +01:00
Florian Bruhin
ab119975e7
Only emit changed in unset if there was a change
2018-02-19 22:09:46 +01:00
Florian Bruhin
8fead148e2
Add FIXME
2018-02-19 22:09:46 +01:00
Florian Bruhin
1409f4e564
Fix migration of tabs.persist_mode_on_change
2018-02-19 22:09:46 +01:00
Florian Bruhin
19148a4593
Fix :config-unset
2018-02-19 22:09:46 +01:00
Florian Bruhin
615c6ffe5a
Make :config-write-py work again
2018-02-19 22:09:46 +01:00
Florian Bruhin
0f907b1a77
Fix getting YAML values in test_configcommands.py
2018-02-19 22:09:46 +01:00
Florian Bruhin
75181e16fa
Fix test_models.py
...
The Config object got initialized via the config_stub fixture early, so we need
to force it to re-init its values after patching configdata.DATA.
2018-02-19 22:09:46 +01:00
Florian Bruhin
c89e804653
Fix handling of invalid types in YamlConfig
2018-02-19 22:08:42 +01:00
Florian Bruhin
87e329aee3
Fix config.dump_userconfig() with defaults
2018-02-19 22:08:42 +01:00
Florian Bruhin
f43c7fa360
Fix changing values in configutils.Values
2018-02-19 22:08:42 +01:00
Florian Bruhin
cb631d532a
Fix getting global value from configutils.Values
2018-02-19 22:08:42 +01:00
Florian Bruhin
8b666d2d2e
Try to update settings in acceptNavigationRequest
...
This still doesn't seem to update them early enough?
2018-02-19 22:08:42 +01:00
Florian Bruhin
bd6e99158e
Get rid of the second deepcopy for config values
...
There were two reasons why we deepcopy mutable objects in the config:
1) So mutations don't mess with our internal/default values.
2) So we can detect mutations and update the config.
If we're going to copy the value for 1) in maybe_copy(), we know the original
value is not going to be mutated, so we can use that directly for self._mutables
instead of making another copy.
2018-02-19 22:07:53 +01:00
Florian Bruhin
93972ff3f1
Copy value before watching it for mutations in config
...
If we copy it afterwards, we are going to mutate the copied object.
2018-02-19 22:07:53 +01:00
Florian Bruhin
ddb914dc65
Refactor YAML init
2018-02-19 22:07:53 +01:00
Florian Bruhin
8504ad6ff3
Change how iterating over Config/YamlConfig works
2018-02-19 22:07:53 +01:00
Florian Bruhin
6abb42a066
Make saving in autoconfig.yml work
2018-02-19 22:07:53 +01:00
Florian Bruhin
4691753965
Avoid running change handlers on config.clear
2018-02-19 22:07:53 +01:00
Florian Bruhin
9c670e13ce
Make clearing config work
2018-02-19 22:07:53 +01:00
Florian Bruhin
a6b979539d
Add missing configutils.py
2018-02-19 22:07:53 +01:00
Florian Bruhin
14a69d9047
Fix lint
2018-02-19 22:07:53 +01:00
Florian Bruhin
7c1fb1d215
Refactor acceptNavigationRequest handling to use signals
2018-02-19 22:07:53 +01:00
Florian Bruhin
2a7998847f
Unset values properly
2018-02-19 22:07:53 +01:00
Florian Bruhin
74a7676111
Fix issues with per-domain proof-of-concept
2018-02-19 22:07:53 +01:00
Florian Bruhin
d09afdf0ee
Refactor handling of mutables with url/pattern in Config
...
This also should not copy stuff coming from the config if it's not needed.
2018-02-19 22:07:53 +01:00
Florian Bruhin
8551288efb
Start working on different per-URL storage
2018-02-19 22:07:53 +01:00
Florian Bruhin
5e50824042
Broken per-URL proof-of-concept
2018-02-19 22:07:53 +01:00
Florian Bruhin
4ed07d6062
Initial implementation of per-URL setting storage
2018-02-19 22:07:53 +01:00
Florian Bruhin
894da598d6
urlmatch: Remove dead code
2018-02-19 22:07:53 +01:00
Florian Bruhin
eda15c53ad
urlmatch: Improve port error output
2018-02-19 22:07:53 +01:00
Florian Bruhin
174dd5dd9e
urlmatch: Remove performance FIXME
2018-02-15 18:47:07 +01:00
Florian Bruhin
41b7ac27d7
urlmatch: Postpone checking scheme
2018-02-15 18:47:07 +01:00
Florian Bruhin
5627a63265
urlmatch: Fix lint
2018-02-15 18:47:07 +01:00
Florian Bruhin
33b7c4bdd0
urlmatch: Fix and test port handling
2018-02-15 18:47:07 +01:00
Florian Bruhin
45cc1aaeb0
urlmatch: Add tests for file://
2018-02-15 18:47:07 +01:00
Florian Bruhin
a2836ba945
urlmatch: Make sure URLs are valid
2018-02-15 18:47:07 +01:00
Florian Bruhin
084d3de65b
urlmatch: Add support for data: and javascript:
2018-02-15 18:47:07 +01:00
Florian Bruhin
dae164abee
urlmatch: Get rid of scheme whitelist
...
There are more schemes like data: or javascript:, and we don't want to restrict
schemes anyways.
2018-02-15 18:47:03 +01:00
Florian Bruhin
867f2a8e2b
urlmatch: Use None for match-all path
2018-02-15 18:47:03 +01:00
Florian Bruhin
8fd0690959
urlmatch: Fix handling of *:// as scheme
2018-02-15 18:47:03 +01:00
Florian Bruhin
978b90b5b1
urlmatch: Implement correct IP matching
2018-02-15 18:47:03 +01:00
Florian Bruhin
2d43a1d2e7
urlmatch: Use None as default for host
2018-02-15 18:47:03 +01:00
Florian Bruhin
9092c3a87f
urlmatch: Increase debuggability
2018-02-15 18:47:03 +01:00
Florian Bruhin
a8a976b324
urlmatch: Simplify/fix matching by using None as sentinel
2018-02-15 18:47:03 +01:00
Florian Bruhin
2b274f8e0b
urlmatch: Implement initial matching
2018-02-15 18:47:02 +01:00
Florian Bruhin
3d6cbcf396
urlmatch: Improve matching error for TLD wildcards
2018-02-15 18:47:02 +01:00
Florian Bruhin
fa329c698e
urlmatch: Finish port parsing
2018-02-15 18:47:02 +01:00
Florian Bruhin
a2a95f5fee
urlmatch: Improve port handling
2018-02-15 18:47:02 +01:00
Florian Bruhin
d266190518
urlmatch: Improve port tests
2018-02-15 18:47:02 +01:00
Florian Bruhin
c728d78bea
urlmatch: Host/port parsing
2018-02-15 18:47:02 +01:00
Florian Bruhin
32abb67d1f
urlmatch: Use dedicated ParseError exception
2018-02-15 18:47:02 +01:00
Florian Bruhin
3c17bb97c0
urlmatch: Start with port parsing
2018-02-15 18:47:02 +01:00
Florian Bruhin
1b8dfb6c36
urlmatch: Disallow NUL byte
...
See https://bugs.chromium.org/p/chromium/issues/detail?id=390624
With Qt, we might run into the same issue as well at some point, and it sure
can't hurt to disallow it.
2018-02-15 18:46:58 +01:00
Florian Bruhin
76efba296f
urlmatch: Store path/port
2018-02-15 18:46:55 +01:00
Florian Bruhin
b93c0dad5a
urlmatch: Start UrlPattern
2018-02-15 18:46:51 +01:00
Jay Kamat
6eeacfe82b
Fix caret being cleared when leaving any mode
2018-02-13 09:27:15 -05:00
George Edward Bulmer
942dca3444
Add test for pastebin_version()
2018-02-13 13:31:27 +00:00
Florian Bruhin
9bf5ff1583
Merge remote-tracking branch 'origin/pr/3584'
2018-02-13 09:43:44 +01:00
Florian Bruhin
0e87c46849
Remove unused win_id argument
2018-02-13 09:43:21 +01:00
Florian Bruhin
47451aa495
Open qute://tabs with :buffer
2018-02-12 23:00:26 +01:00
Florian Bruhin
9f163d90e1
Merge remote-tracking branch 'origin/pr/3450'
2018-02-12 22:54:43 +01:00
Simon Doppler
ca199b0d3d
Use separate variable to make pylint happy
2018-02-12 22:51:36 +01:00
Simon Doppler
7ae0d584e6
Add 20px margin above the raw list
2018-02-12 22:49:02 +01:00
Simon Doppler
0b047e3e10
Handle url with trailing slash and without
2018-02-12 22:48:41 +01:00
Simon Doppler
9a0c113f8a
Fix pylint line-too-long error
2018-02-12 22:25:21 +01:00
Florian Bruhin
1913012c8a
Merge remote-tracking branch 'origin/pr/3561'
2018-02-12 22:18:49 +01:00
Simon Doppler
572257921d
Use QUrl().toDisplayString() instead of url()
2018-02-12 16:12:15 +01:00
Simon Doppler
417200fa70
Use QUrl instead of str to compare
2018-02-12 16:06:17 +01:00
Simon Doppler
d6912be223
Update import order
2018-02-12 16:04:48 +01:00
Simon Doppler
ee57c30c53
Re-add the raw list (with fixed alignment)
2018-02-12 16:02:06 +01:00
Simon Doppler
0caa5d04d3
Use tabs directly
...
also ignore tabs page url in list
2018-02-12 15:50:56 +01:00
George Edward Bulmer
9397cc74c1
Pylint indentation fix
2018-02-12 14:24:53 +00:00
George Edward Bulmer
561e5d17b9
Remove extraneous space
2018-02-12 14:22:25 +00:00
Simon Doppler
71d33a47b3
Remove useless intermediary variables
2018-02-12 15:20:41 +01:00
Simon Doppler
ad50a7bfd2
Move import to external ressources
2018-02-12 15:20:06 +01:00
George Edward Bulmer
b59a7cdcc0
Report syntax errors as unhandled exceptions
...
Update tests accordingly
2018-02-12 14:07:05 +00:00
George Edward Bulmer
ce8b457bac
Only display exception type if no traceback
...
Update test to match
2018-02-12 13:43:22 +00:00
Marc Jauvin
68b12e6e9f
add missing lines
2018-02-12 07:31:02 -05:00
Marc Jauvin
0a9c0a1385
on_load_finished() signal handler for scroll-pos
...
remove get_page()
2018-02-12 07:16:01 -05:00
Marc Jauvin
a0e028a851
Update tab scroll position when finished loading.
...
Resolves #3322
2018-02-11 22:32:03 -05:00
George Edward Bulmer
164b2a3eef
Fix a lengthy line
2018-02-11 23:20:24 +00:00
George Edward Bulmer
72103ec730
Format error type in a different way
2018-02-11 23:16:04 +00:00