version 1.290, 2019/06/26 18:28:31 |
version 1.291, 2019/07/02 20:09:19 |
|
|
fatal("gettimeofday failed"); |
fatal("gettimeofday failed"); |
session_update_activity(s, &c->activity_time); |
session_update_activity(s, &c->activity_time); |
|
|
/* Handle status line. */ |
|
if (~c->flags & CLIENT_READONLY) |
|
status_message_clear(c); |
|
if (c->prompt_string != NULL) { |
|
if (c->flags & CLIENT_READONLY) |
|
goto out; |
|
if (status_prompt_key(c, key) == 0) |
|
goto out; |
|
} |
|
|
|
/* Check for mouse keys. */ |
/* Check for mouse keys. */ |
m->valid = 0; |
m->valid = 0; |
if (key == KEYC_MOUSE) { |
if (key == KEYC_MOUSE) { |
|
|
return (0); |
return (0); |
|
|
/* |
/* |
* Key presses in overlay mode are a special case. The queue might be |
* Key presses in overlay mode and the command prompt are a special |
* blocked so they need to be processed immediately rather than queued. |
* case. The queue might be blocked so they need to be processed |
|
* immediately rather than queued. |
*/ |
*/ |
if ((~c->flags & CLIENT_READONLY) && c->overlay_key != NULL) { |
if (~c->flags & CLIENT_READONLY) { |
switch (c->overlay_key(c, event)) { |
status_message_clear(c); |
case 0: |
if (c->prompt_string != NULL) { |
return (0); |
if (status_prompt_key(c, event->key) == 0) |
case 1: |
return (0); |
server_client_clear_overlay(c); |
} |
return (0); |
if (c->overlay_key != NULL) { |
|
switch (c->overlay_key(c, event)) { |
|
case 0: |
|
return (0); |
|
case 1: |
|
server_client_clear_overlay(c); |
|
return (0); |
|
} |
} |
} |
} |
} |
|
|