Fix qtwayland patch
This commit is contained in:
parent
1dab9bb303
commit
ea29d6fb63
2 changed files with 21 additions and 39 deletions
|
|
@ -1,28 +1,27 @@
|
|||
{ nixosConfig, pkgs, ... }:
|
||||
|
||||
# requires patched qt, see https://github.com/obsproject/obs-studio/issues/4295
|
||||
|
||||
let
|
||||
patchedQt = pkgs.qt5.overrideScope' (
|
||||
selfqt: superqt: {
|
||||
qtwayland = (
|
||||
(pkgs.qt5.qtwayland.overrideAttrs (o: o // {
|
||||
patches = o.patches ++ [
|
||||
./qtwayland-PATCH-Fix-surfaces-updating-without-a-frame-callback.patch
|
||||
];
|
||||
}))
|
||||
);
|
||||
}
|
||||
);
|
||||
in
|
||||
{
|
||||
programs.obs-studio = {
|
||||
enable = nixosConfig.myConfig.gui.enable;
|
||||
plugins = with pkgs; [
|
||||
obs-studio-plugins.wlrobs
|
||||
];
|
||||
package = (pkgs.obs-studio.overrideAttrs (oldAttrs: rec {
|
||||
qtbase = patchedQt.qtbase;
|
||||
}));
|
||||
# requires patched qt, see https://github.com/obsproject/obs-studio/issues/4295
|
||||
package =
|
||||
let
|
||||
qtwayland = pkgs.qt5.qtwayland.overrideAttrs (o: o // {
|
||||
patches = o.patches ++ [
|
||||
./qtwayland-PATCH-Fix-surfaces-updating-without-a-frame-callback.patch
|
||||
];
|
||||
});
|
||||
in
|
||||
pkgs.runCommand "obs-studio-qt-fix-wrapped"
|
||||
{
|
||||
nativeBuildInputs = with pkgs; [ makeWrapper ];
|
||||
} ''
|
||||
makeWrapper ${pkgs.obs-studio}/bin/obs $out/bin/obs \
|
||||
--prefix QT_PLUGIN_PATH : ${qtwayland} \
|
||||
--prefix QML2_IMPORT_PATH : ${qtwayland}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,28 +1,11 @@
|
|||
From e3879c175b73a68bdac41b396f4428ebb9437d5b Mon Sep 17 00:00:00 2001
|
||||
From: Geoffrey Casper <gcasper42@gmail.com>
|
||||
Date: Thu, 4 Mar 2021 14:07:44 -0500
|
||||
Subject: [PATCH] [PATCH] Fix surfaces updating without a frame callback
|
||||
|
||||
Created by @gammafn
|
||||
Shared by @progandy and @xPMo
|
||||
---
|
||||
src/client/qwaylandwindow.cpp | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
|
||||
index 9b343702..29882b6e 100644
|
||||
--- a/src/client/qwaylandwindow.cpp
|
||||
+++ b/src/client/qwaylandwindow.cpp
|
||||
@@ -1164,7 +1164,8 @@ void QWaylandWindow::requestUpdate()
|
||||
void QWaylandWindow::handleUpdate()
|
||||
{
|
||||
qCDebug(lcWaylandBackingstore) << "handleUpdate" << QThread::currentThread();
|
||||
- // TODO: Should sync subsurfaces avoid requesting frame callbacks?
|
||||
@@ -1188,6 +1188,8 @@
|
||||
return;
|
||||
|
||||
// TODO: Should sync subsurfaces avoid requesting frame callbacks?
|
||||
+ if(mWaitingForFrameCallback)
|
||||
+ return;
|
||||
QReadLocker lock(&mSurfaceLock);
|
||||
if (!mSurface)
|
||||
return;
|
||||
--
|
||||
2.29.3
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue