Boris Faure
cfbbe60164
Merge branch 'terminology-1.6'
2019-12-05 19:59:44 +01:00
Boris Faure
0eb8948d67
tycommon: add ty_write() to handle EINTR/EAGAIN on write()
2019-12-05 19:58:25 +01:00
Boris Faure
a782ce61e2
test return of ty_sb_add(). Closes CID1408482
2019-12-05 19:08:05 +01:00
Boris Faure
20b656d1f4
Merge branch 'terminology-1.6'
2019-12-04 23:16:30 +01:00
Boris Faure
b76bbbe455
termpty: better handle writes
...
- Use the event loop
- Check for EINTR/EAGAIN
This fixes pasting large amount of data.
Closes T4712
2019-12-04 23:13:30 +01:00
Boris Faure
e1f3a4d486
sb: when skipping buffer on the left and the buffer is empty, remove gap
2019-12-04 23:10:39 +01:00
Boris Faure
6bfd508a58
tyfuzz: instead of writing to /dev/null, just do not write
2019-12-04 21:44:37 +01:00
Boris Faure
1eb9b4cb80
Merge branch 'terminology-1.6'
2019-12-02 23:45:49 +01:00
Boris Faure
99d8436f5a
termpty: retry read() on EINTR
2019-12-02 23:42:38 +01:00
Boris Faure
992936d156
termptyesc: add title/icon stack + tests
2019-11-29 23:31:18 +01:00
Boris Faure
a5aaeefc18
remove condition on if (X) eina_stringshare_del(X)
2019-11-29 23:31:14 +01:00
Boris Faure
2e75539fb9
termptyesc: handle invalid values for OSC + test
...
- missing value is as if 0
- overflow
- hex
- negative value
2019-11-25 20:07:00 +01:00
Boris Faure
bde94adf21
termptyesc: rename csi_arg_error to esc_arg_error
2019-11-25 19:44:30 +01:00
Boris Faure
1488b41342
backlog: cleanup
2019-11-24 19:57:48 +01:00
Boris Faure
787e16f215
backlog: simplify code. Closes CID1407754
2019-11-24 19:50:08 +01:00
Boris Faure
e16505f5f7
backlog: take alignement into account for memory accounting
2019-11-24 19:00:31 +01:00
Boris Faure
9f58d68371
options_behavior: display current memory usage of the backlog
2019-11-24 18:06:21 +01:00
Boris Faure
77ab1efb9d
backlog: be smarter when changing backlog's size
2019-11-24 16:14:00 +01:00
Boris Faure
e6b78bd406
backlog: take the size of backlog into account
2019-11-24 16:13:43 +01:00
Boris Faure
cf80e70faf
backlog: move related functions to that file
2019-11-24 16:12:26 +01:00
Boris Faure
0c87de9f5e
backlog: early work to have memory accounting of the backlogs
2019-11-23 23:06:34 +01:00
Boris Faure
62302496dc
git mv src/bin/termptysave.{c,h} src/bin/backlog.{c,h}
2019-11-23 18:31:23 +01:00
Boris Faure
dcf31cf140
main: do not set config as temporary by default
2019-11-14 12:57:59 +01:00
Boris Faure
2a02a03625
config: add error message if config is from a new Terminology
...
Also mark it as temporary
2019-11-12 10:57:01 +01:00
Boris Faure
b327ff2f19
config: add error messages when saving config
2019-11-12 10:56:41 +01:00
Boris Faure
02f4173387
build: detect whether there is strchrnul
...
This should help compiling on macosx
2019-11-07 20:43:47 +01:00
Boris Faure
998f25ba77
termio: only the TEXT case shouldn't happen in that switch-case
2019-10-28 09:56:03 +01:00
Boris Faure
e197c04f65
termiointernals: be able to select tabs + test
2019-10-27 16:14:28 +01:00
Boris Faure
e1ff4d877e
termptyesc: store when tab are inserted and where they stop
2019-10-27 16:04:43 +01:00
Boris Faure
7dcb9e4e43
termio_selection_get(): simplify by using macros
2019-10-27 12:06:18 +01:00
Boris Faure
7634b61283
termio: allow \t to be pasted
2019-10-27 11:32:51 +01:00
Boris Faure
1195c022f3
default.edc: move tab selector on the tab line
2019-10-26 18:18:03 +02:00
Boris Faure
c130c6f683
main: change prototype for main_new()
2019-10-26 18:13:25 +02:00
Boris Faure
0f5e928e37
Revert "wip"
...
This reverts commit fc865e97b0
.
2019-10-21 23:28:42 +02:00
Boris Faure
fc865e97b0
wip
2019-10-20 23:01:10 +02:00
Boris Faure
9b23e02b4e
win: clean up tabs list asap
2019-10-20 20:05:02 +02:00
Boris Faure
9ce403d29b
media: remove useless condition
2019-10-20 18:32:35 +02:00
Boris Faure
71ee21af32
main: only one place to configure a running instance
2019-10-20 18:16:10 +02:00
Boris Faure
984d7e07c6
ipc: set theme on new instance
2019-10-19 10:57:57 +02:00
Boris Faure
98787cfc2d
main: unsetenv("DESKTOP_STARTUP_ID") when it won't ever be used again
...
Also remove one as it might be used by apps
2019-10-17 09:58:40 +02:00
Boris Faure
e9b2d22ff7
main: putenv() can't use stack mem as it might become part of env
...
and use later.
Avoid stack-use-after-scope.
2019-10-17 09:58:40 +02:00
Boris Faure
5e5ac579b5
win: cleanup windows_free()
2019-10-17 09:58:40 +02:00
Boris Faure
cd84ce0a34
main: fix execv() usage
2019-10-17 09:58:40 +02:00
Boris Faure
3e40f46f9b
Revert "Revert "main: better handle stalled unix socket used to spawn multiple instances""
...
This reverts commit e716ad5812
.
2019-10-17 09:58:40 +02:00
Boris Faure
688a45dc15
Merge branch 'terminology-1.5'
...
Conflicts:
src/bin/options_font.c
2019-10-17 00:11:13 +02:00
Boris Faure
fd2212afd8
options_font: fix use after free
2019-10-17 00:05:57 +02:00
Boris Faure
bb6d540145
Merge branch 'terminology-1.5'
2019-10-14 21:55:53 +02:00
Boris Faure
96095b5b9d
win: remove hide_cursor_timer when closing a window
...
@fix
2019-10-14 21:54:47 +02:00
Boris Faure
e716ad5812
Revert "main: better handle stalled unix socket used to spawn multiple instances"
...
This is not stable enough.
This reverts commit fb2c8deb74
.
2019-10-13 18:39:58 +02:00
Boris Faure
fb2c8deb74
main: better handle stalled unix socket used to spawn multiple instances
...
Have a 2-seconds waiter and if we couldn't create a new instance, unlink
the unix socket and restart Terminology.
2019-10-13 17:58:25 +02:00
Boris Faure
a9ec48191d
win: clean up popmedia code. Closes T8330
...
Mainly add _popmedia_now() that flushes down the queue then add an
element. This is no longer the job of _popmedia_show().
Also add _popmedia_queue_free().
2019-10-10 23:40:32 +02:00
Boris Faure
4b24157e2b
typop: with many args, pop first then queue the others
2019-10-10 23:37:51 +02:00
Boris Faure
80124a72ca
win: no longer segfaults from typop with multiple files
2019-10-10 22:55:21 +02:00
Boris Faure
6b8e6f0516
win: reorganize code to have popup media fold
2019-10-10 22:29:30 +02:00
Boris Faure
424ddba2c8
splits: show missed bells when a title tab is shown
2019-10-06 23:36:28 +02:00
Boris Faure
a32b9cee88
tabs: show tabs that have a bell
2019-10-05 15:31:12 +02:00
Boris Faure
109e804eae
Merge branch 'terminology-1.5'
2019-10-01 22:44:24 +02:00
Boris Faure
fe63070139
options_behavior: disable "hide cursor"'s slider when needed
2019-10-01 22:43:05 +02:00
Boris Faure
9a2ddd8468
win: update terms on change of config about show_tabs
2019-09-30 21:55:47 +02:00
Boris Faure
dc1ddf7e40
config: turn "notabs" into "show_tabs"
2019-09-30 21:55:47 +02:00
Boris Faure
5996e5eb2c
win: show title tab on splits when config is set accordingly
2019-09-30 21:55:42 +02:00
Boris Faure
9f156eb948
Merge branch 'terminology-1.5'
2019-09-29 13:56:16 +02:00
Boris Faure
61bb7955da
sel: selector was not taking into account the new destination
2019-09-29 13:53:35 +02:00
Boris Faure
c11f7e4c19
termptyesc: restrict DSR-DECCKSR argument to 16bit (unsigned)
2019-09-15 23:05:38 +02:00
Boris Faure
dbf92b1346
termptyesc: use correct format specifier for int
2019-09-15 22:43:29 +02:00
Boris Faure
e235cb00a3
termiolink: fix link detection over spaces
2019-09-15 20:58:52 +02:00
Boris Faure
02a418b290
termptyext: add tests on link detection
2019-09-15 20:39:41 +02:00
Boris Faure
2c5bab7b8d
termptyext: get rid of "unused" warnings
...
+ abort on unknown test escape code
2019-09-15 17:47:42 +02:00
Boris Faure
259722a3f3
move link_is_* to termiolink.c
2019-09-15 17:47:07 +02:00
Boris Faure
7bfef215b0
termptyext: remove 'a' example
...
Because we have plenty of other examples in the file
2019-09-14 14:34:07 +02:00
Boris Faure
77ed56bf00
termpty: reduce log severity
2019-09-08 21:25:52 +02:00
Boris Faure
822bd70afd
utils: avoid using functions too new (only in EFL >=1.21)
2019-09-08 21:18:53 +02:00
Boris Faure
2b43b9bab2
options_elm: add scale slider
2019-09-08 20:19:25 +02:00
Boris Faure
b8af21128e
config: simplify API
2019-09-08 19:41:16 +02:00
Boris Faure
67805411a4
add wizard to set scaling when config does not exist
2019-09-08 19:28:52 +02:00
Boris Faure
f01c312f01
fix leaks when looking for links
2019-09-04 00:28:21 +02:00
Boris Faure
421e40dbfc
termio: evas_object_focus_get() agains obj is not valid
...
Focus is not handled at that layer.
Closes T8176
2019-09-02 23:45:46 +02:00
Boris Faure
98017f1647
hide cursor: fix unchecking "auto hide cursor". Closes T8148
2019-09-02 23:27:42 +02:00
Carsten Haitzler
e33d07f492
selection in backbuffer fix try #2
...
get rid of segv's by trying this again in a different way
@fix
2019-09-02 21:47:50 +02:00
Boris Faure
fcfd797a38
options_keys: force delete of genlist to avoid races
2019-08-06 22:56:48 +02:00
Boris Faure
9299566707
options_behavior: avoid eo message
...
I have no idea why this fixes anything
2019-08-06 22:42:44 +02:00
Boris Faure
241c5b5944
termptyesc: use "ESC\", the 7-bit version of ST.
...
Ref T8054
2019-07-18 00:09:06 +02:00
Boris Faure
6a8a515c01
termptyesc: xterm is actually emitting \033 and not ST
...
ST is as described in https://invisible-island.net/xterm/ctlseqs/ctlseqs.html#h2-Operating-System-Commands
2019-07-17 23:57:44 +02:00
Boris Faure
5e67443379
termptyesc: fix osc-11 reporting. It ends with ST
...
Closes T8054
2019-07-17 23:43:32 +02:00
Boris Faure
8562d1cf6b
avoid redefinition of Term and Win
2019-07-14 18:42:24 +02:00
Boris Faure
7f4d891610
termiointernals: no out-of-band read when selecting empty lines
2019-07-10 23:14:53 +02:00
Boris Faure
dff54aeca2
termiointernals: remove leak
2019-07-08 23:02:41 +02:00
Boris Faure
54340c464d
termio: fix CID1402874, buffer overrun
...
Also fix CID1402875, CID1402876, CID1402877, CID1402878
2019-07-08 22:19:47 +02:00
Boris Faure
048c5cb825
clean up mess with libintl
...
The header must exist, the lib itself may not
2019-07-08 21:30:27 +02:00
Boris Faure
fb922e0ec4
coverity fixed their stuff, remove hack
2019-07-08 21:30:27 +02:00
Boris Faure
344e466eba
tyfuzz/tytest: fix leak
2019-07-08 21:30:27 +02:00
Boris Faure
fa07767115
tytest: fix runtime error: null pointer passed as argument 2, which is declared to never be null
2019-07-08 21:30:27 +02:00
Boris Faure
58df5715d1
win: remove shadowed variable
2019-07-08 21:30:27 +02:00
Boris Faure
c1eb0bad4a
sel: clean up: use sd directly whenever possible
2019-07-08 21:30:27 +02:00
Boris Faure
14d799d63e
tab_selector: fix focus issue
2019-07-08 21:30:27 +02:00
Boris Faure
432485dae3
win: start the hide_cursor timer on window creation
2019-07-08 21:30:27 +02:00
Boris Faure
b7fff38636
win: hide mouse cursor when idle after timer
2019-07-08 21:30:27 +02:00
Boris Faure
38404d93ff
options_behavior: add ui to change "hide cursor" setting
2019-07-08 21:30:27 +02:00
Boris Faure
96218a733c
config: add item to hide cursor
2019-07-08 21:30:27 +02:00
Boris Faure
ba980a594c
termptydbl: oops
2019-06-23 22:16:47 +02:00
Boris Faure
ef483dba0d
termptydbl: add special case for emoji that were single width before
2019-06-23 22:02:50 +02:00
Boris Faure
50f4f6308d
termptyops: skip variation selectors
...
We should take into account VS1, 15 and 16…
2019-06-23 22:02:50 +02:00
Boris Faure
7b3110d4a2
termpty: attach a Config * to Termpty
2019-06-23 22:02:50 +02:00
Boris Faure
7cc1197a53
config: add option to treat emojis as double-width
2019-06-23 22:02:49 +02:00
Boris Faure
cdaae389aa
utf8: only encode codepoints ≤ U+10FFFF. Closes T8022
2019-06-23 16:44:28 +02:00
Alastair Poole
18bff78895
build: Fix build and behaviour on OpenBSD.
...
Summary:
OpenBSD does not have strchrnul. Also, fix range
issue with window size.
The geometry is broken on OpenBSD and DragonFlyBSD.
A previous patch solved this issue. Range was
changed to <= 0, but needs to be <= 1 to ensure
the terminal opens and displays content.
Reviewers: billiob
Reviewed By: billiob
Differential Revision: https://phab.enlightenment.org/D9157
2019-06-23 16:39:17 +02:00
Boris Faure
253446db49
debug: remove some
2019-06-18 22:09:29 +02:00
Boris Faure
cf060d2a04
focus: block focus manager from getting key inputs when they are consumed
2019-06-18 22:06:44 +02:00
Boris Faure
c151c3c0a0
termio: use term_is_focused() since it is now more reliable
...
sd->self is not the evas object that is being focused
2019-06-17 22:13:39 +02:00
Boris Faure
ff136b78f1
win: export term_is_focused()
2019-06-17 22:12:59 +02:00
Boris Faure
b464932d2d
Revert "Revert "win: let elm handle focus""
...
This reverts commit 8354e83726
.
2019-06-17 21:22:17 +02:00
Boris Faure
8354e83726
Revert "win: let elm handle focus"
...
This reverts commit 113bf27619
.
Not yet fully working. Previous behaviour was better.
2019-06-14 11:19:30 +02:00
Boris Faure
113bf27619
win: let elm handle focus
2019-06-13 20:45:53 +02:00
Boris Faure
5f19ccb841
win: use elm_layout funcs on base object in About
2019-06-13 20:45:33 +02:00
Carsten Haitzler
5c74541206
config - font size - go back to 10 as default
...
so a whole back terminology moved from the shipepd nexus bitmap font
to system monospace fonts and 12 pt. it has always looked wrong as
efl's default theme is 10 and relies on a system-wide scale factor to
do this. 12 has looked totally out of place for a long time and it's
time that this not be hacked around in terminology but be solved at
the system level - maybe efl. if you use e then you will have selected
the scaling factor already and it will affect efl apps and all work.
outside of e is "not solved". to date it's been "other desktosp have
to support efl - up to them". perhaps looking at some level of "well
user has no config so let's guess what scale factor should maybe be
based on dpy and other toolkit configs we can find etc." in EFL... not
terminology.
2019-06-11 11:57:24 +01:00
Boris Faure
417cf716c6
termptyesc: handle some OSC where there's nothing to do
2019-05-27 19:20:28 +02:00
Boris Faure
16db713a44
termptyesc: just ignore screen mode
2019-05-27 19:20:09 +02:00
Boris Faure
50e1371006
termptyesc: osc 11's format is weird
2019-05-27 00:13:22 +02:00
Boris Faure
33b2d68aa9
termptyesc: handle OSC 11 that reports background color
...
It can also be used to set background color but that's not implemented
2019-05-26 23:02:53 +02:00
Boris Faure
7e677abfb9
termpty: add termpty_color_class_get()
2019-05-26 22:55:22 +02:00
Boris Faure
f6d6ce481e
termpty: fix unsigned comparison
2019-05-26 22:54:38 +02:00
Boris Faure
d29533e341
win: add term_bg_get()
2019-05-26 22:52:57 +02:00
Boris Faure
372893297b
options_behavior: remove unused variable
2019-05-26 22:41:26 +02:00
Boris Faure
fff087bead
use layout api in controls/options
2019-05-26 19:25:44 +02:00
Boris Faure
3c12162dcf
win: use elm_layout for the base objects
2019-05-24 21:47:25 +02:00
Marcel Hollerbach
2168e6a85f
terminology: call donecb later
...
donecb must be called after the settings objects have been deleted.
Otherwise focus manager will detect that a focused object is deleted,
and performe recoverty things. Those recovery things end up in
terminology in focusing nothing, since the terminal object is not a
elementary widget. Not beeing a elementery widget here means that it is
not visible from the POV of the focus manager.
However, when we emit donecb later on, then the focus is restored (in
the callback) after focus manager has performed its voodoo.
This fixes focus disappearing after going into the settings and going
out of them again.
Reviewed-by: Boris Faure <billiob@gmail.com>
Differential Revision: https://phab.enlightenment.org/D8932
2019-05-21 21:07:53 +02:00
Carsten Haitzler
40ea16d995
terminology - fix initial size hints to be stepped right
...
@fix
2019-05-18 02:41:16 +01:00
Carsten Haitzler
03d15389a5
fix sign compare warn - no real bug to see here
2019-05-13 15:03:32 +01:00
Boris Faure
43224731e0
Merge branch 'terminology-1.4'
2019-05-05 12:57:28 +02:00
Boris Faure
67de5e75b2
termio: do replace \n by \r when pasting
2019-05-05 12:56:23 +02:00
Boris Faure
daa4f1bae0
Merge branch 'terminology-1.4'
2019-05-05 11:41:58 +02:00
Boris Faure
f1837dbc0c
termio: fix buffer overflow if too many \n
2019-05-05 11:41:10 +02:00
Boris Faure
766c3bfebc
Merge branch 'terminology-1.4'
2019-05-03 23:28:34 +02:00
Boris Faure
16ee36dbe3
termio: decode pasted string as utf8 and skip some codepoints
...
Should fix issue pasting codepoints that fit on multiple bytes
2019-05-03 23:27:29 +02:00
Boris Faure
fd27c910b1
termptydbl: fix comparison.
2019-05-01 13:11:56 +02:00
Boris Faure
35b6f3c630
termptydbl: private use area is not double-width
2019-05-01 12:52:17 +02:00
Boris Faure
955195d2ae
termptydbl: greek, cyrillic, armenian, arabic, … are not double width
2019-05-01 12:39:53 +02:00
Boris Faure
3880157adc
termptydbl: consider [0x2630, 0x2638] as single width. Closes T7821
2019-05-01 11:41:14 +02:00
Carsten Haitzler
208e877e8f
dbl chars - another range with only some emoji to be doubled
2019-04-23 12:12:02 +01:00
Carsten Haitzler
ce61d0c648
dbl char - add final unicode full emoji list link
2019-04-23 11:21:08 +01:00
Boris Faure
d197d2207e
termptydbl: unbreak mutt/nethack/my shell prompt…
...
The following ranges are not double-width:
2500-257F Box Drawing
2580-259F Block Elements
25A0-25FF Geometric Shapes
E000- F8FF Private Use Area
2019-04-22 22:19:50 +02:00
Carsten Haitzler
f0191d0ffc
double width check - optimize by more tree-like parent range checks
2019-04-18 15:31:35 +01:00
Carsten Haitzler
1cf54d7dfd
emoji- handle as double width as they probably should
...
emoji render as if being double width and their origin is from asian
langs (japan came up with them), so we should make them double width.
2019-04-18 15:12:32 +01:00
Carsten Haitzler
bbe5b3eb03
focus - ensure focus is properly handled first time for unfocused wins
...
this fixes a case where ecore imf is never told about a newly focused
context because the relative term is already the child in an initial
case... this gets input methods working again
@fix
2019-04-15 17:19:33 +01:00
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