Ticket #1474 (closed task: fixed)
TTY layer
Reported by: | andrew_b | Owned by: | andrew_b |
---|---|---|---|
Priority: | major | Milestone: | 4.7.0-pre2 |
Component: | mc-tty | Version: | 4.7.0-pre1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Branch state: | Votes for changeset: | committed-master |
Description
I propose to isolate screen and keyboard functions into TTY layer as much as possible. MC core should not use terminal library (S-Lang and NCurses) functions directly but should use TTY wrappers.
At this moment, most of this work is done in HACK_tty branch.
Please review.
Change History
comment:1 Changed 15 years ago by andrew_b
- Status changed from new to accepted
- Owner set to andrew_b
comment:2 Changed 15 years ago by slavazanko
changeset:38e53588ccedabb24c3b7b788524f34f5a570657
Move function src/maic.c:setup_sigwinch() into src/tty/tty.c:tty_setup_signal_sigwinch()
Also renamed function src/layout.c:flag_winch() to src/layout.c:layout_sigwinch_cb() for more sence.
comment:3 Changed 15 years ago by andrew_b
- Blocking 74, 1414 added
- severity changed from no branch to on review
comment:5 Changed 15 years ago by andrew_b
- Blocking 1498 added
(In #1498) Confirmed with slang-2.1.3. This bug is S-Lang related, not NCurses.
Currently, during initalization S-Lang limits the scren size. Look at SLtt_get_screen_size():
if ((r <= 0) || (r > SLTT_MAX_SCREEN_ROWS)) r = 24; if ((c <= 0) || (c > SLTT_MAX_SCREEN_COLS)) c = 80; SLtt_Screen_Rows = r; SLtt_Screen_Cols = c;
where r and c are the actual screen sizes. But
# define SLTT_MAX_SCREEN_COLS 512 # define SLTT_MAX_SCREEN_ROWS 512
comment:7 Changed 15 years ago by slavazanko
- Votes for changeset changed from angel_il to angel_il slavazanko
- severity changed from on review to approved
comment:8 Changed 15 years ago by andrew_b
- Status changed from accepted to testing
- Votes for changeset changed from angel_il slavazanko to commited-master
- Resolution set to fixed
- severity changed from approved to merged
- Blocking 74, 1414, 1497, 1498 removed
Merged to master.
git log --pretty=oneline 3eeeb35..e1cbec7
comment:10 Changed 15 years ago by angel_il
- Status changed from closed to reopened
- Resolution fixed deleted
comment:11 Changed 15 years ago by angel_il
<slavazanko/h> must be
102 #ifdef HAVE_SLANG_SLANG_H
103 #include <slang/slang.h>
104 #else
105 #include <slang.h>
106 #endif
de-facto
102 #ifdef HAVE_SLANG_SLANG_H
103 #include <slang/slang.h>
104 #else
105 #include <slang/slang.h>
106 #endif
need fix typo in include
comment:12 Changed 15 years ago by angel_il
branch: 1474_fix_include (parent:master)
changeset: 9e0316c777a04e1cb39cdd46b8edbd0d61136e08
comment:13 Changed 15 years ago by slavazanko
- Votes for changeset changed from commited-master to slavzanko
- severity changed from merged to on review
comment:14 Changed 15 years ago by slyfox
- Votes for changeset changed from slavzanko to slavzanko slyfox
- severity changed from on review to approved
comment:15 Changed 15 years ago by angel_il
- Status changed from reopened to closed
- Votes for changeset changed from slavzanko slyfox to commited-master
- Resolution set to fixed
- severity changed from approved to merged