]> git.gir.st - VimFx.git/log
VimFx.git
8 years agoAdd `vimfx.getDefault()` to the public API
Simon Lydell [Sun, 25 Oct 2015 18:38:42 +0000 (19:38 +0100)]
Add `vimfx.getDefault()` to the public API

8 years agoIncrease hackability of the help dialog
Simon Lydell [Sun, 25 Oct 2015 17:44:33 +0000 (18:44 +0100)]
Increase hackability of the help dialog

Provide `data-mode`, `data-category` and `data-command` attributes, that can be
used by custom CSS to, for example, hide unwanted modes, categories and/or
commands from the dialog.

8 years agoFix handling of tabs dragged to new/other windows
Simon Lydell [Sun, 25 Oct 2015 12:06:56 +0000 (13:06 +0100)]
Fix handling of tabs dragged to new/other windows

See #57. This was originally fixed in commit 35522821, but regressed after
adding multi-process support. This fixes it again.

8 years agoMerge pull request #556 from Kambfhase/patch-1
Simon Lydell [Sat, 24 Oct 2015 19:49:51 +0000 (21:49 +0200)]
Merge pull request #556 from Kambfhase/patch-1

Improves German locale

8 years agoImproves German locale
Frank Hase [Sat, 24 Oct 2015 19:47:18 +0000 (21:47 +0200)]
Improves German locale

Fixes typos. Uses passive voice where appropriate.

8 years agoFix `<late>` + `event.stopPropagation()`
Simon Lydell [Sat, 24 Oct 2015 15:51:17 +0000 (17:51 +0200)]
Fix `<late>` + `event.stopPropagation()`

If the page calls `event.stopPropagation()`, late listenOnce:es are of course
not triggered for that event. However, the listeners still remain. This caused
them to erraneously trigger commands on the _next_ keypress. This commit adds a
flag telling the late listeners if their event was `.stopPropagation()`:ed.

8 years agoFix typo in documentation
Simon Lydell [Sat, 24 Oct 2015 14:58:59 +0000 (16:58 +0200)]
Fix typo in documentation

8 years agoEnhance detection of `<label>`s with hidden `<input>`
Simon Lydell [Sat, 24 Oct 2015 14:18:24 +0000 (16:18 +0200)]
Enhance detection of `<label>`s with hidden `<input>`

Those `<label>`s should get hint markers.

8 years agoRemove unnecessary code in utils.simulateClick
Simon Lydell [Sat, 24 Oct 2015 13:25:33 +0000 (15:25 +0200)]
Remove unnecessary code in utils.simulateClick

8 years agoImprove the public API consumption
Simon Lydell [Sat, 24 Oct 2015 12:21:41 +0000 (14:21 +0200)]
Improve the public API consumption

Re-run all `.getAPI` calls when VimFx is updated. Otherwise you need to restart
Firefox, or disable and then enable every add-on that uses the API in order for
them to take effect on the new version.

8 years agoEnhance "switch back to tab" detection
Simon Lydell [Sat, 24 Oct 2015 09:05:14 +0000 (11:05 +0200)]
Enhance "switch back to tab" detection

8 years agoFix uncaught ReferenceError sometimes when opening tabs
Simon Lydell [Fri, 23 Oct 2015 19:39:48 +0000 (21:39 +0200)]
Fix uncaught ReferenceError sometimes when opening tabs

Apparently, `setTimeout` is _sometimes_ available in frame scripts, sometimes
not. `content.setTimeout` always is available, though.

8 years agoMerge pull request #553 from akhodakivskiy/non-multi-process-event-quirks
Simon Lydell [Fri, 23 Oct 2015 19:31:21 +0000 (21:31 +0200)]
Merge pull request #553 from akhodakivskiy/non-multi-process-event-quirks

Fix non-multi-process event quirks

8 years agoRe-implement "switch back to tab" logic
Simon Lydell [Fri, 23 Oct 2015 19:12:08 +0000 (21:12 +0200)]
Re-implement "switch back to tab" logic

... in a way that works regardless of whether multi-process is enabled or not.
As a bonus, the code ended up simpler than it was before!

8 years agoFix missing event listeners when re-installing VimFx
Simon Lydell [Fri, 23 Oct 2015 18:49:03 +0000 (20:49 +0200)]
Fix missing event listeners when re-installing VimFx

