1
mirror of https://invent.kde.org/network/falkon.git synced 2024-12-24 04:36:34 +01:00

macOS: Disable auto window tabbing (#2261)

This commit is contained in:
srazi 2017-03-20 04:28:55 +03:30
parent acf1fa23ef
commit 9af542aa03
3 changed files with 34 additions and 0 deletions

View File

@ -243,6 +243,9 @@ MainApplication::MainApplication(int &argc, char** argv)
#ifdef Q_OS_MACOS
setQuitOnLastWindowClosed(false);
// disable tabbing issue#2261
extern void disableWindowTabbing();
disableWindowTabbing();
#else
setQuitOnLastWindowClosed(true);
#endif

View File

@ -485,6 +485,9 @@ mac {
LIBS += -L$$BREW_OPENSSL/lib
LIBS += -lcrypto -framework CoreServices
OBJECTIVE_SOURCES += tools/disablewindowtabbbing.mm
LIBS += -framework AppKit
}
message(===========================================)

View File

@ -0,0 +1,28 @@
/* ============================================================
* QupZilla - Qt web browser
* Copyright (C) 2017 David Rosca <nowrep@gmail.com>
* Copyright (C) 2017 S. Razi Alavizadeh <s.r.alavizadeh@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
* ============================================================ */
#import <AppKit/AppKit.h>
// code taken from: https://www.mail-archive.com/interest@qt-project.org/msg23593.html
// Disables auto window tabbing where supported, otherwise a no-op.
void disableWindowTabbing()
{
if ([NSWindow respondsToSelector:@selector(allowsAutomaticWindowTabbing)]) {
NSWindow.allowsAutomaticWindowTabbing = NO;
}
}