Initializing the window will end up in [NSWindow _commonAwake], which calls many
of the getters. We need to set up the platform window reference first, so we can
properly reflect the window's state during initialization.
Change-Id: I5349273b1930ee8a57dc518db74be90d2426f61c
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
We want to share the implementation between the two classes, but
Objective-C doesn't natively have a mixin-feature. Instead of using
dynamic super-calls at runtime (which worked fine, but added
complexity), we now do the mixin at compile time using the
preprocessor.
The dynamic-super feature is left in, in case we need it in other
areas in the future.
Change-Id: I95dfa7f18cba86cc518e963dd018944ef113ac06
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Allow for extended non English keys
Task-number: QTBUG-68189
Task-number: QTBUG-69392
Change-Id: I12187ebc1250a5c29022cd2d3ad3a77eb45c06a8
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Replace null and '\c nullptr' with \nullptr in the documentation.
Change-Id: Ib9e0cfc2eb2830b213e6523773603d56180b0998
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Don't call or implement functions which are not available when compiling
with QT_DISABLE_DEPRECATED_BEFORE=0x050d00
Change-Id: I9e059cfa6d5e70c5672d50d7d4dae7483314ad17
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
The code in QCocoaEventDispatcher was dead and could be removed.
Change-Id: I0c57e64791045d65033376c096220983059028ba
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
We don't need all the checks for the event dispatcher, it should
always be there.
Change-Id: Ib89a9c1c5524b49c2d85fae12425d19ced960597
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Change-Id: I321ab68b51c4ba63204c0e15fec74164e2c93d34
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
as proposed in the API review.
Change-Id: I607a38d24d533da59fc0d33dac886fa7693ed6c8
Fixes: QTBUG-73739
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Introduce QT_QPA_OFFSCREEN_NO_GLX to run offscreen qpa
without glx even if compiled with x11 support.
Task-number: QTBUG-63346
Change-Id: I647bf5df27f095c3dd27a90415cc9c445df93fd1
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
[ChangeLog][qmake] A new feature "cmdline" was added that implies
"CONFIG += console" and "CONFIG -= app_bundle".
Task-number: QTBUG-27079
Change-Id: I6e52b07c9341c904bb1424fc717057432f9360e1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
This reverts commit 37970d7b3e.
That commit broke the build on macOS, because the OpenGL headers aren't
resolved anymore at configure time.
Change-Id: Iec6ef009c9ea7e28b12eeca6b5eb06918bf49d98
Fixes: QTBUG-73827
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This feature uses the js Clipboard API and is supported only in Chrome,
as Firefox only supports reading the clipboard in browser extensions.
It also requires https or localhost access, otherwise access to the
clipboard is blocked by chrome.
Chrome users will be able to copy/paste text to and from the system
clipbaord.
Other browsers will be able to use the clipboard from within the same
application.
Currently only supports text and html.
Task-number: QTBUG-64638
Change-Id: Ie6de9d10812b776519bd6115593b433fe77059fe
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
This fixes a bug where app build would fail with AssertionError: SIMD is
used, but not supported in WASM mode yet
Change-Id: I27d5eb00b2c869b890dc519a7a793b7f87aeb9d2
Fixes: QTBUG-73795
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
make it "last one wins", consistently with regular libraries. this
isn't really relevant in qmake, because the order matters only for
static frameworks, which qmake defines out of existence.
note that specifying frameworks by full path does not work, so we
don't need to amend 9d76beee5 in that regard.
Change-Id: Ib027109339e1b5973c577d69906b6daf83ba9611
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Emscripten has EGL headers, but we have no use for
the eglfs platform plugin on this platform.
Change-Id: I50bab4d1ef0b45bb5dd10e5ea9aa3bf9282652a7
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
Without this include, __REDIRECT does not get defined, and then
open gets #defined to open64, leading to bogus MOC output.
See https://bugs.debian.org/920613.
Change-Id: I629d9dc6af05b9480c0c81a61d8890ab8bbefaae
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
In 3ccdeb4b58, we removed the
specialized multi font engine on Windows, causing us to go
through the same code path when loading fallbacks as on
other platforms.
When combined with 97f73e9577,
this caused an error, because the code in
QFontEngineMulti::loadEngine() only overrode the families
list, but not the singular family in the request. In the
QRawFont test, this would cause the requested fallback font
to correctly have "MS Shell Dlg2" as the only font in the
families list, but the request.family would still be
"QtBidiTestFont", the name of the main font. The singular family
in the request was preferred by the windows font database when
creating the LOGFONT. We would therefore load the latter for
the fallback as well and since it still does not support the
characters in question, we would continue searching.
Fixes: QTBUG-72836
Change-Id: I1787b57febcf6030d5c5b09bc2ef2c9558f05beb
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Since Windows 10 update 1809 it is possible to install fonts as a user
so they are only available for use by the user and not on the system.
So this location in the registry needs to be checked as well when
looking for available fonts.
Fixes: QTBUG-73241
Change-Id: I5d808e38b80dde8189fe8c549a6524bd559e30c7
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
The bcm_host library couldn't be detected anymore. Let the makespec
provide LIBDIR, INCDIR and LIBS for bcm_host to fix this.
Change-Id: I4bc268504dc48edaf2884f1c14b745260fd9112c
Fixes: QTBUG-73727
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
IoUtils::isRelativePath() didn't attempt to consider UNC paths, due to
a belief that qmake fails on them so badly that it wasn't worth the
extra code. However, it turns out Qt Creator's copy of this code does
need to take this into account, so start the change off in qmake's
version so as to keep in sync.
Task-number: QTCREATORBUG-21881
Change-Id: I3084b87c1d3ca6508255e94e04ac8db3ceaebb7e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
As winrt does not have native windows, exposure check was just done by
checking, whether the window is the active window. If a window is shown
fullscreen though, winrtscreen will be resized. This resize triggers a
resize of every maximized or fullscreen window that is shown.
If we enter or leave full screen mode, we have to wait until the screen
resize and the subsequent window resizes are done and only then we can
consider the windows properly exposed.
This patch reverts 54bcb9d42f and thus
unblacklists tst_QGraphicsItem::cursor on WinRT.
Fixes: QTBUG-73545
Change-Id: If469fce319ed6b3a5d56b7bf3cbc11929b72bb11
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Change-Id: I963fc1c159edc644f081675c3dee248c25d7c9dc
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
We were interpreting bit #8 as the oblique bit, but this is the
WWS-conformity bit. Bit #10 is the oblique bit.
[ChangeLog][Windows] Fixed an issue where loading fonts from files or data
would sometimes mistakenly classify them as oblique.
Fixes: QTBUG-73660
Change-Id: Id9e5012d1b89d0bee0e966c5105657b38834e13a
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Now that MSVC (presumably) supports templates, we can merge the QRect
and QRegion versions of the functions into one.
Change-Id: Ia4264096c4988d9043444e604ebb133e4ff2ace9
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
QMake ignored every extra compiler that sets variable_out and whose
output does not have a builtin compiler (C++, C).
What the code wants to achieve is to ignore extra compilers that put
their output into variables that are handled "somewhere else already",
e.g. are in the otherFilters list. Evidence for that is to be found in
the addOnInput == true if branch.
Task-number: QTBUG-71283
Change-Id: I8c1d76febccacb450cd14ad7a1f4b87726832312
Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Some platform backing stores may require that the window has been
created, so let's defer the platform backingstore creation until
absolutely necessary.
Change-Id: Ib93151c6473e3bbe77d994782d84289c2f63bcf2
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Printing pools by calling [NSAutoreleasePool showPools] will now give
a more detailed view of where the various pools in the stack were
created, eg:
AUTORELEASE POOLS for thread 0x1000be5c0
17 releases pending.
[0x107802000] ................ PAGE (hot) (cold)
[0x107802038] ################ POOL 0x107802038
[0x107802040] 0x107791c70 ^-- allocated in function: main
[0x107802048] ################ POOL 0x107802048
[0x107802050] 0x1073b2e80 ^-- allocated in function: QCocoaWindow::initialize()
[0x107802058] 0x107111ed0 NSCompositeAppearance
[0x107802060] 0x107111ed0 NSCompositeAppearance
[0x107802068] 0x107111ed0 NSCompositeAppearance
[0x107802070] 0x1073bbe10 __NSCFString
[0x107802078] 0x1073bbde0 _NSViewBackingLayer
[0x107802080] 0x1073bc100 NSWeakObjectValue
[0x107802088] 0x1073bbe40 QNSView
[0x107802090] 0x1073bbe40 QNSView
[0x107802098] 0x107111ed0 NSCompositeAppearance
[0x1078020a0] 0x107111ed0 NSCompositeAppearance
[0x1078020a8] 0x1073bbe40 QNSView
[0x1078020b0] ################ POOL 0x1078020b0
[0x1078020b8] 0x1073bbe30 ^-- allocated in function: QCocoaWindow::recreateWindowIfNeeded()
Change-Id: I97faf30db5835fea2f05320435b1b8c334a478d1
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Annotate this function with 'override' or (rarely) 'final'
[modernize-use-override]
Change-Id: If31ab03b46f885e4984ba3aaaf1ad8d46aae9d9c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Return glxconfig and glxcontext, it is needed by
share context in chromium.
Task-number: QTBUG-63346
Change-Id: Ief15bf7170af9cf61a71453043a2629a4bcbcdc2
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
In case we use glx backend set correct surface.
Task-number: QTBUG-63346
Change-Id: I5827bf5b8e4ed60b933c25ce234fdd4a3dd20c88
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Offscreen plugin can be compiled with x11 support.
In case of glx add missing native handle for context.
This fixes crashes of running web engine with offscreenplugin
(with glx support).
Task-number: QTBUG-63346
Change-Id: Ia717ad2551536fbfdfb6633e506704a3ebe42a2b
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
The code was actually completely fine, but the assert was bogus.
detach() can call realloc(d->alloc).
Fixes: QTBUG-73756
Change-Id: I3485bc926dba3f2537e14c0c05d30ff982e6e714
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
The "file dialog" on Android returns such URLs, which so far required
special-casing this in application code. With this change QFile can
consume those URLs directly.
Change-Id: I489c0db112cf1dc7497e7a90f0e9a79ea8fa5237
Reviewed-by: Nicolas Fella <nicolas.fella@kdab.com>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
Prevent automatic insertion of line-breaks in blocks formatted with 'white-space:nowrap'.
This follows the example of white-space:pre.
Fixes: QTBUG-54787
Change-Id: If26f6a54106a02fe0e388947f6368ae4e86acf63
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Replace deprecated functions to be able to compile examples with
QT_DISABLE_DEPRECATED_BEFORE=0x050d00
Change-Id: If6b8de31f526320d6a0e2a20bb5f8e26c77f2353
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Replace QLayout::margin() with QLayout::contentsMargins() and add two
new helper functions to get the correct margins.
Change-Id: I3ad24747e7c6323eaf4386c00c47029009d64f8c
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Don't call or implement functions which are not available when compiling
with QT_DISABLE_DEPRECATED_BEFORE=0x050d00
Change-Id: If427e20774b358dc16fa1c7d7ba8c0feba3e144b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Don't call or implement functions which are not available when compiling
with QT_DISABLE_DEPRECATED_BEFORE=0x050d00
Change-Id: I763a1c60d7cc080677736447dc358299d8f7ab04
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>