Merge remote-tracking branch 'origin/5.13' into dev
Change-Id: I735eb66a8469216029a1225080f49bfdcd3f0732
This commit is contained in:
commit
5de4be4185
@ -70,6 +70,7 @@
|
|||||||
#include <QtWaylandClient/private/qwayland-text-input-unstable-v2.h>
|
#include <QtWaylandClient/private/qwayland-text-input-unstable-v2.h>
|
||||||
|
|
||||||
#include <QtCore/QAbstractEventDispatcher>
|
#include <QtCore/QAbstractEventDispatcher>
|
||||||
|
#include <QtGui/qpa/qwindowsysteminterface.h>
|
||||||
#include <QtGui/private/qguiapplication_p.h>
|
#include <QtGui/private/qguiapplication_p.h>
|
||||||
|
|
||||||
#include <QtCore/QDebug>
|
#include <QtCore/QDebug>
|
||||||
@ -153,7 +154,7 @@ QWaylandDisplay::~QWaylandDisplay(void)
|
|||||||
mInputDevices.clear();
|
mInputDevices.clear();
|
||||||
|
|
||||||
foreach (QWaylandScreen *screen, mScreens) {
|
foreach (QWaylandScreen *screen, mScreens) {
|
||||||
mWaylandIntegration->destroyScreen(screen);
|
QWindowSystemInterface::handleScreenRemoved(screen);
|
||||||
}
|
}
|
||||||
mScreens.clear();
|
mScreens.clear();
|
||||||
|
|
||||||
@ -244,7 +245,7 @@ void QWaylandDisplay::registry_global(uint32_t id, const QString &interface, uin
|
|||||||
mScreens.append(screen);
|
mScreens.append(screen);
|
||||||
// We need to get the output events before creating surfaces
|
// We need to get the output events before creating surfaces
|
||||||
forceRoundTrip();
|
forceRoundTrip();
|
||||||
mWaylandIntegration->screenAdded(screen);
|
QWindowSystemInterface::handleScreenAdded(screen);
|
||||||
} else if (interface == QStringLiteral("wl_compositor")) {
|
} else if (interface == QStringLiteral("wl_compositor")) {
|
||||||
mCompositorVersion = qMin((int)version, 3);
|
mCompositorVersion = qMin((int)version, 3);
|
||||||
mCompositor.init(registry, id, mCompositorVersion);
|
mCompositor.init(registry, id, mCompositorVersion);
|
||||||
@ -300,7 +301,7 @@ void QWaylandDisplay::registry_global_remove(uint32_t id)
|
|||||||
foreach (QWaylandScreen *screen, mScreens) {
|
foreach (QWaylandScreen *screen, mScreens) {
|
||||||
if (screen->outputId() == id) {
|
if (screen->outputId() == id) {
|
||||||
mScreens.removeOne(screen);
|
mScreens.removeOne(screen);
|
||||||
mWaylandIntegration->destroyScreen(screen);
|
QWindowSystemInterface::handleScreenRemoved(screen);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -318,7 +318,7 @@ void QWaylandInputDevice::Pointer::updateCursorTheme()
|
|||||||
while (scale > 1 && arrowPixelSize / scale < cursorSize())
|
while (scale > 1 && arrowPixelSize / scale < cursorSize())
|
||||||
--scale;
|
--scale;
|
||||||
} else {
|
} else {
|
||||||
qWarning(lcQpaWayland) << "Cursor theme does not support the arrow cursor";
|
qCWarning(lcQpaWayland) << "Cursor theme does not support the arrow cursor";
|
||||||
}
|
}
|
||||||
mCursor.themeBufferScale = scale;
|
mCursor.themeBufferScale = scale;
|
||||||
}
|
}
|
||||||
@ -588,9 +588,9 @@ void QWaylandInputDevice::Pointer::pointer_enter(uint32_t serial, struct wl_surf
|
|||||||
QWaylandWindow *window = QWaylandWindow::fromWlSurface(surface);
|
QWaylandWindow *window = QWaylandWindow::fromWlSurface(surface);
|
||||||
|
|
||||||
if (mFocus) {
|
if (mFocus) {
|
||||||
qWarning(lcQpaWayland) << "The compositor sent a wl_pointer.enter event before sending a"
|
qCWarning(lcQpaWayland) << "The compositor sent a wl_pointer.enter event before sending a"
|
||||||
<< "leave event first, this is not allowed by the wayland protocol"
|
<< "leave event first, this is not allowed by the wayland protocol"
|
||||||
<< "attempting to work around it by invalidating the current focus";
|
<< "attempting to work around it by invalidating the current focus";
|
||||||
invalidateFocus();
|
invalidateFocus();
|
||||||
}
|
}
|
||||||
mFocus = window;
|
mFocus = window;
|
||||||
|
@ -487,11 +487,11 @@ void QWaylandWindow::surface_enter(wl_output *output)
|
|||||||
auto addedScreen = QWaylandScreen::fromWlOutput(output);
|
auto addedScreen = QWaylandScreen::fromWlOutput(output);
|
||||||
|
|
||||||
if (mScreens.contains(addedScreen)) {
|
if (mScreens.contains(addedScreen)) {
|
||||||
qWarning(lcQpaWayland) << "Ignoring unexpected wl_surface.enter received for output with id:"
|
qCWarning(lcQpaWayland)
|
||||||
<< wl_proxy_get_id(reinterpret_cast<wl_proxy *>(output))
|
<< "Ignoring unexpected wl_surface.enter received for output with id:"
|
||||||
<< "screen name:" << addedScreen->name()
|
<< wl_proxy_get_id(reinterpret_cast<wl_proxy *>(output))
|
||||||
<< "screen model:" << addedScreen->model()
|
<< "screen name:" << addedScreen->name() << "screen model:" << addedScreen->model()
|
||||||
<< "This is most likely a bug in the compositor.";
|
<< "This is most likely a bug in the compositor.";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -508,11 +508,12 @@ void QWaylandWindow::surface_leave(wl_output *output)
|
|||||||
auto *removedScreen = QWaylandScreen::fromWlOutput(output);
|
auto *removedScreen = QWaylandScreen::fromWlOutput(output);
|
||||||
bool wasRemoved = mScreens.removeOne(removedScreen);
|
bool wasRemoved = mScreens.removeOne(removedScreen);
|
||||||
if (!wasRemoved) {
|
if (!wasRemoved) {
|
||||||
qWarning(lcQpaWayland) << "Ignoring unexpected wl_surface.leave received for output with id:"
|
qCWarning(lcQpaWayland)
|
||||||
<< wl_proxy_get_id(reinterpret_cast<wl_proxy *>(output))
|
<< "Ignoring unexpected wl_surface.leave received for output with id:"
|
||||||
<< "screen name:" << removedScreen->name()
|
<< wl_proxy_get_id(reinterpret_cast<wl_proxy *>(output))
|
||||||
<< "screen model:" << removedScreen->model()
|
<< "screen name:" << removedScreen->name()
|
||||||
<< "This is most likely a bug in the compositor.";
|
<< "screen model:" << removedScreen->model()
|
||||||
|
<< "This is most likely a bug in the compositor.";
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user