8 years agoFix errors when calling many tab related commands
Simon Lydell [Fri, 23 Oct 2015 17:25:33 +0000 (19:25 +0200)]
Fix errors when calling many tab related commands

This only happens when in non-multi-process and is due to bug 1200334.

8 years agoProperly handle key events in non-multi-process
Simon Lydell [Thu, 22 Oct 2015 17:08:00 +0000 (19:08 +0200)]
Properly handle key events in non-multi-process

This commit can alternatively be lableled:

"Fix `Vim::isFrameEvent`" in in-multi-process.

Before, _no key events were considered frame events non-multi-process, because
the check didn't work there. Most notably, this caused `<escape>` to be leaked
to the page when blurring text inputs.

8 years agoAdd MULTI_PROCESS_ENABLED global
Simon Lydell [Thu, 22 Oct 2015 17:06:38 +0000 (19:06 +0200)]
Add MULTI_PROCESS_ENABLED global

8 years agoAdd `gulp sloc`
Simon Lydell [Fri, 23 Oct 2015 15:34:27 +0000 (17:34 +0200)]
Add `gulp sloc`

8 years agoAdd a question to question-and-answers.md
Simon Lydell [Fri, 23 Oct 2015 14:28:38 +0000 (16:28 +0200)]
Add a question to question-and-answers.md

8 years agoFix typo in docs
Simon Lydell [Fri, 23 Oct 2015 12:14:38 +0000 (14:14 +0200)]
Fix typo in docs

8 years agoConsistently use `event.originalTarget`
Simon Lydell [Fri, 23 Oct 2015 06:30:23 +0000 (08:30 +0200)]
Consistently use `event.originalTarget`

8 years agoMove a comment to where it belongs
Simon Lydell [Fri, 23 Oct 2015 06:18:53 +0000 (08:18 +0200)]
Move a comment to where it belongs

8 years agoFix lint error
Simon Lydell [Fri, 23 Oct 2015 05:54:29 +0000 (07:54 +0200)]
Fix lint error

8 years agoBump Firefox min version to 40
Simon Lydell [Thu, 22 Oct 2015 16:19:22 +0000 (18:19 +0200)]
Bump Firefox min version to 40

... because we use `String::includes`, which requires at least that version.

8 years agoFix autofocus prevention when coming from another window
Simon Lydell [Wed, 21 Oct 2015 17:31:39 +0000 (19:31 +0200)]
Fix autofocus prevention when coming from another window

8 years agoReplace a `console.log` in gulpfile.coffee
Simon Lydell [Wed, 21 Oct 2015 16:46:42 +0000 (18:46 +0200)]
Replace a `console.log` in gulpfile.coffee

... with `process.stdout.write`. This means that there is only one `console.log`
occurance in all .coffee files, which makes it easier to search for left-over
temporary `console.log`s.

8 years agoFix impossible-to-blur inputs issue
Simon Lydell [Wed, 21 Oct 2015 16:44:14 +0000 (18:44 +0200)]
Fix impossible-to-blur inputs issue

8 years agoMerge pull request #551 from akhodakivskiy/late-shortcuts
Simon Lydell [Wed, 21 Oct 2015 07:13:46 +0000 (09:13 +0200)]
Merge pull request #551 from akhodakivskiy/late-shortcuts

Add support for `<late>` shortcuts

8 years agoAdd support for `<late>` shortcuts
Simon Lydell [Sun, 18 Oct 2015 18:57:09 +0000 (20:57 +0200)]
Add support for `<late>` shortcuts

By including the special key `<late>` in a shortcut it is run _after_ web page
event listeners, allowing them to override the VimFx shortcut. This is useful
when binding to `<tab>` and the arrow keys.

8 years agoFix state resetting when refreshing the page
Simon Lydell [Mon, 19 Oct 2015 18:21:52 +0000 (20:21 +0200)]
Fix state resetting when refreshing the page

8 years agoMerge pull request #552 from leVirve/develop
Simon Lydell [Mon, 19 Oct 2015 11:15:17 +0000 (13:15 +0200)]
Merge pull request #552 from leVirve/develop

update zh-tw locale strings

