Disable screencasting if there's no pipewire 0.3
Hopefully fixes the CI
This commit is contained in:
parent
e7b8a5ad5e
commit
9438a2e1b1
4 changed files with 20 additions and 4 deletions
|
@ -755,9 +755,6 @@ ecm_qt_declare_logging_category(kwin_XWAYLAND_SRCS
|
||||||
|
|
||||||
set(kwin_WAYLAND_SRCS
|
set(kwin_WAYLAND_SRCS
|
||||||
main_wayland.cpp
|
main_wayland.cpp
|
||||||
screencast/screencastmanager.cpp
|
|
||||||
screencast/pipewirecore.cpp
|
|
||||||
screencast/pipewirestream.cpp
|
|
||||||
tabletmodemanager.cpp
|
tabletmodemanager.cpp
|
||||||
)
|
)
|
||||||
ecm_qt_declare_logging_category(kwin_WAYLAND_SRCS
|
ecm_qt_declare_logging_category(kwin_WAYLAND_SRCS
|
||||||
|
@ -772,9 +769,19 @@ ecm_qt_declare_logging_category(kwin_WAYLAND_SRCS
|
||||||
)
|
)
|
||||||
|
|
||||||
add_executable(kwin_wayland ${kwin_WAYLAND_SRCS} ${kwin_XWAYLAND_SRCS})
|
add_executable(kwin_wayland ${kwin_WAYLAND_SRCS} ${kwin_XWAYLAND_SRCS})
|
||||||
|
|
||||||
|
|
||||||
|
if (PipeWire_FOUND)
|
||||||
|
target_sources(kwin_wayland
|
||||||
|
PRIVATE
|
||||||
|
screencast/screencastmanager.cpp
|
||||||
|
screencast/pipewirecore.cpp
|
||||||
|
screencast/pipewirestream.cpp)
|
||||||
|
target_link_libraries(kwin_wayland PkgConfig::PipeWire)
|
||||||
|
endif()
|
||||||
|
|
||||||
target_link_libraries(kwin_wayland
|
target_link_libraries(kwin_wayland
|
||||||
kwin
|
kwin
|
||||||
PkgConfig::PipeWire # required for PipewireStream
|
|
||||||
KF5::Crash
|
KF5::Crash
|
||||||
)
|
)
|
||||||
if (HAVE_LIBCAP)
|
if (HAVE_LIBCAP)
|
||||||
|
|
|
@ -42,3 +42,5 @@
|
||||||
#define XCB_ICCCM_WM_STATE_NORMAL 1
|
#define XCB_ICCCM_WM_STATE_NORMAL 1
|
||||||
#define XCB_ICCCM_WM_STATE_ICONIC 3
|
#define XCB_ICCCM_WM_STATE_ICONIC 3
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#cmakedefine01 PipeWire_FOUND
|
||||||
|
|
|
@ -26,7 +26,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
#include "platform.h"
|
#include "platform.h"
|
||||||
#include "effects.h"
|
#include "effects.h"
|
||||||
#include "tabletmodemanager.h"
|
#include "tabletmodemanager.h"
|
||||||
|
|
||||||
|
#ifdef PipeWire_FOUND
|
||||||
#include "screencast/screencastmanager.h"
|
#include "screencast/screencastmanager.h"
|
||||||
|
#endif
|
||||||
#include "wayland_server.h"
|
#include "wayland_server.h"
|
||||||
#include "xwl/xwayland.h"
|
#include "xwl/xwayland.h"
|
||||||
|
|
||||||
|
@ -165,7 +168,9 @@ void ApplicationWayland::performStartup()
|
||||||
VirtualKeyboard::create(this);
|
VirtualKeyboard::create(this);
|
||||||
createBackend();
|
createBackend();
|
||||||
TabletModeManager::create(this);
|
TabletModeManager::create(this);
|
||||||
|
#ifdef PipeWire_FOUND
|
||||||
new ScreencastManager(this);
|
new ScreencastManager(this);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void ApplicationWayland::createBackend()
|
void ApplicationWayland::createBackend()
|
||||||
|
|
|
@ -458,7 +458,9 @@ bool WaylandServer::init(const QByteArray &socketName, InitializationFlags flags
|
||||||
m_keyState = m_display->createKeyStateInterface(m_display);
|
m_keyState = m_display->createKeyStateInterface(m_display);
|
||||||
m_keyState->create();
|
m_keyState->create();
|
||||||
|
|
||||||
|
#ifdef PipeWire_FOUND
|
||||||
m_screencast = m_display->createScreencastInterface(m_display);
|
m_screencast = m_display->createScreencastInterface(m_display);
|
||||||
|
#endif
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue