Commit Graph

6683 Commits

Author SHA1 Message Date
Florian Bruhin
a1c7d179e3 Only call QApplication::sync() with QtWebEngine 2017-03-05 15:16:14 +01:00
Florian Bruhin
c422897abb Make sure to process history after the rest of init is done
Otherwise, with 5ccafd62d4 the history starts
processing before the webview opened, and opening it is delayed until the whole
history is read.

Instead, call _process_args directly (I'm not even sure why it was using a 0ms
QTimer...) and schedule _init_late_modules after everything is really done.
2017-03-04 18:24:44 +01:00
Florian Bruhin
5ccafd62d4 Fix initial keyboard focus with QtWebEngine
Fixes #2321.
2017-03-04 18:11:34 +01:00
Florian Bruhin
e81edc8224 ipc: Delay deleting of QLocalSocket on disconnect
Fixes #2396.

See https://bugreports.qt.io/browse/QTBUG-59297 and
https://github.com/qutebrowser/qutebrowser/issues/2321#issuecomment-284024213
2017-03-04 18:11:34 +01:00
Yannis Rohloff
7984643365 flake8 fails fixed 2017-03-04 17:16:52 +01:00
Yannis Rohloff
5d5652a24b always read the host file 2017-03-04 17:08:53 +01:00
Yannis Rohloff
6219b37c39 adblock: Don't show message if host-blocking-enabled is true
Fixes #2364
2017-03-04 16:39:44 +01:00
Imran Sobir
0092b18c44 Fix qute:javascript on Windows. 2017-03-04 19:37:48 +05:00
Daniel Schadt
90f12a1d5a return fast from DownloadItem.open_file
Fixes #2296

By using a singleshot timer, we return fast from DownloadItem.open_file,
which in turn closes the prompt fast, which in turn doesn't allow a
second Ctrl-x to be registered, which in turn doesn't want to set the
filename twice.
2017-03-04 11:30:41 +01:00
Florian Bruhin
0186a9bde5 Fix lint 2017-03-02 21:10:31 +01:00
Florian Bruhin
75bc400e74 Add Chromium version to version output
This also restructures things a bit to show the backend version together with
the backend.

Fixes #2380
2017-03-02 20:22:17 +01:00
Imran Sobir
96e81f595f Fix a case where 'next' is not correctly returned. 2017-03-02 23:14:00 +05:00
Florian Bruhin
56ab02f54d Set tab as parent for print dialogs
Fixes #2366
2017-03-02 18:44:07 +01:00
Imran Sobir
895620b536 Don't assume 'next' appears last. 2017-03-02 22:40:24 +05:00
Florian Bruhin
81a36ffd7d Strip QtWebEngine download suffixes properly
Fixes #2386
2017-03-01 23:43:04 +01:00
Florian Bruhin
f4490fb90c Fix WebKitElement._move_text_cursor with old PyQt 2017-03-01 20:19:40 +01:00
Florian Bruhin
1f12b4c1c1 Relax validation of QssColor values
Fixes #2370
2017-03-01 18:11:53 +01:00
Florian Bruhin
65f407e926 Remove webelem.style_property()
It's not used anymore, and not possible to support with QtWebEngine without a
massive performance hit when serializing elements.
2017-03-01 17:54:27 +01:00
Florian Bruhin
03f1e0913d Add _js_call to WebEngineElement 2017-03-01 17:34:21 +01:00
Florian Bruhin
bc0a9cd94d Move cursor to end with input elements on QtWebEngine 2017-03-01 17:30:48 +01:00
Florian Bruhin
1e1ba34b60 Fix selecting text fields with QtWebKit
Using focus() in JS there means that existing text in the field gets selected.
Move the cursor to the end after focusing it to prevent that.