8 years agoupdate zh-tw locale strings
Salas [Mon, 19 Oct 2015 07:44:44 +0000 (15:44 +0800)]
update zh-tw locale strings

8 years agoMerge pull request #550 from m-r-r/french-translation
Simon Lydell [Sun, 18 Oct 2015 18:28:53 +0000 (20:28 +0200)]
Merge pull request #550 from m-r-r/french-translation

Update the French translation

8 years agoUpdate the French translation
m-r-r [Sun, 18 Oct 2015 16:41:53 +0000 (18:41 +0200)]
Update the French translation

8 years agoUpdate Japanese translator in PEOPLE.md
Simon Lydell [Sun, 18 Oct 2015 14:49:42 +0000 (16:49 +0200)]
Update Japanese translator in PEOPLE.md

8 years agoMerge pull request #549 from pluser/patch-1
Simon Lydell [Sun, 18 Oct 2015 14:47:06 +0000 (16:47 +0200)]
Merge pull request #549 from pluser/patch-1

Translate to Japanese

8 years agoImprove Japanese translation
pluser [Sun, 18 Oct 2015 10:57:47 +0000 (19:57 +0900)]
Improve Japanese translation

8 years agoTranslate to Japanese
pluser [Sun, 18 Oct 2015 09:49:31 +0000 (18:49 +0900)]
Translate to Japanese

8 years agoImprove display of mode names in the help dialog
Simon Lydell [Sun, 18 Oct 2015 07:56:53 +0000 (09:56 +0200)]
Improve display of mode names in the help dialog

This is mostly for non-en-US languages which might have longer names.

8 years agoMerge pull request #548 from mozillazg/zh-CN
Simon Lydell [Sun, 18 Oct 2015 07:37:18 +0000 (09:37 +0200)]
Merge pull request #548 from mozillazg/zh-CN

Improve zh-CN locale

8 years agoImprove zh-CN local
mozillazg [Sun, 18 Oct 2015 00:40:14 +0000 (08:40 +0800)]
Improve zh-CN local

8 years agoUpdate nl locale
Floris [Sat, 17 Oct 2015 22:17:08 +0000 (00:17 +0200)]
Update nl locale

8 years agoFix documentation link in the readme
Simon Lydell [Sat, 17 Oct 2015 22:30:18 +0000 (00:30 +0200)]
Fix documentation link in the readme

It pointed to master, which will be correct when 0.6.0 is released. However,
there are already other links in the readme that point to develop, so we could
just as well make that link work for the time being as well.

8 years agoFix lint error
Simon Lydell [Sat, 17 Oct 2015 21:39:04 +0000 (23:39 +0200)]
Fix lint error

8 years agoFix blacklist re-apply issue
Simon Lydell [Sat, 17 Oct 2015 21:27:50 +0000 (23:27 +0200)]
Fix blacklist re-apply issue

1. Visit a blacklisted site.
2. Exit insert mode.
3. Switch to another tab and back again.

Before this commit, insert mode was wrongly re-entered at this point.

8 years agoFix blacklisting on already loaded tabs
Simon Lydell [Sat, 17 Oct 2015 21:17:38 +0000 (23:17 +0200)]
Fix blacklisting on already loaded tabs

8 years agoMake the `H` and `L` commands work in Firefox < 43
Simon Lydell [Sat, 17 Oct 2015 21:12:46 +0000 (23:12 +0200)]
Make the `H` and `L` commands work in Firefox < 43

... although without count support.

8 years agoFix uncaught exception on startup
Simon Lydell [Sat, 17 Oct 2015 21:07:30 +0000 (23:07 +0200)]
Fix uncaught exception on startup

8 years agoFix VimFx not responding in already loaded tabs
Simon Lydell [Sat, 17 Oct 2015 21:05:09 +0000 (23:05 +0200)]
Fix VimFx not responding in already loaded tabs

8 years agoMerge pull request #545 from comepradz/translation-id
Simon Lydell [Sat, 17 Oct 2015 20:51:26 +0000 (22:51 +0200)]
Merge pull request #545 from comepradz/translation-id

8 years agoUpdate and improve Indonesian translation
Yoppy Halilintar [Sat, 17 Oct 2015 19:00:28 +0000 (02:00 +0700)]
Update and improve Indonesian translation

