---
name: "tickit_term_observe_sigwinch"
section: "3"
platform: "linux"
package: "libtickit-dev"
version: "0.4.3-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/tickit_term_observe_sigwinch"
---

# tickit\_term\_observe\_sigwinch(3)

react to the SIGWINCH signal

## NAME

tickit\_term\_observe\_sigwinch - react to the SIGWINCH signal

## SYNOPSIS

```
#include <tickit.h>

void tickit_term_observe_sigwinch(TickitTerm *tt, bool observe);
```

Link with *-ltickit*.

## DESCRIPTION

**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)](/tickit_term_refresh_size/3.md). 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

- \*

  [**tickit\_term\_input\_push\_bytes**(3)](/tickit_term_input_push_bytes/3.md)

- \*

  [**tickit\_term\_input\_readable**(3)](/tickit_term_input_readable/3.md)

- \*

  The [**tickit\_term\_input\_check\_timeout\_msec**(3)](/tickit_term_input_check_timeout_msec/3.md) family

- \*

  The [**tickit\_term\_input\_wait\_msec**(3)](/tickit_term_input_wait_msec/3.md) family

## SEE ALSO

[**tickit\_term\_build**(3)](/tickit_term_build/3.md), [**tickit\_term\_refresh\_size**(3)](/tickit_term_refresh_size/3.md), [**tickit\_term\_bind\_event**(3)](/tickit_term_bind_event/3.md), [**tickit\_term**(7)](/tickit_term/7.md), [**tickit**(7)](/tickit/7.md)