Fixes #2359
2017-03-01 17:13:02 +01:00
Florian Bruhin
deb59fc66e Don't strip info when loading PAC from a file 2017-03-01 14:19:23 +01:00
Florian Bruhin
9bb5c9fdab Remove UserInfo and path/query for PAC URLs 2017-03-01 14:19:13 +01:00
Florian Bruhin
1e42fd1319 Fix lint 2017-03-01 11:12:28 +01:00
Florian Bruhin
61e7d5883f Merge branch 'ZZ-and-ZQ' of https://github.com/wasamasa/qutebrowser into wasamasa-ZZ-and-ZQ 2017-02-28 21:22:55 +01:00
Florian Bruhin
47a9c8e17c Also check compiled Qt version in version checks 2017-02-28 21:01:47 +01:00
Florian Bruhin
67dfbc7e5f Don't create QWebEngine profile at import time
Fixes #2378
2017-02-28 17:24:48 +01:00
Imran Sobir
cb6c6b814e Fix pylint errors. 2017-02-28 20:11:51 +05:00
Imran Sobir
9e6b0240f6 Put javascript in module, fix lint errors 2017-02-28 19:23:31 +05:00
Imran Sobir
3e45f739fc Show message when Javascript is turned off. 2017-02-28 19:22:10 +05:00
Florian Bruhin
9be0e0d57d Clarify javascript-can-access-clipboard description
Fixes #2374.
2017-02-27 20:28:47 +01:00
Imran Sobir
e8db008671 Move qute:history javascript to own file. 2017-02-27 22:44:13 +05:00
Imran Sobir
3b3846c9dc Add qute:javascript to serve JS files. 2017-02-27 22:37:24 +05:00
Florian Bruhin
fb5377b710 Remove unnecessary code 2017-02-27 17:55:50 +01:00
Imran Sobir
783769d302 Load new history items from next item's time. 2017-02-27 21:44:23 +05:00
Imran Sobir
c4416c8ac0 Prevent crash with invalid start_time param. 2017-02-27 21:41:35 +05:00
Imran Sobir
c223f6c69d Style/misc fixes. 2017-02-27 21:39:51 +05:00
Florian Bruhin
94cabdb840 Use double dashes for --qt-arg/--qt-flag
Qt seems to not care about -style vs --style, but this way we can also pass
stuff to Chromium.
2017-02-27 13:33:12 +01:00
Florian Bruhin
c59b6bf02b Handle invalid layout in TabBarStyle.subElementRect 2017-02-27 09:05:40 +01:00
Imran Sobir
76bf8c0049 Convert history to list before converting to JSON. 2017-02-26 19:58:14 +05:00
Imran Sobir
845f21b275 New qute:history page. 2017-02-26 17:07:30 +05:00
Vasilij Schneidermann
ce433bd139 Add ZZ and ZQ keys to (save and) quit the session 2017-02-25 23:10:18 +01:00
Florian Bruhin
469445e816 Release v0.10.0 2017-02-25 21:47:56 +01:00
Florian Bruhin
fc2250b3b2 Merge branch 'session-save-only-active-window' of https://github.com/danfis/qutebrowser into danfis-session-save-only-active-window 2017-02-25 17:55:42 +01:00
Florian Bruhin
9656449545 Merge branch 'master' of https://github.com/kiryl/qutebrowser into kiryl-master 2017-02-25 17:53:05 +01:00
Florian Bruhin
496b70697b Merge branch 'newbmarkstyle' of https://github.com/imransobir/qutebrowser into imransobir-newbmarkstyle 2017-02-25 17:46:21 +01:00
Florian Bruhin
1eab108323 Merge branch 'upstream-master-jseval-file' of https://github.com/pkill-nine/qutebrowser into pkill-nine-upstream-master-jseval-file 2017-02-25 17:26:12 +01:00
pkill9
6cb48ba2b6 Adds a --file flag to :jseval 2017-02-25 13:11:53 +00:00
Florian Bruhin
48c9a4061b Also fix ACE hinting for QtWebKit 2017-02-24 18:36:15 +01:00
Florian Bruhin
23183bd918 Fix hinting in ACE editors 2017-02-24 15:12:35 +01:00
Florian Bruhin
3feb4211fe Don't show hints for opacity: 0 elements
Fixes #2347
2017-02-24 09:13:25 +01:00
Florian Bruhin
e832105dd5 Treat the Jupyter input line as editable 2017-02-23 17:43:22 +01:00
Imran Sobir
34abad27c4 Use jinja filter to set default title. 2017-02-23 19:29:49 +05:00
Imran Sobir
4b643f0b74 Extract common styling from bookmarks, history. 2017-02-23 19:23:18 +05:00
Florian Bruhin
91d3326a9e Show a warning when using private-browsing with QtWebKit-NG 2017-02-23 06:49:09 +01:00
Florian Bruhin
6004bfa72f Don't lose warnings shown in early init phases 2017-02-23 06:48:58 +01:00
Florian Bruhin
cd2c547b6b Don't show error if no autosave session exists 2017-02-22 23:17:59 +01:00
Daniel Fiser
6e1ac8be78 Fixed indentation of SessionManager.save() arguments. 2017-02-22 10:37:55 +01:00
Daniel Fiser
bb5825e043 session-save: in case of --only-active-window, the win-id is determined in session_save(). 2017-02-22 10:22:30 +01:00
Daniel Fiser
bb74b2703f session-save: doc generated from docstring. 2017-02-22 09:59:29 +01:00
Florian Bruhin
5379138c17 Merge branch 'pac+file' of https://github.com/kiryl/qutebrowser into kiryl-pac+file 2017-02-22 07:35:06 +01:00
Florian Bruhin
e8443241df Allow input -> mouse-zoom-divider to be 0 2017-02-22 05:15:57 +01:00
Florian Bruhin
5a87c9b6cb Re-add missing import 2017-02-21 19:44:15 +01:00
Florian Bruhin
b69d66e437 Actually check for Qt 5.7.1 2017-02-21 19:28:22 +01:00
Florian Bruhin
71f7b01ea7 Bring back PyQt (but not Qt) 5.7.0 support with QtWebEngine
This was originally removed in a86170f45, however Debian testing (Stretch) comes
with Qt 5.7.1, but PyQt 5.7.
2017-02-21 19:25:18 +01:00
Florian Bruhin
a179d6a738 Improve earlyinit Qt/PyQt version messages 2017-02-21 19:15:22 +01:00
Kirill A. Shutemov
ac3c8bb319 pac_utils.js: remove excessive escaping
Looks like the implementation was derived from Mozilla's
nsProxyAutoConfig.js, which is evaluated twice. It requires double
escaping.

In our case excessive escaping is harmful.

In particular it makes ip-matching regexp in isInNet() invalid and makes
it really slow as we go to dnsResolve() all the time, even when it's not
needed.

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
2017-02-21 15:23:27 +03:00
Imran Sobir
7cb384aaf3 Update qute:bookmarks design. 2017-02-21 16:02:03 +05:00
Kirill A. Shutemov
de088c18b9 Allow pac+file proxy scheme to load PAC file from local filesystem
Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
2017-02-21 12:57:18 +03:00
Kirill A. Shutemov
13213724b0 PAC: fix isPlainHostName()
Fix isPlainHostName() implementation and add test-case for it.

Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
2017-02-21 12:16:46 +03:00
Florian Bruhin
25f217552c Remove unused import 2017-02-21 06:17:17 +01:00
Florian Bruhin
1708b38d7b Add SessionManager.{save,delete}_autosave 2017-02-20 07:43:41 +01:00
Florian Bruhin
ee25e900f8 Add error handling for autosave session 2017-02-20 06:44:23 +01:00
Florian Bruhin
cafff3e1b6 Merge branch 'session-autosave' of https://github.com/cosminadrianpopescu/qutebrowser into cosminadrianpopescu-session-autosave 2017-02-20 06:30:34 +01:00
Florian Bruhin
eb4d699be3 Add missing click_target arg to _click_editable 2017-02-19 20:46:43 +01:00
Florian Bruhin
389501deb9 Merge branch 'navigate-fix' of https://github.com/EliteTK/qutebrowser into EliteTK-navigate-fix 2017-02-19 20:22:27 +01:00
Florian Bruhin
f772ccb203 QtWebEngine: Fall back to events for hints if JS is broken
*cough* musl *cough*
2017-02-19 20:03:27 +01:00
Florian Bruhin
5b4b226186 Add Qt library/data paths to version info 2017-02-19 14:02:40 +01:00
Tomasz Kramkowski
5b7090e402 browser/navigate: _find_nextprev allow for space sep rel attribs
The _find_nextprev function of browser/navigate.py only checks to see if
the rell attribute equals 'prev', 'previous', or 'next'. This patch
changes this to check for a set intersection between {'prev',
'previous'} or {'next'} and the set of the space separated list of the
rel attribute.
2017-02-19 12:31:09 +00:00
Florian Bruhin
01db59ff36 Handle all uerscript errors when hinting with userscript-target 2017-02-19 13:15:15 +01:00
Florian Bruhin
4e74fff5e8 Test/lint fixes 2017-02-18 00:10:13 +01:00
Florian Bruhin
410b56447a Temporarily set JavascriptCanOpenWindows for hints
This partially reverts ba21fb3784.
Fixes #2311.
2017-02-17 22:08:46 +01:00
Florian Bruhin
a767e33f15 Re-add title setting code 2017-02-17 15:52:12 +01:00
Florian Bruhin
dcdfc116a4 Fix indent 2017-02-17 15:52:05 +01:00
Florian Bruhin
0deb422cfd Remove unused imports 2017-02-17 15:44:25 +01:00
Florian Bruhin
b5dd69f4a6 Add some logging for clicking 2017-02-17 15:43:25 +01:00
Florian Bruhin
a86170f45d Drop PyQt < 5.7.1 support for QtWebEngine 2017-02-17 14:42:57 +01:00
Florian Bruhin
7a4a34c374 Fix WebEngineElement.click on Qt 5.6 2017-02-17 14:32:45 +01:00
Florian Bruhin
ba21fb3784 webengine: Use _click_href for hinting target=_blank links
Fixes #2311
2017-02-17 06:57:31 +01:00
Florian Bruhin
40e1337e03 Adjust WebEngineEleement _js_dict in remove_blank_target
Otherwise, when checking later if the element has target=_blank set, we still
think it is.