8 years agoFix slightly broken `<escape>` handling
Simon Lydell [Sat, 17 Oct 2015 20:42:08 +0000 (22:42 +0200)]
Fix slightly broken `<escape>` handling

8 years agoFix shortcut triggering on slowly loadnig pages
Simon Lydell [Sat, 17 Oct 2015 18:52:53 +0000 (20:52 +0200)]
Fix shortcut triggering on slowly loadnig pages

Frame scripts cannot receive events until a DOMWindow has been created in it. If
you opened a link in a new tab, and the page loaded very slowly making it take a
long time before a DOMWindow is created, it meant that no VimFx shortcuts could
used during that time.

The solution is to handle shortcuts in the main process until a DOMWindow has
been created.

8 years agoAdd new german translator to PEOPLE.md
Simon Lydell [Sat, 17 Oct 2015 17:39:16 +0000 (19:39 +0200)]
Add new german translator to PEOPLE.md

8 years agoMerge pull request #544 from benediktg/patch-1
Simon Lydell [Sat, 17 Oct 2015 17:37:28 +0000 (19:37 +0200)]
Merge pull request #544 from benediktg/patch-1

Patch for German translations

8 years agoFix blacklisting and `vim.state` resetting
Simon Lydell [Sat, 17 Oct 2015 17:23:03 +0000 (19:23 +0200)]
Fix blacklisting and `vim.state` resetting

8 years agoadded some more German translations
Benedikt [Sat, 17 Oct 2015 17:09:36 +0000 (19:09 +0200)]
added some more German translations

Now the de-locale should be complete.

8 years agoadded some German translations
Benedikt [Sat, 17 Oct 2015 16:25:35 +0000 (18:25 +0200)]
added some German translations

8 years agoRemove `vim.isBlacklisted()` from the public API
Simon Lydell [Sat, 17 Oct 2015 13:47:34 +0000 (15:47 +0200)]
Remove `vim.isBlacklisted()` from the public API

8 years agoFix VimFx being broken in new windows
Simon Lydell [Sat, 17 Oct 2015 13:35:36 +0000 (15:35 +0200)]
Fix VimFx being broken in new windows

Apparently, the VimFx button only needs to be added once, not once per window.
Trying to add it more than once caused an exception that prevented the rest of
VimFx from being set up.

8 years agoFix lint error
Simon Lydell [Sat, 17 Oct 2015 13:13:16 +0000 (15:13 +0200)]
Fix lint error

8 years agoFix uncaught error on Firefox startup
Simon Lydell [Sat, 17 Oct 2015 12:24:33 +0000 (14:24 +0200)]
Fix uncaught error on Firefox startup

8 years agoFix uncaught exception on focus/blur
Simon Lydell [Sat, 17 Oct 2015 11:51:22 +0000 (13:51 +0200)]
Fix uncaught exception on focus/blur

`window` does not have `.ownerDocument`

8 years agoAdd github usernames to PEOPLE.md
Simon Lydell [Sat, 17 Oct 2015 11:32:37 +0000 (13:32 +0200)]
Add github usernames to PEOPLE.md

Makes it easier to ping contributors in issues.

8 years agoMerge pull request #542 from akhodakivskiy/improved-autofocus
Simon Lydell [Sat, 17 Oct 2015 11:02:28 +0000 (13:02 +0200)]
Merge pull request #542 from akhodakivskiy/improved-autofocus

Improved autofocus

8 years agoPrevent autofocus after re-selecting a tab
Simon Lydell [Sun, 11 Oct 2015 18:45:05 +0000 (20:45 +0200)]
Prevent autofocus after re-selecting a tab

See #541.

8 years agoRe-work autofocus prevention
Simon Lydell [Sun, 11 Oct 2015 18:10:03 +0000 (20:10 +0200)]
Re-work autofocus prevention

Blur any and all focus events that occur before the user has interacted with the
page. That’s it. No more, no less.

The old way was too aggressive, and interfered too much.

The new way is very similar to how Vimium and cVim does it.

See #497.

8 years agoSet prevent_autofocus to false by default
Simon Lydell [Sun, 11 Oct 2015 17:19:25 +0000 (19:19 +0200)]
Set prevent_autofocus to false by default

