summaryrefslogtreecommitdiff
path: root/src/fe-text
AgeCommit message (Collapse)Author
2017-08-07Revert "Merge pull request #452 from LemonBoy/terminfo-cup"ailin-nemui
Fixes #733. The fix outlined in #452 had adverse effects for the following reason. The code removed the restoration path that would go on the code path from kill SIGTSTP. The problem is this: When Irssi is not running in a controlling parent (like a shell), the TSTP will in fact be ignored. In that case, there is no process sending a CONT either and thus the screen state never gets restored. Luckily, the patch in #457 is sufficient to prevent the problem in #450 (which lead to the development of #452). To that end, we do end up with potentially calling terminfo_cont twice but that is better than not calling it at all. This reverts commit b1ffd5f6472584aa3966746da9728c5afefcc4ce, reversing changes made to 9cb0419435d1ad331c1f55361a003d9682fae9a8.
2017-07-03Merge pull request #653 from ailin-nemui/regexexailin-nemui
Enable UTF8 in GRegex
2017-06-19Merge branch 'master' into regexexailin-nemui
2017-06-17term-terminfo: Avoid switching out of alt screen on unexpected exitsdequis
Perl sucks and kills the whole process when there's a version mismatch in Perl_xs_handshake(). Our atexit handler catches the exit and deinitializes the terminal, removing the error. This commit uses the 'quitting' global variable which is set when irssi is voluntarily quitting, and avoids sending TI_rmcup, which restores the original screen and makes the error invisible.
2017-06-05Performance improvements for /lastlog -beforedequis
This avoids the use of g_list_find() to find if a match was already added to the list of results, by checking the last two added matches instead. Checking just the last match isn't enough because a NULL match is added as a separator (shown as -- in the UI)
2017-06-05Performance improvements for /lastlog with big result setsdequis
This applies to "/lastlog" with no filters (or with filters that don't filter a lot) and with large amounts of text in the scrollback. Test case: /exec seq 1 500000 /lastlog -file log.txt Thanks to morning for reporting this.
2017-06-05get rid of new_textailin-nemui
2017-06-04Refactor regex and implement UTF8 mode for GRegexailin-nemui
- with non-unicode byte to Private Use Area A mapping - move all ifdefs to iregex.h file only
2017-05-27do not reset true colour bit on colour resetailin-nemui
fixes #710
2017-03-21Intentation/whitespace fixesStephen Oberholtzer
Change several instances of space-indentation to tabs, matching the surrounding code.
2017-03-21Fix delay at startup when running against glib 2.49.3+Stephen Oberholtzer
In glib v2.49.3, an optimization was made to eliminate certain unnecessary wakeups. (The specific change was made in e4ee3079c5afc3c1c3d2415f20c3e8605728f074). Before this change, the first call to g_main_iteration would always complete immediately. In Irssi, this effectively reversed the order of the main loop, causing the reload_config check and the dirty_check to run *before* the first blocking call to g_main_iteration. With the new logic, the first g_main_iteration call now blocks, preventing the screen from being refreshed until the user starts typing or a timer goes off. (It also delays processing of SIGHUP, but I expect that is not a common situation.) This commit reorders the main loop to wait at the end of the loop, rather than the beginning, addressing the problem. (This closes Debian bug #856201.)
2017-03-04Merge branch 'd-minor' into 'master' Nei
Prevent some potential null-pointer deferences. See merge request !9
2017-02-14Prevent some potential null-pointer deferences.LemonBoy
Spotted by our friend scan-build.
2017-01-31Merge pull request #626 from ailin-nemui/textbuffer_monospaceailin-nemui
support storing and replaying the monospace attribute in textbuffer
2017-01-20implement break_wideailin-nemui
for more pleasant east asian mixed display
2017-01-03Merge branch 'master' into 'security'Nei
Sync to master See merge request !6
2017-01-03Merge pull request #585 from ailin-nemui/win_seqailin-nemui
g_sequence backing for window list
2017-01-03switch for gregex and regex.hAilin Nemui
2017-01-02Use the RAW flag when building the regexps.LemonBoy
Also, plugged a memory leak when retrieving the match position.
2017-01-02Rebase against master.LemonBoy
2017-01-02Remove the regexp_compiled field.LemonBoy
It was made redundant by the introduction of the pointer to the GRegex structure. Silence the compiler warning in textbuffer.c about preg being initialized by setting it to NULL.
2017-01-02Use GLib's regexp interface (backed by PCRE)LemonBoy
2016-12-21Merge pull request #587 from ailin-nemui/sbar_crashailin-nemui
add assertion to statusbar_read_group
2016-12-19Fix oob read on invalid utf8 in term_addstrJoseph Bisch
2016-12-15reset background for mirc colour 99ailin-nemui
fix #571
2016-12-15add assertion to statusbar_read_groupailin-nemui
fix #564
2016-12-13manually redraw the activity list on expose onlyailin-nemui
might speed up /foreach query /unquery
2016-10-23Kill bell_beeps.Alexander Færøy
Fixes #524
2016-08-24Fix an OOB access in the cutbuffer implementation.LemonBoy
2016-08-12remove broken dummy modeailin-nemui
2016-08-04remove curses terminal and ncurses macroailin-nemui
2016-06-25check for NULL in statusbar_more_updatedailin-nemui
fixes crash due to invalid access of active_win members when the more indicator is triggered without an active window
2016-06-05Factor out some redundant code and remove hashtable_get_keysLemonBoy
2016-05-18Merge pull request #480 from xavierog/handle-utf8-nicks-with-mk_wcwidthailin-nemui
Handle utf8 nicks with mk_wcwidth()
2016-05-13Simplify scrlen_str() using string_width().Xavier G
2016-05-13Leverage string_policy().Xavier G
2016-05-13Move utf8.{h,c} from fe-common/core to core.Xavier G
2016-05-03Fix some ANSI C issues.pisculichi
2016-03-29Improve cutbuffer handlingailin-nemui
* Adds two new keys which you can bind in /bind: yank_next_cutbuffer: Revert to the previous last deleted text append_next_kill: Append next deletion * Consecutive kills are now appended to the current cutbuffer
2016-03-22Make use of terminal application keys configurableailin-nemui
adds a new setting term_appkey_mode which can enable or disable the use of keyboard transmit (application keys) mode. Fixes #430
2016-03-22Merge pull request #452 from LemonBoy/terminfo-cupailin-nemui
Don't call terminfo_cont() twice on resume
2016-03-22Merge pull request #457 from ailin-nemui/fix_450ailin-nemui
fix race condition in terminal init
2016-03-22Merge pull request #458 from ailin-nemui/fix_449ailin-nemui
Properly toggle bracketed paste mode on stop/cont
2016-03-22Don't call terminfo_cont() twice on resumeLemonBoy
Fixes some weirdness when using ^Z with zsh.
2016-03-22Properly toggle bracketed paste mode on stop/contailin-nemui
Fixes #449
2016-03-22fix race condition in terminal initailin-nemui
remove the tcgetattr call to a single time on irssi load instead of querying it each time. Fixes #450
2016-03-22cutbuffer: do not unconditionally use replace when noop was requestedailin-nemui
2016-02-24Make pasting warning appear when long pastes are going to be split into many ↵Manish Goregaokar
lines
2016-02-24use a #define'd LINE_SPLIT_LIMIT instead of hardcoding 400Manish Goregaokar
2016-02-10fix whitespaceTodd A. Pratt