qt5base-lts/examples/widgets
Laszlo Agocs 80520c2f52 Enable QWidget::grab() with QRhiWidget in the widget tree
This involves reimplementing QWidgetPrivate::grabFramebuffer().
Widgets call this function whenever a texture-based widget is
encountered.

This implies however that we rename QRhiWidget's own, lightweight
grab function, grab(), because it kind of shadows QWidget's grab().
Switch back to grabFramebuffer() which is what QQuickWidget and
QOpenGLWidget both use.

Supporting QWidget::grab() is particularly important when grabbing
an ancestor of the QRhiWidget, because that has no alternative.
Right now, due to not reimplementing the QWidgetPrivate function,
the place of the QRhiWidget is left empty.

In addition, grabFramebuffer() is now const. This is consistent
with QQuickWidget, but not with QOpenGLWidget and QOpenGLWindow.

Change-Id: I646bd920dab7ba50415dd7ee6b63a209f5673e8f
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2023-08-28 21:14:28 +02:00
..
animation Examples: Remove unnecessary Q_INIT_RESOURCE calls 2023-06-08 16:15:02 +00:00
desktop Examples: Remove unnecessary Q_INIT_RESOURCE calls 2023-06-08 16:15:02 +00:00
dialogs Dialogs example: add checkbox for ColorDialogOption::NoEyeDropperButton 2023-06-12 15:11:26 +02:00
doc Add QRhiWidget 2023-08-14 17:05:36 +02:00
draganddrop Move fridge magnets example to manual test 2023-06-28 09:56:40 +02:00
gallery Examples: Use PRIVATE CMake linkage 2022-11-30 14:48:50 +01:00
gestures Examples: Use PRIVATE CMake linkage 2022-11-30 14:48:50 +01:00
graphicsview Move graphis view flow layout example to manual test 2023-06-28 09:56:40 +02:00
itemviews examples/: fix compiler (GCC) warnings -Wsign-compare 2023-08-18 23:35:52 +03:00
layouts Move dynamic layouts example to manual test 2023-06-28 00:09:58 +02:00
mainwindows Move main window example to manual test 2023-06-29 14:49:13 +02:00
painting Move font sampler example to manual test 2023-06-28 09:56:39 +02:00
qnx/foreignwindows Doc: Fix license of foreignwindows example 2023-06-30 18:46:54 +02:00
rhi Enable QWidget::grab() with QRhiWidget in the widget tree 2023-08-28 21:14:28 +02:00
richtext Move textedit example to manual test 2023-06-29 14:49:13 +02:00
tools Fix the project name 2023-07-31 12:38:40 +02:00
touch Move dials example to manual test 2023-06-29 14:49:14 +02:00
tutorials Move MDI example to manual test 2023-06-29 14:49:13 +02:00
widgets Move tetrix example to manual test 2023-06-29 14:49:13 +02:00
CMakeLists.txt examples: Add new subdirectory to examples/widgets CMakeLists 2023-08-15 01:11:03 +02:00
widgets.pro Add QRhiWidget 2023-08-14 17:05:36 +02:00