mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-07-27 00:35:27 -04:00
Fix native hiding of macOS windows (#2583)
This commit is contained in:
parent
d6ce6b85d5
commit
f8c6c9f72c
7 changed files with 52 additions and 3 deletions
|
@ -55,6 +55,7 @@ BrowserService::BrowserService(DatabaseTabWidget* parent)
|
|||
, m_dialogActive(false)
|
||||
, m_bringToFrontRequested(false)
|
||||
, m_wasMinimized(false)
|
||||
, m_wasHidden(false)
|
||||
, m_keepassBrowserUUID(QUuid::fromRfc4122(QByteArray::fromHex("de887cc3036343b8974b5911b8816224")))
|
||||
{
|
||||
// Don't connect the signals when used from DatabaseSettingsWidgetBrowser (parent is nullptr)
|
||||
|
@ -96,7 +97,6 @@ bool BrowserService::openDatabase(bool triggerUnlock)
|
|||
|
||||
if (triggerUnlock) {
|
||||
m_bringToFrontRequested = true;
|
||||
m_wasMinimized = getMainWindow()->isMinimized();
|
||||
raiseWindow(true);
|
||||
}
|
||||
|
||||
|
@ -933,7 +933,11 @@ void BrowserService::hideWindow() const
|
|||
getMainWindow()->showMinimized();
|
||||
} else {
|
||||
#ifdef Q_OS_MACOS
|
||||
macUtils()->raiseLastActiveWindow();
|
||||
if (m_wasHidden) {
|
||||
macUtils()->hideOwnWindow();
|
||||
} else {
|
||||
macUtils()->raiseLastActiveWindow();
|
||||
}
|
||||
#else
|
||||
getMainWindow()->lower();
|
||||
#endif
|
||||
|
@ -944,6 +948,7 @@ void BrowserService::raiseWindow(const bool force)
|
|||
{
|
||||
m_wasMinimized = getMainWindow()->isMinimized();
|
||||
#ifdef Q_OS_MACOS
|
||||
m_wasHidden = macUtils()->isHidden();
|
||||
macUtils()->raiseOwnWindow();
|
||||
Tools::wait(500);
|
||||
#else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue