aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/fakevim
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2018-07-02 15:19:07 +0200
committerLukas Holecek <hluk@email.cz>2018-07-02 14:01:42 +0000
commitb3f4282edc336a72270d0b16119c6be7914c7430 (patch)
tree6638606854b6d04584827506541f46c9f4bc025e /src/plugins/fakevim
parentae01fe7c42ee84d19fb788ca9711a66a9787ca92 (diff)
FakeVim: Add support for :wqa
Task-number: QTCREATORBUG-20699 Change-Id: I01e5e69abe9a7192f19d604847443f550a20ef0f Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Lukas Holecek <hluk@email.cz>
Diffstat (limited to 'src/plugins/fakevim')
-rw-r--r--src/plugins/fakevim/fakevimhandler.h1
-rw-r--r--src/plugins/fakevim/fakevimplugin.cpp6
2 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/fakevim/fakevimhandler.h b/src/plugins/fakevim/fakevimhandler.h
index 153cf83d507..25ce463554b 100644
--- a/src/plugins/fakevim/fakevimhandler.h
+++ b/src/plugins/fakevim/fakevimhandler.h
@@ -158,7 +158,6 @@ public:
Signal<void(const QString &msg)> extraInformationChanged;
Signal<void(const QList<QTextEdit::ExtraSelection> &selection)> selectionChanged;
Signal<void(const QString &needle)> highlightMatches;
- Signal<void(QString *error)> writeAllRequested;
Signal<void(bool *moved, bool *forward, QTextCursor *cursor)> moveToMatchingParenthesis;
Signal<void(bool *result, QChar c)> checkForElectricCharacter;
Signal<void(int beginLine, int endLine, QChar typedChar)> indentRegion;
diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp
index 5c267e2b8b7..fae80d470a5 100644
--- a/src/plugins/fakevim/fakevimplugin.cpp
+++ b/src/plugins/fakevim/fakevimplugin.cpp
@@ -1921,14 +1921,16 @@ void FakeVimPluginPrivate::handleExCommand(FakeVimHandler *handler, bool *handle
if (!saved)
handler->showMessage(MessageError, Tr::tr("File not saved"));
- } else if (cmd.matches("wa", "wall")) {
- // :w[all]
+ } else if (cmd.matches("wa", "wall") || cmd.matches("wqa", "wqall")) {
+ // :wa[ll] :wqa[ll]
triggerAction(Core::Constants::SAVEALL);
const QList<IDocument *> failed = DocumentManager::modifiedDocuments();
if (failed.isEmpty())
handler->showMessage(MessageInfo, Tr::tr("Saving succeeded"));
else
handler->showMessage(MessageError, Tr::tr("%n files not saved", 0, failed.size()));
+ if (cmd.matches("wqa", "wqall"))
+ emit delayedQuitAllRequested(cmd.hasBang);
} else if (cmd.matches("q", "quit")) {
// :q[uit]
emit delayedQuitRequested(cmd.hasBang, m_editorToHandler.key(handler));