macos: minor improvements

Signed-off-by: Yuhang Zhao <2546789017@qq.com>
This commit is contained in:
Yuhang Zhao 2022-06-23 16:43:22 +08:00
parent 7a65ce04ee
commit bfc7b27900
2 changed files with 16 additions and 1 deletions

View File

@ -28,6 +28,7 @@
#include <QtGui/qwindow.h>
#include "framelessmanager.h"
#include "framelessmanager_p.h"
#include "framelessconfig_p.h"
#include "utils.h"
FRAMELESSHELPER_BEGIN_NAMESPACE
@ -73,7 +74,20 @@ void FramelessHelperQt::addWindow(const SystemParameters &params)
data.eventFilter = new FramelessHelperQt(window);
g_qtHelper()->data.insert(windowId, data);
g_qtHelper()->mutex.unlock();
params.setWindowFlags(params.getWindowFlags() | Qt::FramelessWindowHint);
const bool shouldApplyFramelessFlag = [&params]() -> bool {
#ifdef Q_OS_MACOS
if (FramelessConfig::instance()->isSet(Option::WindowUseRoundCorners)
&& (params.getCurrentApplicationType() == ApplicationType::Quick)) {
return false;
}
#else
Q_UNUSED(params);
#endif
return true;
}();
if (shouldApplyFramelessFlag) {
params.setWindowFlags(params.getWindowFlags() | Qt::FramelessWindowHint);
}
window->installEventFilter(data.eventFilter);
#ifdef Q_OS_MACOS
Utils::setSystemTitleBarVisible(windowId, false);

View File

@ -163,6 +163,7 @@ public:
return;
}
nsview.wantsLayer = YES;
nswindow.styleMask |= NSWindowStyleMaskResizable;
if (visible) {
nswindow.styleMask &= ~NSWindowStyleMaskFullSizeContentView;
} else {