[qt/qt/qtbase]: Summary of bulk changes made

KDE Git Services - Bulk Change <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git repository change summary for qt/qt/qtbase
Pushed by mirror-service into branch '6.12'.
Changed from 6267a5d6b1b35bac2da1a80062d0b68cc9e9fffc to 65308bf9e1222a7facce4bc7c295dd016d972251
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit 5ed8a6d51faaac99e1630655cc6da557a48436a7 by Zbigniew Chyla on 19/07/2026 at 22:14..
ohos: extract path/URI conversion into corelib

The OHOS platform plugin, QtOhosAppKit, and QFileSystemEngine each
carry their own copy of the OH_FileUri path/URI conversion helper,
duplicating the output buffer handling and warning logic.

Add tryMapPathToOhosFileUri() and tryMapOhosFileUriToPath() to corelib
(src/corelib/platform/ohos/), returning std::optional to report
conversion failure, and redirect the existing callers to them. This
removes the duplication and lets plugin-external code reuse the
conversion without depending on plugin internals.

Task-number: QTBUG-147194
Change-Id: Ife07a8e429f76c6d960f1f06abe11e8fa0e3c80e
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit ac99c4148329694abd8c96057a51edf3c64a449e)
https://invent.kde.org/qt/qt/qtbase/-/commit/5ed8a6d51faaac99e1630655cc6da557a48436a7

Git commit 8e7fa6b07b51d81e85b368a1b84a3456633c5c1f by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: use QWindow ref for QOhosWindowManager dialogs

The showFileDialog* helpers take a QtOhos::InternalWindowId and resolve
it on the main thread through the plugin-internal QWindowProxyRegistry.
Take a QtOhos::QObjectThreadSafeRef instead and resolve both the owning
ability and the modal-parent window object on the JS thread via
QOhosJsState. This decouples the helpers from plugin internals so one
of them can later move out of the OHOS plugin; they share the same
machinery, so decoupling one decouples all three.

Behavior is preserved for registered windows and for the no-window case
(default ability, no modal parent). One relaxation: an unrealized
parent window currently aborts; it now degrades to the default ability
(effectively unreachable, as a dialog's parent is shown).

Task-number: QTBUG-147194
Change-Id: Ic4000df1f88a0efb56612248e333889906356171
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit e1b72074df521149adfe4c522fca03f4ed2cebed)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/8e7fa6b07b51d81e85b368a1b84a3456633c5c1f

Git commit 2e2424e9215f223f49290d1cbe8e253d649d8cd1 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: inline startOhosFilePicker into showFileDialogAuthorization

showFileDialogAuthorization goes through the shared startOhosFilePicker
helper, which the other two dialogs also use. Inline it here so this
one function is self-contained, a step toward moving it out of the
plugin without dragging the shared helper along.

The inlined form drops the generic FilePickerResult indirection: the
picker's selected index (unused for authorization) is no longer read,
and the result is reduced directly to the authorized bool. Behavior is
otherwise unchanged, and startOhosFilePicker stays for the open/save
dialogs.

Task-number: QTBUG-147194
Change-Id: Ie7920f246739420d987ce6e26bd640087318b429
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 3f65f96e3251e831282e868aae299bfc06ea5b66)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/2e2424e9215f223f49290d1cbe8e253d649d8cd1

Git commit a43fb20b3a4c9175f93ff65abe3c812fbf30da47 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: inline makeDocumentViewPicker into showFileDialogAuthorization

Continue making showFileDialogAuthorization self-contained ahead of
moving it out of the plugin: inline makeDocumentViewPicker's body (JS
window lookup, ability context, picker construction) into it.

makeDocumentViewPicker stays for the open/save dialogs, which reach it
through startOhosFilePicker. Behavior is unchanged.

Task-number: QTBUG-147194
Change-Id: Idb832f380f313bf097dcf45f7582cb7d9130d72b
Reviewed-by: Arkadiusz Zarębski <[email protected]>
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 609e5c382c33e3851874c44a04579fc4fd5c4ea4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/a43fb20b3a4c9175f93ff65abe3c812fbf30da47

