tickit_term_observe_sigwinch - Man Page

react to the SIGWINCH signal


#include <tickit.h>

void tickit_term_observe_sigwinch(TickitTerm *tt, bool observe);

Link with -ltickit.


tickit_term_observe_sigwinch() controls a setting on the TickitTerm instance that allows it to be informed when the process receives a SIGWINCH signal, meaning that the controlling terminal may have changed size.

When this flag is enabled on at least one terminal instance, a handler for the SIGWINCH signal is automatically installed by libtickit itself. On receipt of the signal the handler will mark a flag on any TickitTerm instance that is observing it to indicate that the window may have changed size. The next time these instances invoke any of several input-related functions (listed below), this flag will cause the function to first perform the actions of tickit_term_refresh_size(3). This deferred handling ensures that the TICKIT_EV_RESIZE event is only invoked at a time when the application is expecting input events, and not asynchronously during the signal handler itself.

Note that use of this ability requires giving control of the process-wide SIGWINCH signal to the libtickit library. If this is not suitable, the process should arrange to invoke tickit_term_refresh_size() at an appropriate time by some other mechanism.

Event-Deferral Functions

See Also

tickit_term_build(3), tickit_term_refresh_size(3), tickit_term_bind_event(3), tickit_term(7), tickit(7)

Referenced By

tickit_term_input_check_timeout_msec(3), tickit_term_input_push_bytes(3), tickit_term_input_readable(3), tickit_term_input_wait_msec(3), tickit_term_open_stdio(3).