Return to select on macOS

This commit is contained in:
Le Tan 2019-03-25 19:40:03 +08:00
parent 03e9982980
commit 78a6602ad4
6 changed files with 25 additions and 12 deletions

View File

@ -62,7 +62,7 @@ void VNewFileDialog::setupUI(const QString &p_title,
templateBtn->setToolTip(tr("Manage Templates")); templateBtn->setToolTip(tr("Manage Templates"));
templateBtn->setProperty("FlatBtn", true); templateBtn->setProperty("FlatBtn", true);
connect(templateBtn, &QPushButton::clicked, connect(templateBtn, &QPushButton::clicked,
this, [this]() { this, []() {
QUrl url = QUrl::fromLocalFile(g_config->getTemplateConfigFolder()); QUrl url = QUrl::fromLocalFile(g_config->getTemplateConfigFolder());
QDesktopServices::openUrl(url); QDesktopServices::openUrl(url);
}); });
@ -86,7 +86,7 @@ void VNewFileDialog::setupUI(const QString &p_title,
m_insertTitleCB->setToolTip(tr("Insert note name into the new note as a title")); m_insertTitleCB->setToolTip(tr("Insert note name into the new note as a title"));
m_insertTitleCB->setChecked(g_config->getInsertTitleFromNoteName()); m_insertTitleCB->setChecked(g_config->getInsertTitleFromNoteName());
connect(m_insertTitleCB, &QCheckBox::stateChanged, connect(m_insertTitleCB, &QCheckBox::stateChanged,
this, [this](int p_state) { this, [](int p_state) {
g_config->setInsertTitleFromNoteName(p_state == Qt::Checked); g_config->setInsertTitleFromNoteName(p_state == Qt::Checked);
}); });

View File

@ -92,6 +92,19 @@ void VSelectDialog::keyPressEvent(QKeyEvent *p_event)
return; return;
} }
// On Mac OS X, it is `Command+O` to activate an item, instead of Return.
#if defined(Q_OS_MACOS) || defined(Q_OS_MAC)
int key = p_event->key();
if (key == Qt::Key_Return || key == Qt::Key_Enter) {
p_event->accept();
if (auto item = m_list->currentItem()) {
selectionChosen(item);
}
return;
}
#endif
QDialog::keyPressEvent(p_event); QDialog::keyPressEvent(p_event);
} }

View File

@ -346,7 +346,7 @@ void VDirectoryTree::contextMenuRequested(QPoint pos)
VUtils::fixTextWithShortcut(newNoteAct, "NewNote"); VUtils::fixTextWithShortcut(newNoteAct, "NewNote");
newNoteAct->setToolTip(tr("Create a note in selected folder")); newNoteAct->setToolTip(tr("Create a note in selected folder"));
connect(newNoteAct, &QAction::triggered, connect(newNoteAct, &QAction::triggered,
this, [this]() { this, []() {
g_mainWin->getFileList()->newFile(); g_mainWin->getFileList()->newFile();
}); });

View File

