Commit Graph

1373 Commits

Author SHA1 Message Date
Boris Faure b74cfc752a do not append \n at end of box selection 2016-02-07 18:15:00 +01:00
Boris Faure 91842fee8a we're in 2016! 2016-02-07 16:29:43 +01:00
Boris Faure bed1532e19 remove callbacks early when pty exists 2016-02-02 23:34:54 +01:00
Boris Faure 1100f4d964 do not use edje cb when term quits. Closes T3105
Also reorganize the code a bit
2016-02-02 23:15:50 +01:00
Boris Faure e8c4f080ed fix tabbar not working after tab is closed. Closes T3105 2016-01-31 16:25:39 +01:00
Andy Williams fbf61bf815 [zoom] fix crash fix.
Sorry to anyone who lost character selection this morning...
2016-01-31 15:01:00 +00:00
Andy Williams 459cf7383d [zoom] Fix some potential crashes when zooming.
Generally just being a little more defensive against
potential errors.
2016-01-31 09:01:44 +00:00
Andy Williams ca96a35da7 [zoom] Smooth the scaling of fonts when zooming
Capture font size when gesture begins and correctly
update scale based off that until gesture ends.

Test plan:
1) hold Ctrl and scroll the mouse wheel in then out
in a single motion
2) notice zooming continues in initial direction
and accelerates towards the min or max

With patch it will adjust more smoothly and also
match the current zoom of the gesture.

@fix
2016-01-29 14:27:26 +00:00
Andy Williams 55ac83465b [options] size options list according to scale 2016-01-29 11:23:08 +00:00
Boris Faure 4367b4ceb6 fix selections (again and again) of single-char words 2016-01-27 21:08:45 +01:00
Boris Faure 84c1c77757 oops. Always use curly braces… 2016-01-27 20:17:15 +01:00
Boris Faure 98671b2493 fix one-char selections 2016-01-27 12:49:24 +01:00
Boris Faure 157eff8d6a fix CID1347402 Pointer to local outside scope 2016-01-07 22:56:53 +01:00
Boris Faure 8fbd1242fb fix CID1347401 Pointer to local outside scope 2016-01-07 22:55:42 +01:00
Boris Faure 2163bbb775 fix CID1347400 Pointer to local outside scope 2016-01-07 22:54:54 +01:00
Stanislav Baiduzhyi 33d20a1f98 Option to disable cd to current tab dir.
Summary: Adding option to disable cd to current tab dir.

Test Plan:
1. Start unpatched version of Terminology.
2. Change some Behaviour options.
3. Close unpatched version of Terminology.
4. Start patched version of Terminology.
5. cd /usr/bin
6. Open new tab and verify that previous behaviour persists, new tab working directory is /usr/bin
7. Go to Settings Behaviour and uncheck "Start in the same directory..." checkbox.
8. Optn new tab and verify that new tab working directory is ~ (or any other directory from which the Terminology was launched).
9. Restart Terminology.
10. Go to Settings Behaviour and verify that options persisted.

Reviewers: #terminology, billiob

Subscribers: godfath3r, #terminology

Projects: #terminology

Differential Revision: https://phab.enlightenment.org/D3495
2015-12-26 12:07:55 +01:00
Stanislav Baiduzhyi 2f3d2a9447 Passing KP_ keys to pty
Summary:
KP_Home and KP_End were ignored, skipped because _handle_key_to_pty only checked for Kk keys.
It does not look like that was a typo, so handling for both Kk and KP now in place.

Test Plan:
1. start terminology
2. type 'echo "the quick brown fox jumps over the lazy dog"'
3. press keypad Home key
4. on unpatched terminology nothing happens
5. on patched terminology the behaviour is identical to normal Home

Reviewers: billiob, #terminology, godfath3r

Reviewed By: #terminology, godfath3r

Subscribers: #terminology, godfath3r, billiob

Differential Revision: https://phab.enlightenment.org/D3496
2015-12-26 11:53:32 +01:00
Boris Faure 904f49ccc4 remove statement with no effect 2015-12-26 11:52:31 +01:00
Mike Blumenkrantz 7f53f4daf7 do not force full textgrid width update if preedit_str is ""
in many cases this will be the value which has been set, so ignoring it
will yield moderate performance improvements

