Qt on macOS 15 Sequoia

As is customary Apple announced their latest operating system versions at WWDC yesterday, including macOS 15 Sequoia, named after the national park in the Sierra Nevada mountain range.

As soon as the developer previews were available we of course started looking at how Qt behaved in this new environment, tracking the various areas to look into for further investigations.

We are happy to report that both Qt Widgets and Qt Quick builds out of the box with Xcode 16, and runs without issue on macOS 15.

We will continue to follow the beta releases, squashing bugs that pop up, as well as add the new platform to our CI. If you find any issues with Qt in your own testing on this platform, or have use-cases or features of the new macOS version you feel should be on our radar, please let us know in the Qt bug tracker 😊


Blog Topics:

Comments

Commenting for this post has ended.

Marcin J.
1 point
32 months ago

That looks great, and seems very useful for games that could very well be implemented in Qt (Quick).

Niels Mayer
1 point
32 months ago

Do you have plans to apply FrameAnimation to #QNanoPainter? Or examples showing integration with FrameAnimation?

Is it as simple as replacing the timer-based frame updates with FrameAnimation updates?

Can it be used to improve existing FPS-counters vs https://code.qt.io/cgit/qt/qtmultimedia.git/tree/examples/multimedia/video/qmlvideo/frequencymonitor.cpp?h=6.4 or https://github.com/QUItCoding/qnanopainter/blob/master/examples/qnanopainter_vs_qpainter_demo/qml/FpsItem.qml ?

Kaj Grönholm
1 point
32 months ago

@Niels Ah, replied already in a tweet with video https://twitter.com/QUItCoding/status/1560876823969517569

The FPS item in QNanoPainter examples (and other places) could be improved with FrameAnimation so that there isn't a need for "dummy animation" to get the animation tickers.

Felix
1 point
32 months ago

I have been wanting this for a long time, Thanks!. Prevalence of many different refresh rate screens really necessitates a good approach, this is great. Could you please investigate whether the 'frametime' property outputs correct values? When I construct animations which advance a property with realtime like so: FrameAnimation { running: true onTriggered: { panTool.pan(frameTime, 0) } }I am still seeing some jitter in the position of the object I am trying to move. This animation should move the item in a consistent pace according to cumulative time elapsed. Is frameTime being rounded? Most likely it's a performance issue somewhere else on my end but I'm interested in the precision of frameTime

Kaj Grönholm
1 point
32 months ago

@Felix: Thanks for the comment! I feel you, there has been times when this would have been useful so now took the time to get it into Qt Quick.

Frame time is calculated with https://doc-snapshots.qt.io/qt6-dev/qelapsedtimer.html#nsecsElapsed so theoretical accuracy is nanoseconds, but the actual resolution depends of course on the platform. It is time in seconds since previous animation ticker, so contains some fluctuation from 0.016666.. (on 60Hz screen). When there is a need for more stable values you can use smoothFrameTime property which on my Windows laptop now gave values like: qml: smoothFrameTime: 0.01668457919031026 qml: smoothFrameTime: 0.016695221271279235 qml: smoothFrameTime: 0.016690869144151313 qml: smoothFrameTime: 0.01667907222973618 qml: smoothFrameTime: 0.016702725006762564 qml: smoothFrameTime: 0.016691022506086308 qml: smoothFrameTime: 0.01669270025547768 qml: smoothFrameTime: 0.016695180229929912 qml: smoothFrameTime: 0.01668765220693692 qml: smoothFrameTime: 0.016689826986243227 qml: smoothFrameTime: 0.016676244287618904 qml: smoothFrameTime: 0.016666089858857015 qml: smoothFrameTime: 0.016666790872971314 qml: smoothFrameTime: 0.016666261785674184 ...

Kaj Grönholm
0 points
32 months ago

@Marcin Thanks! Yes, useful for games and game-like UX where you need more freedom for animations.