mirror of
https://github.com/aseprite/aseprite.git
synced 2025-04-18 11:42:47 +00:00
Fix crash when Esc key is pressed in drag-and-drop of frames in Timeline
This commit is contained in:
parent
6924990992
commit
712d48245b
@ -771,6 +771,16 @@ bool Timeline::onProcessMessage(Message* msg)
|
|||||||
case kKeyDownMessage:
|
case kKeyDownMessage:
|
||||||
switch (static_cast<KeyMessage*>(msg)->scancode()) {
|
switch (static_cast<KeyMessage*>(msg)->scancode()) {
|
||||||
|
|
||||||
|
case kKeyEsc:
|
||||||
|
if (m_state == STATE_STANDBY) {
|
||||||
|
m_range.disableRange();
|
||||||
|
invalidate();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
m_state = STATE_STANDBY;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
case kKeySpace: {
|
case kKeySpace: {
|
||||||
setCursor(jmouse_x(0), jmouse_y(0));
|
setCursor(jmouse_x(0), jmouse_y(0));
|
||||||
return true;
|
return true;
|
||||||
@ -781,11 +791,6 @@ bool Timeline::onProcessMessage(Message* msg)
|
|||||||
case kKeyUpMessage:
|
case kKeyUpMessage:
|
||||||
switch (static_cast<KeyMessage*>(msg)->scancode()) {
|
switch (static_cast<KeyMessage*>(msg)->scancode()) {
|
||||||
|
|
||||||
case kKeyEsc:
|
|
||||||
m_range.disableRange();
|
|
||||||
invalidate();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case kKeySpace: {
|
case kKeySpace: {
|
||||||
// We have to clear all the KEY_SPACE in buffer.
|
// We have to clear all the KEY_SPACE in buffer.
|
||||||
clear_keybuf();
|
clear_keybuf();
|
||||||
@ -1794,6 +1799,9 @@ void Timeline::dropRange(DropOp op)
|
|||||||
if (op == Timeline::kMove && drop.layerBegin() == m_range.layerBegin())
|
if (op == Timeline::kMove && drop.layerBegin() == m_range.layerBegin())
|
||||||
return;
|
return;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
ASSERT(false && "You shouldn't call dropRange() if the range is disabled");
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const char* undoLabel = NULL;
|
const char* undoLabel = NULL;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user