YuviPanda
6dcf7267a5
Add doc comment for scroll event
2016-11-11 16:28:25 -08:00
YuviPanda
5712365cac
Add docstring for the open event
2016-11-11 16:27:10 -08:00
YuviPanda
1fc5a9aada
Add docstring for the title event
2016-11-11 16:27:01 -08:00
hiro-su
547db92693
Fix the right click paste in IE11
2016-11-08 14:56:57 +09:00
hiro-su
5808de648b
Fixed copy event in IE11
2016-11-05 23:55:34 +09:00
Paris Kasidiaris
9ab0455b05
Merge pull request #342 from sourcelair/issue-#310-cross-browser-right-click
...
Make right-click work on all browsers
2016-11-04 20:40:53 +00:00
Paris Kasidiaris
55ab36662a
Merge pull request #336 from sourcelair/issue-#216-no-auto-scroll-on-output
...
Stop auto scrolling to bottom on output
2016-11-04 19:55:07 +00:00
Paris Kasidiaris
bc70b3b37d
Fix tests
2016-11-04 19:36:30 +02:00
Paris Kasidiaris
d426c99866
Move all browser/platform detecting in utils/Browser.js
2016-11-04 18:41:00 +02:00
Paris Kasidiaris
356377975b
Fix right-click for Firefox and IE
...
Fix #310
2016-11-04 18:33:04 +02:00
Paris Kasidiaris
0de3d839e6
Improve experience and add test
...
- Scroll to bottom on keydown (when scrolled up)
- Add test to ensure above behavior
2016-11-04 12:29:17 +00:00
Daniel Imms
56ecc77dfc
Refactor TS build and fix testing
...
This change is largely just moving files with minor tweaks to them to fix,
the rest of the commit is build process changes:
- The addons/ and test/ dirs have been moved to src/
- The build directory has been removed
- TypeScript builds are output in out/, this is where tests are run
- The demo now relies on the dist/ build which is performed as part of ./bin/build
- Addons are now shipped under the ./build directory
2016-10-31 21:22:21 -07:00
Mikko Karvonen
5e68acfc76
Quick fix to prevent terminal scrolling when user is looking into scrollback.
2016-10-25 13:54:57 +03:00
Paris Kasidiaris
e8e7870be2
Remove geometry option from terminal consttructor
2016-10-23 17:55:37 +03:00
Paris Kasidiaris
a9417c6878
Fix term.geometry and document it in constructor options
...
Set `term.geometry` on terminal creation and on resize
2016-10-23 14:22:00 +00:00
Daniel Imms
8a124d0b35
Merge pull request #308 from Tyriar/294_scroll
...
Implement scrollPages, scrollToTop, scrollToBottom and add scroll tests
2016-10-10 08:33:09 -07:00
Daniel Imms
0ad02a4afa
Add note that negative scrolls up on scrollPages
2016-10-10 08:25:01 -07:00
Daniel Imms
9389f899d7
Merge pull request #309 from Tyriar/fix_indentation
...
Fix jsdoc indentation
2016-10-10 08:20:56 -07:00
Daniel Imms
32e878db81
Fix jsdoc indentation
2016-10-09 13:23:22 -07:00
Daniel Imms
0bf7bf56a5
Add jsdoc to scrollTo functions
2016-10-09 13:20:33 -07:00
Daniel Imms
e5d130b698
Add scrollToBottom
2016-10-09 13:19:11 -07:00
Daniel Imms
fe0d878b23
Implement scrollPages
2016-10-09 12:51:58 -07:00
Paris Kasidiaris
763f148fa1
Remove __dirname usage from loadAddon
2016-10-09 13:17:17 +03:00
Paris Kasidiaris
9115846017
Merge pull request #293 from sourcelair/issue-#202-fix-paste
...
Allow right-click paste (again)
2016-10-01 10:39:46 +03:00
Paris Kasidiaris
a7acee726d
Update copyright text in all files
...
sourceLair Limited → SourceLair Private Company
2016-09-30 13:52:55 +03:00
Paris Kasidiaris
42a1e4ef9b
Move clipboard into its own module
2016-09-29 07:51:07 +00:00
Paris Kasidiaris
dff867b8a7
Fix right-click paste
...
Fix #202
2016-09-29 10:50:21 +03:00
Daniel Imms
8bf8147028
Merge pull request #289 from Tyriar/151_allow_wheel_in_application_mode
...
Allow wheel events in application mode
2016-09-25 04:44:53 -07:00
Daniel Imms
ccf6d8f87d
Merge pull request #287 from Tyriar/286_fix_scroll_in_app_mode
...
Sync scroll bar instead of disabling on enter app mode
2016-09-25 04:44:44 -07:00
Daniel Imms
37c07eaaf9
Allow wheel events in application mode
...
This change allows wheel events in application mode which fixes mouse wheel
scrolling in oh-my-zsh and powershell for Linux (among others). Along with #287
a functional scroll bar will also be usable in those shells.
Fixes #151
2016-09-25 02:42:46 -07:00
Daniel Imms
c8b194931f
Sync scroll bar after reset
...
Fixes #278
2016-09-25 01:56:03 -07:00
Daniel Imms
c7a4881552
Sync scroll bar instead of disabling on enter app mode
...
Fixes #286
2016-09-25 01:50:49 -07:00
Paris Kasidiaris
53e8ac9b0c
Stricter check for option existence
2016-09-21 19:09:55 +03:00
Paris Kasidiaris
4b459fe0fd
Implement term.getOption
2016-09-21 13:56:03 +03:00
Daniel Imms
be4c8341ba
Merge pull request #275 from Tyriar/move_comments_inside_case
...
Move key handler comments inside case blocks
2016-09-18 13:49:52 -07:00
Daniel Imms
a33bc027f1
Merge pull request #274 from Tyriar/205_cancel_shift_pg_up_down_event
...
Cancel keydown event on shift+page up/down
2016-09-18 13:49:38 -07:00
Daniel Imms
26fc53990b
Fix clear function when buffer is <= rows
2016-09-17 04:07:36 -07:00
Daniel Imms
852dac4d62
Don't clear prompt on clear if it already is
2016-09-17 03:59:42 -07:00
Daniel Imms
76719413f9
Expose API to clear the terminal
...
Fixes #173
2016-09-17 02:39:22 -07:00
Daniel Imms
fca673d653
Move key handler comments inside case blocks
...
Improves readability
2016-09-17 01:11:43 -07:00
Daniel Imms
446c3958df
Cancel keydown even on shift+page up/down
...
Fixes #205
2016-09-17 01:09:08 -07:00
Daniel Imms
59e72b8b07
Merge pull request #272 from Tyriar/271_setOption
...
Add setOption API
2016-09-16 02:17:28 -07:00
Daniel Imms
15e56bd809
Add @param to setOption
2016-09-16 02:03:31 -07:00
Daniel Imms
ab5cc0ad05
Add setOption API
...
Fixes #271
2016-09-16 01:46:02 -07:00
Daniel Imms
4e1bbee67e
Fix focus on mouseup when mousedown was in another element
...
Fixes #267
2016-09-15 13:50:39 -07:00
Paris Kasidiaris
db76868c26
Fix indentation of src/xterm.js
2016-09-04 16:47:21 +03:00
Paris Kasidiaris
b4c7989566
Merge pull request #252 from ayapi/modifier-keys
...
add modifier+delete, modifier+F1-F12 keys
2016-09-04 16:23:29 +03:00
Daniel Imms
b56ad5e8fe
Merge pull request #243 from Tyriar/242_enable_scroll_on_soft_reset
...
Disable application mode in viewport on soft reset
2016-08-31 10:40:54 -07:00
Daniel Imms
6a04614549
Merge remote-tracking branch 'upstream/master' into 254_compositionhelper_module
2016-08-29 16:50:35 -07:00
Daniel Imms
89f981836f
Merge pull request #255 from Tyriar/253_viewport_module
...
Pull Viewport into a module
2016-08-29 16:49:03 -07:00
Daniel Imms
749ed6372a
Improve copyright line
2016-08-29 16:21:00 -07:00
Daniel Imms
7ff03bb475
Pull Viewport into a module
...
Fixes #253
2016-08-29 16:17:59 -07:00
Daniel Imms
28c3a2026c
Pull CompositionHelper into a module
...
Fixes #254
2016-08-29 16:15:28 -07:00
Paris Kasidiaris
ed1a31d1cf
Make src/xterm.js ES2015 and export EventEmitter into its own file
...
Fix #158
2016-08-29 19:51:40 +00:00
ayapi
7f7156bafa
add modifier+F1-F12 keys
2016-08-27 01:13:01 +09:00
ayapi
62ce64f97d
add modifier+delete keys
2016-08-27 01:03:35 +09:00
Daniel Imms
fc22fc39e2
Disable application mode in viewport on soft reset
...
Fixes #242
2016-08-23 09:11:02 -07:00
Paris Kasidiaris
8324b43cc2
Fix Alt + Arrow movement
...
Fix #239
2016-08-22 17:17:58 +03:00
Daniel Imms
588d3b12e0
Disable onScroll event during application mode
...
Fixes #235
2016-08-19 12:52:13 -07:00
Paris Kasidiaris
6e8e78db57
Merge pull request #230 from ayapi/refresh-viewport-height
...
Refresh the height of the viewport when the line-height changed
2016-08-18 20:35:39 +03:00
ayapi
dcc991bd5c
refresh the height of the viewport when the line-height changed
2016-08-18 19:37:16 +09:00
Daniel Imms
04cb9f33ff
Merge pull request #226 from Tyriar/208_fix_ime_popup_pos
...
Reposition textview after composition view
2016-08-17 08:50:41 -07:00
Anton Skshidlevsky
dc6aab88b0
Fix incorrect mouse position
...
Incorrect mouse position in Midnight Commander
2016-08-17 10:38:12 +03:00
ayapi
c2aa0d75ec
restore customKeydownHandler on reset(RIS)
2016-08-13 22:44:56 +09:00
Daniel Imms
92605a9734
Reposition textview after composition view
...
Call the function again via setTimeout to allow changes after composition
events. This prevents the IME windows jumping sometimes on thesecond key
press.
Fixes #208
2016-08-12 10:21:41 -07:00
Daniel Imms
12923a6649
Sync scroll bar height if the viewport height changes
2016-08-08 14:41:39 -07:00
Daniel Imms
7048f6edf7
Add some tests, fix app keypad mode bug
2016-08-04 18:34:04 -07:00
Daniel Imms
0a34885fbc
Fix line-height after rowContainer moved out of viewport
2016-08-03 18:27:43 -07:00
Daniel Imms
61201525a8
Remaining jsdoc
2016-08-03 18:27:19 -07:00
Daniel Imms
1b886a4420
Disable the scroll bar when in application keypad mode
2016-08-03 18:12:44 -07:00
Daniel Imms
6f70984ab6
Drop support for old mouse wheel APIs
...
All browsers have supported the WheelEvent (onwheel) for sometime now, since
Firefox does not support onmousewheel which is also non-standard but works with
the standard interface, it makes sense to drop support now.
2016-08-03 13:41:55 -07:00
Daniel Imms
38fa2d78da
Support DOMMouseScroll event (Firefox)
2016-08-03 13:00:07 -07:00
Daniel Imms
fe905bace5
Prevent the page from scrolling when the terminal scrolls
2016-08-03 12:49:12 -07:00
Daniel Imms
e7e1434293
Clean up, refresh sizes when font-size changes
2016-08-03 12:47:36 -07:00
Daniel Imms
363c647a5f
Sync scroll bar on more sensible events
2016-08-03 11:27:16 -07:00
Daniel Imms
aac60eb029
Add support for WheelEvent.deltaMode
2016-08-03 10:16:08 -07:00
Daniel Imms
06ca03ae9c
Get it working
2016-08-02 18:36:24 -07:00
Daniel Imms
ff927b8e79
Implement basic scroll bar
2016-08-02 16:59:50 -07:00
Daniel Imms
670b0d58c7
Add base viewport, set line height
...
Fixes #149
2016-08-02 12:42:13 -07:00
Daniel Imms
d62bd5f748
Get rid of rogue whitespace
2016-07-28 11:15:20 -07:00
Daniel Imms
e6fd1381ce
Hide textarea off-screen when not composing
...
Fixes #209
2016-07-28 11:13:24 -07:00
Daniel Imms
495b2d7fbb
Merge remote-tracking branch 'upstream/master' into 118_support_custom_keydown_handler
2016-07-22 05:12:52 -07:00
Daniel Imms
892db98c96
Correct blur/focus delegation
...
Focus and blur events on the Terminal object are delegated to the textarea
which handles everything.
2016-07-22 04:14:05 -07:00
Paris Kasidiaris
10fbf0dccc
Merge pull request #175 from Tyriar/124_add_textarea_back
...
Add textarea back and support IMEs
2016-07-22 11:50:23 +03:00
Daniel Imms
4595a18197
Tidy up blur/focus handlers
2016-07-21 10:51:43 -07:00
Daniel Imms
577a3d81e5
Use explicit boolean comparison
2016-07-21 10:32:20 -07:00
Jörg Breitbart
ec7130b46f
fixing arrow key sequences
2016-07-21 12:39:36 +02:00
Daniel Imms
0010a5a109
Explicitly return from keydown
2016-07-15 16:33:30 -07:00
Daniel Imms
9cb5b005bb
Add tests
2016-07-15 16:31:57 -07:00
Daniel Imms
06a3aa6cf8
Merge remote-tracking branch 'upstream/master' into 118_support_custom_keydown_handler
2016-07-15 16:21:06 -07:00
Daniel Imms
d4e9d34d2d
Allow custom keydown handler to be attached
...
Fixes #118
2016-07-15 16:16:37 -07:00
Daniel Imms
fedc1fd325
Fix keydown conditional
2016-07-15 10:17:29 -07:00
Daniel Imms
11d5f51e67
Merge remote-tracking branch 'upstream/master' into 124_add_textarea_back
2016-07-15 10:13:56 -07:00
Daniel Imms
534a9e7f5a
Big clean up
...
Move keydown event to CompositionHelper
Move call in refresh to be handled with an event
2016-07-13 21:50:00 -07:00
Daniel Imms
89d29bbc10
Fix non-composition char input after composition char + test
2016-07-13 21:02:43 -07:00
Daniel Imms
ac8db6e8ec
jsdoc handleAnyTextareaChanges
2016-07-13 20:52:55 -07:00
Daniel Imms
0a7c1bfd98
Position the textarea below the cursor during a composition
...
This will position any IME helper in the correct position
2016-07-13 20:46:43 -07:00
Daniel Imms
38d08873bc
Don't finalize composition on modifier key presses
2016-07-13 20:34:43 -07:00
Daniel Imms
8074d754d3
Only position composition view if a cursor is visible
2016-07-13 20:12:49 -07:00
Daniel Imms
e1c1b07a0b
Add test cases for Korean
2016-07-13 08:37:24 -07:00
Paris
42ec3b492a
Clarify isThirdLevelShift
2016-07-13 17:53:33 +03:00
Daniel Imms
c18794f202
Merge remote-tracking branch 'upstream/master' into 124_add_textarea_back
2016-07-13 07:14:14 -07:00
Paris
0862fd1f59
Fix thirdLevelKey clause
2016-07-13 17:10:45 +03:00
Paris
3e8bb98197
Fix #169
2016-07-13 16:35:57 +03:00
Paris
11a7cd6983
Fix all leading whitespaces (eliminate tabs)
2016-07-13 13:24:53 +03:00
Paris
7d904e455d
Fix leading whitespaces (eliminate tabs)
2016-07-13 13:22:51 +03:00
Paris
c3cf6a22e9
Document all public methods
2016-07-13 13:14:02 +03:00
Paris
12a150a438
Document more public methods and transform comments to JSDoc compatible
2016-07-13 13:03:40 +03:00
Daniel Imms
8b46e84263
Use correct .terminal-cursor for composition view
2016-07-12 21:42:10 -07:00
Daniel Imms
8faea59e31
Handle non-composition input when IME is active
2016-07-12 20:51:55 -07:00
Daniel Imms
cab79c473f
jsdoc and tidy up
2016-07-12 20:26:18 -07:00
Daniel Imms
c656ed04b0
Use handler not write, fix other edge cases
2016-07-12 20:19:26 -07:00
Daniel Imms
29000fb79e
Refactor into CompositionHelper object
2016-07-12 19:14:56 -07:00
Daniel Imms
26af6ffd4d
Get IMEs working
2016-07-12 18:48:08 -07:00
Daniel Imms
7d8e28a7dd
Merge remote-tracking branch 'upstream/master' into 124_add_textarea_back
2016-07-12 17:02:11 -07:00
Daniel Imms
a52b7e7a4e
Add starting point for IME support
2016-07-12 16:50:07 -07:00
Daniel Imms
aaedcfc700
Support focus class on the .xterm element
2016-07-12 16:18:05 -07:00
Daniel Imms
fc7b22dc48
Manually revert textarea changes
2016-07-12 16:03:31 -07:00
Paris
f3cf646bbf
Better document scrollDisp
2016-07-06 12:37:45 +03:00
Paris
a39b309b74
Remove most public directives
2016-07-06 12:36:11 +03:00
Paris
1aeb562066
progress
2016-07-06 09:32:40 +00:00
Paris
107d1a1496
First chunk of documentation
2016-07-06 09:32:40 +00:00
Paris Kasidiaris
39edbfb655
Merge pull request #163 from jerch/fix_147_162
...
fixing #147 and #162
2016-07-06 12:29:01 +03:00
Jörg Breitbart
4afa08da8d
fixing #147 and #162
2016-07-05 23:54:15 +02:00
Paris Kasidiaris
30251e5d7c
Merge pull request #160 from Tyriar/159_fix_nbsp_resize
...
Have ' ' chars get inserted correctly after a resize
2016-07-05 13:53:34 +03:00
Paris Kasidiaris
81e231ea20
Merge pull request #155 from Tyriar/154_fix_resize_at_top_exception
...
Fix exception when increasing size when viewport is at top of buffer
2016-07-05 12:56:45 +03:00
Daniel Imms
838c11b69c
Have ' ' chars get inserted correctly after a resize
...
Since the character spec didn't contain a character width it was being skipped
during refresh.
Fixes #159
2016-07-04 13:17:08 -07:00
Daniel Imms
05041722f1
Correct if condition
2016-07-04 12:15:47 -07:00
Daniel Imms
87c9370e8c
Fix exception when increasing size when viewport is at top of buffer
...
Fixes #154
2016-06-30 02:05:06 -07:00
TDaglis
0b018fd4e9
Fix Ctrl+Shift+V pasting
2016-06-30 10:58:00 +03:00
Benjamin Fischer
59b79e9b04
Fix MouseEvent cloning
...
Cloneing MouseEvent instances via __proto__ (lline 1099) caused the cloned object to be broken and throw "TypeError: Illegal invocation" during property access ("ev.shiftKey" line 1020).
2016-06-27 13:27:19 +02:00
Jörg Breitbart
c3bc59b5e1
adding unicode test cases
2016-06-26 12:50:06 +02:00
Jörg Breitbart
e3126ba3f8
cleanup
2016-06-25 10:12:21 +02:00
Jörg Breitbart
f951abb7a9
wcwidth only for printables
2016-06-24 16:25:00 +02:00
Jörg Breitbart
874ba72f4e
wcwidth calculation
2016-06-24 14:16:12 +02:00
Paris
3217a4bee4
Fix cumbersome pasting with Cmd + V
...
For some reason, setting the element's contentEditable value to true within a keyboard event, while the element has focus, did not allow pasting with clipboard, unless the element gets clicked explicitly.
2016-06-19 06:12:25 +03:00
Paris
af7588ef16
On big refreshes remove term.rowContainer instead of term.element from DOM
...
Fix #120
2016-06-16 11:47:05 +03:00
Paris
a6e85ad5f5
Progress with #120
2016-06-16 11:41:41 +03:00
Paris Kasidiaris
d5e83902a5
Merge pull request #133 from Tyriar/132_fix_constant_focus
...
Only refresh when asked
2016-06-15 12:53:31 +03:00
Daniel Imms
0d803ac895
Use CSS animations
2016-06-14 10:52:49 -07:00
Daniel Imms
253babff62
Merge remote-tracking branch 'upstream/master' into 119_fix_cursor_blink
2016-06-14 10:36:56 -07:00
Daniel Imms
fac964bcf5
Only refresh when asked
...
Fixes #132
2016-06-14 10:33:24 -07:00
Paris Kasidiaris
02d809c194
Merge pull request #117 from Tyriar/86_protect_max_refresh
...
Bound refresh max rows to this.rows not this.lines
2016-06-14 11:11:04 +03:00
Paris Kasidiaris
e37a9b62b7
Merge pull request #128 from Tyriar/127_debounce_refresh
...
Allow refresh to execute 30 times a second maximum
2016-06-14 10:49:53 +03:00
Daniel Imms
af29effbf3
Allow refresh to execute 30 times a second maximum
...
For commands that pass a significant amount of output to the write function,
this prevents the terminal maxing out the CPU and making the UI unresponsive.
While commands can still run beyond what they do on the terminal, it is far
better with a debounce in place as every single terminal manipulation does not
need to be constructed in the DOM.
A side-effect of this is that it makes ^C to interrupt a process seem more
responsive.
Fixes #127
Fixes #126
2016-06-13 12:40:56 -07:00
Paris
57300f5159
Implement addon loader (CommonJS + RequireJS)
...
Closes #96
2016-06-13 19:07:29 +03:00
Daniel Imms
fd5be55d81
Add some jsdoc for important functions
...
Part of #13
2016-06-10 20:05:26 -07:00
Daniel Imms
cb4728f8f5
Tidy up code
2016-06-10 18:05:24 -07:00
Daniel Imms
4a71a41380
Fix cursor blinking when enabled
...
Fixes #119
2016-06-10 18:05:13 -07:00
Daniel Imms
edf897182e
Bound refresh max rows to this.rows not this.lines
...
this.row is the size of rows in the viewport, this.lines is the buffer. It's
only possible to refresh `0` to `this.rows - 1`.
Fixes #86
2016-06-10 13:08:43 -07:00