Reviewed-by: Boris Faure <billiob@gmail.com>
2015-12-15 17:30:02 -05:00
Boris Faure f731ff6ada tybg: fix indentation 2015-12-12 15:58:10 +01:00
Boris Faure 3091a4e479 Closes T2911. fix reflow
- correctly set `autowrapped`
- reflow the top line when part of its content is in backlog
2015-12-10 21:15:17 +01:00
Boris Faure 66d05abb11 fix text reflow. Closes T2911
I should write unit tests on that someday
2015-12-07 22:05:49 +01:00
Boris Faure 3799c924dc fix wrong assert. Closes T2858 2015-11-21 14:57:05 +01:00
Boris Faure f8831d9c6a config: fix CID 1339831: Null pointer dereference 2015-11-19 21:08:16 +01:00
Boris Faure 93d7c8cb29 options_theme: fix CID 1339832: Null pointer dereference 2015-11-19 21:07:18 +01:00
Boris Faure 8190ddd605 options_font: fix CID 1339833 2015-11-19 21:06:14 +01:00
Boris Faure a29dbe45a7 options_wallpaper: fix CID 1339834: Null pointer dereference 2015-11-19 21:04:17 +01:00
Boris Faure bb2d7c4250 options_wallpaper: fix CID 1339835: Null pointer dereference 2015-11-19 21:02:21 +01:00
Boris Faure 224173f88d win: fix CID 1339836: Null pointer dereference 2015-11-19 21:00:22 +01:00
Boris Faure 04089d1e11 lz4: fix CID 1339837: Null pointer dereference 2015-11-19 20:58:17 +01:00
Boris Faure d558930d01 lz4: fix CID 1339838: Null pointer dereference 2015-11-19 20:55:10 +01:00
Boris Faure eae5306942 lz4: fix CID 1339839: Null pointer dereference 2015-11-19 20:53:52 +01:00
Boris Faure ac3dd67109 fix startup split and commands 2015-11-19 20:24:36 +01:00
Boris Faure a0c249e6ca fix crash when running tyfuzz. not in terminology 2015-11-14 21:26:37 +01:00
Carsten Haitzler 5a5b80ebec fix fuzzing so terminology works at all again
if (len <= 0)

in _cb_fd_read() is ALWAYS coming up with len < 0 for me and that'd
be LOGICAL... eg if read() returns an error (something ok to allow us
to continue) and so my terminal content NEVER appears - because
terminology is returning false from the fb handler asking it to be
deleted. this is wrong so put it inside #ifdef of fuzzing so it
doesn't affect "normal people". i still think it is broken tho... but
at least i have my terminal back now.
2015-11-12 09:53:32 +09:00
Boris Faure 4913364a22 fix int overflow 2015-11-08 13:06:13 +01:00
Boris Faure a925de13dc tyfuzz: read from stdin but write to /dev/null 2015-11-08 13:06:13 +01:00
Boris Faure bbb60799f4 ugly code to log to syslog 2015-11-08 13:06:13 +01:00
Boris Faure 28965e6601 fix typo/bug spotted by afl-fuzz 2015-11-08 13:06:09 +01:00
Boris Faure 4b4a5e84d4 config: add config_new() to create a new default config 2015-11-08 13:05:43 +01:00
Boris Faure 7d46ee5062 add tyfuzz utility used for fuzzing the escape code parsing routines 2015-11-08 13:05:43 +01:00
Boris Faure e81097ccf7 comment unused code to remove dependency 2015-11-08 13:05:43 +01:00
Boris Faure 01421754ec make termpty_handle_buf() public to ease fuzzing 2015-11-08 13:05:43 +01:00
Boris Faure 755a4c3f2f enable fuzzing with --enable-fuzzing
Only enable it if you know what you're doing
2015-11-08 13:05:43 +01:00
Boris Faure d11ebd1247 add code to fuzz terminology (wip) 2015-11-08 13:05:43 +01:00
Boris Faure 88c4ce46b0 add (ugly) cross to close tabs 2015-11-07 15:59:55 +01:00
Boris Faure 86a596d946 fix --split option 2015-09-26 12:01:42 +02:00
Boris Faure 81a8118c03 fix focus issue when creating a new tab in a split 2015-09-20 15:51:57 +02:00
Boris Faure 4c53f10bf0 do not right trim "." on word selection
this makes double click on "../foobar"
2015-09-20 15:42:28 +02:00
Boris Faure 9c4167f74f always support double-width 2015-09-19 16:23:41 +02:00
Boris Faure 2b3eda694f always support italic 2015-09-19 16:18:17 +02:00
Boris Faure e6b924a215 correctly set working dir on split 2015-09-19 14:49:40 +02:00
Boris Faure e8bd673f20 send ctrl[1-0] to term if "going to tab#" is not possible. Closes T2723 2015-09-14 23:01:32 +02:00
Boris Faure d844278723 ctrl-[2-8] are now handled by terminology. Ref T2723 2015-09-14 00:01:01 +02:00
Boris Faure a334bf6554 termpty: fix resizing
do not add a useless newline
do not copy the same content few times
2015-09-13 23:17:17 +02:00
Boris Faure 386cf11b19 fix backlog locking 2015-09-13 23:17:03 +02:00
Boris Faure 78cb50c7a3 fix line length computation 2015-09-13 23:16:30 +02:00
Boris Faure 3a7238978e turn error messages about unhandled escape codes into warnings 2015-09-08 21:59:11 +02:00
Boris Faure cb531b5d9b correctly set bold, even if textgrid do not support it (yet) 2015-09-06 23:52:43 +02:00
Boris Faure 02a7a4e4d5 update contributors 2015-09-05 14:06:30 +02:00
Boris Faure 6f898d5ebe fix typop no longer working for still images. Add some error messages
Thanks to dassify for noticing
2015-09-04 20:30:29 +02:00
Boris Faure 4c00bec4d6 cleanup window callbacks 2015-09-02 21:40:03 +02:00
Boris Faure 22ae02127b fix copy/paste bug. CID1316546 2015-09-01 23:45:18 +02:00
Boris Faure ede0abb245 fix tab selector segfault
Thanks to Yomi for the help in finding this
2015-08-29 15:23:50 +02:00
Boris Faure 45b7d20425 trim selection before trying to open it as url 2015-08-24 23:45:14 +02:00
Boris Faure cf58c1ee76 add context menu to open a selection as an url. Closes T584 2015-08-24 23:09:24 +02:00
Boris Faure 144e0b5068 add option to disable terminology escape codes that could be considered
security issues by some

They are enabled by default.
2015-08-23 20:57:49 +02:00
Boris Faure 5c9d98cf22 add error handlers on textblocks. Should fix T2672 2015-08-23 16:41:15 +02:00
Boris Faure 1400b122ec bad copy/paste. CID1316546 2015-08-18 22:37:10 +02:00
Boris Faure 7fd86d8968 warn about window operations' escape codes being not supported 2015-08-17 23:18:50 +02:00
Boris Faure b80bedc7c2 do not report unsanitized input. See CVE-2003-0063 2015-08-17 23:18:49 +02:00
Boris Faure a33a937ab7 add powerlines to word separators 2015-08-16 21:48:22 +02:00
Boris Faure 716cb03b5b fix small issue on word selection and simplify code 2015-08-16 21:40:58 +02:00
godfath3r 8e8207dae1 Dont use : as a separator but trim it from selected word. Fixes T2602
Reviewers: billiob

Maniphest Tasks: T2602

Differential Revision: https://phab.enlightenment.org/D2931
2015-08-16 20:36:38 +02:00
Mike Blumenkrantz 8d4b06617f use event length instead of strlen() when dropping something into a terminal
the data member of Elm_Selection_Data may not be nul terminated, so
any string operation on this is liable to crash
2015-08-13 14:46:02 -04:00
Carsten Haitzler 4b25721a1d terminology themes - use theme in home dir over system one always
checking modified time between user and system themes is just not a
good idea - we never do this anywhere in e. user installed theme
alwasy overrides system one. modified time is not relevant.
2015-08-11 13:15:16 +09:00
Boris Faure fe58cd058b only use beacon when it seems efficient 2015-08-10 21:44:05 +02:00
Boris Faure d0bedb9a8a backlog: update beacon while browsing 2015-08-10 21:31:24 +02:00
Boris Faure 69cffca8b0 fix splitting when no term focused. oops 2015-08-10 21:02:27 +02:00
Boris Faure db471aec09 correctly fix coverity issue found in termiolink.c 2015-08-10 00:28:33 +02:00
Boris Faure 3738402a9d fix wrong condition. CID1315743 2015-08-09 14:19:50 +02:00
Boris Faure 7af60a58c8 BACKLOG_ROW_GET() should not be called with a "screen" value
the backlog is independent of the screen size. Thus a single line in the
backlog can span many lines on the screen.
2015-08-09 14:10:12 +02:00
Boris Faure b4c91eee47 fix scroll after resize 2015-08-08 16:40:05 +02:00
godfath3r 93c7deeb3e Correct rewrite of splittable container
Reviewers: billiob

Differential Revision: https://phab.enlightenment.org/D2933
2015-08-08 12:05:04 +02:00
Boris Faure 49be05a02f do not expand window on zoom, resize the content. Closes T886 2015-08-06 22:40:19 +02:00
Boris Faure 3716c7ec51 apply zoom level/font size to all terms in a window 2015-08-06 21:53:14 +02:00
Boris Faure fc79e38575 rewrite whether a term container is splittable. CID1315267 and CID1315268 2015-08-06 21:50:58 +02:00
Boris Faure 41579e92e8 remove logically dead code. CID1315103 and CID1315104 2015-08-06 21:39:20 +02:00
Boris Faure 5c37589e39 fix resize when cursor alone on last line 2015-08-05 22:57:01 +02:00
godfath3r c2e1c2c3fa Fix crash when split is too small and miniview is shown.
Summary: Fixes T2450

Reviewers: billiob

Maniphest Tasks: T2450

Differential Revision: https://phab.enlightenment.org/D2919
2015-08-05 22:02:09 +02:00
godfath3r eea13ce939 Don't split terminal endlessly.
Summary: Previously terminology would split the terminal as many times as user hit split button/shortcut. Now splitting is limited to only when there are at least 2 cells left. (horizontally or vertically) Also Fixes T2638

Reviewers: billiob

Maniphest Tasks: T2638

Differential Revision: https://phab.enlightenment.org/D2915
2015-08-05 21:55:56 +02:00
Boris Faure 423d06fed3 allow different backgrounds via tybg. Closes T2444 2015-08-03 21:45:05 +02:00
Boris Faure 21764bbf85 remove wrong assert when no backlog ever generated 2015-08-03 21:23:38 +02:00
Boris Faure f40c63bbb6 typo 2015-08-03 20:52:54 +02:00
Boris Faure 8fbffdd869 renames to make the code more consistant 2015-08-03 20:44:55 +02:00
Boris Faure 35c8fd79c0 speed up browsing backlog
have a "beacon": single point where the link between an offset in the
backlog and one in screen coordinates
2015-08-03 20:44:55 +02:00
Boris Faure 34592ab5b3 new resize/backlog implementation. Closes T2461
idea: store full lines in the backlog. No need to change them on resize
2015-08-03 20:43:17 +02:00
Boris Faure e2853ab0a5 rename main_term_evas_object_get() to term_termio_get() 2015-08-02 22:53:01 +02:00
godfath3r 10b7b19bc9 Add 'Show miniview by default' in options.
Summary: Fixes T1876

Reviewers: billiob, raster

Maniphest Tasks: T1876

Differential Revision: https://phab.enlightenment.org/D2869
2015-08-02 22:44:32 +02:00
Boris Faure 0265c9bd88 cleanup --font handling. Closes T2433 2015-08-02 22:27:54 +02:00