"VimFx will be nice to your browser and to your habits. Promise."

Turning it on by default have proven to be too much of a change. When people
become annoyed by autofocus they can enable it.

As far is I can tell, this is also how Vimium and Vimperator behaves.

8 years agoImprove keyboard shortcut overriding behavior
Simon Lydell [Sun, 11 Oct 2015 16:41:08 +0000 (18:41 +0200)]
Improve keyboard shortcut overriding behavior

- When the feature was initially implemented, it was modeled after putting a
  series of `map` commands after each other in .vimrc, which is written in a
  procedural programming language. Then it makes sense that latter `map` calls
  override earlier ones. That's why VimFx used to let commands further down the
  list in VimFx's settings page in the Add-ons Manager override earlier
  commands. The more I used it, though, that didn't feel entirely natural. After
  a while I realized that in such an interface it makes sense having _earlier_
  commands win. With this commit, latter commands _don't_ override earlier ones
  anymore, and are ignored, showing an error message.

- The above point also means that editing a shortcut can never result in error
  messages appearing _above_ that command. If you add `g` to a shortcut near the
  end of the list, there used to appear an error message for every shortcut
  starting with `g` above it (which is quite a few), causing dis-orientation
  when the focused text box was moved down because of all those error messages.

- With this commit, the order of the modes, categories and commands is taken
  into account. That used to work only when the user hadn't customized the
  orders or hadn't added new modes, categories and/or commands.

- A small fix for `<force>` is also included. If a shortcut contains invalid
  usage of `<force>` it is now properly ignored (still showing an error
  message).

8 years agoRe-organize utils.coffee
Simon Lydell [Sun, 11 Oct 2015 15:50:51 +0000 (17:50 +0200)]
Re-organize utils.coffee

8 years agoUpdate dependencies
Simon Lydell [Sun, 11 Oct 2015 15:12:15 +0000 (17:12 +0200)]
Update dependencies

8 years agoClean up gulpfile.coffee slightly
Simon Lydell [Sun, 11 Oct 2015 15:07:39 +0000 (17:07 +0200)]
Clean up gulpfile.coffee slightly

8 years agoMerge pull request #512 from akhodakivskiy/multi-process
Simon Lydell [Sun, 11 Oct 2015 14:58:36 +0000 (16:58 +0200)]
Merge pull request #512 from akhodakivskiy/multi-process

Support multi-process Firefox

8 years agoUpdate documentation
Simon Lydell [Sun, 11 Oct 2015 09:50:44 +0000 (11:50 +0200)]
Update documentation

8 years agoSupport multi-process Firefox
Simon Lydell [Sun, 28 Jun 2015 22:27:28 +0000 (00:27 +0200)]
Support multi-process Firefox

See #378.

8 years agoAdd links to the documentation and the wiki in the readme
Simon Lydell [Sun, 11 Oct 2015 10:42:06 +0000 (12:42 +0200)]
Add links to the documentation and the wiki in the readme

8 years agoAdd link to the wiki in the documentation
Simon Lydell [Sun, 11 Oct 2015 10:38:16 +0000 (12:38 +0200)]
Add link to the wiki in the documentation

8 years agoLay the foundation for using multi-process Firefox
Simon Lydell [Sun, 28 Jun 2015 09:57:56 +0000 (11:57 +0200)]
Lay the foundation for using multi-process Firefox

This also fixes leaking of variables in bootstrap.coffee (which masked a missing
`require` call in parse-prefs.coffee). Apparently all modules share its scope,
which I had never realized before.

This also exposes `Cc`, `Ci` and `Cu` globally to all modules (which actually
was done before, too, but only accidentally.)

8 years agoAdd notifications for the n and N commands
Simon Lydell [Mon, 21 Sep 2015 14:47:43 +0000 (16:47 +0200)]
Add notifications for the n and N commands

See #398.

8 years agoAdd simple notifications system
Simon Lydell [Mon, 21 Sep 2015 14:47:08 +0000 (16:47 +0200)]
Add simple notifications system

8 years agoRemove link to io.js now that it has merged with Node.js
Simon Lydell [Sun, 20 Sep 2015 15:25:44 +0000 (17:25 +0200)]
Remove link to io.js now that it has merged with Node.js

