Bug 130857 - Qt5 implement theming using native widgets (weld)
Summary: Qt5 implement theming using native widgets (weld)
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
7.0.0.0.alpha0+
Hardware: All All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard: target:24.8.0
Keywords:
: 128372 129293 130758 (view as bug list)
Depends on:
Blocks: KDE, KF5 Qt5
  Show dependency treegraph
 
Reported: 2020-02-22 00:47 UTC by Jan-Marek Glogowski
Modified: 2024-02-21 09:03 UTC (History)
9 users (show)

See Also:
Crash report or crash signature:


Attachments
Screenshot for discussion on https://gerrit.libreoffice.org/c/core/+/161831/6/ (18.01 KB, image/png)
2024-01-30 07:28 UTC, Michael Weghorn
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan-Marek Glogowski 2020-02-22 00:47:01 UTC
Currently LO's qt5 / kf5 VCL backend just uses the QStyle interface to draw the LO UI to look like native widgets. As a result, this has limits for various UI designs rendered by native Qt style engines not exposed via that interface. 

Already a few years ago, Caolan started to introduce the new "weld" theming interface, which uses native - in his case gtk+ - widgets, to get even better GNOME integration.

For the latest progress report, check out his blog: https://caolanm.blogspot.com/2019/10/native-gtk-dialogs-in-libreoffice.html

Currently that API is very gtk+ specific, but this shouldn't prevent adaption by the Qt backend in general.
Comment 1 Jan-Marek Glogowski 2020-02-22 00:51:27 UTC
*** Bug 130758 has been marked as a duplicate of this bug. ***
Comment 2 Jan-Marek Glogowski 2020-02-22 00:52:25 UTC
*** Bug 129293 has been marked as a duplicate of this bug. ***
Comment 3 Jan-Marek Glogowski 2020-02-22 00:54:04 UTC
*** Bug 128372 has been marked as a duplicate of this bug. ***
Comment 4 Commit Notification 2024-01-08 21:53:31 UTC
OmkarAcharekar committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/1ace888823443b85d4a81b94656844f1b27e2987

tdf#130857 Use native qt widgets - simple message dialog

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 5 Michael Weghorn 2024-01-30 07:28:36 UTC
Created attachment 192246 [details]
Screenshot for discussion on https://gerrit.libreoffice.org/c/core/+/161831/6/
Comment 6 Commit Notification 2024-02-04 06:01:36 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/a54abf77c40c59e5a4d8a70e1b129b1e420265a3

tdf#130857 qt weld: Support asnyc running of msg dialogs

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 7 Commit Notification 2024-02-08 21:49:57 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/9d928231e71806d4cfe76af2159630bff242c5da

tdf#130857 VclBuilder: Extract static methods to new base class

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 8 Commit Notification 2024-02-08 21:49:59 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/4353b73fb343115ab25d242d11896e153a91a9d3

tdf#130857 VclBuilder: Extract helper method for tweaking new child

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 9 Commit Notification 2024-02-08 21:50:02 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/ad4a06692b05c4312c1c7c8a8ff38cf12422e692

tdf#130857 VclBuilder: Move VCL MenuBar specifics to handleMenu()

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 10 Commit Notification 2024-02-15 07:08:28 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/092bcd7133c30c0614056928a16baea44704735e

tdf#130857 qt weld: Move QWidget* member to QtInstanceWidget

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 11 Commit Notification 2024-02-15 07:08:31 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/6712963e231e7ab50a3d11b8a8c75e54e0c79b32

tdf#130857 qt weld: Implement QtInstanceDialog::{g,s}et_modal

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Commit Notification 2024-02-15 07:08:33 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/9e40fc8c9458b937200ea56c96b89113c74b67f5

tdf#130857 qt weld: Set msg dialog parent

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 13 Commit Notification 2024-02-18 09:29:18 UTC
Michael Weghorn committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/6a4b9bf503204b5770ad314eae0bfed18c5d84c7

tdf#130857 VclBuilder: Use VclPtr instead of raw vcl::Window*

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 14 Commit Notification 2024-02-21 09:03:17 UTC
OmkarAcharekar committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/01e0931ba455a5ad9e1aa4b8ddd6951b6aa56902

tdf#130857 - Drop unused `getUIFile` method from VclBuilder class.

It will be available in 24.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.