Fix ability to cut/paste text in LineEdit/TextEdit in readonly mode.

Fixes #6466

(cherry picked from commit 9c71e5a9df)
This commit is contained in:
Andreas Haas 2016-09-19 14:17:48 +02:00 committed by Rémi Verschelde
parent 4ca83c635f
commit d3b549f2a3
2 changed files with 24 additions and 12 deletions

View File

@ -1190,24 +1190,28 @@ void LineEdit::menu_option(int p_option) {
switch(p_option) {
case MENU_CUT: {
cut_text();
if (editable) {
cut_text();
}
} break;
case MENU_COPY: {
copy_text();
} break;
case MENU_PASTE: {
paste_text();
if (editable) {
paste_text();
}
} break;
case MENU_CLEAR: {
clear();
if (editable) {
clear();
}
} break;
case MENU_SELECT_ALL: {
select_all();
} break;
case MENU_UNDO: {
undo();
} break;

View File

@ -2481,7 +2481,9 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
} break;
case KEY_X: {
if (readonly) {
break;
}
if (!k.mod.command || k.mod.shift || k.mod.alt) {
scancode_handled=false;
break;
@ -2513,7 +2515,9 @@ void TextEdit::_input_event(const InputEvent& p_input_event) {
undo();
} break;
case KEY_V: {
if (readonly) {
break;
}
if (!k.mod.command || k.mod.shift || k.mod.alt) {
scancode_handled=false;
break;
@ -4401,18 +4405,22 @@ void TextEdit::menu_option(int p_option) {
switch( p_option ) {
case MENU_CUT: {
cut();
if (!readonly) {
cut();
}
} break;
case MENU_COPY: {
copy();
} break;
case MENU_PASTE: {
paste();
if (!readonly) {
paste();
}
} break;
case MENU_CLEAR: {
clear();
if (!readonly) {
clear();
}
} break;
case MENU_SELECT_ALL: {
select_all();