* 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
* 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
* increase timeout for update checks
It seems like, there are lots of them and GitHub is not happy.
So increasing timeout 6x should fix that. In the end there is no need
to check updates every 5 minutes.
Fix#880
* restore check updates on start
@Tyriar brought up a good point in #123 that the close menu items can be
ambiguous and misleading. This clarifies them so you know exactly what
you're closing.
Fixes#123.
Default `err.message` notification is not helpful,
because it lacks stack and context.
it doesnt hurt for end users to add `console.error(err)`,
because they arent gonna see it. Though, as far as `console.error`
is being logged in Electron console, developers will get
enough information to identify problems with plugin they are developing.
fetchNotifications error can happen in two cases:
* https://hyper-news.now.sh is down
* you are offline
In both cases it doesn't hurt to wait half an hour.
PS. right now it hurts, when you are offline and developing
anything for Hyper, `console.error` logs the same error
every 10s and ruins your investigation.
* Add pseudo quick full screen
* Record window size before entering full screen
* Restore window size when leaving full screen
* Toggle menu items for quick full screen
* Remove redundant filters
* Add accelerators for Linux
* Only save window state when not full screen
* npm: add .npmrc with save-exact=true
* split panes: create initial implementation
This allows users to split their Hyperterm terms into
multiple nested splits, both vertical and horizontal.
Fixes#56
* split panes: suport closing tabs and individual panes
* split panes: ensure new splits are placed at the correct index
New split panes should be placed after the currently active
pane, not at the end like they were previously.
* split panes: add explicit dependency to uuid
* split panes: implement split pane cycling
This adds menu buttons for moving back and forward between
open split panes in the currect terminal tab.
Doesn't add a hotkey yet, needs some bikeshedding.
* split panes: move activeSessionUid to its own object
It made little sense to have so many objects with `activeSessionUid`
set to `null` when it only mattered on the top level.
Now it's an object mapping term-group `uid` to `sessionUid` instead.
* split panes: make sure closing the last split pane exits the app
* split panes: fix a crash after closing specific panes
Sometimes the terminal would crash when a specific
split pane was closed, because the `activeSessions`
mapping wasn't updated correctly.
* split panes: fix a bug that caused initial session sizing to be wrong
* fix all our focus / blur issues in one fell swoop :O (famous last words)
* get rid of react warning
* hterm: make sure not to lose focus when VT listens on clicks
* term: restore onactive callback
* add missing `return` to override (just in case)
* split pane: new split pane implementation
* goodbye react-split-pane
* added term group resizing action and reducer
* terms: supply border color so that we can use it for splits
* term-group: add resizing hook
* term-groups: add resizing constant
* remove split pane css side-effect
* split panes: pass existing hterm instances to Term
* split panes: add keybindings for split pane cycling
* split panes: remove unused action
* split panes: remove unused styling
* split-pane: remove `console.log`
* split-pane: remove `console.log`
* split panes: rebalance sizes on insert/removal
* split panes: pass existing hterm instances to Term
* split panes: add keybindings for split pane cycling
* split panes: remove unused action
* split panes: remove unused styling
* split panes: rebalance sizes on insert/removal
* split panes: set a minimum size for resizing
* split-pane: fix vertical splits
* css :|
* package: bump electron
* split panes: attach onFocus listener to webviews
* 1.4.1 and 1.4.2 are broken. they have the following regression:
- open google.com on the main window
- open a new tab
- come back to previous tab. webview is gone :|
* split panes: handle PTY exits
* split panes: add linux friendly keybindings