@ -411,7 +411,7 @@ void VMdEditor::contextMenuEvent(QContextMenuEvent *p_event)
toggleLivePreviewAct->setToolTip(tr("Toggle live preview panel for graphs")); toggleLivePreviewAct->setToolTip(tr("Toggle live preview panel for graphs"));
VUtils::fixTextWithCaptainShortcut(toggleLivePreviewAct, "LivePreview"); VUtils::fixTextWithCaptainShortcut(toggleLivePreviewAct, "LivePreview");
connect(toggleLivePreviewAct, &QAction::triggered, connect(toggleLivePreviewAct, &QAction::triggered,
this, [this, mdtab]() { this, [mdtab]() {
mdtab->toggleLivePreview(); mdtab->toggleLivePreview();
}); });
@ -1477,14 +1477,14 @@ void VMdEditor::initLinkAndPreviewMenu(QAction *p_before, QMenu *p_menu, const Q
QAction *viewImageAct = new QAction(tr("View Image"), p_menu); QAction *viewImageAct = new QAction(tr("View Image"), p_menu);
connect(viewImageAct, &QAction::triggered, connect(viewImageAct, &QAction::triggered,
this, [this, imgPath]() { this, [imgPath]() {
QDesktopServices::openUrl(VUtils::pathToUrl(imgPath)); QDesktopServices::openUrl(VUtils::pathToUrl(imgPath));
}); });
p_menu->insertAction(p_before, viewImageAct); p_menu->insertAction(p_before, viewImageAct);
QAction *copyImageLinkAct = new QAction(tr("Copy Image URL"), p_menu); QAction *copyImageLinkAct = new QAction(tr("Copy Image URL"), p_menu);
connect(copyImageLinkAct, &QAction::triggered, connect(copyImageLinkAct, &QAction::triggered,
this, [this, imgPath]() { this, [imgPath]() {
QClipboard *clipboard = QApplication::clipboard(); QClipboard *clipboard = QApplication::clipboard();
VClipboardUtils::setLinkToClipboard(clipboard, VClipboardUtils::setLinkToClipboard(clipboard,
imgPath, imgPath,
@ -1495,7 +1495,7 @@ void VMdEditor::initLinkAndPreviewMenu(QAction *p_before, QMenu *p_menu, const Q
if (isLocalFile) { if (isLocalFile) {
QAction *copyImagePathAct = new QAction(tr("Copy Image Path"), p_menu); QAction *copyImagePathAct = new QAction(tr("Copy Image Path"), p_menu);
connect(copyImagePathAct, &QAction::triggered, connect(copyImagePathAct, &QAction::triggered,
this, [this, imgPath]() { this, [imgPath]() {
QClipboard *clipboard = QApplication::clipboard(); QClipboard *clipboard = QApplication::clipboard();
QMimeData *data = new QMimeData(); QMimeData *data = new QMimeData();
data->setText(imgPath); data->setText(imgPath);
@ -1552,14 +1552,14 @@ void VMdEditor::initLinkAndPreviewMenu(QAction *p_before, QMenu *p_menu, const Q
QAction *viewLinkAct = new QAction(tr("View Link"), p_menu); QAction *viewLinkAct = new QAction(tr("View Link"), p_menu);
connect(viewLinkAct, &QAction::triggered, connect(viewLinkAct, &QAction::triggered,
this, [this, linkUrl]() { this, [linkUrl]() {
QDesktopServices::openUrl(VUtils::pathToUrl(linkUrl)); QDesktopServices::openUrl(VUtils::pathToUrl(linkUrl));
}); });
p_menu->insertAction(p_before, viewLinkAct); p_menu->insertAction(p_before, viewLinkAct);
QAction *copyLinkAct = new QAction(tr("Copy Link URL"), p_menu); QAction *copyLinkAct = new QAction(tr("Copy Link URL"), p_menu);
connect(copyLinkAct, &QAction::triggered, connect(copyLinkAct, &QAction::triggered,
this, [this, linkUrl]() { this, [linkUrl]() {
QClipboard *clipboard = QApplication::clipboard(); QClipboard *clipboard = QApplication::clipboard();
VClipboardUtils::setLinkToClipboard(clipboard, VClipboardUtils::setLinkToClipboard(clipboard,
linkUrl, linkUrl,
@ -1570,7 +1570,7 @@ void VMdEditor::initLinkAndPreviewMenu(QAction *p_before, QMenu *p_menu, const Q
if (isLocalFile) { if (isLocalFile) {
QAction *copyLinkPathAct = new QAction(tr("Copy Link Path"), p_menu); QAction *copyLinkPathAct = new QAction(tr("Copy Link Path"), p_menu);
connect(copyLinkPathAct, &QAction::triggered, connect(copyLinkPathAct, &QAction::triggered,
this, [this, linkUrl]() { this, [linkUrl]() {
QClipboard *clipboard = QApplication::clipboard(); QClipboard *clipboard = QApplication::clipboard();
QMimeData *data = new QMimeData(); QMimeData *data = new QMimeData();
data->setText(linkUrl); data->setText(linkUrl);

View File

@ -1085,7 +1085,7 @@ void VMdTab::applySnippet()
QWidgetAction *act = new QWidgetAction(&menu); QWidgetAction *act = new QWidgetAction(&menu);
act->setDefaultWidget(sel); act->setDefaultWidget(sel);
connect(sel, &VInsertSelector::accepted, connect(sel, &VInsertSelector::accepted,
this, [this, &menu]() { this, [&menu]() {
QKeyEvent *escEvent = new QKeyEvent(QEvent::KeyPress, Qt::Key_Escape, QKeyEvent *escEvent = new QKeyEvent(QEvent::KeyPress, Qt::Key_Escape,
Qt::NoModifier); Qt::NoModifier);
QCoreApplication::postEvent(&menu, escEvent); QCoreApplication::postEvent(&menu, escEvent);

View File

@ -472,7 +472,7 @@ void VWebView::initPreviewTunnelMenu(QAction *p_before, QMenu *p_menu)
} }
connect(ag, &QActionGroup::triggered, connect(ag, &QActionGroup::triggered,
this, [this](QAction *p_act) { this, [](QAction *p_act) {
int data = p_act->data().toInt(); int data = p_act->data().toInt();
g_config->setSmartLivePreview(data); g_config->setSmartLivePreview(data);
}); });