/*
* Command Handlers
- * This is the inofficial documentation of all the TERM_CMD_* definitions. Each
+ * This is the unofficial documentation of all the TERM_CMD_* definitions. Each
* handled command has a separate function with an extensive comment on the
* semantics of the command.
* Note that many semantics are unknown and need to be verified. This is mostly
/*
* DECELR - enable-locator-reporting
* This changes the locator-reporting mode. @args[0] specifies the mode
- * to set, 0 disables locator-reporting, 1 enables it continously, 2
+ * to set, 0 disables locator-reporting, 1 enables it continuously, 2
* enables it for a single report. @args[1] specifies the
* precision-mode. 0 and 2 set the reporting to cell-precision, 1 sets
* pixel-precision.
return 0;
}
+unsigned int term_screen_get_width(term_screen *screen) {
+ assert_return(screen, -EINVAL);
+
+ return screen->page->width;
+}
+
+unsigned int term_screen_get_height(term_screen *screen) {
+ assert_return(screen, -EINVAL);
+
+ return screen->page->height;
+}
+
int term_screen_feed_text(term_screen *screen, const uint8_t *in, size_t size) {
- const uint32_t *ucs4_str;
+ uint32_t *ucs4_str;
size_t i, j, ucs4_len;
const term_seq *seq;
int r;
* 8bit mode if the stream is not valid UTF-8. This should be more than
* enough to support old 7bit/8bit modes. */
for (i = 0; i < size; ++i) {
- ucs4_str = term_utf8_decode(&screen->utf8, &ucs4_len, in[i]);
+ ucs4_len = term_utf8_decode(&screen->utf8, &ucs4_str, in[i]);
for (j = 0; j < ucs4_len; ++j) {
r = term_parser_feed(screen->parser, &seq, ucs4_str[j]);
if (r < 0) {