This is not perfect as remove_blank_target also removes it from sub-elements,
but it's a good start.
2017-02-17 06:56:12 +01:00
Florian Bruhin
3de2bfb277 Handle renderer process not starting at all 2017-02-13 11:23:29 +01:00
Florian Bruhin
2b76cca2b2 Improve earlyinit error messages 2017-02-12 21:19:58 +01:00
Florian Bruhin
d60e365e3c Don't use _click_js for target=_blank links
Fixes #2311
2017-02-12 01:06:56 +01:00
Florian Bruhin
a4f04db848 Cap scroll count to 5000
Fixes #1694
2017-02-11 22:26:37 +01:00
Florian Bruhin
b73cda22de Fix lint 2017-02-11 21:17:16 +01:00
Florian Bruhin
bd8ead2279 Detect rel-attributes on <a> elements for :navigate 2017-02-11 20:48:48 +01:00
Florian Bruhin
66cbb8aa31 Fix lint 2017-02-11 17:22:35 +01:00
Florian Bruhin
b15ae97444 Get timestamp of curr_date instead of today 2017-02-11 17:06:51 +01:00
Florian Bruhin
c3153273f5 Merge branch 'master' of https://github.com/imransobir/qutebrowser into imransobir-master 2017-02-11 17:05:57 +01:00
Imran Sobir
37c3b79b9b Add :history command. 2017-02-10 17:47:20 +05:00
Florian Bruhin
46752a2c24 Add some performance improvements for qute:history 2017-02-10 11:39:08 +05:00
Imran Sobir
9001ec079c Align history time to the right. 2017-02-09 18:37:33 +05:00
Imran Sobir
d21585f603 Add rel=prev, rel=next to pagination links. 2017-02-09 18:11:17 +05:00
Florian Bruhin
85d8d45e19 Ask for confirmation with :history-clear 2017-02-09 13:20:00 +01:00
Imran Sobir
a15aa9eade Hide next links to future. 2017-02-09 17:18:57 +05:00
Florian Bruhin
859974fa99 Don't crash without hint context in HintManager._start_cb 2017-02-08 22:49:25 +01:00
Florian Bruhin
b5ab3adc8c Fix sip.assign check 2017-02-08 22:27:49 +01:00
Florian Bruhin
0897e8e5ad Add pdfjs path for pdf.js in AUR 2017-02-08 22:17:34 +01:00
Florian Bruhin
3adcfddfff Handle LookupError when reading adblock zips 2017-02-08 22:17:30 +01:00
Florian Bruhin
4d08dc5ddb Point out QtWebKit-NG in version info 2017-02-08 18:34:50 +01:00
Florian Bruhin
df35c9138b Filter out uninteresting elements early in TabBarStyle
Otherwise we call _tab_layout on something which is not a QStyleOptionTab, which
might cause AttributeErrors. In a crash report I couldn't reproduce, it got
called with a QStyleOptionMenuItem when right-clicking on the page.
2017-02-08 16:53:03 +01:00
Florian Bruhin
36e2cc9628 Fix broken "if" when closing tab.
Combining the "add_undo" with "tab.url().isValid()" was a mistake as the "else"
meant something else then...
2017-02-08 12:45:09 +01:00
Florian Bruhin
6ae7960d9a Fix lint 2017-02-08 12:14:24 +01:00
Florian Bruhin
2501eed5f5 Re-add tab.deleteLater() call
This got removed in 1af951fd62 but
tab.layout().unwrap() only deletes the underlying widget, not the tab itself.
2017-02-08 12:12:36 +01:00
Florian Bruhin
0130866e89 Only do mhtml import in DownloadManager.get_mhtml
We also import qtnetworkdownloads on QtWebEngine without QtWebKit available, so
we can't be sure we can import mhtml.
2017-02-08 12:03:32 +01:00
Florian Bruhin
8226afd167 Hide more SSL warnings 2017-02-08 12:01:30 +01:00
Florian Bruhin
7c08444c37 Refuse to serialize chrome:// and view-source:// tabs
Fixes #2289
2017-02-08 11:40:00 +01:00
Florian Bruhin
1af951fd62 Work around crashes when opening URL after renderer crash
Fixes #2290
2017-02-08 10:56:44 +01:00
Florian Bruhin
2469d01ce7 Add renderer_process_terminated signal to tab API 2017-02-08 10:55:05 +01:00
Imran Sobir
ec0e95969e Add unit tests for qute://history. 2017-02-08 13:28:04 +05:00
Florian Bruhin
87d1a2c7a3 Fix lint 2017-02-08 09:14:54 +01:00
Florian Bruhin
12ed226ce6 Set COLUM_WIDTHS for :help completion
Fixes #2287
2017-02-08 09:11:58 +01:00
Florian Bruhin
c4a74c7a34 Make sure completion column widths never get negative
I discovered this because of #2287 but it doesn't actually change anything
there. When we don't have a third column, subtract the scrollbar width from the
second one.
2017-02-08 09:10:40 +01:00
Florian Bruhin
02198c4f65 Also check for QtWebKitWidgets in earlyinit 2017-02-08 00:57:47 +01:00
Florian Bruhin
8b9b49f180 Fix message on renderer process crash 2017-02-08 00:41:17 +01:00
Florian Bruhin
c198f3a6a3 Adjust descriptions and dependencies
See #1571
2017-02-07 23:27:44 +01:00
Florian Bruhin
3f1433dcf7 Merge branch 'webengine-mhtml' 2017-02-07 22:24:25 +01:00
Florian Bruhin
d13809089f Exclude socket notifier events during prompts
This helps with segfaults while the prompt is shown, like those which happened
during mhtml downloads with QtWebEngine.
2017-02-07 22:13:33 +01:00
Florian Bruhin
7aa0e900d7 Add mhtml support for QtWebEngine 2017-02-07 22:13:33 +01:00
Florian Bruhin
bae1f41599 Set user-agent for QtWebKit downloads
See #513
2017-02-07 22:00:03 +01:00
Imran Sobir
9a218256b7 Fix pylint complaints. 2017-02-07 19:25:01 +05:00
Imran Sobir
2c40be31a2 Prevent crash if invalid date is passed to qute:history. 2017-02-07 16:15:10 +05:00
Imran Sobir
be12b4cccf Use history item's url as title if no title. 2017-02-07 16:06:19 +05:00
Daniel Fiser
c092840c04 Add optional argument --only-active-window to :session-save.
The new optional argument --only-active-window makes :session-save to
save only the tabs in the currently active window.
2017-02-07 10:38:41 +01:00
Imran Sobir
f5e75ff870 Misc qute_history() fixes. 2017-02-07 11:56:51 +05:00
Imran Sobir
46a34a99f3 Use QUrlQuery to parse qute://history queries. 2017-02-07 11:22:04 +05:00
Florian Bruhin
e487fe441e Revert "Add a workaround to save cookies on exit"
This causes sqlite cookie errors from Chromium on shutdown...

