Changeset 263320f for global.c


Ignore:
Timestamp:
Apr 28, 2010, 2:27:58 PM (14 years ago)
Author:
David Benjamin <davidben@mit.edu>
Branches:
master, release-1.10, release-1.7, release-1.8, release-1.9
Children:
f7cf6c2
Parents:
f9f88f3
git-author:
David Benjamin <davidben@mit.edu> (04/28/10 13:21:14)
git-committer:
David Benjamin <davidben@mit.edu> (04/28/10 14:27:58)
Message:
Require resizeterm

This allows us to get rid of the endwin, which causes problems.
Specifically that ncurses will query the size itself on the next
doupdate, causing a potential race. It also results in an annoying
flicker that we see in typwindelta.

If we punt passing arguments to owl_global_resize, I think we can
support resizeterm-less curses with a bit of a dance:

  endwin()
  h,w = query_terminal_size()
  relayout_windows(h, w)
  doupdate()
  if (h,w != query_ncurses_size())
      h,w = query_ncurses_size()
      relayout_windows(h, w)

(This will only flicker given a race.) That said, this is annoying and
we build with our own curses on athena 9. We may as well just assume
it's there.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • global.c

    rf9f88f3 r263320f  
    493493  g->resizepending = 0;
    494494
    495   if (!isendwin()) {
    496     endwin();
    497   }
    498 
    499495  _owl_global_get_size(&g->lines, &g->cols);
    500496  if (x != 0) {
     
    505501  }
    506502
    507 #ifdef HAVE_RESIZETERM
    508503  resizeterm(g->lines, g->cols);
    509 #endif
    510504
    511505  owl_function_debugmsg("New size is %i lines, %i cols.", g->lines, g->cols);
Note: See TracChangeset for help on using the changeset viewer.