Fix for layerBox
ActivePublic

Authored by WhaleKit on Mar 27 2017, 10:59 AM.
diff --git a/libs/ui/KisNodeDelegate.cpp b/libs/ui/KisNodeDelegate.cpp
index 4f71bcd..914da68 100644
--- a/libs/ui/KisNodeDelegate.cpp
+++ b/libs/ui/KisNodeDelegate.cpp
@@ -808,7 +808,60 @@ bool KisNodeDelegate::eventFilter(QObject *object, QEvent *event)
emit commitData(edit);
emit closeEditor(edit);
}
- }
+ } break;
+ case QEvent::ShortcutOverride:{
+ //workaround, to let (make sure) QLineEdit receive key events it can handle
+ //without shortcuts system stealing them
+ QLineEdit *edit = qobject_cast<QLineEdit*>(object);
+ if (edit){//valid for any QLieEdit
+ auto* key = static_cast<QKeyEvent*>(event);
+
+ if (key->modifiers() == Qt::NoModifier){
+ switch (key->key()){
+ case Qt::Key_Escape:
+ case Qt::Key_Tab:
+ case Qt::Key_Backtab:
+ case Qt::Key_Return:
+ case Qt::Key_Enter:
+ event->accept();
+ return true;
+ default: break;
+ }
+ }
+ static constexpr QKeySequence::StandardKey actionsForQLineEdit[]{
+ QKeySequence::MoveToNextChar
+ ,QKeySequence::MoveToPreviousChar
+ ,QKeySequence::MoveToStartOfLine
+ ,QKeySequence::MoveToEndOfLine
+ ,QKeySequence::MoveToPreviousWord
+ ,QKeySequence::MoveToNextWord
+ ,QKeySequence::SelectPreviousChar
+ ,QKeySequence::SelectNextChar
+ ,QKeySequence::SelectNextWord
+ ,QKeySequence::SelectPreviousWord
+ ,QKeySequence::SelectStartOfLine
+ ,QKeySequence::SelectEndOfLine
+ ,QKeySequence::SelectAll
+ ,QKeySequence::Deselect
+ ,QKeySequence::Backspace
+ ,QKeySequence::DeleteStartOfWord
+ ,QKeySequence::Delete
+ ,QKeySequence::DeleteEndOfWord
+ ,QKeySequence::DeleteEndOfLine
+ ,QKeySequence::Copy
+ ,QKeySequence::Paste
+ ,QKeySequence::Cut
+ ,QKeySequence::Undo
+ ,QKeySequence::Redo
+ };
+ for(QKeySequence::StandardKey sk : actionsForQLineEdit){
+ if (key->matches(sk)){
+ event->accept();
+ return true;
+ }
+ }
+ }//if (edit)
+ } break;
default: break;
}
WhaleKit created this paste.Mar 27 2017, 10:59 AM
WhaleKit created this object in space S1 KDE Community.
WhaleKit changed the title of this paste from Solution for layerBox to Fix for layerBox.Mar 27 2017, 11:51 AM
WhaleKit edited the content of this paste. (Show Details)Mar 27 2017, 3:06 PM