Commit Graph

6414 Commits

Author SHA1 Message Date
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