Commit graph

47 commits

Author SHA1 Message Date
Leo Lamprecht
4ce99863c4 Fixed merge conflicts 2018-04-16 07:17:17 -07:00
Leo Lamprecht
0ee4fb6104 Updated dependencies to the latest version (#2146)
* 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
2017-08-31 15:20:39 +02:00
Andrej Mihaliak
5ec705000f Set line height same as font size (#1841)
fixes cut font on last line
2017-06-16 09:58:49 +02:00
Philippe Potvin
0d63360011 wipe contents before \k (#1811) 2017-05-26 18:41:43 +02:00
Guillermo Rauch
c491f7d2e1 re-implement clear, make it not buggy, fix CMD+K (#1796) 2017-05-07 14:57:56 -07:00
Matheus Fernandes
237595cec8
Revert "term: specify line-height in px"
This reverts commit b7362d18aa.

Reasoning: https://github.com/zeit/hyper/issues/1630
2017-03-10 14:34:45 -03:00
Guillermo Rauch
dc3b90028b Add perf optimizations (#1541)
* 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
2017-02-23 08:10:05 -03:00
Guillermo Rauch
21bd2a7bf1 Merge branch 'master' of github.com:zeit/hyper 2017-02-17 21:34:52 -03:00
Guillermo Rauch
b7362d18aa term: specify line-height in px 2017-02-17 21:34:28 -03:00
Henrik
0ee48c9841 add hterm cursor blink support (#1547)
* add hterm cursor blink support

* update website with cursorblink doc
2017-02-17 21:11:23 -03:00
Henrik
600f815dff set select color based on caret color (#1532) 2017-02-16 17:56:20 -03:00
Thibaut Tiberghien
172d487055 Fix display of unicode characters (#1376)
* Fix display of unicode characters

* Fix unicode display issues and CJK cursor
2017-02-16 00:59:11 -03:00
Guillermo Rauch
6cda6cad96 Revert "Define widths for BEAM and UNDERLINE cursors (#1389)"
This reverts commit 4a085895e4.
2017-02-15 18:49:49 -03:00
Liudas Dzisevicius
270fe5bef9 [Windows] Add right click copy/paste (#1247)
* Add right click copy/paste

* Add quick edit config option
2017-02-15 17:22:09 -03:00
Stefan Ivic
ed282560fb [UI] Make scrollbar look the same on all platforms (#1442)
* [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.
2017-01-27 23:16:41 -02:00
Louis-André Labadie
4a085895e4 Define widths for BEAM and UNDERLINE cursors (#1389) 2017-01-11 15:53:40 -08:00
Guillermo Rauch
74df6920e9 fix decoding race condition with new terminal sessions (#1366) 2017-01-09 16:05:44 -02:00
Gabriel Peña
ed990d473b Scrollbar Fix on Mac. Fixes issue #100 (#1354)
* Fix Scrollbar appearance on webkit mac

* fix linting issues
2017-01-07 17:50:00 -08:00
Philippe Potvin
c7f195ba01 Fix ctrl+c to close WebView 🍾 (#1287)
* rm hyperCaretFocus => prevent callstask

* keep caret component
2016-12-21 07:19:41 -08:00
Vitaly Domnikov
25fcf3a6a4 Update terminal clear method (#1239) 2016-12-15 17:48:47 -08:00
Vitaly Domnikov
38909e3f16 fix COMMAND-K (#1235) 2016-12-15 13:45:48 -08:00
Vitaly Domnikov
d6316dd209 🚀 Performance tuning & bugfix (#1111)
* Perfomance tuning

* cleanup matchesContainer method

* fixes #1131
2016-12-14 11:18:15 -08:00
Vitaly Domnikov
4264493147 Increase x-row line height (#1107) 2016-12-09 20:35:29 -05:00
Vitaly Domnikov
59a3583028 unicode magic (#1098) 2016-12-08 18:44:25 -02:00
Weslley Araujo
47f01f92e4 Add an active class on current session panel (#905)
* 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`
2016-11-19 18:05:48 -02:00
Stefan Ivic
b988befea4 [Win] Improve design of the scrollbars (#982)
* [Win] Improve the design of the scrollbars

* Fix code style

* Apply `borderColor` as the `backgroundColor` for the scroll bars
2016-11-19 15:51:01 -02:00
Matheus Fernandes
27a20e0cfc Add support for composed chars and fix issues with "foreign" keyboard layouts (#1006)
* 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
2016-11-16 10:44:04 -08:00
Igor Stroganov
48dd4b5c1f Fix inverted text display. Fix #883 (#968)
* Fix inverted text display. Fix #883

* Add a comment explaining setBackgroundColor override
2016-11-10 08:11:51 +08:00
Leo Lamprecht
630f0f4504
Comply to XO's no-warning-comments rule 2016-10-25 15:04:37 +02:00
David Gómez
8f28573fc0 Prefer default export to make XO happy (#931)
* Comply with prefer-default-export rule for findBySession function

* Remove XO's prefer-default-export rule

* Comply with prefer-default-export rule for init function

* Comply with prefer-default-export rule for getRootGroups function

* Comply with prefer-default-export rule for INIT constant

* Comply with prefer-default-export rule for isExecutable function

* Fix default export for constants

* Comply with prefer-default-export rule for last function

* Comply with prefer-default-export rule for getColorList function
2016-10-25 14:53:15 +02:00
Andrea Parodi
97432df7a4 Improve tabs title (#892)
* Set tab title when asked by the contained shell process via ANSI code

* Commented out process polling code

* Removed unused module and constant

* Remove getTitle method

* Removed props binding

* Removed polling clearTimeout

* Removed session focus & blur

* Remove listening for session `title` event

* Removed SESSION_SET_PROCESS_TITLE action

* Removed remainig blur
2016-10-22 13:05:32 -07:00
chabou
3f352ec137 Prevent Hterm to share same preferences between instances (#906)
* Add a random profileId to hterm instance to differentiate PreferenceManager used internally

* Use getPrefs() method instead of accessing prefs_ private property directly
2016-10-19 15:55:06 -07:00
Martin Ek
7a08b1dc3e Fix xo 0.17 errors and use root xo config for app (#859)
* Use parent xo config in app/

* lint: Fix xo 0.17 errors

* app: add missing semver dependency
2016-10-12 20:35:44 -05:00
Cole Peters
ed66433323 Use white background on webviews:
Most web clients apply a default white background to web pages, so some
websites omit explicitly setting their page backgrounds to white. The
default black background on the webview component was making some sites
unreadable. This commit just changes it from black to white.
2016-10-11 15:39:40 -04:00
Marshall Bowers
0ec2823a23 No string refs (#766)
* Use callback ref instead of string ref

* Enable react/no-string-refs rule for xo

* Replace additional string refs

* Fix broken merge
2016-10-07 17:07:39 +02:00
Guillermo Rauch
335562880c remove raf to print the chars to the screen as soon as possible 2016-10-04 21:18:46 -07:00
Martin Ek
a7595c1a45 Split Panes (#693)
* 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
2016-10-03 19:00:50 -07:00
Aurélien Bottazini
a561f4650b Add Setting for modifier Keys cmdIsMeta and altIsMeta (#686)
* Adds Setting for modifier Keys cmdIsMeta and altIsMeta

* ModifierKeys setting for redux state

* removing from default config modifierKeys
2016-09-30 14:30:11 +02:00
Matheus Fernandes
1866104d03 [WIP] Use XO instead of Standard (#723)
* Bump `eslint-plugin-react`

* Add `eslint-config-xo-react`

* Add XO

* Remove eslint-related dependencies, add XO config and use XO as the linter

* Code style: Standard => XO 

* Use xo property to ignore files

* Fix remaining errors
2016-09-21 16:27:11 +02:00
Guillermo Rauch
8a01f8a48b Add window bgcolor updates (#524)
* transparent + reactive background colors

* refactor header to not set its own background color

* make terms not set background color

* dramatically improve tab borders

* remove background color from electron windows

* Revert "remove background color from electron windows"

This reverts commit ca4de3c5dc28095f1a598f7ac79d4dff4b66ccd5.

* put alpha first for electron

* remove initial bg color setting, but maintain reactive one

* fix
2016-09-19 08:47:33 +02:00
ppot
3813d27d5f Fix ScrollPort SelectAll 2016-08-20 17:25:04 -04:00
James
125fdd98e5 Fix #527: validate cursorColor value and apply default if it fails (#590)
refactor `validateColor`: remove unnecessary variable declaration
2016-08-18 10:33:09 +02:00
Philippe Potvin
fd351a5b93 Provide clear selection of text in terminal view (#608)
* Permit clearSelection on text enter and mouse selection. Fix #591

* Add config for copyOnSelect

* Update with descriptive comment
2016-08-13 23:03:44 +02:00
James Hall
9b42c5ff52 Fix mapXDispatch and allow plugin to access onWheel (credit: lkzhao) (#578)
* Fix mapXDispatch && allow plugin to access onWheel see https://github.com/zeit/hyperterm/pull/563
2016-08-06 10:17:09 +01:00
Albin Ekblom
f954a1e7bc Add config for bell (#468)
* Add config for bell

* Use Set instead
2016-08-05 23:30:40 +01:00
Albin Ekblom
220b29c6c7 Correct css Blob type (#508) 2016-07-29 22:30:36 +02:00
Guillermo Rauch
aaed99abac Reorg (#386)
* Step 1: move electorn into `app/`.

This is to comply with the suggested directory format of
`electron-builder`: https://github.com/electron-userland/electron-builder#two-packagejson-structure

* Step 2: add build directory with icon files for mac / windows

* Step 3: move all development (web) assets into main directory

* Step 4: add `build` namespace to dev `package.json`

* Step 5: move all dev dependencies into dev file and get rid of
old electron packagers in favor of `eletorn-builder`

* Step 6: target build inside `app/` as everything else is excluded at build time

* Step 7: remove old stuff!

* Step 8: update README

* turn off asar for `child_pty`
2016-07-24 10:59:21 -07:00
Renamed from app/lib/components/term.js (Browse further)