Implement thunderbird support
Implement key ignore
Fix RPC mechanism being broken
The problem was that in trying to selectively answer to messages from
the neovim frame, the content script was made deaf to any request from
the backround script. This is fixed by ordering functions into
categories, e.g. global, active-content and "frame" and performing
checks tied to the categories before answering.
Make firenvim work consistently across frames
There was a race condition which sometimes prevented Firenvim from
working on inputs located in frames. This was caused by the wrong
content script answering the Firenvim frame's queries.
Make chrome tests more reliable on windows
Chrome tests are pretty unreliable on windows. I suspect this is because
windows is slow and has potentially racy code in the testsuite. This is
fixed by removing the race.
Use webpack to conditionally import browser polyfill
Trigger FocusGained/Lost autocmds on focus gain/loss
Allow overriding `<C-w>`
Detect filetype and use according extension when possible
Replace selectors with frame ids for page<->frame communication
Make resize operations use frameIDs, move resizeObserver to FirenvimElem
Implement frameId-retrieving functionality
Implement persistent server
Currently buggy if `:qall!` is used.
NeovimFrame.ts: fix chinese input methods
Refactor get/set cursor functions and make them work on fancy editors
- Coalesces window population + cursor movement in a single RPC
operation removing latency
- Refactors and reduces testing delays
- Removes dead tests
Implement a way to hide history
NeovimFrame.ts: Fix <S-Left> not working