From 12d0ce37db7323e8efd56d6a698a98abcb8d680b Mon Sep 17 00:00:00 2001 From: Akshay Nair Date: Tue, 11 Mar 2025 11:31:14 +0530 Subject: Add command+url adapter and switching --- src/widgets/CommandInput.cpp | 84 -------------------------------------------- 1 file changed, 84 deletions(-) delete mode 100644 src/widgets/CommandInput.cpp (limited to 'src/widgets/CommandInput.cpp') diff --git a/src/widgets/CommandInput.cpp b/src/widgets/CommandInput.cpp deleted file mode 100644 index 3ea0f38..0000000 --- a/src/widgets/CommandInput.cpp +++ /dev/null @@ -1,84 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "completion/CommandsModel.hpp" -#include "completion/Completer.hpp" -#include "widgets/CommandInput.hpp" - -const char *rootStyles = R"( - background-color: #000; - color: #fff; - border-radius: 0; -)"; - -CommandInput::CommandInput(QString defaultInput, QWidget *parentNode) - : QWidget(parentNode) { - setContentsMargins(0, 0, 0, 0); - setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed); - setStyleSheet(rootStyles); - - auto layout = new QVBoxLayout(this); - layout->setContentsMargins(0, 0, 0, 0); - - auto listModel = new CommandsModel(); - auto completer = new Completer(this); - completer->setModel(listModel); - - auto cmdLineBox = new QWidget(); - layout->addWidget(cmdLineBox); - auto cmdLineLayout = new QHBoxLayout(); - cmdLineBox->setLayout(cmdLineLayout); - cmdLineBox->layout()->setContentsMargins(0, 0, 0, 0); - cmdLineLayout->setSpacing(0); - - auto promptPrefix = new QLabel(tr(":")); - promptPrefix->setContentsMargins(0, 0, 0, 0); - input = new QLineEdit(defaultInput); - input->setFocusPolicy(Qt::StrongFocus); - input->setCompleter(completer); - // input->installEventFilter(completer); - - cmdLineLayout->addWidget(promptPrefix); - cmdLineLayout->addWidget(input); - - setFixedHeight(input->sizeHint().height()); -} - -void CommandInput::emitSubmit() { emit submitted(getInputCommand()); } - -void CommandInput::keyPressEvent(QKeyEvent *event) { - auto combo = event->keyCombination(); - auto ctrlL = combo.key() == Qt::Key_L && - combo.keyboardModifiers().testFlag(Qt::ControlModifier); - auto esc = combo.key() == Qt::Key_Escape; - auto enter = combo.key() == Qt::Key_Return || combo.key() == Qt::Key_Enter; - - if (esc || ctrlL) - emit cancelled(); - else if (enter) - emitSubmit(); -} - -void CommandInput::setInputText(QString text) { input->setText(text); } - -bool CommandInput::isInputFocussed() { return input->hasFocus(); } - -void CommandInput::setInputFocus(bool focussed) { - if (focussed) - input->setFocus(Qt::PopupFocusReason); - else - input->clearFocus(); -} - -QString CommandInput::getInputCommand() { return input->text(); } -- cgit v1.3.1