See #2263
This reverts commit 8d55d093f2.
2017-02-06 22:16:39 +01:00
Florian Bruhin
2b6b18d7bf Fix lint 2017-02-06 21:33:08 +01:00
Florian Bruhin
df245dae48 Add support for general -> print-element-backgrounds with WebEngine 2017-02-06 21:08:32 +01:00
Florian Bruhin
a40db1735e Update QtWebEngine settings todo 2017-02-06 21:01:19 +01:00
Florian Bruhin
811bb84587 Clarify site-specific-quirks setting value 2017-02-06 20:43:25 +01:00
Florian Bruhin
8d55d093f2 Add a workaround to save cookies on exit
Fixes #2263
2017-02-06 20:43:23 +01:00
Florian Bruhin
b8b4611b4d Enable errors on renderer process crashes 2017-02-06 20:43:03 +01:00
Imran Sobir
748ec7e7a1 Add history page. 2017-02-07 00:04:32 +05:00
Florian Bruhin
52e3865367 Add support for the colors -> webpage.bg option with QtWebEngine 2017-02-06 17:18:36 +01:00
Florian Bruhin
29ffa3d134 Add a fullscreen notification overlay
From the spec:

  User agents should ensure, e.g. by means of an overlay, that the end user is
  aware something is displayed fullscreen. User agents should provide a means of
  exiting fullscreen that always works and advertise this to the user. This is
  to prevent a site from spoofing the end user by recreating the user agent or
  even operating system environment when fullscreen.

https://fullscreen.spec.whatwg.org/#security-and-privacy-considerations
2017-02-06 16:22:58 +01:00
Florian Bruhin
39508d984e Handle multiple commands in KeyConfigParser.get_reverse_bindings_for 2017-02-06 16:22:58 +01:00
Florian Bruhin
98e6ccf548 Add fullscreen support for QtWebEngine 2017-02-06 16:22:58 +01:00
Florian Bruhin
1209724f83 Fix lint 2017-02-06 13:42:31 +01:00
Florian Bruhin
dd9d6264c7 Fix search/replace fail 2017-02-06 13:09:39 +01:00
Florian Bruhin
89108be013 Clean up printing code in browser.commands 2017-02-06 12:54:13 +01:00
Florian Bruhin
c8913cbdc4 Fix QtWebEngine PDF printing 2017-02-06 12:49:02 +01:00
Florian Bruhin
4518afbde2 Add support for storage -> cache-size with QtWebEngine 2017-02-06 12:46:28 +01:00
Florian Bruhin
bd0b62ab80 Add support for content -> cookies-store with QtWebEngine 2017-02-06 10:47:03 +01:00
Florian Bruhin
4104056950 Split profile related stuff to webenginesettings._init_profile 2017-02-06 10:46:37 +01:00
Florian Bruhin
b1894ed7e0 Add a utils.unused() 2017-02-06 10:45:36 +01:00
Florian Bruhin
2f4c185da0 Implement printing with QtWebEngine 2017-02-06 09:51:11 +01:00
Florian Bruhin
99d1636878 Properly implement session support for QtWebKit-NG
See #1571
2017-02-06 08:48:08 +01:00
Florian Bruhin
dfbcb75313 First prototype of QtWebKit-NG history/session support 2017-02-06 08:48:08 +01:00
Florian Bruhin
348a50ad69 Fix inserting text with QtWebEngine
The insertText event doesn't seem to be available with newer Chromium releases,
which means this broke (probably with Qt 5.7.1).

Fixes #2183
Fixes #2217
2017-02-06 08:06:58 +01:00
Florian Bruhin
5e58764326 Fix lint 2017-02-05 19:52:59 +01:00
Florian Bruhin
3f332d3871 Remove @pyqtSlot annotation which breaks with LibreSSL
Fixes #2213
2017-02-05 19:08:44 +01:00
Florian Bruhin
57793fb6d6 Handle hint keypress without a context.
Fixes #2098
2017-02-05 18:53:58 +01:00
Florian Bruhin
9b843f24eb Re-enable segfault reports for QtWebEngine
Fixes #2174
2017-02-05 18:50:17 +01:00
Florian Bruhin
f3b39c55a0 Fix lint 2017-02-05 18:42:34 +01:00
Florian Bruhin
2de0904b07 Fix lint 2017-02-05 17:21:33 +01:00
Florian Bruhin
a5c68babc1 Add backend to version output 2017-02-05 17:16:47 +01:00
Florian Bruhin
b1a95a3930 Add automatic backend selection in earlyinit 2017-02-05 17:09:04 +01:00
Florian Bruhin
7fe86b196d Add missing import 2017-02-05 14:24:10 +01:00
Florian Bruhin
8c30e57356 Fix configtypes.py coverage 2017-02-05 14:22:21 +01:00
Florian Bruhin
a62062af27 Relax font validation in the config
Fixes #2256
2017-02-05 12:51:49 +01:00
Florian Bruhin
112e4a1dad Use sip.assign for QAuthenticator if available
Fixes #2171
2017-02-05 12:39:28 +01:00
Florian Bruhin
b40a1bfb83 Disable percent-decoding for QtWebEngine with Qt >= 5.8.1 2017-02-05 12:33:40 +01:00
Florian Bruhin
de50f30b9b Replace all GitHub links 2017-02-05 00:13:11 +01:00
Florian Bruhin
ba5ac6139a Update docs 2017-02-05 00:09:18 +01:00
Florian Bruhin
0a0aa57754 Merge branch 'docs' of https://github.com/lucc/qutebrowser into lucc-docs 2017-02-05 00:07:36 +01:00
Florian Bruhin
cc2b085443 Uppercase word-hints with hints -> uppercase
Fixes #2278
2017-02-04 23:45:00 +01:00
Florian Bruhin
021b3645cc Don't stack zoom level messages
Fixes #1980
2017-02-04 23:42:55 +01:00
Florian Bruhin
2c46f8ecdb Fix zoom handling with QtWebKit 2017-02-04 23:30:12 +01:00
Lucas Hoffmann
d874f68463 docs: Clarify hints.mode = number 2017-02-04 22:31:52 +01:00
Lucas Hoffmann
378e4f1bdd docs: Clarify behaviour of view-source 2017-02-04 22:31:52 +01:00
Florian Bruhin
e8bbc1adf8 QtWebEngine: Fix insert mode checks with zoom
Fixes #2169
2017-02-04 22:12:41 +01:00
Florian Bruhin
f99bf661cc Fix lint 2017-02-04 21:59:39 +01:00
Florian Bruhin
d3f359e490 Disallow caret mode with QtWebEngine 2017-02-04 21:43:32 +01:00
Florian Bruhin
fd29528e4f Add proxy support for QtWebEngine with Qt >= 5.8
See #666
Fixes #2082
2017-02-04 21:39:22 +01:00
Florian Bruhin
e01ac4c41f Merge branch 'issue-2204' of https://github.com/Kingdread/qutebrowser into Kingdread-issue-2204 2017-02-04 18:34:51 +01:00
Florian Bruhin
662859c133 Remove unnecessary inheritance on Python 3 2017-02-04 18:10:57 +01:00
Florian Bruhin
4c14b2983b Merge branch 'more-pac' of https://github.com/abbradar/qutebrowser into abbradar-more-pac 2017-02-04 18:07:45 +01:00
Florian Bruhin
007065b63c Merge branch 'ignore-invalid-register-keys' of https://github.com/blyxxyz/qutebrowser into blyxxyz-ignore-invalid-register-keys 2017-02-04 17:55:07 +01:00
Florian Bruhin
8cdf2f61c7 Merge branch 'enter-mode-blacklist' of https://github.com/blyxxyz/qutebrowser into blyxxyz-enter-mode-blacklist 2017-02-04 17:52:16 +01:00
Florian Bruhin
c1f2f0ac06 Merge branch 'strip-mailto' of https://github.com/blyxxyz/qutebrowser into blyxxyz-strip-mailto 2017-02-04 17:48:53 +01:00
Florian Bruhin
3e6fd27afd Merge branch 'upstream-master-cmdlinetext_userscript' of https://github.com/pkill-nine/qutebrowser into pkill-nine-upstream-master-cmdlinetext_userscript 2017-02-04 17:42:51 +01:00
Florian Bruhin
148b34a50b Fix remaining Qt 5.8 QtWebEngine test failures 2017-02-04 13:28:38 +01:00
Florian Bruhin
987cb236e8 Revert changes to WebEngineView.createWindow
We still need those to open tabs in the background when middle-clicked.