8 years agoFix blurring of some browser UI elements
Simon Lydell [Wed, 9 Sep 2015 16:17:25 +0000 (18:17 +0200)]
Fix blurring of some browser UI elements

8 years agoUse destructuring defaults from CoffeeScript 1.10.0
Simon Lydell [Thu, 3 Sep 2015 20:54:50 +0000 (22:54 +0200)]
Use destructuring defaults from CoffeeScript 1.10.0

8 years agoUpdate api.md regarding getting the public API
Simon Lydell [Mon, 31 Aug 2015 06:22:26 +0000 (08:22 +0200)]
Update api.md regarding getting the public API

8 years agoFix typo in config file boilerplate
Simon Lydell [Sun, 30 Aug 2015 08:52:02 +0000 (10:52 +0200)]
Fix typo in config file boilerplate

8 years agoStop URI encoding the API URL pref
Simon Lydell [Sat, 29 Aug 2015 21:08:58 +0000 (23:08 +0200)]
Stop URI encoding the API URL pref

The reason we used to was to make it easier to consume the public API (because
it is easier to read an ASCII string pref than a unicode one). However, some
systems return spaces already URI encoded, which breaks when encoding it once
more. In the end, this tiny simplification of the API consumption is not worth
it. Better to simply store the API URL as-is in a complex string pref.

Fixes #516.

8 years agoUpdate dependencies
Simon Lydell [Sat, 29 Aug 2015 20:56:49 +0000 (22:56 +0200)]
Update dependencies

8 years agoUpdate coffeelint
Simon Lydell [Sat, 29 Aug 2015 20:55:38 +0000 (22:55 +0200)]
Update coffeelint

8 years agoBump version to 0.5.18
Simon Lydell [Sat, 29 Aug 2015 20:36:34 +0000 (22:36 +0200)]
Bump version to 0.5.18

0.5.17.1-signed has been automatically published on addons.mozilla.org, causing
the automatic updates to replace the installed development version.

8 years agoDon't include the en-US description twice
Simon Lydell [Sat, 29 Aug 2015 20:35:37 +0000 (22:35 +0200)]
Don't include the en-US description twice

That has started to crash Firefox for me. Strange.

8 years agoAdd zh-TW translator to PEOPLE.md
Simon Lydell [Sun, 9 Aug 2015 14:58:16 +0000 (16:58 +0200)]
Add zh-TW translator to PEOPLE.md

8 years agoMerge pull request #522 from mozillazg/zh-CN
Simon Lydell [Sun, 2 Aug 2015 06:02:26 +0000 (08:02 +0200)]
Merge pull request #522 from mozillazg/zh-CN

Updated zh-CN localization

8 years agoUpdated zh-CN localization
mozillazg [Sun, 2 Aug 2015 03:42:06 +0000 (11:42 +0800)]
Updated zh-CN localization

8 years agoMerge pull request #521 from leVirve/zh-TW
Simon Lydell [Sat, 1 Aug 2015 06:09:24 +0000 (08:09 +0200)]
Merge pull request #521 from leVirve/zh-TW

update zh-TW strings

8 years agoupdate zh-TW strings
Salas [Fri, 31 Jul 2015 16:06:23 +0000 (16:06 +0000)]
update zh-TW strings

8 years agoRemove ability to select text in help dialog
Simon Lydell [Mon, 29 Jun 2015 19:25:39 +0000 (21:25 +0200)]
Remove ability to select text in help dialog

It was added so that you could select text and copy it, but unfortunately
nothing seems to happen when trying to copy. Then its better to leave the text
selection out entirely.

8 years agoMake `paste_and_go` work exactly like Firefox
Simon Lydell [Sun, 28 Jun 2015 08:33:46 +0000 (10:33 +0200)]
Make `paste_and_go` work exactly like Firefox

See #353.

8 years agoSimplify command `esc`
Simon Lydell [Sun, 28 Jun 2015 07:54:18 +0000 (09:54 +0200)]
Simplify command `esc`

8 years agoMake `stop_all` content independent
Simon Lydell [Sun, 28 Jun 2015 07:47:27 +0000 (09:47 +0200)]
Make `stop_all` content independent

Imprint / Impressum