Merge pull request #10 from namecheap/bugfix/RND-703-flameshot-choose-an-app-to-open-a-capture-editor-action-doesn-t-work-properly

MacOS - disable CaptureToolButton
This commit is contained in:
Yurii Puchkov
2020-12-03 15:42:24 +02:00
committed by GitHub
6 changed files with 43 additions and 27 deletions

View File

@@ -282,16 +282,16 @@ void Controller::enableTrayIcon()
m_trayIcon = new QSystemTrayIcon();
m_trayIcon->setToolTip(QStringLiteral("Flameshot"));
#if not(defined(Q_OS_WIN) || defined(Q_OS_MAC) || defined(Q_OS_MAC64) || \
defined(Q_OS_MACOS) || defined(Q_OS_MACX))
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
m_trayIcon->setContextMenu(m_trayIconMenu);
#endif
QIcon trayicon =
QIcon::fromTheme("flameshot-tray", QIcon(":img/app/flameshot.png"));
m_trayIcon->setIcon(trayicon);
#if not(defined(Q_OS_WIN) || defined(Q_OS_MAC) || defined(Q_OS_MAC64) || \
defined(Q_OS_MACOS) || defined(Q_OS_MACX))
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
auto trayIconActivated = [this](QSystemTrayIcon::ActivationReason r) {
if (r == QSystemTrayIcon::Trigger) {
startVisualCapture();
@@ -306,7 +306,7 @@ void Controller::enableTrayIcon()
if (m_trayIconMenu->isVisible()) {
m_trayIconMenu->hide();
} else {
m_trayIconMenu->popup(QPoint(QCursor::pos().x(), 0));
m_trayIconMenu->popup(QCursor::pos());
}
};
connect(m_trayIcon, &QSystemTrayIcon::activated, this, trayIconActivated);

View File

@@ -94,9 +94,12 @@ CaptureTool* ToolFactory::CreateTool(CaptureToolButton::ButtonType t,
case CaptureToolButton::TYPE_REDO:
tool = new RedoTool(parent);
break;
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
case CaptureToolButton::TYPE_OPEN_APP:
tool = new AppLauncher(parent);
break;
#endif
case CaptureToolButton::TYPE_PIXELATE:
tool = new PixelateTool(parent);
break;

View File

@@ -60,7 +60,10 @@ QVector<CaptureToolButton::ButtonType> ConfigHandler::getButtons()
<< CaptureToolButton::TYPE_COPY << CaptureToolButton::TYPE_SAVE
<< CaptureToolButton::TYPE_EXIT
<< CaptureToolButton::TYPE_IMAGEUPLOADER
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
<< CaptureToolButton::TYPE_OPEN_APP
#endif
<< CaptureToolButton::TYPE_PIN << CaptureToolButton::TYPE_TEXT
<< CaptureToolButton::TYPE_CIRCLECOUNT;
}

View File

@@ -112,9 +112,12 @@ const QKeySequence& ConfigShortcuts::captureShortcutDefault(
case CaptureToolButton::ButtonType::TYPE_IMAGEUPLOADER:
m_ks = QKeySequence(Qt::Key_Return);
break;
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
case CaptureToolButton::ButtonType::TYPE_OPEN_APP:
m_ks = QKeySequence(Qt::CTRL + Qt::Key_O);
break;
#endif
case CaptureToolButton::ButtonType::TYPE_PIXELATE:
m_ks = QKeySequence(Qt::Key_B);
break;

View File

@@ -115,27 +115,32 @@ void CaptureToolButton::setColor(const QColor& c)
QColor CaptureToolButton::m_mainColor = ConfigHandler().uiMainColorValue();
static std::map<CaptureToolButton::ButtonType, int> buttonTypeOrder{
static std::map<CaptureToolButton::ButtonType, int> buttonTypeOrder
{
{ CaptureToolButton::TYPE_PENCIL, 0 },
{ CaptureToolButton::TYPE_DRAWER, 1 },
{ CaptureToolButton::TYPE_ARROW, 2 },
{ CaptureToolButton::TYPE_SELECTION, 3 },
{ CaptureToolButton::TYPE_RECTANGLE, 4 },
{ CaptureToolButton::TYPE_CIRCLE, 5 },
{ CaptureToolButton::TYPE_MARKER, 6 },
{ CaptureToolButton::TYPE_TEXT, 7 },
{ CaptureToolButton::TYPE_PIXELATE, 8 },
{ CaptureToolButton::TYPE_CIRCLECOUNT, 9 },
{ CaptureToolButton::TYPE_SELECTIONINDICATOR, 10 },
{ CaptureToolButton::TYPE_MOVESELECTION, 11 },
{ CaptureToolButton::TYPE_UNDO, 12 },
{ CaptureToolButton::TYPE_REDO, 13 },
{ CaptureToolButton::TYPE_COPY, 14 },
{ CaptureToolButton::TYPE_SAVE, 15 },
{ CaptureToolButton::TYPE_EXIT, 16 },
{ CaptureToolButton::TYPE_IMAGEUPLOADER, 17 },
{ CaptureToolButton::TYPE_OPEN_APP, 18 },
{ CaptureToolButton::TYPE_PIN, 19 },
{ CaptureToolButton::TYPE_DRAWER, 1 },
{ CaptureToolButton::TYPE_ARROW, 2 },
{ CaptureToolButton::TYPE_SELECTION, 3 },
{ CaptureToolButton::TYPE_RECTANGLE, 4 },
{ CaptureToolButton::TYPE_CIRCLE, 5 },
{ CaptureToolButton::TYPE_MARKER, 6 },
{ CaptureToolButton::TYPE_TEXT, 7 },
{ CaptureToolButton::TYPE_PIXELATE, 8 },
{ CaptureToolButton::TYPE_CIRCLECOUNT, 9 },
{ CaptureToolButton::TYPE_SELECTIONINDICATOR, 10 },
{ CaptureToolButton::TYPE_MOVESELECTION, 11 },
{ CaptureToolButton::TYPE_UNDO, 12 },
{ CaptureToolButton::TYPE_REDO, 13 },
{ CaptureToolButton::TYPE_COPY, 14 },
{ CaptureToolButton::TYPE_SAVE, 15 },
{ CaptureToolButton::TYPE_IMAGEUPLOADER, 16 },
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
{ CaptureToolButton::TYPE_OPEN_APP, 17 },
{ CaptureToolButton::TYPE_EXIT, 18 }, { CaptureToolButton::TYPE_PIN, 19 },
#else
{ CaptureToolButton::TYPE_EXIT, 17 }, { CaptureToolButton::TYPE_PIN, 18 },
#endif
};
int CaptureToolButton::getPriorityByButton(CaptureToolButton::ButtonType b)
@@ -164,7 +169,10 @@ QVector<CaptureToolButton::ButtonType>
CaptureToolButton::TYPE_SAVE,
CaptureToolButton::TYPE_EXIT,
CaptureToolButton::TYPE_IMAGEUPLOADER,
#if not(defined(Q_OS_MAC) || defined(Q_OS_MAC64) || defined(Q_OS_MACOS) || \
defined(Q_OS_MACX))
CaptureToolButton::TYPE_OPEN_APP,
#endif
CaptureToolButton::TYPE_PIN,
CaptureToolButton::TYPE_CIRCLECOUNT,
};

View File

@@ -53,8 +53,7 @@ public:
TYPE_REDO = 16,
TYPE_PIN = 17,
TYPE_TEXT = 18,
TYPE_CIRCLECOUNT = 19,
TYPE_CIRCLECOUNT = 19
};
Q_ENUM(ButtonType)