Git commit 8db24cab961b624b3a14d6c7a4844b0af5fcd248 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: drop needless URI mapping in showFileDialogAuthorization

showFileDialogAuthorization only reports whether the user picked
anything, so check the result array's length directly instead of
extracting its OHOS file URIs and mapping them to paths and Qt URLs
purely to test emptiness. Both mapping helpers stay for the open/save
dialogs.

Task-number: QTBUG-147194
Change-Id: Ib42c16c0583af93855ec3119ba77d6e48b49d0e0
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
Reviewed-by: Arkadiusz Zarębski <[email protected]>
(cherry picked from commit d55ea953f71fa9c0d2c51a9647defe13818660a8)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/8db24cab961b624b3a14d6c7a4844b0af5fcd248

Git commit 481163a7913f499f4cb62738ab9d7cf9b0db790a by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: resolve auth dialog ability via QOhosJsState

showFileDialogAuthorization resolves the picker's ability context
through the plugin peer API (getQAbilityPeerForQWindow, then
QAbilityPeer::qAbility). Get the ability object straight from
QOhosJsState instead - tryGetQAbilityByQWindow with a defaultQAbility
fallback - so this path no longer touches the peer type, one less
plugin dependency before the move. getQAbilityPeerForQWindow stays for
the open/save dialogs.

Task-number: QTBUG-147194
Change-Id: I51aded8fc732b6780a208622ed958418b0039156
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 34c2dd0df62f6869f2fa686b8a18c25051121391)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/481163a7913f499f4cb62738ab9d7cf9b0db790a

Git commit 27bc4f413f599ca97f2c8917d4754d558d24e566 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: move file authorization to QtOhosAppKit

The file-path authorization dialog lives inside the OHOS platform
plugin: QOhosWindowManager::showFileDialogAuthorization() runs the
DocumentViewPicker in authMode, and QOhosQpaFunctions exposes it to
Qt via showFileDialogToAuthorizeFilePath(). Nothing outside the
plugin can reach it, and the QPA hook has no in-tree caller.

Introduce QtOhosAppKit::authorizeFilePath(), modelled on qt5's
QtOhosExtras::authorizeFilePath(), which drives the picker directly
through the corelib QOhosJsState JS-thread API. Move the dialog logic
and the event-loop bridge into QtOhosAppKit, and drop the now-unused
showFileDialogAuthorization() and QOhosQpaFunctions hook.

Task-number: QTBUG-147194
Change-Id: I20a691e7c792cf6857cf6da5f0f1b1f036e1c387
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 08d9a2ba6014d9f14fc3b5733b0a654cd21f84a4)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/27bc4f413f599ca97f2c8917d4754d558d24e566

Git commit 6c44b9693e2aac410ffa5a496ab7e3f519bea53f by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: add QtOhosAppKit::tryGetNativeWindowId()

Add QtOhosAppKit::tryGetNativeWindowId(), modelled on qt5's
QtOhosExtras::tryGetNativeWindowId(), to expose a window's native
OpenHarmony id to plugin-external code. It delegates to a new
internal QNativeInterface::Private::QOhosWindow::windowId(),
implemented by QOhosPlatformWindow.

Drop the now-unused QOhosQpaFunctions hook that previously provided
the id.

Task-number: QTBUG-147194
Change-Id: Icfe20479d5bbdf387537abf4c35c24a269a008be
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 2666e4af2ed50023d7d76ef3c36c0d9c2151c591)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/6c44b9693e2aac410ffa5a496ab7e3f519bea53f

Git commit 8c4d1013775327667e5a610cdda6055f528499c0 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: add QtOhosAppKit::tryGetScreenDisplayId()

Add QtOhosAppKit::tryGetScreenDisplayId(), modelled on qt5's
QtOhosExtras::tryGetScreenDisplayId(), to expose a screen's native
OpenHarmony display id to plugin-external code. It delegates to a
new internal QNativeInterface::Private::QOhosScreen::displayId(),
implemented by QOhosPlatformScreen.

Drop the now-unused QOhosQpaFunctions hook that previously provided
the id.

Task-number: QTBUG-147194
Change-Id: I6c3dfbaa751e351be2d0d464b73903cc8aa6d4ca
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit ac6e2e3ca47021349e68ebbaf58ddf008dcc22b1)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/8c4d1013775327667e5a610cdda6055f528499c0

Git commit 23f6ad85811b7b0cb1d94c8f6702501bde2646af by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: add QOhosAppContext::isNoUiChildMode()

Add QtOhosAppKit::QOhosAppContext::isNoUiChildMode(), modelled on
qt5's QtOhosExtras::QOhosAppContext::isNoUiChildMode(), to expose to
apps whether the current process was started as a "No UI" child
process. It checks the default QAbility on the JS thread via
QOhosJsThreadGateway and caches the result, since the mode is fixed
for the process lifetime.

Drop the now-unused QOhosQpaFunctions::readOhosNoUiChildMode() hook
that the qt5 implementation relied on. That hook tested
defaultQAbilityPeer()->instanceId().empty(); the new check
!defaultQAbility() is equivalent, as both are true exactly when the
default QAbility peer is the dummy peer, where the empty instance id
and the empty ability always go together.

Task-number: QTBUG-147194
Change-Id: I7b65e292e47f26523de0e043a5c2efd7ea7dcc84
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 5b253e1c08bfd29c50975476ea8003e86dbc92d9)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/23f6ad85811b7b0cb1d94c8f6702501bde2646af

Git commit e9591e0960f313001e77e6362c607c5195901b86 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: add setMainWindowGeometryPersistenceHint()

Add QtOhosAppKit::Window::setMainWindowGeometryPersistenceHint(),
modelled on qt5's QtOhosExtras::setMainWindowGeometryPersistenceHint(),
to let apps control whether the main window restores its last geometry
on startup.

It bridges to the plugin through a new private QOhosIntegration native
interface method that takes a std::optional<bool>
(true/false/unset = Enabled/Disabled/FollowSystemSetting), avoiding a
bridge-level enum.

Drop the now-unused QOhosQpaFunctions counterpart that the qt5
implementation relied on.

Task-number: QTBUG-147194
Change-Id: I19093078cfac41ae6c8d08629aab4ebc2441ff2b
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 168ecaee88a4c891ac938694f51f3cad80748c55)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/e9591e0960f313001e77e6362c607c5195901b86

Git commit 7976455772e366354002249775e81a79c4223c8b by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: drop dead setInAppOnlyPasteboardShareOption() hook

Remove QOhosQpaFunctions::setInAppOnlyPasteboardShareOption() and its
QOhosQpaFunctionsImpl implementation. It is dead scaffolding: apps
already reach this functionality through the existing
QtOhosAppKit::QOhosPasteboard::setInAppOnlyPasteboardShareOption(),
which doesn't use QOhosQpaFunctions implementation.

Task-number: QTBUG-147194
Change-Id: I5f46fb1280856f26033469feff58565657274d90
Reviewed-by: Arkadiusz Zarębski <[email protected]>
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 28b2b2db5e8ffaa956b7acfa2ec7600c76851e2d)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/7976455772e366354002249775e81a79c4223c8b

Git commit d71a2ab1fd691699e1ddb1eab7bca12851960274 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: give appContext env callback typed method list

registerAppContextEnvironmentCallback() takes the callback as a
QNapi::Object, an opaque type that expresses nothing at compile time
about the required shape (a set of named callback functions). Take the
methods directly instead, as a std::vector<std::pair<std::string,
QNapi::CallbackFuncWrapper>>, so the parameter's static type states
exactly what it accepts, and the helper builds the JS
EnvironmentCallback object itself.

This also makes the registration reusable by callers that only want to
supply handlers rather than assemble QNapi objects.

Update registerAppConfigurationUpdateListener() to pass the method
list.

Task-number: QTBUG-147194
Change-Id: I1f854ea31d860472876fb5faf6a6721b517aeda3
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit c359f4d6de1b629a7908a87af4a289df73e240fe)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/d71a2ab1fd691699e1ddb1eab7bca12851960274

Git commit 5c22c156c8e72f55af3b3639593a1922d5292de3 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: inline and drop registerAppConfigurationUpdateListener

registerAppConfigurationUpdateListener() is a thin wrapper with a
single caller, makeOhosConfigValueDataSource(). Now that
registerAppContextEnvironmentCallback() takes the callback methods
directly, the wrapper only forwards an onConfigurationUpdated handler.

Inline it into makeOhosConfigValueDataSource() and remove it.

Task-number: QTBUG-147194
Change-Id: Id0d2ceae3481e3e58361a86fbd82e7da4cc0ad87
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit f568d21d084a47a502d1bf547a88aa067100ec00)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/5c22c156c8e72f55af3b3639593a1922d5292de3

Git commit 3a9375d2e4ea5a3bca15b0ec0dc4d9c7c8f463c3 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: decouple appContext env callback from in-plugin APIs

registerAppContextEnvironmentCallback() depends on plugin-internal
APIs: it takes a QtOhos::JsState, reads the ability via
defaultQAbilityPeer(), and unregisters via runInJsThreadAndWait().
These keep it bound to the platform plugin.

Switch it to the corelib QOhosJsState interface: take QOhosJsState,
read the ability via defaultQAbility(), and unregister via
QOhosJsThreadGateway::runAndWait(). It now depends only on corelib
APIs, so it can be reused (and later relocated) outside the plugin.

defaultQAbility() yields no value when there is no default ability; in
that case register nothing and return an empty handle, rather than
evaluating on the dummy ability.

Task-number: QTBUG-147194
Change-Id: I4636a1db6874221c085139173f1761fde3cce276
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 42b7fa6319d4817febb190939385d14435e74460)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/3a9375d2e4ea5a3bca15b0ec0dc4d9c7c8f463c3

Git commit 951b464798a6be20318442b06138e0b9f8b0e374 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: mv appContext env callback registration to corelib

We want to use registerAppContextEnvironmentCallback() outside the
OHOS platform plugin. It now depends only on corelib APIs, so move it
from the plugin (qohosjsutils) to corelib (qohosjstools) and export it
as registerOhosAppContextEnvironmentCallback() (corelib symbols carry
the Ohos prefix).

Task-number: QTBUG-147194
Change-Id: I5e75b4a00947dc2f508c0cb2159e8b72ac759773
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 8aef367d21c52c27e892e240fff87164dada3ea9)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/951b464798a6be20318442b06138e0b9f8b0e374

Git commit 65308bf9e1222a7facce4bc7c295dd016d972251 by Zbigniew Chyla on 20/07/2026 at 05:56..
ohos: expose font size scale via QOhosAppContext

Add fontSizeScale() and the fontSizeScaleChanged() signal to
QtOhosAppKit::QOhosAppContext, modelled on qt5's
QtOhosExtras::QOhosAppContext, so applications can read the current
OHOS font size scale and react to changes.

QOhosAppContextImpl backs them with a corelib data source
(makeQOhosDataSource) seeded from the app configuration and updated via
registerOhosAppContextEnvironmentCallback(); changes are delivered on
the Qt thread and emitted as fontSizeScaleChanged().

Drop the now-unused QOhosQpaFunctions backend
(makeOhosConfigFontSizeScaleDataSource), which existed only for qt5's
QtOhosExtras.

Task-number: QTBUG-147194
Change-Id: I64f8dd9942436f93a3e12672a09313b3f79738c1
Reviewed-by: SanthoshKumar Selvaraj <[email protected]>
(cherry picked from commit 3cbcc6ac6b126172d0c8361b358d3cdc17cdbc72)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
https://invent.kde.org/qt/qt/qtbase/-/commit/65308bf9e1222a7facce4bc7c295dd016d972251
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.