With QtWebEngine, downloading a data: URL seems to give us the raw data:
URL as filename, similar to #1214 / #1321 but for QtWebEngine.
With QtWebKit, the logic is now also improved so that we get a proper
extension rather than a "binary blob" filename.
See #1099
Since #5813, we now do more work there - and there already is quite a
bit of odd patching, so this isn't really the right way forward.
For now, replicate the initialization steps we *actually* need inside
the tests. I'm not entirely happy with this solution, but it's likely we
can revisit this to find something nicer when refactoring profile
initialization in general, see #5935.
This unfortunately also means there's no good way we can do what
`test_default_user_agent_saved` did, so I ended up removing it.
Turns out Qt 5.15.{0,1} also needs `--force-dark-mode`. This commit
fixes it to only use the blink-setting on Qt 5.15.2 and up. It also
parameterizes the tests better to test that the settings work on their
respective Qt versions.
On Qt 5.15+, `--force-dark-mode` does not set the preferred colorscheme.
A blink-setting is used instead to set the preferred colorscheme.
The `--force-dark-mode` flag is only set for Qt 5.14. All later versions
will use the blink-setting flag.
Before this change, we sometimes assumed that a dictionary filename had a .bdic
suffix, sometimes not, and sometimes we added it by hand.
For some reason (probably some minor API change?) this currently breaks running
dictcli.py.
While the minimal fix in #4986 works, it only does so because we use re.match
(not re.fullmatch) inside spell.py, so the .bdic suffix (which is present
there) is ignored.
This change instead refactors all dict handling so that the suffix is always
included in the filename, and only stripped off in the last moment when passing
it to QtWebEngine.
Closes#4986