Skip to content
  • Kevin J. McCarthy's avatar
    Create a separate macro/push/exec event buffer. (closes #3779) · 53900afa
    Kevin J. McCarthy authored
    Currently, the SSL and TLS certficate prompts turn on
    OPTUNBUFFEREDINPUT, (to prevent macros and such from running right
    through the dialog).  Unfortunately, the menu dialog processing in
    menu_dialog_dokey() is using mutt_ungetch() to forward non-dialog keys
    on to standard menu processing.  With OPTUNBUFFEREDINPUT set, those keys
    never make it to the menu and are buffered until after the menu dialog.
    
    This patch creates a new event buffer, separate from the standard
    "unget" buffer, for use by macros, exec, and push events.  These events
    can be temporarily ignored by setting OPTIGNOREMACROEVENTS (renamed
    from OPTUNBUFFEREDINPUT), while continuing to allow unget events to be
    processed.
    
    Since the "push" and "unget" functions now go to different buffers,
    function names were slightly renamed, to make it less easy to
    unintentionally use the wrong function at the wrong time.
    53900afa