Boris Faure
a46ca7ce34
options_themepv: remove unused macro
2020-11-03 23:13:32 +01:00
Boris Faure
b77a2c3c95
termio: add termio_character_size_get()
2020-11-03 23:06:47 +01:00
Boris Faure
c1e82b90b3
config: set xterm_256color as default
...
This is still configurable and is nowadays, widely accepted.
2020-10-29 21:13:12 +01:00
Boris Faure
0c25e408d6
termiointernals: add comment about using bright but not bold
2020-10-27 23:52:02 +01:00
Boris Faure
6ff8b36a23
colors: do not use bold/bright and faint/dim at the same time
...
In that case: use the bold font weight if available and the faint color
2020-10-27 23:52:02 +01:00
Boris Faure
4b15e30b68
colors: oops
2020-10-26 21:39:31 +01:00
Boris Faure
0ea7705195
options_themepv: add color scheme option
2020-10-20 22:35:02 +02:00
Boris Faure
1f6bfe3323
theme: use theme_file if provided
...
Fixed theme ui
2020-10-18 23:16:36 +02:00
Boris Faure
93da3f87b7
theme: have only one theme_apply function
...
No more one about theming an elm_layout, nor using only the default theme.
Also, be able to chose which color scheme to use
2020-10-18 22:35:27 +02:00
Boris Faure
458f9a6da6
theme: add theme_path_default_get()
2020-10-17 23:49:33 +02:00
Boris Faure
886bce509f
colors: make color_scheme_apply() public
2020-10-17 23:43:09 +02:00
Boris Faure
3fddb77208
win: constify background_set_shine()
2020-10-17 23:43:09 +02:00
Boris Faure
09cd15a1e0
theme: make config_theme_path_default_get() private
2020-10-17 23:43:09 +02:00
Boris Faure
2e266906f0
Merge branch 'terminology-1.8'
2020-10-17 17:05:53 +02:00
Boris Faure
28d94caad9
win: cleanup focus. Closes T8756
2020-10-17 17:03:56 +02:00
Boris Faure
d669fbcfa5
options_themepv: shorten magenta to see a bit more white
2020-10-15 22:48:49 +02:00
Boris Faure
898351be8f
colors: dup default_colorscheme
...
so that all elements from color_scheme_list() have to be freed
2020-10-11 23:35:11 +02:00
Boris Faure
b04510bae5
colors: avoid dereference after null check. CID1433233
2020-10-11 15:05:15 +02:00
Boris Faure
75bbf1e3e2
termptyesc: simplify code. CID1431130
2020-10-11 15:02:59 +02:00
Boris Faure
c99069947a
colors: add color_scheme_list()
2020-10-10 19:38:36 +02:00
Boris Faure
e90202923d
colors: use color scheme from file (only for Nord)
2020-10-06 18:50:16 +02:00
Boris Faure
485c4239ed
colors: remove debug line
2020-09-27 17:44:23 +02:00
Boris Faure
a1d4f5ea6d
colors: load it from files
2020-09-21 23:15:46 +02:00
Boris Faure
2243d8aac2
colors: add default colorscheme
2020-09-21 23:15:46 +02:00
Boris Faure
7e1a444e0f
main: add missing parenthese
2020-09-17 21:45:07 +02:00
Boris Faure
e3bc37ec37
options_behavior: improve translation
2020-09-16 23:41:50 +02:00
Boris Faure
b7bf2cb8f2
improve translation strings
...
mostly by remove extra dots
2020-09-15 21:46:22 +02:00
Boris Faure
1cf29feb2f
Merge branch 'terminology-1.8'
2020-09-12 17:44:57 +02:00
Boris Faure
a05db78239
termpty: make provided title as forced title
2020-09-12 17:43:16 +02:00
Boris Faure
423ad1f52c
color schemes: add eet-related code
2020-09-10 23:47:10 +02:00
Boris Faure
b1bdf50671
config: rename Config_Color type to Color + reorganise eet setup
2020-09-09 21:32:29 +02:00
Boris Faure
ff9b4aacc5
config: eet_data_descriptor_free accepts NULL
2020-09-08 23:10:46 +02:00
Boris Faure
6b93176f92
Merge branch 'terminology-1.8'
2020-09-07 21:19:09 +02:00
Boris Faure
c2bb4dcf81
win: focus new split. Closes T8804
2020-09-07 21:18:03 +02:00
Boris Faure
c17f3a6f26
colors.h: change name of header guard
2020-09-06 22:40:28 +02:00
Boris Faure
8cb6be667a
color schemes: proof of work on colorschemes with the nord theme
2020-09-01 19:11:34 +02:00
Boris Faure
cc552d7ea5
win: make code more "as usual"
2020-09-01 19:08:52 +02:00
Boris Faure
84a46280f6
private.h: add static_strequal()
2020-09-01 19:00:30 +02:00
Boris Faure
12963c304c
Merge remote-tracking branch 'origin/terminology-1.8'
2020-08-29 18:40:32 +02:00
Boris Faure
214c72eb0c
win: use theme_apply_elm on elm_layout
2020-08-29 18:38:11 +02:00
Boris Faure
7dad6d46ac
keyin: rename macro to improve readability
2020-08-24 18:55:39 +02:00
Boris Faure
dbba452a8b
cleanup src/bin/colors.h
2020-08-20 16:23:19 +02:00
Boris Faure
19fb6afd73
mv src/bin/col.{c,h} src/bin/colors.{c,h}
2020-08-20 16:21:51 +02:00
Boris Faure
698e8bb985
termptydbl: be strict on what is wide and do not try to be smart.
...
Too bad if ❤ is considered single-width
(cherry picked from commit d3c15c59db
)
2020-08-10 22:44:41 +02:00
Boris Faure
df6b013895
win/options_mouse: apply mouse timer change to current terms
...
(cherry picked from commit d082b0d6d7
)
2020-08-10 22:43:34 +02:00
Boris Faure
d3c15c59db
termptydbl: be strict on what is wide and do not try to be smart.
...
Too bad if ❤ is considered single-width
2020-08-05 23:05:47 +02:00
Boris Faure
d082b0d6d7
win/options_mouse: apply mouse timer change to current terms
2020-07-29 22:43:25 +02:00
Boris Faure
596d234ba1
about: add youtube channel
2020-07-23 22:52:47 +02:00
Boris Faure
3c21c13d39
about: add context menu on twitter link
2020-07-22 23:46:49 +02:00
Boris Faure
6b8409dfda
about: add twitter link
2020-07-21 23:46:02 +02:00
Boris Faure
ce788a69f6
about: dismiss when clicking on the terminal
2020-07-18 16:17:47 +02:00
Boris Faure
544a4376f7
termiolink: fix _hsl_to_rgb() + update tests
2020-07-17 12:58:22 +02:00
Boris Faure
98ee7bdcca
termptydbl: be more precise on emoji as double-width
...
+ set all of "Misc_Pictographs" as double-width
2020-07-15 22:10:55 +02:00
Boris Faure
a56a76afc7
termptyesc: handle single osc arg
2020-07-15 21:11:05 +02:00
Boris Faure
f29190bdaa
termptyesc: debug (re)setting cursor color + test
...
Do nothing for the moment. One could think about using color class for
that.
2020-07-06 23:57:37 +02:00
Boris Faure
8c970b8804
termptydbl: generate the exact double width test
...
This based on unicode 13.0:
https://www.unicode.org/reports/tr44/
Code is generated by tools/unicode_dbl_width.py
I'm using switch-case + fall through as I've found it was the best:
f46d550a8b
2020-07-05 23:34:13 +02:00
Boris Faure
9f2f8464f3
Fix typos
...
Summary: Fix some typos.
Differential Revision: https://phab.enlightenment.org/D12032
2020-07-05 20:19:59 +02:00
Boris Faure
3ee79131e4
termptyesc: no sanitize with musl when calling isnan()
2020-07-02 23:51:25 +02:00
Boris Faure
c2dd1815c8
termptyesc: avoid issues with cast from double
...
+ no buffer overflow
2020-07-02 23:45:32 +02:00
Boris Faure
ac9a92480b
termptyesc: handle xterm color format starting with "rgbi:"
2020-07-02 23:01:42 +02:00
Boris Faure
2245782dd4
termptyesc: handle xterm color format starting with "rgb:"
2020-07-02 22:33:34 +02:00
Boris Faure
5df92ee2ac
Fix typo
...
Summary: Fix typo on "preferred"
Reviewers: billiob
Reviewed By: billiob
Differential Revision: https://phab.enlightenment.org/D12028
2020-06-24 22:50:48 +02:00
Boris Faure
26e91924d9
Get rid of trailing whitespaces
...
Summary: Remove trailing whitespaces
Reviewers: billiob
Reviewed By: billiob
Differential Revision: https://phab.enlightenment.org/D12025
2020-06-24 22:49:17 +02:00
Boris Faure
bf60e5cb6d
config: do copy active_links_color between configs
2020-06-23 23:48:42 +02:00
Boris Faure
8e31c28f9b
termptyesc: handle larger sharp-based colors + tests
2020-06-23 23:21:56 +02:00
Boris Faure
8c88c876cd
Merge branch 'terminology-1.7'
2020-06-23 22:39:46 +02:00
Boris Faure
157d65e7ec
win: reorder calls to please _focus_validator()
2020-06-23 22:38:28 +02:00
Boris Faure
dd7d88815c
utils: add the source files
2020-06-23 13:27:07 +02:00
Boris Faure
3cbcbcd717
theme.h: no need to define EINA_FALLTHROUGH
2020-06-23 13:16:58 +02:00
Boris Faure
4bc712b07d
utils.{c,h} is needed
2020-06-23 13:16:51 +02:00
Boris Faure
ab35c9b7dd
mv utils.{c,h} theme.{c,h}
2020-06-23 12:48:27 +02:00
Boris Faure
a6828665dc
termptyesc: oops
2020-06-23 00:09:54 +02:00
Boris Faure
196973fcd3
rewrite changing of background/foreground colors from escape codes
2020-06-22 23:41:27 +02:00
Boris Faure
d845bb256a
Merge branch 'terminology-1.7'
2020-06-21 23:48:20 +02:00
Boris Faure
30b74f84f3
win: better handle initial focus when creating splits
...
Closes T8756
2020-06-21 23:46:22 +02:00
Boris Faure
171f99c80c
Merge branch 'terminology-1.7'
2020-06-16 21:12:37 +02:00
Boris Faure
e7894a887f
termptyesc: fix issue found by fuzzing by Øyvind Kolås (pippin from GIMP)
2020-06-16 20:54:09 +02:00
Boris Faure
50de16cca2
termio{,link}: correct check + remove useless 'if'
2020-06-15 23:08:52 +02:00
Boris Faure
548027a656
termiolink: protect isnan() usage with ubsan and musl
2020-06-15 23:03:36 +02:00
Boris Faure
f9e4cd9699
reorganise settings between options_behavior and options_mouse
2020-06-15 13:21:01 +02:00
Boris Faure
24400e9c69
options_mouse: add links settings
2020-06-15 13:21:01 +02:00
Boris Faure
62b101efd7
options_links: clean up
2020-06-15 13:21:00 +02:00
Boris Faure
75e7e211f2
options_behavior: share OPTIONS_CB/OPTIONS_CX/OPTIONS_SEPARATOR
2020-06-15 13:21:00 +02:00
Boris Faure
af257f2606
options_behavior: remove ELM_WRAP_WORD as it makes labels disappear…
2020-06-15 13:21:00 +02:00
Boris Faure
08bfebcf6d
mv options_helpers.{c,h} options_mouse.{c,h}
2020-06-15 13:21:00 +02:00
Boris Faure
c011c48720
config: add "active_links_color"
2020-06-15 13:21:00 +02:00
Boris Faure
d84304fc2e
termio: color link is not really clickable
2020-06-15 13:21:00 +02:00
Boris Faure
3973f4c348
termiolink: be able to fuzz color parser
2020-06-15 13:21:00 +02:00
Boris Faure
1866e43386
termiolink: parse css hsl color + unit test
2020-06-15 13:21:00 +02:00
Boris Faure
4b0de53914
termiolink: use eina_convert_strtod_c() to avoid issues with $LANG
...
because it may parse ',' as a separator (in french for example).
+ stop parsing forward on ')'
2020-06-15 13:20:59 +02:00
Boris Faure
129cda9536
termiolink: switch case is better than broken bsearch
...
(list was not correctly sorted)
2020-06-15 13:20:59 +02:00
Boris Faure
6dc89a5f6a
termiolink: detect rgb() colors + utest
2020-06-15 13:20:59 +02:00
Boris Faure
2f040f9532
termiolink: handle tabs in (color) links
2020-06-15 13:20:59 +02:00
Boris Faure
f23467407c
termiolink: add unit test on parsing edc color
2020-06-15 13:20:59 +02:00
Boris Faure
0051a28996
termiolink: add tests on some parsing functions
2020-06-15 13:20:59 +02:00
Boris Faure
10c720aa00
termiolink: rework color finder
2020-06-15 13:20:59 +02:00
Boris Faure
2832f79b59
theme: add name to the color being previewed
2020-06-15 13:20:58 +02:00
Boris Faure
2be609daab
termio: add popup on right click on color to copy it
2020-06-15 13:20:58 +02:00
Boris Faure
990ef95c8b
termptyext: be able to test color links
2020-06-15 13:20:58 +02:00
Boris Faure
b05a48d0c9
termiolink: constify
2020-06-15 13:20:58 +02:00
Boris Faure
c1ac8e05a3
color preview: have a better background
2020-06-15 13:20:58 +02:00
Boris Faure
127f0987ee
link: display tooltip on colors like #ff00ff
2020-06-15 13:20:58 +02:00
Boris Faure
f5fe32f70b
termiolink: isalpha() may produce unsigned-integer-overflow
2020-06-15 13:18:56 +02:00
Boris Faure
42cff98227
tytest: reset color just after using it
2020-06-15 12:56:14 +02:00
Boris Faure
2b5f698c91
utf8: avoid implicit signedness conversions
2020-06-13 00:13:18 +02:00
Boris Faure
442ce78874
termiointernals: avoid implicit signedness conversions
2020-06-13 00:13:18 +02:00
Boris Faure
db7ca27635
termptyesc: explicit conversions
2020-06-13 00:13:12 +02:00
Boris Faure
6aff48abe1
termpty: fix ubsan-detected issue
...
../src/bin/termpty.c:988:9: runtime error: implicit conversion
from type 'int' of value -1 (32-bit, signed) to type 'unsigned long'
changed the value to 18446744073709551615 (64-bit, unsigned)
2020-06-12 22:38:33 +02:00
Boris Faure
2d9d1c6a82
md5: disable unsigned-integer-overflow sanitizer
2020-06-12 22:35:22 +02:00
Boris Faure
c37a16151c
termiolink: no need to double semicolons (they don't make a colon…)
2020-06-04 22:44:39 +02:00
Boris Faure
11c7bb2c3b
termiolink: avoid long cascade of cases (implicit fallthrough)
2020-05-31 22:27:28 +02:00
Boris Faure
4144170cfc
termiointernals: use a switch/case
...
and let the compiler do the optimization and unroll the binary search
itself.
I wrote a micro benchmark:
1. switch_fallthrough: 9597502784 ns
2. switch_return: 8921069697 ns
3. binary_search: 18403018625 ns
The results are pretty consistent over multiple runs.
1st is switch case with one return at the end and lots of
fallthrough.
2nd is a return of each case,
3rd is the original code.
2020-05-26 23:27:08 +02:00
Boris Faure
eba80af2ea
sb: extract tests
2020-05-24 19:00:24 +02:00
Boris Faure
745b93e95b
termiointernals: _codepoint_is_wordsep() is const
2020-05-24 18:19:48 +02:00
Boris Faure
abdef9786c
have define BINARY_TYFUZZ/BINARY_TYTEST
2020-05-24 18:05:39 +02:00
Boris Faure
1702931b1b
mv src/bin/md5/md5.{c,h} src/bin/
2020-05-24 17:48:59 +02:00
Boris Faure
4703e374b9
sb: add some more tests
2020-05-24 00:35:27 +02:00
Boris Faure
c2c324c497
sb: fix error: applying zero offset to null pointer
...
Found by UndefinedBehaviorSanitizer
2020-05-24 00:19:33 +02:00
Boris Faure
04a47e0e19
sb: add unit tests + fix a few issues
2020-05-24 00:05:29 +02:00
Boris Faure
15ee3702db
sb: add ty_sb_spaces_ltrim()
2020-05-23 16:26:57 +02:00
Boris Faure
63815156aa
dumb framework to run unit tests in terminology
2020-05-23 11:59:34 +02:00
Boris Faure
392bfdb4a7
tests: rework tytest.c/tyfuzz.c to no longer #include one in the other
2020-05-23 11:59:24 +02:00
Boris Faure
bb09c80ab4
Merge branch 'terminology-1.7'
2020-05-19 23:57:59 +02:00
Boris Faure
5cae99eee1
options: word-wrap some labels
2020-05-19 23:56:06 +02:00
Boris Faure
ec344090aa
scale wizard: word-wrap the labels
2020-05-19 23:41:39 +02:00
Boris Faure
13fce0866c
Merge branch 'terminology-1.7'
2020-05-18 22:29:25 +02:00
Boris Faure
446823b6ea
options_elm: fix original _find_binary
2020-05-18 22:25:20 +02:00
Boris Faure
29cce7e73e
termiointernals.c: do not consider '-' as a word separator
2020-05-18 16:24:51 +02:00
Boris Faure
de969e7cef
Merge branch 'terminology-1.7'
2020-05-16 19:09:53 +02:00
Boris Faure
1d5eee0e60
focus validator: be less strict when changing tabs
...
Closes T8722
2020-05-16 19:07:28 +02:00
Boris Faure
3be858b09b
termiointernals: handle EM (end of medium) as word separator
2020-05-11 23:22:58 +02:00
Boris Faure
876036f009
termptyesc: randomize new entry in the true color cache
2020-05-09 00:04:20 +02:00
Boris Faure
9977b8a63b
termpty: set TERM_PROGRAM/TERM_PROGRAM_VERSION env variables
2020-05-06 23:49:00 +02:00
Boris Faure
106f8b5c9a
termptyesc: handle terminal query
...
New, still debated on https://gitlab.freedesktop.org/terminal-wg/specifications/issues/8
2020-05-06 23:44:05 +02:00
Boris Faure
144db18649
termiointernals: no timer in tests
2020-05-05 21:51:40 +02:00
Boris Faure
38e4935427
termiointernals: skip invisible codepoints when assessing whether they changed
2020-05-05 21:51:40 +02:00
Boris Faure
19ffa91f15
termptyext: add operator to test whether selection is active
2020-05-05 21:51:40 +02:00
Boris Faure
f679d28809
termiointernals: speed up selection scroll in tests + also in real life
2020-05-05 21:51:40 +02:00
Boris Faure
3be01d8b8b
meson: add tytest.{c,h} to improve testing with ENABLE_TEST_UI
2020-05-05 21:51:40 +02:00
Boris Faure
00bb99f3f0
tests: store mouse pointer and fallback evas_pointer_canvas_xy_get()
2020-05-05 21:51:40 +02:00
Carsten Haitzler
0df36aefc9
termio selection strings - fix ownership and alloc/free
...
this was a bit of a mess in terms of who owns, dups, copies etc. so i
fixed this up a bit and have termio_take_selection_text consistently
stringshare_add the string as its own copy so it can free it later.
also fix leak from ty_sb_steal_buf() as this is a malloced buffer not
stringshared and it wasnt freed after a steal
@fix
2020-05-04 10:47:00 +01:00
Boris Faure
286e2ebb59
win: on startup, force a window to be considered as focused
2020-04-29 22:54:50 +02:00
Boris Faure
f3bf486777
win: handle early case when no child is present
2020-04-29 22:53:02 +02:00
Boris Faure
f1857527da
termptyesc: mark _safechar() as pure
2020-04-25 15:20:54 +02:00
Boris Faure
18bfcb5aba
termptyesc: r,g,b are uint8_t
2020-04-22 23:59:02 +02:00
Boris Faure
00c427a20f
termptyesc: avoid issue with integer promotion
...
Found by UBSan:
sgr-truecolors.sh... ../src/bin/termptyesc.c:737:35: runtime error: left
shift of 244 by 24 places cannot be represented in type 'int'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
../src/bin/termptyesc.c:737:35 in
2020-04-22 23:52:58 +02:00
Boris Faure
f9b6f88be1
termptyesc: cache true color approximations
...
On my stupid benchmark ( https://github.com/billiob/fire ), this goes from
about 45 fps to about 125fps.
2020-04-22 23:43:45 +02:00
Boris Faure
f497b9446c
termiolink: harden functions link_is_*()
2020-04-19 23:23:57 +02:00
Boris Faure
25eac3e842
termio: suspend is an int with values > 1
2020-04-19 23:22:57 +02:00
Boris Faure
32f317cc05
options: use an available default icon for each entry!
2020-04-17 23:54:48 +02:00