Commit graph

1560 commits

Author SHA1 Message Date
Colin Caine
6ed83eacdb Add DocLoad aucmd 2018-07-18 14:36:35 +01:00
Oliver Blanthorn
2cce4f3571
Merge branch 'master' of github.com:cmcaine/tridactyl into native-stdin 2018-07-18 13:12:59 +01:00
Oliver Blanthorn
1d69d86c4d
Fall back to heredoc if native messenger out of date 2018-07-18 13:12:55 +01:00
Oliver Blanthorn
4e9b601ee1
Merge pull request #829 from glacambre/polish_newtab
Fix Tridacyl not working on about:blank newtab page.
2018-07-18 09:50:23 +01:00
Jeff King
60a1bfb6fc native_background: replace clipboard here-doc with stdin parameter
This is simpler, as we do not have to worry about:

  - randomly generating a unique here-doc tag to avoid
    colliding with the yanked content

  - newline munging as in 4a5dcd7557

  - whether "sed -z" is portable (it's not in POSIX, though
    I'd expect most modern implementations to have it)
2018-07-18 01:36:40 -04:00
Jeff King
1b2c406e7c native_background: add client side of stdin-passing
This is the client side that matches the stdin handling
added in the previous commit. Note that we _don't_ check a
nativegate here. It's the responsibility of a caller sending
a non-empty content parameter to do so.
2018-07-18 01:30:23 -04:00
Jeff King
fb0bfc0807 native: feed stdin of subprocess for "run"
There's currently no way to tell the native messenger to
provide a particular stdin to a "run" command. This leads to
awkward uses of here-docs, which in turn require hacks like
the one in 4a5dcd7557.

Instead, let's take the "content" field from the message
body and feed that to the command's stdin, which gives us a
more robust channel for passing arbitrary bytes.

Note that we have to switch to using subprocess.Popen's
communicate() method, which will make sure we don't deadlock
if the input or output exceeds a pipe buffer.

Note also that when no stdin is provided by the caller
(i.e., all current cases), we'll pass an empty string. This
actually fixes a minor bug. Because we didn't override the
command's stdin argument, it's hooked to the messenger's
stdin, which is the pipe coming from firefox. If the command
tries to read, it (and the messenger) will hang forever,
since firefox is waiting for the messenger to respond before
writing anything else.

I bumped the native messenger version. This is mostly
backwards compatible (existing callers just don't send any
stdin content at all). But a caller that wants to send stdin
should check to make sure we have at least 0.1.7.
2018-07-18 01:18:13 -04:00
Jeff King
a9fb9b65e9 native: use os.join instead of backslashes for debug path
This makes debugging work correctly on Linux.  Otherwise
you'll generally get EPERM as `/home/user\.tridactyl` is a
path in `/home`, which you likely don't have access to
write.
2018-07-18 01:03:12 -04:00
glacambre
2ced3ae54d
Fix Tridacyl not working on about:blank newtab page.
Apparently, Firefox can't give you key events for the window if <body>
is `display: none`. This is fixed by turning the page transparent
instead of not displaying it. Since the scrollbar is still visible when
the page is transparent, we also set the page's height to 0px.

All of these modifications are reversed when the page needs to be
displayed.
2018-07-18 06:20:33 +02:00
Oliver Blanthorn
950863b721
Fix #678: hack about:blank back 2018-07-17 19:05:31 +01:00
Oliver Blanthorn
9199938dc8
Fix #827: typo 2018-07-17 18:00:46 +01:00
Oliver Blanthorn
6e200cd516
Improve tabmove help 2018-07-17 16:18:48 +01:00
Oliver Blanthorn
0d0cbb3b4c
Add vimium style tabmove binds 2018-07-17 16:17:25 +01:00
Oliver Blanthorn
e4fc98bf26
Add GitHub pull request helper 2018-07-17 13:10:29 +01:00
Oliver Blanthorn
c28b5aee49
Merge pull request #818 from Susexe/patch-1
Tab pinning keybind
2018-07-16 14:46:46 +01:00
Susexe
56c1f1a159
Add <A-p> keybind to toggle tab pinning 2018-07-16 15:25:30 +02:00
Oliver Blanthorn
07da708223
Merge pull request #813 from antonva/feature-mute
Add `mute` excmd.
2018-07-16 11:04:33 +01:00
Anton Vilhelm Ásgeirsson
95e411ab7b Add <A-m> keybind to toggle mute on tabs. 2018-07-16 09:50:18 +00:00
Anton Vilhelm Ásgeirsson
171bed6eac Rename '-u' to 'unmute', reflect that in documentation and config.ts 2018-07-16 09:28:50 +00:00
Anton Vilhelm Ásgeirsson
4e8d3f707b Add mute excmd.
Mute takes a couple of arguments that are a bit loosely defined. `-u`
unmutes, as seen by the `unmute` exalias. `toggle` toggles between the
states. `all` applies `mute/unmute/toggle` on all the tabs in the current window.
2018-07-15 23:46:13 +00:00
Oliver Blanthorn
7e8c159a97
Merge pull request #767 from WorldCodeCentral/master
Add condition for the -b open in background argument for completions
2018-07-14 21:15:59 +01:00
WorldCodeCentral
5d7e8aba78
Update History.ts
Correct mistake that tabopen -b took two arguments when it should take only one
2018-07-14 20:38:48 +02:00
Oliver Blanthorn
c6d055b994
Merge pull request #806 from glacambre/implement_guiset_quiet
excmds.ts: Implement guiset_quiet.
2018-07-14 15:49:46 +01:00
glacambre
77595f7e4d
excmds.ts: Implement guiset_quiet.
This fixes https://github.com/cmcaine/tridactyl/issues/802.
2018-07-14 15:18:09 +02:00
Oliver Blanthorn
4beccba119
Merge pull request #798 from gsbabil/gsbabil/enforce-powershell-minimum-version
Add support to enforce minimum version for PowerShell
2018-07-13 09:05:51 +01:00
Oliver Blanthorn
6367fbfa68
Merge pull request #799 from glacambre/fix_clipboard_selection_adding_newline
native_background.ts: Fix clipboard() adding newlines to copied strings
2018-07-13 09:03:02 +01:00
glacambre
4a5dcd7557
native_background.ts: Fix clipboard() adding newlines to copied strings
Here-documents require a newline at the end of their content and there's
no way around it. In order to prevent the newline to be sent to the
clipboard command, we can do two things: not use here-documents or pipe
the content to sed first to remove the newline.

Not using here-documents means doing a lot of string manipulations to
escape the string properly. Using here-documents is conceptually
simpler.

Hence, we keep using here-documents and pipe the string to sed in order
to remove the newline.
2018-07-13 06:35:13 +02:00
Babil Golam Sarwar
92e99aabbb
Add support to enforce minimum version for PowerShell 2018-07-13 08:46:09 +10:00
Oliver Blanthorn
2a43d0b910
Merge branch 'x_selection' of https://github.com/glacambre/tridactyl into glacambre-x_selection 2018-07-12 18:13:49 +01:00
Oliver Blanthorn
a3dd4ed119
Merge branch 'url2args' of https://github.com/glacambre/tridactyl 2018-07-12 18:12:20 +01:00
Oliver Blanthorn
93c5fc3176
Merge pull request #771 from glacambre/fix_buggy_scoredOptions
completions.ts: Remove unused and buggy code
2018-07-12 18:05:17 +01:00
Oliver Blanthorn
047c9d2918
Rename rmautocmd to autocmddelete to be more like Vim
Also remove au! as I would expect these to merely allow overwriting the autocommand, not just wipe it clean
2018-07-12 16:51:25 +01:00
Oliver Blanthorn
e548d03b96
Merge branch 'remove-autocmds' of https://github.com/friedm/tridactyl into friedm-remove-autocmds 2018-07-12 16:40:20 +01:00
Oliver Blanthorn
e1bee5e8c4
Merge branch 'dismiss_fillcmdline_tmp' of https://github.com/glacambre/tridactyl into glacambre-dismiss_fillcmdline_tmp 2018-07-12 16:38:11 +01:00
Oliver Blanthorn
b754c9e619
Merge branch 'fix_buggy_fillcmdline_tmp' of https://github.com/glacambre/tridactyl into glacambre-fix_buggy_fillcmdline_tmp 2018-07-12 16:35:54 +01:00
Oliver Blanthorn
deef62cfbd
Merge branch 'fix_shydactyl' of https://github.com/glacambre/tridactyl into glacambre-fix_shydactyl 2018-07-12 16:31:16 +01:00
Oliver Blanthorn
6fc87d9121
Fix #782: document editor bind more thoroughly 2018-07-11 11:56:31 +01:00
Oliver Blanthorn
39c9dbf63a
Merge pull request #786 from gsbabil/gsbabil/fix-native-messenger-exe-download
Fix native_main.exe download failure, PowerShell auto-close etc.
2018-07-11 11:38:10 +01:00
Babil Golam Sarwar
02c76e0f00
Fix PowerShell auto-close when native-messenger installation fails 2018-07-11 17:08:44 +10:00
Babil Golam Sarwar
be245d5dfa
Add TLS 1.1/1.2 support to Invoke-WebRequest 2018-07-11 11:37:34 +10:00
Oliver Blanthorn
eb118c9fbd
Merge pull request #785 from glacambre/make_tabprev_synchronous
excmds.ts: Make tabprev synchronous
2018-07-10 18:45:40 +01:00
glacambre
c2d5f27394
excmds.ts: Make tabprev synchronous
This fixes https://github.com/cmcaine/tridactyl/issues/783.
2018-07-10 19:35:21 +02:00
Oliver Blanthorn
64a494adb8
Fix #778: add warning to RC about requirement for beta 2018-07-09 15:29:13 +01:00
glacambre
c0c83fb320
completions.ts: Remove unused and buggy code
This commit removes an if statement that is always true and a caching
optimization that can go wrong.

The caching optimization is the `if (!this.fuse)` statement. This
optimization can be buggy because it relies on this.options not
changing between two calls to scoredOptions but as far as I can tell,
this.options always changes between two scoredOptions calls.

If this.options changes, the array indexes used in searchThis do not
point to the right elements anymore and everything can break
(completions that should be matched disappear, completions with a lower
score get higher priority etc).

As far as I can tell, removing this optimization does not make
completions slower, but I couldn't test this with a large history.
2018-07-07 20:10:42 +02:00
Oliver Blanthorn
e00900c128
Merge pull request #770 from glacambre/fix_focus_hijacking
dom.ts: Fix focus hijacking again
2018-07-07 12:41:36 +01:00
glacambre
729035ff2e
dom.ts: Fix focus hijacking again
The previous code called realFocus unconditionally. This fixed
https://github.com/cmcaine/tridactyl/issues/768 but broke
allowautofocus.

The new code makes sure to check the user's allowautofocus setting
before calling realFocus. I am not sure why it fixes #768 but I believe
it might be because bandcamp relies on synchronicity and that the
previous code used await.
2018-07-07 12:17:59 +02:00
Oliver Blanthorn
283166e464
Merge pull request #769 from glacambre/fix_focus_hijacking
dom.ts: Fix focus hijacking
2018-07-07 10:39:39 +01:00
glacambre
e9c636f5c6
dom.ts: Fix focus hijacking 2018-07-06 22:07:25 +02:00
WorldCodeCentral
34ac1240ca
Merge pull request #1 from WorldCodeCentral/WorldCodeCentral-patch-completion-openbackground
Update History.ts
2018-07-06 14:58:33 +02:00
WorldCodeCentral
f1bfc853e6
Update History.ts
Add condition for the -b open in background argument for completions
2018-07-06 14:55:15 +02:00