From 27349eaed125481380e8b7d080659355fa5eca3c Mon Sep 17 00:00:00 2001 From: Tom Poole Date: Mon, 3 Sep 2018 18:37:54 +0100 Subject: [PATCH] Linux: Fixed some compilation errors when using XRender --- .../native/juce_linux_X11_Windowing.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp b/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp index 6361900cf8..30ba9c1a83 100644 --- a/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp +++ b/modules/juce_gui_basics/native/juce_linux_X11_Windowing.cpp @@ -318,7 +318,7 @@ namespace XRender static bool hasCompositingWindowManager (::Display* display) noexcept { return display != nullptr - && XGetSelectionOwner (display, Atoms::getCreating ("_NET_WM_CM_S0")) != 0; + && XGetSelectionOwner (display, Atoms::getCreating (display, "_NET_WM_CM_S0")) != 0; } static XRenderPictFormat* findPictureFormat (::Display* display) @@ -326,7 +326,7 @@ namespace XRender ScopedXLock xlock (display); XRenderPictFormat* pictFormat = nullptr; - if (isAvailable()) + if (isAvailable (display)) { pictFormat = xRenderFindStandardFormat (display, PictStandardARGB32); @@ -3594,12 +3594,14 @@ bool MouseInputSource::SourceList::canUseTouch() bool Desktop::canUseSemiTransparentWindows() noexcept { #if JUCE_USE_XRENDER - if (XRender::hasCompositingWindowManager()) + auto display = XWindowSystem::getInstance()->displayRef(); + + if (XRender::hasCompositingWindowManager (display)) { int matchedDepth = 0, desiredDepth = 32; return Visuals::findVisualFormat (display, desiredDepth, matchedDepth) != 0 - && matchedDepth == desiredDepth; + && matchedDepth == desiredDepth; } #endif