summaryrefslogtreecommitdiff
path: root/src/gui/curses/gui-curses-chat.c
AgeCommit message (Collapse)Author
2023-04-26core: fix display bug when drawing partially scrolled multilineTrygve Aaberge
If you have a chat line with multiple lines that were scrolled so that part of it is rendered at the bottom of the chat area, and part of it falls below the chat area, there was a bug where the prefix_suffix would be displayed at the end of the last line. Looks like this happens because the gui_chat_display_prefix_suffix is called for the line below the last line displayed in the chat area. So we have to add a check for this so we don't add the prefix_suffix. This check is copied from gui_chat_display_word which checks for the same. Fixes #1912
2023-04-19core: render newline characters in chat line messagesTrygve Aaberge
If a chat line message contains a newline character (\n) it was previously rendered as J with reverse video. This commit makes it render as an actual newline instead, so messages with multiple lines become supported. The rendering is fixed in normal mode as well as bare mode both when scrolled to the bottom and when scrolled up (which is different code paths). Focus events has also been updated to support this (except for _chat_line_y which returns -1 for all lines, but the docs says this variable is only for buffers with free content). Currently, the only way to include a \n in a chat line message is with hdata_update because printf splits on \n and creates multiple separate lines, but hopefully either printf can be changed to not split on \n, or a new command which doesn't split can be added.
2023-03-17core: split gui-curses.h into multiple headersSébastien Helleu
2023-01-01core: update copyright datesSébastien Helleu
2022-12-29core: add option weechat.look.chat_space_right (issue #1862)Sébastien Helleu
2022-12-10core: do not display non printable chars, fix function utf8_char_size_screenSébastien Helleu
Now the function utf8_char_size_screen can return -1 when the char is not printable. It has a specific behavior for some chars: - U+0009: value of option weechat.look.tab_width - U+0001 to U+001F (except U+0009): 1 - U+00AD (soft hyphen): -1 - U+200B (zero width space): -1
2022-12-10core: display chars < 32 with a letter/symbol and reverse video attribute in ↵Sébastien Helleu
chat
2022-12-10core: replace call to memcpy by utf8_strncpySébastien Helleu
2022-10-05core: fix page scroll in bare display (closes #1830)Sébastien Helleu
2022-04-18core: add bar item "spacer"Sébastien Helleu
2022-01-30core: search in message tags when tags are displayed with /debug tagsSébastien Helleu
2022-01-30core: add support of date and tags in messages displayed in buffers with ↵Sébastien Helleu
free content, add function printf_y_date_tags (closes #1746)
2022-01-28core: move functions from gui-chat.c to gui-line.cSébastien Helleu
Functions moved and renamed: - gui_chat_build_string_prefix_message -> gui_line_build_string_prefix_message - gui_chat_build_string_message_tags -> gui_line_build_string_message_tags
2022-01-17core: update copyright datesSébastien Helleu
2021-02-28core: fix quoted line in cursor mode (closes #1602)Sébastien Helleu
Regression was introduced in version 2.7 by commit 93d2dbf3e1ef30e676a6edd56ab2b9bd2ddd70d9.
2021-01-02core: update copyright datesSébastien Helleu
2020-01-04core: update copyright datesSébastien Helleu
2019-10-14core: fix scrolling up in bare mode when switched to bare mode at the top of ↵Sébastien Helleu
the buffer (closes #899, issue #978)
2019-10-06Merge remote-tracking branch 'origin/pr/619'Sébastien Helleu
2019-04-13core: add option weechat.look.buffer_time_same (closes #1127)Simmo Saan
2019-01-01core: update copyright datesSébastien Helleu
2018-11-29core: use https for links to GNU GPL licenseSébastien Helleu
2018-01-05core: update copyright datesSébastien Helleu
2017-09-23core, plugins: check return code of strftime functionSébastien Helleu
2017-01-01core: update copyright datesSébastien Helleu
2016-12-17Merge remote-tracking branch 'origin/pr/802'Sébastien Helleu
2016-10-29core: fix display of empty lines in search mode (closes #829)Sébastien Helleu
2016-09-20core: add option weechat.look.align_multiline_wordsarza
2016-01-01core: update copyright datesSébastien Helleu
2015-12-03gui: add missing line pointer to long words split across lines (closes #617)Simmo Saan
Displaying a word which was forced to be split across lines added the new coords without pointer to the original line. This made them unquotable in cursor mode.
2015-12-03gui: fix focus data being offset when prefix_align is none (closes #610)Simmo Saan
window->coords_x_message stored a single x coordinate for the entire window which was used for message position calculation. Such approach does not work when prefix_align is none, thus now the x coordinate in question is exactly calculated for a line individually.
2015-08-23core: fix truncated messages after a word with a length of zero on screen ↵Sébastien Helleu
(bug #40985, issue #502)
2015-07-04core: fix type of value returned by functions gui_chat_string_next_char, ↵Sébastien Helleu
gui_chat_string_add_offset and gui_chat_string_add_offset_screen
2015-07-04api: fix type of value returned by functions utf8_prev_char, utf8_next_char ↵Sébastien Helleu
and utf8_add_offset
2015-07-04core: add missing comments before functions when the result must be freed ↵Sébastien Helleu
after use
2015-06-14core: fix display of time in bare display when option ↵Sébastien Helleu
weechat.look.buffer_time_format is set to empty string (closes #441) This reverts commit 2498ff63dba0ad3880fc3dadcac6b36f047ac0e2.
2015-01-01core: update copyright datesSébastien Helleu
2014-11-16core: fix display bug when scrolling in buffer on a filtered line (closes #240)Sébastien Helleu
2014-10-22core: display time in bare display only if option ↵Sébastien Helleu
weechat.look.buffer_time_format is not an empty string
2014-07-14core: hide message timestamp in bare display if timestamp is disabled in ↵Sébastien Helleu
buffer (closes #129)
2014-03-29core: add text search in buffers with free content (task #13051)Sebastien Helleu
2014-02-27core: replace constant by sizeof in a call to snprintfSebastien Helleu
2014-02-16core: add bare display mode (for easy text selection and click on URLs)Sebastien Helleu
New key: alt+"!", to swith to bare display (same key to come back to standard display). New options: - weechat.look.bare_display_exit_on_input (default: on): by default any changes in input will return to standard display - weechat.look.bare_display_time_format (default: "%H:%M"): the format of time used in bare display.
2014-02-10api: add integer return code for functions hook_{signal|hsignal}_sendSebastien Helleu
2014-01-15core: add option weechat.look.tab_widthSebastien Helleu
2014-01-05core: fix compilation warnings on OpenBSDSebastien Helleu
On OpenBSD, the variable "tv_sec" in struct timeval has type "long" (type "time_t" under Linux). So we need to copy this value to a temporary variable before using its pointer with function localtime().
2014-01-01core: update copyright datesSebastien Helleu
2013-12-11core: fix text emphasis with wide chars on screen like japanese (patch ↵Sebastien Helleu
#8253) (patch from Ryuunosuke Ayanokouzi)
2013-12-04core: add buffer property "day_change" to hide messages for the day change ↵Sebastien Helleu
in specific buffers
2013-10-10core: use one date format when day changes from day to day+1Sebastien Helleu