Commit Graph

626 Commits

Author SHA1 Message Date
Florian Bruhin
1ec0766587 Rename CurCommandDispatcher to CommandDispatcher 2014-05-18 08:04:27 +02:00
Florian Bruhin
8e4aaf1706 Whitespace adjustments 2014-05-18 00:36:29 +02:00
Florian Bruhin
d2049eb462 Fix blank line 2014-05-17 23:46:41 +02:00
Florian Bruhin
bca3909a10 Remove _tabs when unneeded 2014-05-17 23:46:06 +02:00
Florian Bruhin
65aee9d991 Add ui section to config 2014-05-17 23:45:31 +02:00
Florian Bruhin
0f943f747c Reorder some functions 2014-05-17 23:15:42 +02:00
Florian Bruhin
c7cf0aaf9a Clean up webview and move commands 2014-05-17 22:38:07 +02:00
Florian Bruhin
d901fe69e6 Rename some commands 2014-05-16 23:01:40 +02:00
Florian Bruhin
5c4ce7ae09 Reimplement wheelEvent of WebView to fix scrolling
Hiding scrollbars in 1bfbdd79e4 broke
scrolling because the WebKit implementation wants a scrollbar to do
scrolling.

We fix this by just handling the mouse wheel ourselves.
2014-05-16 21:37:43 +02:00
Florian Bruhin
89cd6d87cc Treat select elements as insert mode 2014-05-16 17:43:06 +02:00
Florian Bruhin
2c2c79af2e Display some messages immediately 2014-05-16 17:21:43 +02:00
Florian Bruhin
bccf912958 Ignore duplicated messages 2014-05-16 16:50:53 +02:00
Florian Bruhin
39249bce9d Display texts immediately if possible 2014-05-16 16:43:14 +02:00
Florian Bruhin
7eb19e2a1e Start implementing message-timeout 2014-05-16 15:33:36 +02:00
Florian Bruhin
1bfbdd79e4 Make scroll bars hideable 2014-05-16 14:20:37 +02:00
Florian Bruhin
480e222d6d Log load status changes 2014-05-16 07:47:06 +02:00
Florian Bruhin
7bd6302d13 Connect load_status_changed signal correctly 2014-05-16 07:12:27 +02:00
Florian Bruhin
e41d8f1e46 Fix link colors (except for LoadStatus).
This was broken when splitting statusbar into files as the class name
had changed.
2014-05-16 07:05:55 +02:00
Florian Bruhin
b14ff27e0c Remove unused import 2014-05-15 22:52:37 +02:00
Florian Bruhin
b91274cfcf Fix some other small bugs with new signal implementation 2014-05-15 22:31:01 +02:00
Florian Bruhin
a70aa212e0 Fix lint 2014-05-15 22:02:43 +02:00
Florian Bruhin
1ca80fec8e Make stuff run again 2014-05-15 19:02:20 +02:00
Florian Bruhin
d3eaeaac91 First steps at getting rid of signal cache 2014-05-15 17:57:08 +02:00
Florian Bruhin
0d104b5813 Revert "Open startpage with :tabopen/:backtabopen if no URL is given"
This reverts commit 68556a0e87.

This broke keybindings with partial commands, e.g. o/O.
2014-05-15 16:54:08 +02:00
Florian Bruhin
68556a0e87 Open startpage with :tabopen/:backtabopen if no URL is given 2014-05-15 16:32:00 +02:00
Florian Bruhin
326280f910 Fix consistency and spelling in docstrings/comments 2014-05-15 16:27:34 +02:00
Florian Bruhin
537c45f518 Check zoom percentage is >= 0% 2014-05-15 15:41:54 +02:00
Florian Bruhin
659fe5126b Display error dialog when started after segfault 2014-05-15 12:20:03 +02:00
Florian Bruhin
8fe4000e41 Split CrashDialog into ExceptionCrashDialog and _CrashDialog 2014-05-15 11:56:22 +02:00
Florian Bruhin
ec75382a6d Allow text in crash dialog to be copied 2014-05-15 10:54:24 +02:00
Florian Bruhin
5a6326922e Don't cache cur_ssl_errors 2014-05-15 10:50:07 +02:00
Florian Bruhin
d801c35e3f Fix typo 2014-05-15 00:03:54 +02:00
Florian Bruhin
b96efddbdc Make tab close buttons work 2014-05-15 00:02:40 +02:00
Florian Bruhin
603fbdf239 Range-check all values passed to C code. 2014-05-15 00:02:20 +02:00
Florian Bruhin
daf42fdc0d Split WebView.mouseEvent into smaller chunks 2014-05-14 20:59:21 +02:00
Florian Bruhin
a045511962 Use exceptions for command errors 2014-05-14 18:00:40 +02:00
Florian Bruhin
876dcad28f Fix some more escaped quotes 2014-05-13 22:18:59 +02:00
Florian Bruhin
f448aeebda Use property to iterate over tabs 2014-05-13 21:25:16 +02:00
Florian Bruhin
c52caa1427 Leave hint mode when page loading started. 2014-05-13 11:17:36 +02:00
Florian Bruhin
d9bb1e904f Support back/forward mouse buttons 2014-05-13 09:53:29 +02:00
Florian Bruhin
4b78e9a9f5 Add missing docstring 2014-05-13 07:11:46 +02:00
Florian Bruhin
55ea24e431 Split statusbar into multiple files 2014-05-13 07:10:50 +02:00
Florian Bruhin
3c4866f3d9 Add show-favicons option 2014-05-12 23:03:55 +02:00
Florian Bruhin
297a0e65c4 Work around the tabbar cut font issue 2014-05-12 21:23:16 +02:00
Florian Bruhin
fd6e739281 Change _error and _urltype to class attributes. 2014-05-12 18:35:26 +02:00
Florian Bruhin
0c4e7c5fe3 Fix class name in url stylesheet 2014-05-12 18:35:16 +02:00
Florian Bruhin
512625cee1 Support to show SSL status with URL color 2014-05-12 18:00:44 +02:00
Florian Bruhin
c76819a8b0 Use loggings.warning instead of warn 2014-05-12 17:39:17 +02:00
Florian Bruhin
c3816b2820 Make min/max tab width configurable 2014-05-12 16:04:43 +02:00
Florian Bruhin
7b2961f23e Fix some backslash-quotes 2014-05-12 15:58:09 +02:00
Florian Bruhin
31a1e91866 Make hitTestResult work with frames correctly 2014-05-12 08:28:44 +02:00
Florian Bruhin
c2af513ae2 Split CompletionDelegate into own file 2014-05-09 20:25:16 +02:00
Florian Bruhin
5f1cb2ede3 Restyle completion to be dark 2014-05-09 20:25:16 +02:00
Florian Bruhin
6417c7d875 Turn off horizontal scrollbar in completer 2014-05-09 19:12:46 +02:00
Florian Bruhin
5a6208862e Add cmdutils.arg_or_count 2014-05-09 19:12:08 +02:00
Florian Bruhin
63ce8e0966 Set min-/max-width for tabs 2014-05-09 17:59:13 +02:00
Florian Bruhin
edc9d0810c Use QCoreApplication.instance() 2014-05-09 17:01:05 +02:00
Florian Bruhin
3c098060d1 Don't handle auto-insert-mode when not needed 2014-05-09 16:43:08 +02:00
Florian Bruhin
5044f98f2e Don't leave insert mode when loading finished 2014-05-09 16:36:53 +02:00
Florian Bruhin
502cb20c2d Only leave insert mode if mainFrame started loading 2014-05-09 16:18:04 +02:00
Florian Bruhin
59a89d31fe Add reasons why modes are entered/left 2014-05-09 16:03:46 +02:00
Florian Bruhin
91d1be1020 Split tab_move into _tab_move_absolute/relative 2014-05-09 15:52:03 +02:00
Florian Bruhin
1785294a43 Fix some lint 2014-05-09 15:30:27 +02:00
Florian Bruhin
f7e6dc0244 Add zoom command. 2014-05-09 14:20:26 +02:00
Florian Bruhin
4361220a48 Add bindings for xo/xO (backtabopen(cur)) 2014-05-09 12:10:03 +02:00
Florian Bruhin
96d456fdee New command: tab_focus_last / Ctrl-Tab 2014-05-09 11:58:49 +02:00
Florian Bruhin
4e7eb41cb9 Add command tab_move (gm/gl/gr) 2014-05-09 11:47:25 +02:00
Florian Bruhin
87e94a2c68 Add T command / refactor focus_tab 2014-05-09 11:29:25 +02:00
Florian Bruhin
e6af8bb7ae Add only/co command 2014-05-09 11:24:33 +02:00
Florian Bruhin
8fc12fea5f Refactor tabclose 2014-05-09 11:20:17 +02:00
Florian Bruhin
ed0d0d8ff7 Handle tab titles via onUrlChanged 2014-05-08 21:04:27 +02:00
Florian Bruhin
bf19cb7536 Add window-open-behaviour setting 2014-05-08 20:43:40 +02:00
Florian Bruhin
e2a2ed8850 Support QWebView::createWindow (opening windows via js) 2014-05-08 20:36:05 +02:00
Florian Bruhin
586455bbad Fix scrollbar click bug 2014-05-08 11:50:46 +02:00
Florian Bruhin
214cda91bd Nicer error messages for focus_tab 2014-05-08 09:03:48 +02:00
Florian Bruhin
4999a59470 Add pastebin button to crash dialog 2014-05-06 15:36:15 +02:00
Florian Bruhin
5656921a22 Don't add empty URLs to URL stack 2014-05-06 14:08:40 +02:00
Florian Bruhin
de7c6a63b4 Fix shutdown of networkmanager 2014-05-06 10:53:38 +02:00
Florian Bruhin
e02b84d7ef Add some debug logging for click targets 2014-05-06 09:09:23 +02:00
Florian Bruhin
42c1ea5788 Rename _tabopen to tabopen and tabopen to tabopen_cmd 2014-05-06 08:53:40 +02:00
Florian Bruhin
f8195dc600 Connect tab.open_tab to correct internal slot. 2014-05-06 08:51:10 +02:00
Florian Bruhin
e5000c315d Revert "Use global HintManager"
This reverts commit a76d68f564.