This was a regression introduced in 545539f28d.
Fixes #2276.
2017-02-04 11:52:59 +01:00
Florian Bruhin
6cd4105ea1 Fix long line 2017-02-04 00:11:48 +01:00
Florian Bruhin
66719c5ecc Fix lint 2017-02-03 23:55:14 +01:00
Florian Bruhin
545539f28d Do more sophisticated clicking for hints with QtWebEngine
We now use click() or focus() in JS if possible, or manually follow links in a
href attribute.

While this probably introduces some new corner cases, it fixes a handful of
older ones:

- window.open() in JS can now be handled correctly as we don't need hacks in
  createWindow anymore.
- Focusing input fields with images now works - fixes #1613, #1879
- Hinting now works better on QtWebEngine with Qt 5.8 - fixes #2273

Also see #70.
2017-02-03 23:21:57 +01:00
Florian Bruhin
ba2f4fb1b9 Use event_target to filter out mouse events
Fixes #2262
2017-02-01 13:08:11 +01:00
pkill9
8ad28719ab Add "QUTE_COMMANDLINE_TEXT" environment variable for userscripts.
- Added "QUTE_COMMANDLINE_TEXT" environment variable for userscripts.
 - Updated documentation to include "QUTE_COMMANDLINE_TEXT" environment
variable for userscripts.
2017-02-01 09:29:05 +00:00
Florian Bruhin
72bdf69fe3 Fix long line 2017-02-01 09:51:50 +01:00
Florian Bruhin
bb46c01c50 Clear search text before closing QtWebEngine tab
See https://bugreports.qt.io/browse/QTBUG-58563 and #2261
2017-02-01 09:30:53 +01:00
Florian Bruhin
90f472bf59 Temporary fix for Qt 5.8 segfaults
See #2261
2017-01-29 22:56:53 +01:00
Florian Bruhin
95aeb86328 Update pdfjs version parsing
Fixes #2254
2017-01-27 09:19:10 +01:00
Florian Bruhin
2a773a2c55 Enable WebGL by default 2017-01-24 23:55:12 +01:00
Jan Verbeek
9845cbbd81 Remove mailto: scheme properly 2017-01-21 23:19:15 +01:00
Jan Verbeek
2700739a3a Strip mailto: when yanking a hint
Resolves #61.
2017-01-21 14:43:50 +01:00
Jan Verbeek
bd3c2f92fc Blacklist some modes for :enter-mode
This disallows using :enter-mode with modes that don't work properly
when entered that way. Fixes #1137.
2017-01-20 19:32:16 +01:00
Jan Verbeek
7e7cac2d48 Ignore non-register keys
Ignore all keys with an empty .text() return value, not just modifier
keys. You can still use unusual things like ß for registers, but
XF86WakeUp is out. Fixes #2125.
2017-01-20 17:34:33 +01:00
Florian Bruhin
b47f90d24f Really fix Python 3.6 deprecation warnings
Before, the module regexes didn't actually work properly, but we thought the
warnings were gone as they only were shown once because of __pycache__.

