Upgrade prettier and the pretty quick package which runs it as a pre-commit hook the main reason for this being that prettier incrementally improve their parsing and formatting strategy and crucially for a `typescript` project they add support for new ts syntax that prettier would otherwise choke on without upgrades
* Lazily (re)initialize the glyph buffer in the WebGLRenderer to ensure sufficient length for a completely filled screen
* Apply the same fix to the solid cell renderer
* Plumb through 'visible lines' to the buffer layer context
* Fix lint issues
* Augment the AddLayer test to validate we are getting content out
* Upgrade to latest oni-api and bring in improved types
* Add middle click tab closing (#2069)
by adding a onMouseDown directive to both tab file icon and
tab name and checking the resulting React.MouseEvent for a
middle click
* Fix unused imports and whitespace in Tabs ui test (#2069)
* Update Tabs component test snapshot (#2069)
* Fix Tabs ui test to correctly retrieve children (#2069)
* Differentiate between single und multiple tabs in test (#2069)
* Use mousedown event for tab selection and closing (#2069)
by middle clicking and let the tab itself handle the logic
for it by checking React.MouseEvent.button value
* Update classnames dependency to lastest master branch
and write own @types module declaration so that it can be used in
testing nstead of using a mock. The mock does not suffice as the
way the actual module previously had to be imported was
"import * as classNames" where classNames was the actual function.
It is not possible to build a module in typescript/es6 imports, which
will directly return a function in the same way the dependency did
in commonjs module syntax. Instead when defining a function to be
returned as default export it is returned as an Object like this
"{ default: [Function] }", which is correctly resolved when importing
with "import classNames from 'classnames'".
This only previously worked in production as webpacks ts-loader,
handles this issue, whereas when testing the sources are only compiled
with tsc.
There is an update to the classnames dependency on the current master,
but there hasn't been a release since 2006. So options were to setup
webpack for tests as well or add updated classnames dependency which
sets a "default" value on its commonjs exports.
Links for reference:
https://github.com/JedWatson/classnames/issues/152https://github.com/JedWatson/classnames/pull/106https://github.com/DefinitelyTyped/DefinitelyTyped/pull/25206https://github.com/Microsoft/TypeScript/issues/2719
* Fix tab click onMouseDown callback
* Test tab clicks to select/close trigger callbacks
* Mock child react components directly to test smaller unit
* Reset calls to callback mocks in each test case
* Add tests for tabs interaction with FileIcon/Sneakable
* Add Targets.vim tutorial
Add a tutorial with description, useful keys, and interactive examples
to teach users about Target.vim.
* Add ci( stages, pauses, and text insertions.
Have the user type 'foo' and 'bar' after using the c operator. Change
the message to switch to normal mode. Add aditional stages to have the
user use the ci( command.
Add pauses where needed so that the user can view the result of them
entering the correct keys.
* Fix spelling mistakes and adjust wordage
Change 'paranthesis' missellings to 'parenthesis'. Change command
vocabulary to match command.
* Update HeroDemo to use new split mode
* Fix issue with oni split mode not being set completely
* Display achievement at beginning of video
* Get achievement working
* Continue improving test
* Add code to create the demo app
* Start implementing browser / terminal demo
* Add 'sneak' to oni api
* Add tags for sneak mode so its easier to automate
* Show end-to-end development experience
* Get test working end-to-end
* Only put one alert in
* Continue tweaking demo
* Demo updates
* Update demo
* Update demo
* Demo tweaks
* Fix lint issues
* Revert changes to sneak
* Revert change to Sneakable
* Revert change to Oni.ts
* Use the 'scroll' event from redraw as a hitn that we should dispatch the scroll event
* Add CiTest to validate scroll event
* Fix up test
* Fix up CiTest for scroll event
* pass selected tab id to sneak callback
* [WIP] add ci test
* actually add new file to vcs
* Add a ci test to prevent sneakability regression
* add getMatchingSneak to ciTest fix typo in getMatchingSneak
* add file drag and drop handler component
* move filedrop handler into separate component
use editor container component to collect drop events
* add comment to explain use of filedraghandler
* fix comments typo
* refactor ref setting into file handler and add global hooks
remove hooks from neovim editor
* move global drag event handlers
* fix comment to match functionality
* tweak comment merge upstream
* use attrs for error squiggle and marker components
upgrade styled-components
* return empty string not undefined as this is cast to string and added to the css