Workaround force setting of WM_TRANSIENT_HINT in Qt's xcb backend
This commit is contained in:
parent
0e126e2550
commit
75a782cced
|
@ -387,7 +387,17 @@ PipPanel::PipPanel(
|
||||||
Ui::Platform::InitOnTopPanel(this);
|
Ui::Platform::InitOnTopPanel(this);
|
||||||
setMouseTracking(true);
|
setMouseTracking(true);
|
||||||
resize(0, 0);
|
resize(0, 0);
|
||||||
show();
|
hide();
|
||||||
|
createWinId();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PipPanel::setVisibleHook(bool visible) {
|
||||||
|
PipParent::setVisibleHook(visible);
|
||||||
|
|
||||||
|
// workaround Qt's forced transient parent
|
||||||
|
if (visible) {
|
||||||
|
Ui::Platform::ClearTransientParent(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PipPanel::setAspectRatio(QSize ratio) {
|
void PipPanel::setAspectRatio(QSize ratio) {
|
||||||
|
|
|
@ -78,6 +78,8 @@ protected:
|
||||||
void mouseReleaseEvent(QMouseEvent *e) override;
|
void mouseReleaseEvent(QMouseEvent *e) override;
|
||||||
void mouseMoveEvent(QMouseEvent *e) override;
|
void mouseMoveEvent(QMouseEvent *e) override;
|
||||||
|
|
||||||
|
void setVisibleHook(bool visible) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void setPositionDefault();
|
void setPositionDefault();
|
||||||
void setPositionOnScreen(Position position, QRect available);
|
void setPositionOnScreen(Position position, QRect available);
|
||||||
|
|
Loading…
Reference in New Issue