Boris Faure
1ce26c51f7
termiointernals: fix regression on selecting word at start of line
...
In case of double-click.
2019-03-21 22:18:07 +01:00
Boris Faure
3378f033f5
termio: remove leak. CID1399747
2019-03-20 22:31:58 +01:00
Boris Faure
756a45e654
termio: skip pasted chars < ' ' but keep '\n'
...
See https://www.openwall.com/lists/oss-security/2018/03/05/2
2019-03-19 23:18:03 +01:00
Boris Faure
9785beaef0
termiointernals: fix possible NULL-dereference. CID1399748
2019-03-18 23:05:06 +01:00
Boris Faure
485d7a3edf
termio: fix leak. CID1399746 CID1399747
2019-03-18 23:02:36 +01:00
Boris Faure
8076e4673f
termiointernals: fix possible NULL-dereference CID1399745
2019-03-18 22:56:49 +01:00
Boris Faure
6c55ecf1a1
termptyesc: fix hangs spotted by afl-fuzz + tests
2019-03-18 22:34:21 +01:00
Boris Faure
674a87287d
termiointernals: fix reporting mouse move with no button pressed + tests
2019-03-05 21:20:50 +01:00
Boris Faure
93a25e6123
termiointernals: report alt on mouse move + tests
2019-03-04 23:39:57 +01:00
Boris Faure
61a56ae029
termiointernals: handle mouse wheel with alt + tests
2019-03-04 23:05:40 +01:00
Boris Faure
c9b5c52a5d
termptyesc: typo in comment
2019-03-03 22:49:11 +01:00
Boris Faure
8bc4c030c3
termiointernals: handle mouse wheel on normal mode after pos 94
2019-03-03 19:40:19 +01:00
Boris Faure
acee5d2d67
it's possible to use alt with mouse wheel
2019-03-03 19:26:45 +01:00
Boris Faure
bc45dba7c9
termiointernals: after x:94, no more reporting in normal mode
2019-03-03 19:25:56 +01:00
Boris Faure
69e8255d25
termiointernals: cleanup
2019-03-03 18:36:09 +01:00
Boris Faure
b9542183e6
termiointernals: handle meta & MOUSE_X10 in mouse_down
2019-03-03 18:35:27 +01:00
Boris Faure
36fcd2d2c4
tests: add tytest_termio_resize()
2019-03-03 18:22:18 +01:00
Boris Faure
490d388314
termptyesc: resize parameters were inverted
2019-03-03 15:55:01 +01:00
Boris Faure
72ff9cbe3c
termiointernals: mouse wheel is not reported in X10 mode
2019-03-03 15:47:37 +01:00
Boris Faure
5a98842d63
termiointernals: do not emit mouse wheel on mode X10
2019-03-03 13:20:03 +01:00
Boris Faure
72afb80d6e
win: use min_* as base step since the old formula may < 0
...
Closes T7699
2019-03-02 18:26:04 +01:00
Boris Faure
f0605c697d
private.h: helper for testing escape codes on terminology's binary
2019-03-01 13:28:01 +01:00
Boris Faure
0f45747925
termpty: fix _termpty_cell_is_empty()
...
was not working on cell = {}
2019-03-01 13:23:02 +01:00
Boris Faure
1c9c2a19ed
termptyesc: handle window manipulations that resizes the terminal
...
only for testing purpose
2019-02-27 23:46:04 +01:00
Boris Faure
4d89080d71
termiointernal: handle empty celles in selections.
...
Condition was wrong
2019-02-27 20:23:41 +01:00
Boris Faure
5300a89013
termiointernals: fix segfault
2019-02-25 22:51:03 +01:00
Boris Faure
1e5825832f
termiointernals: rewrite _sel_word_to() + update tests
2019-02-25 22:02:11 +01:00
Boris Faure
48496b2eb5
termpty: cell is empty if bg is invisible. Closes T7707
2019-02-24 17:06:31 +01:00
Boris Faure
52a0ba46e0
termiointernals: selection is based on relative y, not on-screen y
2019-02-23 17:56:25 +01:00
Boris Faure
eaaf63172d
tyfuzz: test terminal is only 24 lines
2019-02-23 17:52:42 +01:00
Boris Faure
bebb0872c3
termiointernals: remove empty selections
2019-02-23 13:34:31 +01:00
Boris Faure
2ca440ba93
tytest: use same offset as "real life"
...
makes it easy to write tests
2019-02-23 11:19:20 +01:00
Boris Faure
5fedd2c0a4
termiointernals: unset selection when codepoint is different
...
but do not make a difference between space and no codepoint
2019-02-23 11:12:14 +01:00
Boris Faure
510032df70
termiointernals: fix leak in termio_internal_get_selection()
2019-02-22 20:15:16 +01:00
Boris Faure
16637c3515
termptyext: fix eina_stringshare_del() on bad pointer
2019-02-21 18:43:11 +01:00
Boris Faure
e024618dba
termpty: compute exact line length in termpty_cellrow_get()
2019-02-21 18:42:28 +01:00
Boris Faure
4bc04c5421
termiointernals: be able to mock mouse wheel
2019-02-19 20:03:14 +01:00
Boris Faure
f93f1ef3ba
termiointernals: right-trim line selections
2019-02-18 22:04:37 +01:00
Boris Faure
b7305bfc59
tyfuzz: better mock termio_take_selection()
...
+ fix leak
+ make the code more readable to me
2019-02-18 20:57:38 +01:00
Boris Faure
376c0a962b
termptyext: add testing escape code to set/unset selection corners
2019-02-17 12:32:16 +01:00
Boris Faure
eb4a3f9920
termptyext: skip spurious \r + improve asserts + add doc
2019-02-14 22:16:33 +01:00
Boris Faure
7eaba7447c
termiointernals: set mouse position on mouse down/up
2019-02-14 22:11:35 +01:00
Boris Faure
8169dcca63
termiointernals: evas_pointer_canvas_xy_get() is expecting an evas
2019-02-14 20:35:29 +01:00
Boris Faure
23a76357f9
termptyext: remove spurious return in _handle_selection_is()
2019-02-13 23:21:53 +01:00
Boris Faure
b09a70f04d
termptyext: clean up modifiers parsing
2019-02-13 23:21:32 +01:00
Boris Faure
07cd8089e0
termiointernals: don't use ecore_job_add in tests
2019-02-11 22:46:39 +01:00
Boris Faure
73f461e281
tytest: add test_textgrid_cellrow_get()
...
to mock evas_object_textgrid_cellrow_get()
2019-02-11 22:44:16 +01:00
Boris Faure
904b3cf62e
termptyext: use real selection to test
...
And not just compare with the codepoint array that may not have \n and too
many spaces
2019-02-10 23:56:30 +01:00
Boris Faure
8533d8d042
termptyext: add escape codes to force internal rendering
2019-02-10 23:53:55 +01:00
Boris Faure
35587220c7
termiointernals: add termio_internal_get_selection()
2019-02-10 20:09:20 +01:00
Boris Faure
ac82934c83
termptyext: add testing escape codes about selections
2019-02-10 19:36:46 +01:00
Boris Faure
5e4f814104
termiointernals: fix selection invalidation + add doc
2019-02-10 19:00:43 +01:00
Boris Faure
43c6777e57
termiointernals: add termio_internal_render()
...
used to test selection invalidation later on
2019-02-09 23:48:15 +01:00
Boris Faure
e9ce3d02a3
tytest: add escape codes to simulate mouse interactions
2019-02-07 22:20:36 +01:00
Boris Faure
fd8120091d
tytest: add framework to add special escape codes for tests
2019-02-06 23:19:29 +01:00
Boris Faure
4e38d0d2c7
termio: simplify code by passing sd instead of obj
...
Stub function to get Termio from Evas_Object
2019-02-06 23:19:29 +01:00
Boris Faure
2f432dcd33
tyfuzz: stub functions from termio
2019-02-06 23:19:29 +01:00
Boris Faure
e6886bcaee
move some code to termiointernals to be able to test it
2019-02-06 23:19:29 +01:00
Boris Faure
b05e20333d
termio:_smart_update_queue() needs only sd
2019-02-06 23:19:29 +01:00
Boris Faure
4c8634686c
termio: unset selection in _smart_apply if codepoints have changed in sel
2019-02-06 23:19:29 +01:00
Boris Faure
988a9dad4d
termio: add functions to get selection as an array of codepoints
2019-02-06 23:19:29 +01:00
Boris Faure
5303f9eb28
termio: use ty_sb to deal with selections
2019-02-06 23:19:29 +01:00
Boris Faure
891168a9a7
termio/termptyops: remove termio_content_change()
...
It shall no longer be needed.
2019-02-06 23:19:29 +01:00
Boris Faure
3d82c70793
tests: get rid of that useless UTF8CC code
...
@glima: this should fix your issue
2019-02-06 22:35:12 +01:00
Boris Faure
09bd49ea34
termptyesc: better debug
2019-02-06 22:33:15 +01:00
Boris Faure
4eefb44ee1
termptyesc: handle DECSWBV + tests
2019-01-26 22:27:44 +01:00
Boris Faure
14e501c15a
we're in 2019
2019-01-23 21:26:54 +01:00
Boris Faure
2e34b8e962
add configuration on whether to activate links
...
- on email
- on file paths
- on URLs
- from escape codes (called hyper links in the code)
Closes T6339
2019-01-21 22:11:22 +01:00
Boris Faure
54565e32a6
options_keys: clean up a bit
...
options: no need for delay
2019-01-20 23:13:05 +01:00
Boris Faure
2ffbe38d43
termptyesc: support aliases for cursor Up/Left + tests
2019-01-20 20:09:32 +01:00
Boris Faure
7dccab5481
termptyesc: export VPA handler to its own function + tests
2019-01-20 18:44:08 +01:00
Boris Faure
bef8cb1373
termptyesc: add debug on CUD or VPR
2019-01-20 18:35:03 +01:00
Boris Faure
392c04bbe0
termptyesc: support Unset Tab Stop (only VTE so far) + tests
2019-01-20 12:06:19 +01:00
Boris Faure
96bbfd054b
termptyesc: export DA handler to its own function + tests
...
Also support DA3.
2019-01-19 23:50:31 +01:00
Boris Faure
b7e84963c7
reindent code
2019-01-19 23:07:07 +01:00
Boris Faure
3833252ad2
termptyesc: extract REP handler to its own function + tests
2019-01-19 23:02:51 +01:00
Boris Faure
a0738339dd
termptyesc: CHA and HPA are the same
2019-01-19 22:10:12 +01:00
Marcel Hollerbach
b37a3eefb6
terminology: move log dom registering
...
the log domain should be registered when there is a new window, not when
there is a new term. A windows can exist before a term can exist.
Further more, win_new function is using this log domain so it should be
inited.
2019-01-14 22:45:32 +00:00
Boris Faure
c1d030da0a
termptyesc: extract CBT handler to its own function + tests
2019-01-13 00:08:52 +01:00
Boris Faure
505772602e
termptyops: do not wrap to left margin when already past right margin
...
Fix ech.sh test that detected the issue
2019-01-12 16:14:14 +01:00
Boris Faure
89a6a9d652
termptyesc: extract ECH handler to its own function + test
...
Test is not fully working at the moment.
There seems to be an issue with appending text outside margins
2019-01-11 23:30:43 +01:00
Boris Faure
ff830fbc42
termptyesc: extract TBC to its own function + tests
2019-01-08 23:16:06 +01:00
Boris Faure
395404c243
termptyesc: handle CTC + tests
2019-01-08 22:55:48 +01:00
Boris Faure
24cc5eaf8d
termptyesc: Printer and Selective Erase are not supported
2019-01-07 23:39:34 +01:00
Boris Faure
5475920c56
termptyesc: add debug on sixel/regis graphics attributes
2019-01-07 23:31:31 +01:00
Boris Faure
a2656754bd
termptyesc: support DECST8C + tests
2019-01-07 23:13:52 +01:00
Boris Faure
19631a70f6
termptyesc: 'T' can also refer to Unset Title Modes (not handled)
2019-01-07 22:32:42 +01:00
Boris Faure
ca9616bad8
termptyesc: extract SD/SU to their own functions
...
SD 0 is used for "track mouse" (TODO).
2019-01-06 23:01:52 +01:00
Boris Faure
5b16b455ff
termptyesc: DL moves the cursor to left margin + tests
...
also remove some debug leftover
2019-01-06 22:30:09 +01:00
Boris Faure
822f959163
termpty: handle IL with left/right margins + tests
2019-01-05 19:25:37 +01:00
Boris Faure
571d2d03f1
Merge branch 'terminology-1.3'
2019-01-05 18:33:53 +01:00
Boris Faure
09d6660ae7
termio: fix invalid initial resize. Closes T7548
2019-01-05 18:28:43 +01:00
Boris Faure
8841e5259a
Merge branch 'terminology-1.3'
2019-01-04 23:37:48 +01:00
Boris Faure
007dfb60e3
termpty: reset circular_offset2 (for the 2nd buffer) to 0 (as it's cleared)
...
Closes T7543
2019-01-04 23:35:48 +01:00
Boris Faure
6952836a32
termio: allow 1 line or 1 column windows. Closes T7532
2019-01-04 23:34:08 +01:00
Boris Faure
a5d364bcbf
termptyops: ensure clearing cells do not increase link count
2019-01-03 22:46:07 +01:00
Boris Faure
99da684d81
config: s/;;/;/
2019-01-02 23:45:49 +01:00
Boris Faure
0ca634cd69
termptyesc: export EL handler to its own function + add tests
2019-01-02 23:32:38 +01:00
Boris Faure
06abd7e9bc
termptyesc: move ED handler to its own functions + add tests
2019-01-02 22:41:41 +01:00
Boris Faure
f7576fb01c
termptyesc: move CHT handler to its own function
2019-01-01 20:32:45 +01:00
Boris Faure
36682a1b4e
termptyesc: CHA has to take into account DECOM + tests
2019-01-01 20:19:17 +01:00
Boris Faure
a0db416469
termptyesc: cleanup
2019-01-01 20:13:09 +01:00
Boris Faure
eb84e538b1
termptyesc: move CUF/CUB handlers to their own functions
2019-01-01 18:53:46 +01:00
Boris Faure
bf853e8b91
termptyesc: move CUU/CUD handlers to their own functions
2019-01-01 18:53:01 +01:00
Boris Faure
59c547179d
termptyesc: support DECCRA + tests
2019-01-01 18:12:06 +01:00
Boris Faure
6661719829
termptyesc: extract ICH to its own function and add tests
2019-01-01 18:10:36 +01:00
Boris Faure
12cc6aaf42
termptyesc: support DECIC/DECDC + tests
2018-12-30 18:36:27 +01:00
Boris Faure
fee45b5492
termptyesc: DECCRARA/DECRARA when not in rectangle mode + tests
2018-12-29 22:13:58 +01:00
Boris Faure
288bea982d
termptyesc: handle DECRARA in its rectangular form + tests
2018-12-29 18:00:57 +01:00
Boris Faure
68787ad524
tests/termptyesc: handle DECSACE
...
Also regenerate tests since checksums changed due to new attribute
2018-12-29 17:21:07 +01:00
Boris Faure
63911989fc
termptyesc: handle deccara in its rectangular form + tests
2018-12-29 16:58:36 +01:00
Boris Faure
9cb340e29f
termio: inverse colors only after applying bold/faint (more precise)
2018-12-29 16:57:44 +01:00
Boris Faure
6e8faa30a7
termptyesc: refuse no value on decfra on the character to fill up + tests
2018-12-29 15:19:31 +01:00
Boris Faure
19a99dadff
termptyesc: support DECFI
...
Introduce different behaviour from xterm as I don't see why it behaves
like that when outside of left/right margin and on right border. Xterm
does not wrap.
2018-12-28 23:11:54 +01:00
Boris Faure
fd92428c57
termptyesc: add debug on DECCAPSLK and clean up other debug
2018-12-28 22:01:47 +01:00
Boris Faure
02a9c5325a
termptyesc: add debug on DECCANSM
2018-12-28 21:59:42 +01:00
Boris Faure
7d668d79d1
termptyesc: remove unused parameter
2018-12-28 21:56:29 +01:00
Boris Faure
090f6a64f2
termptyesc: support DECBI
2018-12-28 21:56:02 +01:00
Boris Faure
6f1e3ea077
termptyesc: always check return of _csi_truecolor_arg_get()
...
CID1398478
CID1398479
CID1398480
2018-12-28 19:04:43 +01:00
Boris Faure
a940556cff
termpty: correctly handle wrap (DECAWM)
2018-12-28 17:41:33 +01:00
Boris Faure
a95bbbe731
termptyesc: DECALN only reset margins and cursor position
2018-12-28 17:25:28 +01:00
Boris Faure
54c3e4790b
termptyesc: add debug on DECARSM
2018-12-27 22:14:44 +01:00
Boris Faure
edc469d16f
termptyesc: add debug on DECARM
2018-12-27 22:14:44 +01:00
Boris Faure
19e8bf13f9
termptyesc: add debug on DECANM
2018-12-27 22:14:44 +01:00
Boris Faure
81fb1959eb
termptyesc: add debug on DECAAM
2018-12-27 22:14:44 +01:00
Boris Faure
e23d78e102
termptyesc: cpl and margins + tests
2018-12-27 22:14:44 +01:00
Boris Faure
3c47cc36e0
termptyesc: CNL and margins + tests
2018-12-27 22:14:44 +01:00
Boris Faure
4b32aec0ed
termptyesc: DCH shall handle margins. space created follows SGR + test
2018-12-27 22:14:44 +01:00
Boris Faure
c162b07b16
col: assert in case of invalid values
2018-12-27 22:14:44 +01:00
Boris Faure
fb24dfabb1
termptyesc: add some debug
2018-12-27 22:14:44 +01:00
Boris Faure
5f715b9290
termpty: add debug on CHA + test
2018-12-27 22:14:44 +01:00
Boris Faure
9c2b3887d1
termptyesc: support DECSCLM but ignore it + test
2018-12-27 22:14:44 +01:00
Boris Faure
eab5ffb956
termptyesc: 98/108 are not valid color codes + test
2018-12-27 22:14:44 +01:00
Boris Faure
add8b71778
termptyesc: fix truecolors parsing + tests
2018-12-27 22:14:44 +01:00
Boris Faure
3cc3f3ee2a
add tytest.h and colors_256_get() to be able to test truecolor
2018-12-27 22:14:44 +01:00
Boris Faure
119a4d12af
termptyesc: handle CSI_ARG_ERROR in some SGR.
...
Closes T7475
2018-12-27 22:14:44 +01:00
Boris Faure
6931f96d0d
termptyesc: handle CSI_ARG_ERROR
2018-12-27 22:14:44 +01:00
Boris Faure
a4418b85f6
termpty: display escape sequence when can't decode it
2018-12-27 22:14:44 +01:00
Boris Faure
e6d13fceb5
termptyesc: support DSR-UDK + test
2018-12-27 22:14:44 +01:00
Boris Faure
d2958cd301
termpty: support DSR-PP (Printer Port) + test
2018-12-27 22:14:44 +01:00
Boris Faure
8f2e15478d
termptyesc: support DSR-OS + test
2018-12-27 22:14:44 +01:00
Boris Faure
aebbed39e6
termptyesc: add support DSR-DECCKSR + test
2018-12-27 22:14:44 +01:00
Boris Faure
f54bd2350f
termptyesc: support DSR-MSR (0 Macro Space) + test
2018-12-27 22:14:44 +01:00
Boris Faure
5cef3b68b6
tytest: add write buffer to checksum
2018-12-27 22:14:44 +01:00
Boris Faure
e0ed4b4ad9
termptyesc: handle DSR-KBD but hardcode keyboard + test
2018-12-27 22:14:44 +01:00
Boris Faure
9ed1b61f23
termptyesc: handle DSR-DIR (Data Integrity Report) + test
2018-12-27 22:14:44 +01:00
Boris Faure
feb7495fbb
termptyesc: DSR-CPR takes cursor restriction into account + test
2018-12-27 22:14:44 +01:00
Boris Faure
479d96e5dc
termptyesc: act like xterm, do not report title/icon-name
2018-12-27 22:14:44 +01:00
Boris Faure
e4d7cb93f2
termptyesc: act as xterm-337
2018-12-27 22:14:44 +01:00
Boris Faure
ce07e81180
tests: on cursor shapes and regen tests.results
2018-12-27 22:14:44 +01:00