diff options
author | Eike Ziller <eike.ziller@digia.com> | 2014-01-08 11:01:06 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@digia.com> | 2014-01-08 11:01:06 +0100 |
commit | 236ea9efb912c90cf3ecd6b03006f40e8da4d5f2 (patch) | |
tree | 5a0d09b49272e510d289483b52f991820d2a37cc /src/plugins/fakevim | |
parent | 9f46078afea181dda723f15de7f2d7f9fc5c303c (diff) | |
parent | 746c5d886395f66d3f7af1461555a75300201db6 (diff) |
Merge remote-tracking branch 'origin/3.0'
Conflicts:
share/qtcreator/debugger/dumper.cpp
share/qtcreator/debugger/dumper_p.h
share/qtcreator/debugger/test/main.cpp
src/plugins/debugger/gdb/classicgdbengine.cpp
src/plugins/debugger/gdb/pythongdbengine.cpp
src/plugins/debugger/lldblib/guest/lldbengineguest.cpp
src/plugins/debugger/lldblib/guest/lldbengineguest.h
src/plugins/debugger/lldblib/guest/main.cpp
src/plugins/debugger/lldblib/ipcengineguest.cpp
src/plugins/debugger/lldblib/ipcengineguest.h
src/plugins/debugger/lldblib/ipcenginehost.cpp
src/plugins/debugger/lldblib/ipcenginehost.h
src/plugins/debugger/lldblib/lldbenginehost.cpp
src/plugins/debugger/lldblib/lldboptionspage.cpp
src/plugins/qbsprojectmanager/qbsstep.cpp
src/plugins/qbsprojectmanager/qbsstep.h
src/plugins/qmlprofiler/canvas/qdeclarativecanvas.cpp
src/plugins/qmlprofiler/canvas/qdeclarativecanvas_p.h
src/plugins/qmlprofiler/canvas/qdeclarativecontext2d.cpp
src/plugins/qmlprofiler/canvas/qdeclarativecontext2d_p.h
src/plugins/qmlprofiler/canvas/qmlprofilercanvas.cpp
src/plugins/qnx/blackberrycheckdevmodestep.cpp
src/plugins/qtsupport/debugginghelper.cpp
Change-Id: Ie9fd0a885fb6264a6a8a72daee071b75bcbd2e9d
Diffstat (limited to 'src/plugins/fakevim')
-rw-r--r-- | src/plugins/fakevim/FakeVim.pluginspec.in | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevim_test.cpp | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimactions.cpp | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimactions.h | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimhandler.cpp | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimhandler.h | 2 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimplugin.cpp | 71 | ||||
-rw-r--r-- | src/plugins/fakevim/fakevimplugin.h | 2 |
8 files changed, 57 insertions, 28 deletions
diff --git a/src/plugins/fakevim/FakeVim.pluginspec.in b/src/plugins/fakevim/FakeVim.pluginspec.in index f42f3a71750..d8c2b8658da 100644 --- a/src/plugins/fakevim/FakeVim.pluginspec.in +++ b/src/plugins/fakevim/FakeVim.pluginspec.in @@ -1,6 +1,6 @@ <plugin name=\"FakeVim\" version=\"$$QTCREATOR_VERSION\" compatVersion=\"$$QTCREATOR_COMPAT_VERSION\"> <vendor>Digia Plc</vendor> - <copyright>(C) 2013 Digia Plc</copyright> + <copyright>(C) 2014 Digia Plc</copyright> <license> Commercial Usage diff --git a/src/plugins/fakevim/fakevim_test.cpp b/src/plugins/fakevim/fakevim_test.cpp index 997a684c905..037eb3ef27a 100644 --- a/src/plugins/fakevim/fakevim_test.cpp +++ b/src/plugins/fakevim/fakevim_test.cpp @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2013 Lukas Holecek <hluk@email.cz> +** Copyright (C) 2014 Lukas Holecek <hluk@email.cz> ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. diff --git a/src/plugins/fakevim/fakevimactions.cpp b/src/plugins/fakevim/fakevimactions.cpp index 22aad3fc26d..183ff884ac2 100644 --- a/src/plugins/fakevim/fakevimactions.cpp +++ b/src/plugins/fakevim/fakevimactions.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. diff --git a/src/plugins/fakevim/fakevimactions.h b/src/plugins/fakevim/fakevimactions.h index 982296e4764..dc56976b509 100644 --- a/src/plugins/fakevim/fakevimactions.h +++ b/src/plugins/fakevim/fakevimactions.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 68fb41949f2..7d471b8c13e 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. diff --git a/src/plugins/fakevim/fakevimhandler.h b/src/plugins/fakevim/fakevimhandler.h index e6a1320b5ac..408b1c3cc3c 100644 --- a/src/plugins/fakevim/fakevimhandler.h +++ b/src/plugins/fakevim/fakevimhandler.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp index 7dddb529141..d0af40cd7dc 100644 --- a/src/plugins/fakevim/fakevimplugin.cpp +++ b/src/plugins/fakevim/fakevimplugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. @@ -100,6 +100,7 @@ #include <QTextBlock> #include <QTextCursor> #include <QTextEdit> +#include <QTimer> #include <QTreeWidgetItem> using namespace TextEditor; @@ -121,7 +122,11 @@ class MiniBuffer : public QStackedWidget Q_OBJECT public: - MiniBuffer() : m_label(new QLabel(this)), m_edit(new QLineEdit(this)), m_eventFilter(0) + MiniBuffer() + : m_label(new QLabel(this)) + , m_edit(new QLineEdit(this)) + , m_eventFilter(0) + , m_lastMessageLevel(MessageMode) { connect(m_edit, SIGNAL(textEdited(QString)), SLOT(changed())); connect(m_edit, SIGNAL(cursorPositionChanged(int,int)), SLOT(changed())); @@ -130,6 +135,10 @@ public: addWidget(m_label); addWidget(m_edit); + + m_hideTimer.setSingleShot(true); + m_hideTimer.setInterval(8000); + connect(&m_hideTimer, SIGNAL(timeout()), SLOT(hide())); } void setContents(const QString &contents, int cursorPos, int anchorPos, @@ -146,25 +155,32 @@ public: m_edit->blockSignals(false); setCurrentWidget(m_edit); m_edit->setFocus(); - } else if (contents.isEmpty() && messageLevel != MessageShowCmd) { - hide(); } else { - show(); - m_label->setText(contents); - - QString css; - if (messageLevel == MessageError) { - css = _("border:1px solid rgba(255,255,255,150);" - "background-color:rgba(255,0,0,100);"); - } else if (messageLevel == MessageWarning) { - css = _("border:1px solid rgba(255,255,255,120);" - "background-color:rgba(255,255,0,20);"); - } else if (messageLevel == MessageShowCmd) { - css = _("border:1px solid rgba(255,255,255,120);" - "background-color:rgba(100,255,100,30);"); + if (contents.isEmpty()) { + if (m_lastMessageLevel == MessageMode) + hide(); + else + m_hideTimer.start(); + } else { + m_hideTimer.stop(); + show(); + + m_label->setText(contents); + + QString css; + if (messageLevel == MessageError) { + css = _("border:1px solid rgba(255,255,255,150);" + "background-color:rgba(255,0,0,100);"); + } else if (messageLevel == MessageWarning) { + css = _("border:1px solid rgba(255,255,255,120);" + "background-color:rgba(255,255,0,20);"); + } else if (messageLevel == MessageShowCmd) { + css = _("border:1px solid rgba(255,255,255,120);" + "background-color:rgba(100,255,100,30);"); + } + m_label->setStyleSheet(QString::fromLatin1( + "*{border-radius:2px;padding-left:4px;padding-right:4px;%1}").arg(css)); } - m_label->setStyleSheet(QString::fromLatin1( - "*{border-radius:2px;padding-left:4px;padding-right:4px;%1}").arg(css)); if (m_edit->hasFocus()) emit edited(QString(), -1, -1); @@ -184,6 +200,8 @@ public: } m_eventFilter = eventFilter; } + + m_lastMessageLevel = messageLevel; } QSize sizeHint() const @@ -210,6 +228,8 @@ private: QLabel *m_label; QLineEdit *m_edit; QObject *m_eventFilter; + QTimer m_hideTimer; + int m_lastMessageLevel; }; /////////////////////////////////////////////////////////////////////// @@ -1108,11 +1128,20 @@ void FakeVimPluginPrivate::userActionTriggered() const int key = act->data().toInt(); if (!key) return; - QString cmd = userCommandMap().value(key); IEditor *editor = EditorManager::currentEditor(); FakeVimHandler *handler = m_editorToHandler[editor]; - if (handler) + if (handler) { + // If disabled, enable FakeVim mode just for single user command. + bool enableFakeVim = !theFakeVimSetting(ConfigUseFakeVim)->value().toBool(); + if (enableFakeVim) + setUseFakeVimInternal(true); + + const QString cmd = userCommandMap().value(key); handler->handleInput(cmd); + + if (enableFakeVim) + setUseFakeVimInternal(false); + } } diff --git a/src/plugins/fakevim/fakevimplugin.h b/src/plugins/fakevim/fakevimplugin.h index a8e7d8867c8..db1ced99f0c 100644 --- a/src/plugins/fakevim/fakevimplugin.h +++ b/src/plugins/fakevim/fakevimplugin.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator. |