* Enabling webGL renderer
* Use @zeit/xterm fork of xterm
* Adding webGLRenderer config
* Fix linting issues
* Allow for hot-reloading of webGLRenderer
* Adding link to WebGL renderer issue we're working around
* Using NPM tarball instead of resolutions (which wasn't working
* Hard-coding selection color to white because nothing else is yet supported
* Bumping electron to 3.0.10
* Updating node version in travis and appveyor
* Fixing incorrect require of electron-fetch
* Fix zoom to match previous versions
Additionally I'm removing a call to disable pinch-zoom, it's disable by
default since Electron 2 (https://electronjs.org/releases#2.0.0)
* Bumping electron to 4.0.0-beta.8
* Bumping electron to 4.0.0-beta.9
* Work around for Copy accelerator not firing on electron v4
* Fixing header/titlebar in MacOS
* Upgrading to electron 4.0.0 and node-pty 0.8.0
* Adding yarn.lock changes for electron 4.0.0
* Adding comments for editor:copy workaround. Scaling issue is only on Linux
* Upgrading node-abi to support electron 4.0.0
* popup now takes an object as input
On Windows, the close button (rather than the border) is expected to be hit when someone clicks the top-right corner of the screen if a window is maximized.
* Reimplement altIsMeta supprt with new xterm library
* Update xterm fork to use xtermjs/xterm.js@616958e
* Use node 8 in travis, needed by source-map@0.7.0
xterm.js doesn't use `this.term.charMeasure.width` when rendering. It
actually uses:
`Math.floor(this._terminal.charMeasure.width * window.devicePixelRatio)`
This is important, because character widths may be non-integer values,
which means that we can end up with an empty space on the right side of
the terminal window.
Instead of trying to match xterm's behavior, it's probably better if we
just use xterm's `fit` addon. This seems to behave better for me.
We might not want to land this as-is, becuase this addon forces an
annoying hard-coded 17px margin on the right side to compensate for a
scrollbar (see xtermjs/xterm.js#400), but at least for my use-cases,
this is still better than it was.
* 🐛 Fix underline cursor color
* 🐛 Fix unfocused box when cursor is underline
* 🐛 Fix BAR color and make BAR and UNDERLINE transparent when not in focus
* 🐛 Bring back the box when unfocused
* 🐛 Add cursorColor to unfocused underline and bar
* WIP
* WIP
* Wip
* Wip
* wip
* Refactor without normalize and plugin
* Replace extendKeymaps by decorateKeymaps
* WIP
* Add mousetrap
* Add first command over rpc
* More commands
* Add all commands
* Begin to hook commands
* Working multiple keymaps
* Use redux action to trigger command
* Use forked version of Mousetrap to capture key events
* Fix lint
* Add command in redux action to debug purpose
* ExecCommand from menu click
* Remove unused files
* Fix xterm should ignore catched events
* Re-enable IntelliSense checking
* Remove unused runes dep
* Added a utility for processing clipboard data
* using paste processing utility in term component to expand filepath
* removed linux case
* moved active tab to guard so only process when active
* commenting paste event handler for clarity
* Introduce 2 base components: Component and PureComponent. Before, we have only PureComponent but it was impossible to add a shoulComponentUpdate method (used for Terms).
* master:
Fix yarn.lock (#2194)
Fix for keymapping bug on Linux and Windows (#2189)
Set session CWD only if there is an active session (#2191)
Upgrade Electron to v1.7.6 (#2193)
Fix plugin path in dev mode (#2192)
* master: (62 commits)
1.4.3
Disable ia32 linux releases (#2164)
Fixed writing composed characters (#2158)
Doc: Add yarn install to contribute instructions (#2117)
Change "Close Session" shortcut on Linux/Windows (#2160)
Notice for plugins (#2114)
Updated dependencies to the latest version (#2146)
1.4.2
Reverted class names to as they were before (#2139)
1.4.1
AppVeyor environment variables are now on the platform (#2137)
Brought back the icon for closing tabs (#2136)
Brought back keymap documentation to the website (#2133)
1.4.0
Don't build on master, except for releases (#2132)
Ensured that `async-retry` is added to the bundle (#2131)
Ensure correct update channel is displayed in About window (#2130)
Retry loading it if config doesn't exist in auto updater (#2129)
Write contents of default config to hyper.js (#2128)
Use a string for setting the update channel (#2127)
...
* Bumped dependencies to the latest version
* Bumped root lockfile
* Bumped app dependencies
* Fixed linting
* No command line switch needed anymore for native async/await
* Fixed color error
* Bumped Node.js versions for CI
* Downgraded hterm-umdjs
* Try to fix the AppVeyor build
* Made colors work again
* windows: fix editing preferences on bash
* linter: fix the linting error
* cleanCode : move the code to a function
* cleanCode: move the constants to the function
* clean: remove unnecessary eslint comment
* clean: use platform instead of defining it
* pass `uid` to term
* term: keep track of term instance references
* sessions: remvoe `write` object overhead
* hterm: cache measurement of codepoints for single char strings
* sessions: merge less eagerly when we receive a PTY_DATA action
* store: handle the side effect of writing to the terminal from a middleware
* terms: add terms instance cache
* lint
* [UI] Make scrollbar look the same on all platforms
Linux suffers from the same issue as other platforms where the scrollbar is that ugly electron style.
This commit will fix this and make it look the same on all platforms and cut down code.
* linter : Use const instead of let
* naming : make the constant easy to understand
The previous code used a variable to define code specific to the os.
Since we combined the code for all platforms it is not required anymore, so I changed the name to be more understandable to the person reading the code.
* [UI] Make scrollbar look the same on all platforms
Linux suffers from the same issue as other platforms where the scrollbar is that ugly electron style.
This commit will fix this and make it look the same on all platforms and cut down code.
* linter : Use const instead of let
* naming : make the constant easy to understand
The previous code used a variable to define code specific to the os.
Since we combined the code for all platforms it is not required anymore, so I changed the name to be more understandable to the person reading the code.
* Open Preferences in Wordpad on Windows
Notepad doesn't handle `\n` line breaks, Wordpad does.
Fixes#1126.
* Update: Use Win editor from reg
If not found, or set to notepad.exe (which can't handle line breaks), show hyper.js config file in folder so user can open in editor of their choice.
* Fixes for Windows
Fixed shell reference, corrected lint errors.
* Fixes for Windows
Fixed shell reference, corrected lint errors.
* Fixes for Windows
Fixed shell reference, corrected lint errors.
* Always show .hyper.js in folder for prefs
* Always show .hyper.js in folder for prefs
* Fixed electron import
* Make double-clicking on the titlebar work
* We don't actually need this
* Draw a Restore icon when the window is Maximized
* Update React State when BrowserWindow changes behind our back
* Cleanup
* Don't show the border if the window is maximized
* Fight with the linter
* bump webpack, babel and include babili
* fix for babili
* add heuristics for faster v8 parsing
* lint fixes
* fix windows build. infinitely grateful to @stefanivic for helping us test windows
* `command` => `mod`
* `Option` => `Alt`
* Allow hterm to consume a keyboard event only if it's not a Hyper accelerator
* Remove `console.log`s
* Say no to bikeshedding
* We already clear the selection on `onKeyDown`
* Add comments
* Remove meaningless comment
* Add fullscreen shortcut for Windows and Linux
* Use the accelerators defined in `accelerators.js` for the app menu
* feat(session): add session_active class to panels
* fix(active-session): rename active session class
see #905
* fix(active-session): rename prop name to `isTermActive`
* Added pressed state to window buttons on windows / linux
* Removed transition causing flicker
* Do not reset color on close button while not hovering but active
* Add container with a fixed width around unicode characters
* Make container width dynamic and fix wide chars clipping issue
* Finer control on the creation of containers for text inserted in the terminal
* ime
* Fix code style
* Add visual feedback for composition events
* Temporarily disable `hterm`'s `onKeyDown` hacks
* Replicate the focus/blur state of our caret on the `hterm` caret
* Fix: focus our caret when there's a tab change
* `caret_` => `hyperCaret`
* Reorg: move the caret hacks to the `hterm.js` extensions
* Remove `console.log`
* Remove the `Dead key` hack and reenable keyboard commands
* Add a (temporary?) fix to re-enable text selection
* Check for a selection `onMouseUp` instead `onFocus`
* Fix wrong buggy hterm's cursor styling on term focus/blur
* Fix the cursor style after the bell rings – closes#674
* Enable `acceptFirstMouse` to focus the correct term – closes#861
* Fix code style
* Fix: clear the `hyper-caret` when a char is inserted via the IME dialog
* Remove useless function
* Add coments regarding text selection
* Fix code style
* `child_pty` => `pty.js`
* Create a frameless window on Windows and Linux
* Add a brand new UI for Linux and Windows 💅
* [Windows] Fix plugin installation
* [Windows] Fix the `build` script
* [Windows] Add a bigger `icon.ico`
* [Mac] Add `WebKitAppRegion: drag` when running on macOS
* Fix code style 🤔
* Add `appveyor.yml`
* Fix code style (again)
* [Windows] Fix AppVeyor's `install` script
* [Windows] Try a new AppVeyor config
* [Windows] Set the binary path so Spectron can run the tests
* [Windows] Try to build on x64
* Try again to build on x64
* Try one more time 😩
* Throw an error to indicate that `pty.js` was built incorrectly
* [Win/Linux] Add `display: hidden` to <Tabs /> if tabs.length === 1
* [Win/Linux] Reorganize SVGs – via @CodeTheory
* [Win/Linux] Fix the hamburger menu height
* Make the SVGs look better with `shape-rendering: crispEdges;`
* [Win/Linux] Add config options for the window controls and the 🍔 menu
* Add `electron-squirrel-startup` dependency
* [Win] Handle Squirrel commands
* [Win/Linux] Fix default color for the 🍔 and window controls – via @CodeTheory
* [Win/Linux] Add some padding - via @CodeTheory
* [Win/Linux] Add hover states – via @CodeTheory
* [Win] Fix empty window/tab titles
* [Win] Fix opening Preferences (#978)
* [Win] Fix opening Preferences
* Update ui.js
* Update ui.js
* Enhance messages and default editor
* [Win] Add dependency instructions to the README.md [skip ci]
* Fix code style
* [Win/Linux] Check the number of open windows before quitting the app