Now we instead don't filter by module, but simply hide those messages globally
during the earlyinit dependency import (which is the first import).
2017-01-18 08:40:57 +01:00
Cosmin Popescu
80372eb3f2 stop using the commands handler 2017-01-13 18:57:55 +01:00
Florian Bruhin
04dddc2475 Fix backslash escape 2017-01-13 18:25:34 +01:00
Florian Bruhin
73f371a956 Release v0.9.1 2017-01-13 18:10:03 +01:00
Florian Bruhin
cc4a8e53df Prevent using %2F as slash in a Content-Disposition header 2017-01-13 18:04:04 +01:00
Florian Bruhin
2d364f43cf Ignore Python 3.6 warnings in dependencies 2017-01-08 22:38:54 +01:00
Florian Bruhin
61e598552e eslint: Turn off prefer-destructuring 2017-01-08 15:36:51 +01:00
Florian Bruhin
420897eaf1 Merge branch 'clear-keychain' of https://github.com/kevinwang/qutebrowser into kevinwang-clear-keychain 2017-01-07 21:29:29 +01:00
Florian Bruhin
16c8c1b189 Document how webelem.js works 2017-01-07 12:21:22 +01:00
Kevin Wang
3a1ecad1f3 Clear keychain on <Ctrl-[> in addition to <Escape>. 2017-01-07 00:45:06 -05:00
Daniel Schadt
bd5274af5a fix tests 2017-01-04 17:59:53 +01:00
Daniel Schadt
69001111da actually use DownloadTarget for :download -m /path 2017-01-04 16:32:25 +01:00
Daniel Schadt
6497bb5ace break cicular imports in utils 2017-01-04 16:04:06 +01:00
Daniel Schadt
4fdd3cd761 deduplicate download opening code 2017-01-04 15:31:47 +01:00
Daniel Schadt
8c5ad7d46d use download prompt for mhtml downloads
Fixes #2204

We didn't previously use PromptMode.download for MHTML download prompts
to avoid dealing with thinks like "Open download", but the new download
prompt is just way better than the old, which justifies the extra work.

This means that MHTML downloads can now also be opened directly.
2017-01-04 15:18:56 +01:00
Nikolay Amiantov
19966a9b9f proxy_from_url: fix PACFetcher construction 2017-01-03 13:47:13 +03:00
Florian Bruhin
f4081c8b87 Fix error position when the statusbar is invisible 2016-12-29 20:35:10 +01:00
Florian Bruhin
643cf3f578 Fix various small mouse scrolling issues 2016-12-29 00:38:52 +01:00
Florian Bruhin
ce71b59894 Merge branch 'horizontal-scroll' of https://github.com/fiete201/qutebrowser into fiete201-horizontal-scroll 2016-12-29 00:34:26 +01:00
Fritz Reichwald
f25c5dedd6 First try for horizontal scrolling with mouse 2016-12-29 00:21:42 +01:00
Florian Bruhin
9837c9f70b Release v0.9.0 2016-12-28 23:47:59 +01:00
Florian Bruhin
6d9362028f Merge branch 'jinja-error' of https://github.com/fiete201/qutebrowser into fiete201-jinja-error 2016-12-28 23:31:04 +01:00
Florian Bruhin
864b9870a5 Also catch UnicodeDecodeError on Windows 2016-12-28 23:03:37 +01:00
Florian Bruhin
9727d6c74f Improve error output 2016-12-28 23:03:30 +01:00
Fritz Reichwald
ae736da5f7 Fix lint 2016-12-28 22:51:20 +01:00
Fritz Reichwald
8c3d461482 Fix test for logging 2016-12-28 22:35:03 +01:00
Fritz Reichwald
421fc7eca3 Remove icon from html_fallback 2016-12-28 22:23:05 +01:00
Fritz Reichwald
0bd3100de8 Fix test_not_found 2016-12-28 22:11:34 +01:00
Fritz Reichwald
f38dda5f16 Fix html_fallback and logged error message 2016-12-28 02:23:35 +01:00
Fritz Reichwald
eb03f79978 Add error handling for UnicodeDecodeError 2016-12-27 22:51:30 +01:00
Fritz Reichwald
07143dd433 Add html escape proper quotes and log call 2016-12-27 20:31:57 +01:00
Fritz Reichwald
004b0dc911 Add fallback for missing error.html 2016-12-27 17:54:06 +01:00
Florian Bruhin
2d1d078430 Merge branch 'issue-2173' of https://github.com/Kingdread/qutebrowser into Kingdread-issue-2173 2016-12-22 22:24:19 +01:00
Florian Bruhin
71404a87b9 Fix lint 2016-12-22 15:14:35 +01:00
Florian Bruhin
89fe725a85 Add __init__.py 2016-12-22 14:26:35 +01:00
Florian Bruhin
6c1b7dcca1 Move proxy/pac out of QtWebKit folder 2016-12-22 13:54:11 +01:00
Florian Bruhin
b220b5438f Add urlutils.proxy_for_url 2016-12-22 13:51:27 +01:00
Florian Bruhin
5a89ee96d9 Merge branch 'pac' of https://github.com/abbradar/qutebrowser into abbradar-pac 2016-12-22 08:53:10 +01:00
Daniel Schadt
f92c82ead1 downloads: don't remember dir for temp downloads
Fixes #2173
2016-12-20 14:52:39 +01:00
Samuel Walladge
aafcd1f1d7
fix failing pylint test (line too long) 2016-12-17 09:22:22 +10:30
Samuel Walladge
f6c73f3ad6
implement optional download-open handler setting
- adds new `general` -> `default-open-dispatcher` setting (string)
- if set, will be used instead of QDesktopServices.openUrl (xdg-open backend)
- fixes the 'download handlers' part of issue #841
- note that this is only relevent to the `:download-open` command and other
  methods of opening downloaded files from qutebrowser
2016-12-16 21:54:04 +10:30
Florian Bruhin
f0831dacae Bind back/forward keys by default
Those are the XF86Back/Forward media keys on a keyboard, which are apparently
handled by default with QtWebKit, but not QtWebEngine.

Fixes #2166.
2016-12-13 21:49:10 +00:00
Florian Bruhin
d0372f1730 Decode percent sequences in QtWebEngine downloads
Fixes #2122.
2016-12-09 07:08:51 +01:00
Florian Bruhin
03eea7f62a Remove download filename suffixes with QtWebEngine 2016-12-09 07:00:25 +01:00
Florian Bruhin
5b70df15fa Revert "Enable HighDPI scaling"
This reverts commit 62bcd24c9a.
Looks like this causes issues for various people...
2016-12-08 21:23:56 +01:00
Florian Bruhin
976cd5f881 Fix lint 2016-12-08 10:31:52 +01:00
Florian Bruhin
62bcd24c9a Enable HighDPI scaling
This should scale up things automatically, without needing to set e.g.
default-zoom (at least with QtWebEngine).

See #1993, #1585
2016-12-08 09:45:46 +01:00
Florian Bruhin
c7d4ea5247 Ignore connection failures for debug.log_signals 2016-12-08 07:15:59 +01:00
Florian Bruhin
70b0a86729 WebEngine: Save/restore zoom when opening a new page
This isn't very pleasurable, but I can't find a solution to set the zoom
correctly while the page is still loading.

See https://bugreports.qt.io/browse/QTBUG-51851
Fixes #1993
2016-12-08 07:06:11 +01:00
Florian Bruhin
e5ddb281f4 Add a ui -> prompt-filebrowser option
See #2104
2016-12-07 12:33:44 +01:00
Florian Bruhin
57adcea587 Fix QTBUG-54419 workaround with tabs-are-windows set
Fixes #2162
2016-12-07 07:01:06 +01:00
Nikolay Amiantov
a7d96e0b85 Ignore ESLint warnings for Mozilla's PAC utils 2016-12-07 02:01:19 +03:00
Nikolay Amiantov
87890dab20 Add PAC files support 2016-12-07 02:01:19 +03:00
Florian Bruhin
d709756eb1 Add AbstractZoom._set_factor_internal 2016-12-06 22:50:08 +01:00
Florian Bruhin
caf1950868 Set the default zoom initially with QtWebEngine
This solves a part of #1993, however when the user navigates to a
different page, the zoom is reset.
2016-12-06 20:28:18 +01:00
Nikolay Amiantov
271cb4b001 Add network logger 2016-12-06 18:16:25 +03:00
Florian Bruhin
df5ce12ed8 Make it possible to cancel authentication with QtWebEngine
Fixes #2156
2016-12-06 07:45:03 +01:00
Florian Bruhin
717fc97f05 Make tab.set_html work without base_url 2016-12-06 07:16:41 +01:00
Florian Bruhin
0ab23a74fb Allow --qt-arg and --qt-flag to be given multiple times
Fixes #2151
2016-12-06 06:47:42 +01:00
Florian Bruhin
61ada6ba32 Merge branch 'tab-move' of https://github.com/Raihid/qutebrowser into Raihid-tab-move 2016-12-01 13:25:03 +01:00
Florian Bruhin
d668a1b6d6 Merge branch 'master' of https://github.com/Raihid/qutebrowser into Raihid-master 2016-12-01 13:23:01 +01:00
Maciej Wołczyk
63808fdb98 Removed handling of tab's position and color since it's done by QTabBar 2016-12-01 00:44:07 +01:00
Maciej Wołczyk
2fca442892 Fixed TabbedBrowserStub's tabBar, no longer toggling updates while moving tabs 2016-11-30 15:23:35 +01:00
Maciej Wołczyk
e613d01263 Fixed problems with tab completion after moving tabs (#2141) 2016-11-30 14:17:20 +01:00
Maciej Wołczyk
2cbea50152 Fixed style issues, corrected unit test 2016-11-29 19:10:36 +01:00
Florian Bruhin
9f5f362533 Don't crash if we can't get an element's value for editing
Fixes #2150
2016-11-29 11:31:03 +01:00
Florian Bruhin
5f22affa36 Show longer debug string for elems got from JS
See #2150
2016-11-29 11:16:04 +01:00
Florian Bruhin
6340eee448 Handle invalid text layout when drawing tab 2016-11-29 09:33:27 +01:00
Maciej Wołczyk
729cc61152 Fixed mhtml quopri encoding with spaces and tabs (see: #2063) 2016-11-29 04:03:35 +01:00
Daniel Karbach
38ca583084 new default keybinds 2016-11-28 10:57:16 +01:00
Florian Bruhin
59d16efbef Don't set title from URL twice
browsertab already does that before emitting url_changed.
2016-11-26 13:35:49 +01:00
Florian Bruhin
c83c9d96ae Small cleanup 2016-11-26 13:33:38 +01:00
Florian Bruhin
c17bbd47b8 Fix QTBUG-54419 workaround for invalid URLs 2016-11-26 13:32:37 +01:00
Florian Bruhin
73c608dce7 Allow :open without URL with -t/-b/-w 2016-11-26 12:17:23 +01:00
Florian Bruhin
ea44c6d4b9 eslint: Turn off capitalized-comments 2016-11-26 11:48:57 +01:00
Florian Bruhin
64b47fc3a2 Handle an invalid $XDG_RUNTIME_DIR gracefully
This is probably against the XDG basedir spec, but some people have a
Linux without anything setting $XDG_RUNTIME_DIR correctly.

Fixes #971.
2016-11-24 10:14:02 +01:00
Florian Bruhin
3d140a1353 Get rid of --cycle for :set with multiple values
See https://github.com/The-Compiler/qutebrowser/pull/1840#issuecomment-258714784
2016-11-24 07:23:49 +01:00
Niklas Haas
1b5664b72f Add --cycle flag to :set
Chooses the next value from the provided list of values (string-wise
comparison). Technically, the 'option!' syntax for toggling bools is now
redundant, but a translation from 'option!' to '--cycle option false
true' is kept for backwards compatibility.

The '--cycle' flag could also be technically optionally, since the only
thing that depends on it is preserving the error message for specifying
multiple values. (But I think it's best to keep it explicit, as a
principle-of-least-surprise thing)

Note: The business logic of picking the next value and setting it was
moved out to a separate function to avoid tripping pylint's
too-many-branches detector.

Fixes #47
2016-11-24 07:22:06 +01:00
Florian Bruhin
c57ad91e04 Update comment for ignored Qt warning 2016-11-24 06:43:33 +01:00
thuck
8d4b55bb80 Fix comments and change self.pinned to self.pinned_count 2016-11-23 22:18:55 +01:00
Florian Bruhin
cc8db65b18 Merge branch 'cancel-register-key' of https://github.com/blyxxyz/qutebrowser into blyxxyz-cancel-register-key 2016-11-23 12:53:50 +01:00
Florian Bruhin
a3482a8979 Lowercase special keys when checking if they're new
Between v0.8.4 and now, the default keybinding for Ctrl-PgDown changed:

    - ('tab-focus', ['J', '<Ctrl-PgDown>']),
    + ('tab-next', ['J', '<Ctrl-PgDown>']),

The existing keybinding was lower-cased in the config, but _is_new
didn't lowercase the new one, causing a conflict to show up.

Fixes #1835
See #1958
Supersedes #1986
2016-11-23 12:37:19 +01:00
Florian Bruhin
552e0551af Revert zero counts
This initially seemed like a nice feature, but it means 0 can't be bound
as a separate key anymore, and 0<Esc> gives weird error messages...

Reverts #1953.
Fixes #2032.
2016-11-23 08:37:29 +01:00
Florian Bruhin
1507cfcae7 Fix lint 2016-11-23 08:37:24 +01:00
thuck
e9c79e9be3 Fix for comments on configdata 2016-11-23 08:18:10 +01:00
Florian Bruhin
946e3f93f9 Add --enable-webengine-inspector option
Since the inspector can be a security risk, it's now not linked to
developer-extras anymore until QtWebEngine provides a better way to
access it.

See:

https://bugreports.qt.io/browse/QTBUG-50725
http://bouk.co/blog/hacking-developers/
2016-11-23 08:12:13 +01:00
thuck
9dff4299e8 flake8 fixes 2016-11-23 08:10:13 +01:00
thuck
92e1181680 Included --force option for tab-close
This makes possible to close pinned tabs without
any confirmation.
2016-11-23 08:10:13 +01:00
thuck
b920de764f Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into pintab 2016-11-23 08:10:11 +01:00
Florian Bruhin
d99a7bd7ad Pass arguments to websettings init functions 2016-11-23 07:57:35 +01:00
Florian Bruhin
7ffabb2b92 Update docs 2016-11-22 22:22:24 +01:00
Florian Bruhin
f0cc1de808 Merge branch 'master' of https://github.com/Raihid/qutebrowser into Raihid-master 2016-11-22 20:32:59 +01:00
Maciej Wołczyk
81cbd4c8a0 Hyphen in variable name fixed 2016-11-22 17:39:13 +01:00
Maciej Wołczyk
9d19c3aee6 Changed add to history option name 2016-11-22 17:27:34 +01:00
Florian Bruhin
20af3133eb Simplify if-condition 2016-11-22 11:24:34 +01:00
Florian Bruhin
97d23144f7 Add an API to get the QNAM of a tab 2016-11-22 11:23:45 +01:00
Florian Bruhin
c363982d05 Use per-tab QNAM for QtNetwork downloads again
When starting a download due to unsupportedContent being emitted, we
need to use (and later adopt) the page's QNetworkAccessManager.

Since we need the whole adopting logic for that case anyways, let's keep
things as they were and always run downloads in per-tab QNAMs.

This reverts 53e360ec4b and fixes #2134.
2016-11-22 11:10:37 +01:00
Maciej Wołczyk
918b3e2d12 History flag: test added, short version changed, minor fixes 2016-11-21 15:33:38 +01:00
Florian Bruhin
c5cacbc439 Handle background tabs in QtWebEngine createWindow with older Qt 2016-11-21 06:22:38 +01:00
Rahid
058c3e6541 Trailing spaces 2016-11-18 23:45:12 +01:00
Rahid
bf41135846 Added chronicle flag to init function, docs 2016-11-18 23:10:50 +01:00
Maciej Wołczyk
554b9b2bda Added chronicle flag 2016-11-18 20:16:43 +01:00
Florian Bruhin
d1154759d1 Improve --qt-arg docs 2016-11-16 22:35:20 +01:00
Florian Bruhin
8d7fcf41da Set a maximum width for prompts
Fixes #2124
2016-11-16 22:26:16 +01:00
Florian Bruhin
7c88fe318f Handle cancelled SSL prompts correctly
When the user pressed esc during an SSL prompt, the message.ask call
returned None, which was handled fine by QtWebKit (which simply used an
'if') but failed with QtWebEngine (which returned the value to Qt).

Fixes #2123.
2016-11-16 22:13:57 +01:00
Florian Bruhin
25358bb5fc Clean up webelem.text/set_text
webelem.text() was only used without use_js=True from webelem.__str__.
Now we instead default to the use_js=True behavior and renamed the
method from text() to value().

The old behavior is instead directly implemented in __str__.

This changes how webelem.value (aka text) handles elements for which
is_content_editable() returns True, but I haven't found any cases where
this makes a difference.

This also fixes getting existing text from elements with QtWebEngine,
which closes #1957.
2016-11-16 12:34:27 +01:00
Florian Bruhin
35d9514456 Whoops...
Dang, spacemacs!
2016-11-16 07:50:47 +01:00
Florian Bruhin
e9a8201aa1 cxfreeze requirements: Blacklist >= 5.0.0
See #1004
2016-11-16 07:48:37 +01:00
Florian Bruhin
3638849257 Fix lint 2016-11-15 23:41:53 +01:00
Florian Bruhin
7d8ef9fccf Remove urlutils import 2016-11-15 23:25:14 +01:00
Florian Bruhin
8e0565b79a Add {backend} window/tab title field 2016-11-15 23:23:20 +01:00
Florian Bruhin
d7d270ea28 Implement user stylesheets for QtWebEngine 2016-11-15 23:17:27 +01:00
Florian Bruhin
fcb955458c Require a filename for user-stylesheet; add hide-scrollbar setting 2016-11-15 22:58:56 +01:00
Florian Bruhin
964ddb472b Add urlutils.data_url 2016-11-15 22:25:51 +01:00
Florian Bruhin
a09a565aea Improve :click-element error message 2016-11-15 19:43:03 +01:00
Florian Bruhin
d05918ac0b Add custom user-agent support for QtWebEngine 2016-11-15 11:32:05 +01:00
Florian Bruhin
8d173e1718 Update comment 2016-11-15 10:55:12 +01:00
Florian Bruhin
fc7961ae22 Set correct paths for QtWebEngine 2016-11-15 10:51:14 +01:00
Florian Bruhin
ed10cd14d6 Remove history NUL byte logging
It just produces a lot of logging noise, and I still have no idea what
to do about it...
2016-11-15 07:28:35 +01:00
Florian Bruhin
a38e6be52a Fix standarddir._from_args 2016-11-15 07:26:10 +01:00
Florian Bruhin
671ce67be5 Remove --datadir/--confdir/--cachedir
Closes #2115.
2016-11-15 07:09:46 +01:00
Florian Bruhin
d04534dc33 Reenable @qtwebengine_createWindow tests
Closes #2121
2016-11-15 07:03:13 +01:00
Jan Verbeek
fc79349af6 Remove misplaced blank line 2016-11-15 00:30:54 +01:00
Jan Verbeek
f0d215e07a Change hard-coded escape to leave-mode binding 2016-11-14 23:28:38 +01:00
Florian Bruhin
81d67f8a2c Remove support for an empty data/config/cachedir
See #2115
2016-11-14 23:13:21 +01:00
Florian Bruhin
b30d37e3e0 WebEngine: Fake keypresses with modifiers instead of override_target
With QtWebEngine, handling a click (e.g. createWindow being called)
happens some time after a click event has been handled.

When setting override_target, that means we don't know when to set the
override target back, and we can't simply only unset it in createWindow
as elements not causing a new tab to be opened (like an input field) can
be hinted too.

Instead, we now only use override_target with QtWebKit, and simply
generate fake key events with the right modifiers to do the right thing
in createWindow for QtWebEngine.

Fixes #2119.
2016-11-14 23:09:16 +01:00
thuck
abe3c19646 Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into pintab 2016-11-14 19:01:49 +01:00
Florian Bruhin
ba1bcc658e Fix WebEnginePage acceptNavigationRequest 2016-11-14 09:37:23 +01:00
Florian Bruhin
781a326648 Fix lint 2016-11-14 09:14:57 +01:00
Florian Bruhin
30827c1239 Fix rapid hinting with QtWebEngine
There were actually two issues here:

- The override_target was reset too early - now
  acceptNavigationRequest/createWindow is responsible for resetting it.
- The QTBUG-54419 workaround opened any tabs in the background instead
  of preserving their position/focus.

Fixes #2086.
2016-11-14 07:14:44 +01:00
Florian Bruhin
5de07246be Handle clicks via createWindow with QtWebEngine
Before, we used the same logic for QtWebKit and QtWebEngine, where we
simply set an attribute on the tab on a mousePressEvent and then handled
opening links in acceptNavigationRequest.

However, this caused random links to pop up in new tabs (probably to
things being much more async?) on QtWebEngine, so we now handle those
cases in createWindow and only use override_target from the tab there.

Fixes #2102.
2016-11-14 06:52:33 +01:00
Florian Bruhin
650b9e465c Merge branch 'webengine-prompts' 2016-11-13 21:25:07 +01:00
thuck
6053078637 Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into pintab 2016-11-13 14:16:05 +01:00
Florian Bruhin
02257694c4 Fix indent 2016-11-13 12:43:20 +01:00
thuck
e1012501ec Issue only happens when using webengine
Check if using webengine, before trying to use thw workaround
2016-11-13 12:10:03 +01:00
thuck
0eab91ac4c Fix for webengine too 2016-11-13 11:56:21 +01:00
thuck
56ee7d63b3 Should fix the issue #2117 2016-11-13 09:50:54 +01:00
thuck
a8ccfe050d Remove unecessary empty line 2016-11-13 08:56:43 +01:00
thuck
785c03c15c Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into pintab 2016-11-13 08:56:19 +01:00
Florian Bruhin
5bdd74138d Handle not being able to get elements via JS 2016-11-13 01:46:18 +01:00
Florian Bruhin
645a9aa6e1 Add a better workaround for QTBUG-54419
Whenever we open a new tab in createWindow, we now set an attribute
marking it - as soon as its URL changes the first time, we then close
and re-open it in a new tab in TabbedBrowser.
2016-11-13 01:38:02 +01:00
thuck
9eb0a85bae Some fixes for pyflake, pylint and remove useless function 2016-11-11 17:10:46 +01:00