WTF. I thought I reset --hard-ed that one?
2014-05-06 07:11:20 +02:00
Florian Bruhin
a76d68f564 Use global HintManager 2014-05-05 20:28:29 +02:00
Florian Bruhin
c8fd0937b0 Revert "Use global object dict for global objects"
This reverts commit bf2c7831c8.

This was a bad idea as we need to access some of the main attributes
from commands via instance=...
2014-05-05 20:12:20 +02:00
Florian Bruhin
bf2c7831c8 Use global object dict for global objects 2014-05-05 19:12:47 +02:00
Florian Bruhin
667b255d01 Use QApplication for global singletons 2014-05-05 17:56:14 +02:00
Florian Bruhin
ae95b5ea3b Basic cookie handling 2014-05-05 16:28:43 +02:00
Florian Bruhin
85c4bb823f Fix lint 2014-05-05 10:09:19 +02:00
Florian Bruhin
4ebe643ea6 Use simple enums for constants 2014-05-05 07:45:36 +02:00
Florian Bruhin
4ff5431436 Fix checks 2014-05-04 01:33:01 +02:00
Florian Bruhin
ec6066c7ba Show favicons 2014-05-04 01:28:34 +02:00
Florian Bruhin
8ada39ff8b Add focus_tab command 2014-05-03 00:32:43 +02:00
Florian Bruhin
c33fc62d2f Fix lint 2014-05-02 17:53:59 +02:00
Florian Bruhin
5933585a23 Resize model columns properly by hand 2014-05-02 16:23:35 +02:00
Florian Bruhin
204cffc4cf Add logging when tabbing 2014-05-02 15:24:36 +02:00
Florian Bruhin
cbb9a2656f Spelling fix 2014-05-02 15:24:26 +02:00
Florian Bruhin
b961cb8907 Regenerate CommandCompletionModel if necessary. 2014-05-02 15:23:25 +02:00
Florian Bruhin
b74a97580f Handle completions for ValueList sections correctly 2014-05-02 14:18:40 +02:00
Florian Bruhin
be467d5e50 Refactor command argument splitting.
This uses split=True/False as cmdutils.register argument again (because
we would never want to set maxsplit ourselves, only not splitting the
*last* argument makes any sense.

Also this uses shlex for splitting again, like earlier.
2014-05-02 10:28:41 +02:00
Florian Bruhin
de5f85982f Add new _tabopen method for tabopen and backtabopen. 2014-05-02 10:11:47 +02:00
Florian Bruhin
4137e5de53 Don't use QShortcut for space scrolling 2014-05-01 23:25:51 +02:00
Florian Bruhin
3babead395 Don't crash if frame is none in mouseDownEvent 2014-05-01 21:35:24 +02:00
Florian Bruhin
427fe0b8fb Make tab seperator 2px broad 2014-05-01 21:30:29 +02:00
Florian Bruhin
5d80831752 prevpage/nextpage updates 2014-05-01 16:35:26 +02:00
Florian Bruhin
533d82417e Refactor completion handling 2014-05-01 00:23:53 +02:00
Florian Bruhin
b04adca059 Scroll to first item when wrapping completion 2014-04-30 13:52:16 +02:00
Florian Bruhin
7ce0bd8bc8 Force textEdited emit on set_cmd_text 2014-04-30 12:06:23 +02:00
Florian Bruhin
f1942b0ce0 Use selectionChanged to select completions 2014-04-30 12:03:24 +02:00
Florian Bruhin
adfc96cdfa completion: Use textEdited instead of textChanged
This gets rid of _ignore_next and some unneeded logic, since textEdited
won't even emit if we edited it programatically.
2014-04-30 11:52:30 +02:00
Florian Bruhin
1eabbfbfcf Replace QAbstractItemModel by QStandardItemModel.
This is probably the most depressing commit ever.

For some reason I didn't find this while searching for models I could
use and rolled my own one. This uses A LOT less code, and is A LOT
faster...
2014-04-30 07:32:51 +02:00
Florian Bruhin
8474bbdf6a Rename and reorder config options 2014-04-27 21:21:14 +02:00
Florian Bruhin
9252ef94ca Consistent string chars 2014-04-25 16:53:23 +02:00
Florian Bruhin
da91907656 Unfiy completions into single file 2014-04-25 12:29:00 +02:00
Florian Bruhin
875666265b s/BrowserTab/WebView/g 2014-04-25 12:24:26 +02:00
Florian Bruhin
6e78f67a81 Rename keyinput stuff 2014-04-25 12:21:01 +02:00
Florian Bruhin
d4b35b6734 Rename {Command,Seach}Parser to *Manager 2014-04-25 12:04:11 +02:00
Florian Bruhin
937196e287 Rename package-private modules to _foo.py 2014-04-25 11:50:30 +02:00
Florian Bruhin
f437bc25bf Fix lint/cleanup 2014-04-25 11:21:00 +02:00
Florian Bruhin
7787a67c45 Add modes=[]/not_modes=[] to cmdutils.register 2014-04-25 10:10:58 +02:00
Florian Bruhin
43c8a96621 s/command_item/completion_item/ 2014-04-25 09:28:02 +02:00
Florian Bruhin
2d0225a292 Hide command_item_{prev,next} 2014-04-25 09:27:30 +02:00
Florian Bruhin
aeb4980f7e Also handle Return via config 2014-04-25 09:26:52 +02:00
Florian Bruhin
74374df5fd Leave command mode on return press 2014-04-25 09:24:40 +02:00
Florian Bruhin
a29a9a9b70 Handle Command widget based on modes, not focus 2014-04-25 08:38:11 +02:00
Florian Bruhin
55a8da7f1b Start using KeyParser for command mode 2014-04-25 07:50:21 +02:00
Florian Bruhin
9ab8f42e20 s/commandmode/normalmode 2014-04-24 21:37:51 +02:00
Florian Bruhin
9320c813f7 Add set_cmd_text to MessageBridge 2014-04-24 21:28:24 +02:00
Florian Bruhin
c674d96cfe Reorganize input modules into keyinput subpackage 2014-04-24 21:03:45 +02:00
Florian Bruhin
6f7391d7d1 Leave insert mode in loadStarted 2014-04-24 19:06:51 +02:00
Florian Bruhin
b372c23b80 Move hint webelem code to utils.webelem 2014-04-24 16:30:59 +02:00
Florian Bruhin
6fb52e610d Leave insert mode when loadFinished with ok=False 2014-04-24 16:27:18 +02:00
Florian Bruhin
1c5ae25b68 Start implementing auto_insert_mode 2014-04-24 16:03:16 +02:00
Florian Bruhin
10d7d887ec Pass keypresses to statusbar correctly 2014-04-24 15:47:38 +02:00
Florian Bruhin
b3418cae5d Improve _is_editable() 2014-04-24 13:13:58 +02:00
Florian Bruhin
a82ab6d707 Go to insert mode when plugin clicked 2014-04-24 07:41:20 +02:00
Florian Bruhin
95691e1e11 Show passthrough modes in statusbar 2014-04-24 06:59:39 +02:00
Florian Bruhin
3d292fbc27 Use a stack for current modes 2014-04-24 06:44:58 +02:00
Florian Bruhin
f3db29c010 Enter normal mode when clicking non-editable elem 2014-04-23 23:26:02 +02:00
Florian Bruhin
b4b9b6c69d Enter/leave command mode for Command widget 2014-04-23 23:25:06 +02:00
Florian Bruhin
8f44b56923 Start implementing eventFilter in ModeManager 2014-04-23 23:20:39 +02:00
Florian Bruhin
a33c9827d6 Check for editable fields in mousePressEvent 2014-04-23 21:18:05 +02:00
Florian Bruhin
8b5daad367 Add ModeManager 2014-04-23 21:15:47 +02:00
Florian Bruhin
a67ed4d054 Override mousePressEvent instead of event 2014-04-23 07:34:23 +02:00
Florian Bruhin
7acd32a5d7 Display error when there's nothing to undo 2014-04-23 06:17:36 +02:00
Florian Bruhin
61802725a6 Actually use message.error for errors 2014-04-23 06:17:29 +02:00
Florian Bruhin
21bb9840d9 Simplify padding in Qt-CSS 2014-04-22 23:02:51 +02:00
Florian Bruhin
06ff2e00e9 Always draw categories correctly in completion 2014-04-22 21:38:06 +02:00
Florian Bruhin
fb9ac1bc4c Restyle tabbar 2014-04-22 20:49:16 +02:00
Florian Bruhin
55e3aca702 linting cleanup 2014-04-22 17:53:27 +02:00
Florian Bruhin
8dfc44da59 Remove another FIXME 2014-04-22 15:58:44 +02:00
Florian Bruhin
76f4917ae9 Implement wrapping/message when switching tabs 2014-04-22 15:57:38 +02:00
Florian Bruhin
963066b4bd Remove some old FIXMEs 2014-04-22 14:45:24 +02:00
Florian Bruhin
0de249e904 Support frames correctly in HintManager 2014-04-22 14:23:55 +02:00
Florian Bruhin
b794739d94 Remove unneeded assignment 2014-04-22 13:56:25 +02:00
Florian Bruhin
af1ba0edf6 Re-sort some functions 2014-04-22 10:45:07 +02:00
Florian Bruhin
1a68bdb9a9 Clean up signal connections 2014-04-22 10:40:33 +02:00
Florian Bruhin
78060fc879 Get rid of temp_message signal 2014-04-22 10:08:56 +02:00
Florian Bruhin
e1b7305e40 Get rid of unneeded text slots in statusbar 2014-04-22 10:00:43 +02:00
Florian Bruhin
d700d962af Add the ability to display persistent messages. 2014-04-22 09:06:17 +02:00
Florian Bruhin
1740d4c60f Ignore empty js statusbar messages. 2014-04-22 09:05:53 +02:00
Florian Bruhin
ba7f56f5e9 Add different hinting modes (yank, backtab, rapid) 2014-04-21 23:33:36 +02:00
Florian Bruhin
05e3fb8650 Add :backtabopen command 2014-04-21 23:33:19 +02:00
Florian Bruhin
1c5686f5e3 Handle crashes before config is loaded correctly 2014-04-21 21:09:15 +02:00
Florian Bruhin
695ab70d7c Style fixes 2014-04-21 21:05:39 +02:00
Florian Bruhin
a6789095b3 Fix paste when clipboard is empty 2014-04-21 20:29:58 +02:00
Florian Bruhin
4f58d067b4 Clear errors when key is pressed 2014-04-21 20:21:42 +02:00
Florian Bruhin
a11b14fd2d Implement more hinting modes 2014-04-21 19:29:11 +02:00
Florian Bruhin
0741326e5d Make it possible to open tabs in background 2014-04-21 19:03:04 +02:00
Florian Bruhin
20dd33fb7a Set focus on webview before processing click 2014-04-21 17:23:22 +02:00
Florian Bruhin
de0e96ab2d Add clicking on links 2014-04-21 16:59:03 +02:00
Florian Bruhin
d7b87e09c9 Implement modes and hint input. 2014-04-21 15:24:19 +02:00
Florian Bruhin
5a3966ca82 Fix lint, add documentation 2014-04-21 11:03:43 +02:00
Florian Bruhin
e6569f946c Add proof-of-concept hinting 2014-04-21 11:03:41 +02:00
Florian Bruhin
39f580d9f1 Cleanup 2014-04-17 17:44:27 +02:00
Florian Bruhin
975d83b50e Respect inspector height for completion 2014-04-17 15:58:09 +02:00
Florian Bruhin
dea30e3f4d Ensure developer extras are enabled for webinspector 2014-04-17 15:46:29 +02:00
Florian Bruhin
457e173592 More config cleanup.
This renames the config instance from "config" to "instance" and adds a
convenience get() function in the config module.
2014-04-17 15:26:27 +02:00
Florian Bruhin
b323706f5f Use maxsplit (passed to str.split()) instead bool 2014-04-17 12:06:27 +02:00
Florian Bruhin
72340575af Remove value from on_config_changed signal again.
Turns out this causes more trouble than it's worth, and it's unintuitive
from which layer we get the value.
2014-04-17 11:39:25 +02:00
Florian Bruhin
c0236b8d22 Use a proper separated model for cmd history 2014-04-17 11:08:14 +02:00
Florian Bruhin
6b72c3dbdf Fix long line 2014-04-17 09:51:05 +02:00
Florian Bruhin
4b1dcbd82a Refactor tab/browser widgets 2014-04-17 09:44:26 +02:00
Florian Bruhin
58ae1f7441 Add comment about CurCommandDispatcher 2014-04-17 08:24:59 +02:00
Florian Bruhin
57baafbf30 Change configdata from function to attribute 2014-04-16 16:32:14 +02:00
Florian Bruhin
2adcde1c89 Implement web inspector 2014-04-16 14:12:04 +02:00
Florian Bruhin
e878fc538d Fix some checks 2014-04-16 10:02:34 +02:00
Florian Bruhin
4ca8cc9537 Add value to config.changed signal 2014-04-16 09:50:24 +02:00
Florian Bruhin
a410d56a78 Implement command history 2014-04-16 09:08:56 +02:00
Florian Bruhin
dad6451b7e style fixes 2014-04-15 17:21:12 +02:00
Florian Bruhin
88b522fa16 Only clear selection model if it exists 2014-04-15 17:16:28 +02:00
Florian Bruhin
f959c0c137 Add completion for settings values 2014-04-14 17:54:11 +02:00
Florian Bruhin
44ce804bdf Highlight all rows in completion 2014-04-13 23:06:41 +02:00
Florian Bruhin
27046b5186 Give completion items a bit more space 2014-04-13 22:35:55 +02:00
Florian Bruhin
f59f8cac6c Clear completion model after an item is selected 2014-04-13 22:11:47 +02:00
Florian Bruhin
04807489b7 Update everything needed when config is changed 2014-04-10 23:30:45 +02:00
Florian Bruhin
aa616e5ac7 Start implementing config changed signal 2014-04-10 18:01:16 +02:00
Florian Bruhin
175eabdc80 Remove fallback values from config 2014-04-10 14:40:02 +02:00
Florian Bruhin
c5ca0e56be Remove blank lines before """ in docstrings.
pep257 has changed in this regard so we reflect this change.
2014-04-10 14:21:27 +02:00
Florian Bruhin
c26430d08d Remove annoying two-word completions 2014-04-10 06:58:58 +02:00
Florian Bruhin
782242de04 Fix marking of items 2014-04-09 21:21:15 +02:00