Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • owl.c

    rd12a8c7 r205e164  
    137137  tcgetattr(0, &tio);
    138138  tio.c_iflag &= ~(ISTRIP|IEXTEN);
    139   tio.c_cc[VQUIT] = 0;
    140   tio.c_cc[VSUSP] = 0;
     139  tio.c_cc[VQUIT] = fpathconf(STDIN, _PC_VDISABLE);
     140  tio.c_cc[VSUSP] = fpathconf(STDIN, _PC_VDISABLE);
    141141  tcsetattr(0, TCSAFLUSH, &tio);
    142142
     
    240240  /* log the message if we need to */
    241241  owl_log_message(m);
     242  /* redraw the sepbar; TODO: don't violate layering */
     243  owl_global_sepbar_dirty(&g);
    242244
    243245  return 1;
     
    272274    /* this should be optimized to not run if the new messages won't be displayed */
    273275    owl_mainwin_redisplay(owl_global_get_mainwin(&g));
    274     sepbar(NULL);
    275     owl_global_set_needrefresh(&g);
    276276  }
    277277  return newmsgs;
     
    428428{
    429429  /* if a resize has been scheduled, deal with it */
    430   owl_global_resize(&g, 0, 0);
    431   /* also handle relayouts */
    432   owl_global_relayout(&g);
    433 
     430  owl_global_check_resize(&g);
    434431  /* update the terminal if we need to */
    435   if (owl_global_is_needrefresh(&g)) {
    436     /* these are here in case a relayout changes the windows */
    437     WINDOW *sepwin = owl_global_get_curs_sepwin(&g);
    438     WINDOW *typwin = owl_global_get_curs_typwin(&g);
    439 
    440     /* push all changed windows to screen */
    441     update_panels();
    442     /* leave the cursor in the appropriate window */
    443     if (!owl_popwin_is_active(owl_global_get_popwin(&g))
    444         && owl_global_get_typwin(&g)) {
    445       owl_function_set_cursor(typwin);
    446     } else {
    447       owl_function_set_cursor(sepwin);
    448     }
    449     doupdate();
    450     owl_global_set_noneedrefresh(&g);
    451   }
     432  owl_window_redraw_scheduled();
    452433  return 0;
    453434}
     
    475456  owl_parse_options(argc, argv, &opts);
    476457  g.load_initial_subs = opts.load_initial_subs;
     458
     459  owl_function_debugmsg("startup: Finished parsing arguments");
    477460
    478461  owl_register_signal_handlers();
     
    517500
    518501  owl_global_pop_context(&g);
    519   owl_global_push_context(&g, OWL_CTX_READCONFIG, NULL, NULL);
     502  owl_global_push_context(&g, OWL_CTX_READCONFIG, NULL, NULL, NULL);
    520503
    521504  perlerr=owl_perlconfig_initperl(opts.configfile, &argc, &argv, &env);
     
    561544    "-----------------------------------------------------------------m-m---\n"
    562545  );
    563   sepbar(NULL);
    564546
    565547  /* process the startup file */
     
    585567
    586568  owl_global_pop_context(&g);
    587   owl_global_push_context(&g, OWL_CTX_READCONFIG|OWL_CTX_RECV, NULL, "recv");
    588 
    589   /* If we ever deprecate the mainloop hook, remove this. */
    590   owl_select_add_timer(0, 1, owl_perlconfig_mainloop, NULL, NULL);
     569  owl_global_push_context(&g, OWL_CTX_READCONFIG|OWL_CTX_RECV, NULL, "recv", NULL);
    591570
    592571  owl_select_add_pre_select_action(owl_refresh_pre_select_action, NULL, NULL);
Note: See TracChangeset for help on using the changeset viewer.