]> git.gir.st - VimFx.git/blob - documentation/known-bugs.md
VimFx v0.27.1
[VimFx.git] / documentation / known-bugs.md
1 # Known Bugs
2
3 Given that VimFx operates outside the bounds of what Mozilla supports, there
4 are some things that VimFx doesn't play along with well. This page lists
5 problems that affect VimFx when run on versions of Firefox we support
6 (latest *Release* and *ESR* versions).
7
8 ## BFcache
9
10 **Affected**: Firefox >= 96
11 **Solution**: `fission.bfcacheInParent;false`
12
13 VimFx is unloaded from tabs when the [bfcache] is handled in the parent
14 process.
15
16 The bfcache speeds up navigating back and forth through the browser history.
17 Mozilla moved the location of this cache from the content process into the
18 parent process. VimFx isn't properly restored when a page from this version of
19 the cache is loaded. By setting `fission.bfcacheInParent` to `false` in
20 `about:config` the cache can be bound to the content process again, avoiding
21 the bug.
22
23 <!-- Putting the bfcache into the parent process requires moving the data using
24 IPC between processes. It is likely that the BootstrapLoader would need to be
25 adapted to handle this, which is not happening unless someone else does it. -->
26
27 [bfcache]: https://web.dev/articles/bfcache
28
29 ## Fission
30
31 **Affected**: Firefox >= 96
32 **Workaround**: `fission.webContentIsolationStrategy;0`
33
34 With [Fission] enabled, VimFx doesn't work in out-of-process iframes.
35
36 With Fission, sometimes called *Site Isolation*, VimFx cannot place hint markers
37 or detect input elements inside iframes from a different domain to the top
38 document. We will instead enter insert mode whenever such an iframe is active.
39 Hit Escape or click outside the iframe to let VimFx re-gain control. Setting
40 `fission.webContentIsolationStrategy` to `0` in `about:config` only disables the
41 iframe part of Fission.
42
43 Note that as of now (Firefox 119), when `webContentIsolationStrategy` is set,
44 reloading a webpage causes additional entries in the history and loss of forward
45 history for the tab. This is tracked in [Bug 1832341]. To avoid this, disable
46 Fission completely by setting `fission.autostart` to `false`.
47
48 <!-- VimFx will probably never support Fission. Its architecture assumes that
49 all elements can be interacted with from a single point. It would require
50 revisiting 8a33140f and injecting a script into each frame and postMessage'ing
51 them instead of directly accessing elements within them. -->
52
53 [Fission]: https://wiki.mozilla.org/Project_Fission
54 [Bug 1832341]: https://bugzilla.mozilla.org/show_bug.cgi?id=1832341
55
56 ## VimFx behaves broken after installation
57
58 **Affected**: all supported versions
59 **Solution**: restart browser
60
61 For some as-of-yet undetermined reason, the addon sometimes breaks after
62 installation (or upgrade)<!-- possibly Gecko internals changed and the
63 BootstrapLoader is failing -->. Fastest way to restart Firefox is pressing
64 `<c-s-j>` to open the browser console, then `<c-a-r>` to restart.
Imprint / Impressum