52 GetXProperty (::Display* display, ::Window windowH, Atom property,
53 long offset,
long length,
bool shouldDelete, Atom requestedType);
57 unsigned char*
data =
nullptr;
78 explicit Atoms (::Display*);
88 Atom
protocols,
protocolList[3],
changeState,
state,
userTime,
activeWin,
pid,
windowType,
windowState,
windowStateHidden,
180 void setVisible (::Window,
bool shouldBeVisible)
const;
190 void setMinimised (::Window,
bool shouldBeMinimised)
const;
193 void setMaximised (::Window,
bool shouldBeMinimised)
const;
195 void toFront (::Window,
bool makeActive)
const;
196 void toBehind (::Window, ::Window otherWindow)
const;
249 bool isParentWindowOf (::Window, ::Window possibleChild)
const;
286 void xchangeProperty (::Window, Atom, Atom,
int,
const void*,
int)
const;
334 std::unique_ptr<XWindowSystemUtilities::XSettings>
xSettings;
337 std::map<::Window, int> shmPaintsPendingMap;
#define noexcept
Definition DistrhoDefines.h:72
Definition juce_Array.h:56
Definition juce_Colour.h:38
Definition juce_ComponentPeer.h:91
Definition juce_ComponentPeer.h:44
DeletedAtShutdown()
Definition juce_DeletedAtShutdown.cpp:34
Definition juce_Image.h:58
Definition juce_linux_Windowing.cpp:36
Definition juce_ListenerList.h:70
Definition juce_ModifierKeys.h:41
StandardCursorType
Definition juce_MouseCursor.h:44
Definition juce_Point.h:42
Definition juce_Rectangle.h:67
Definition juce_StringArray.h:35
Definition juce_String.h:53
Definition juce_linux_XWindowSystem.h:172
Point< int > parentScreenPosition
Definition juce_linux_XWindowSystem.h:344
void updateConstraints(::Window) const
Definition juce_linux_XWindowSystem.cpp:1791
bool externalDragTextInit(LinuxComponentPeer *, const String &text, std::function< void()> &&callback) const
Definition juce_linux_XWindowSystem.cpp:2725
void handleLeaveNotifyEvent(LinuxComponentPeer *, const XLeaveWindowEvent &) const
Definition juce_linux_XWindowSystem.cpp:3611
void handleMotionNotifyEvent(LinuxComponentPeer *, const XPointerMovedEvent &) const
Definition juce_linux_XWindowSystem.cpp:3582
int getNumPaintsPendingForWindow(::Window)
Definition juce_linux_XWindowSystem.cpp:2178
bool isFocused(::Window) const
Definition juce_linux_XWindowSystem.cpp:2009
void removeWindowDecorations(::Window) const
Definition juce_linux_XWindowSystem.cpp:2859
bool canUseARGBImages() const
Definition juce_linux_XWindowSystem.cpp:2070
std::unique_ptr< DisplayVisuals > displayVisuals
Definition juce_linux_XWindowSystem.h:333
::Window createKeyProxy(::Window) const
Definition juce_linux_XWindowSystem.cpp:2669
std::unique_ptr< XWindowSystemUtilities::XSettings > xSettings
Definition juce_linux_XWindowSystem.h:334
bool contains(::Window, Point< int > localPos) const
Definition juce_linux_XWindowSystem.cpp:1833
static void windowMessageReceive(XEvent &)
Definition juce_linux_XWindowSystem.cpp:3871
void showCursor(::Window, Cursor cursorHandle) const
Definition juce_linux_XWindowSystem.cpp:2417
bool initialiseXDisplay()
Definition juce_linux_XWindowSystem.cpp:3145
void setIcon(::Window, const Image &) const
Definition juce_linux_XWindowSystem.cpp:1677
void initialisePointerMap()
Definition juce_linux_XWindowSystem.cpp:3009
static String getThemeNameSettingName()
Definition juce_linux_XWindowSystem.h:245
void propertyNotifyEvent(LinuxComponentPeer *, const XPropertyEvent &) const
Definition juce_linux_XWindowSystem.cpp:3722
bool isX11Available() const noexcept
Definition juce_linux_XWindowSystem.h:242
void blitToWindow(::Window, Image, Rectangle< int > destinationRect, Rectangle< int > totalRect) const
Definition juce_linux_XWindowSystem.cpp:2148
::Window createWindow(::Window parentWindow, LinuxComponentPeer *) const
Definition juce_linux_XWindowSystem.cpp:1513
void toFront(::Window, bool makeActive) const
Definition juce_linux_XWindowSystem.cpp:1972
Image createImage(bool isSemiTransparentWindow, int width, int height, bool argb) const
Definition juce_linux_XWindowSystem.cpp:2134
String localClipboardContent
Definition juce_linux_XWindowSystem.h:342
void setWindowType(::Window, int) const
Definition juce_linux_XWindowSystem.cpp:2976
XWindowSystemUtilities::Atoms atoms
Definition juce_linux_XWindowSystem.h:331
void handleExposeEvent(LinuxComponentPeer *, XExposeEvent &) const
Definition juce_linux_XWindowSystem.cpp:3648
void setVisible(::Window, bool shouldBeVisible) const
Definition juce_linux_XWindowSystem.cpp:1715
void handleGravityNotify(LinuxComponentPeer *) const
Definition juce_linux_XWindowSystem.cpp:3715
String getTextFromClipboard() const
Definition juce_linux_XWindowSystem.cpp:2743
::Window getFocusWindow(::Window) const
Definition juce_linux_XWindowSystem.cpp:2024
bool grabFocus(::Window) const
Definition juce_linux_XWindowSystem.cpp:2036
Point< float > getCurrentMousePosition() const
Definition juce_linux_XWindowSystem.cpp:2219
::Display * display
Definition juce_linux_XWindowSystem.h:332
void updateModifierMappings() const
Definition juce_linux_XWindowSystem.cpp:3058
void handleXEmbedMessage(LinuxComponentPeer *, XClientMessageEvent &) const
Definition juce_linux_XWindowSystem.cpp:3838
void processPendingPaintsForWindow(::Window)
Definition juce_linux_XWindowSystem.cpp:2161
void handleClientMessageEvent(LinuxComponentPeer *, XClientMessageEvent &, XEvent &) const
Definition juce_linux_XWindowSystem.cpp:3767
::Window findTopLevelWindowOf(::Window) const
Definition juce_linux_XWindowSystem.cpp:2782
int pointerMap[5]
Definition juce_linux_XWindowSystem.h:341
void setMinimised(::Window, bool shouldBeMinimised) const
Definition juce_linux_XWindowSystem.cpp:1913
Rectangle< int > getWindowBounds(::Window, ::Window parentWindow)
Definition juce_linux_XWindowSystem.cpp:1875
void handleKeyReleaseEvent(LinuxComponentPeer *, const XKeyEvent &) const
Definition juce_linux_XWindowSystem.cpp:3472
void handleKeyPressEvent(LinuxComponentPeer *, XKeyEvent &) const
Definition juce_linux_XWindowSystem.cpp:3351
ModifierKeys getNativeRealtimeModifiers() const
Definition juce_linux_XWindowSystem.cpp:2455
void handleFocusOutEvent(LinuxComponentPeer *) const
Definition juce_linux_XWindowSystem.cpp:3637
void setMaximised(::Window, bool shouldBeMinimised) const
Definition juce_linux_XWindowSystem.cpp:1953
void handleButtonPressEvent(LinuxComponentPeer *, const XButtonPressedEvent &, int) const
Definition juce_linux_XWindowSystem.cpp:3524
Cursor createCustomMouseCursorInfo(const Image &, Point< int > hotspot) const
Definition juce_linux_XWindowSystem.cpp:2250
bool externalDragFileInit(LinuxComponentPeer *, const StringArray &files, bool canMove, std::function< void()> &&callback) const
Definition juce_linux_XWindowSystem.cpp:2705
void copyTextToClipboard(const String &)
Definition juce_linux_XWindowSystem.cpp:2735
static String getWindowScalingFactorSettingName()
Definition juce_linux_XWindowSystem.h:244
bool isDarkModeActive() const
Definition juce_linux_XWindowSystem.cpp:2103
void handleMappingNotify(XMappingEvent &) const
Definition juce_linux_XWindowSystem.cpp:3756
bool isMinimised(::Window) const
Definition juce_linux_XWindowSystem.cpp:1934
void destroyWindow(::Window)
Definition juce_linux_XWindowSystem.cpp:1611
XWindowSystem()
Definition juce_linux_XWindowSystem.cpp:1451
void handleEnterNotifyEvent(LinuxComponentPeer *, const XEnterWindowEvent &) const
Definition juce_linux_XWindowSystem.cpp:3597
void handleConfigureNotifyEvent(LinuxComponentPeer *, XConfigureEvent &) const
Definition juce_linux_XWindowSystem.cpp:3699
void removePendingPaintForWindow(::Window)
Definition juce_linux_XWindowSystem.cpp:2196
void destroyXDisplay()
Definition juce_linux_XWindowSystem.cpp:3241
::Display * getDisplay() const noexcept
Definition juce_linux_XWindowSystem.h:238
void handleWheelEvent(LinuxComponentPeer *, const XButtonPressedEvent &, float) const
Definition juce_linux_XWindowSystem.cpp:3511
bool isFrontWindow(::Window) const
Definition juce_linux_XWindowSystem.cpp:2826
String getLocalClipboardContent() const noexcept
Definition juce_linux_XWindowSystem.h:236
void setScreenSaverEnabled(bool enabled) const
Definition juce_linux_XWindowSystem.cpp:2204
XWindowSystemUtilities::XSettings * getXSettings() const noexcept
Definition juce_linux_XWindowSystem.h:240
Array< Displays::Display > findDisplays(float masterScale) const
Definition juce_linux_XWindowSystem.cpp:2520
void setBounds(::Window, Rectangle< int >, bool fullScreen) const
Definition juce_linux_XWindowSystem.cpp:1727
void setMousePosition(Point< float > pos) const
Definition juce_linux_XWindowSystem.cpp:2239
ComponentPeer::OptionalBorderSize getBorderSize(::Window) const
Definition juce_linux_XWindowSystem.cpp:1846
void deleteKeyProxy(::Window) const
Definition juce_linux_XWindowSystem.cpp:2688
void deleteMouseCursor(Cursor cursorHandle) const
Definition juce_linux_XWindowSystem.cpp:2340
void toBehind(::Window, ::Window otherWindow) const
Definition juce_linux_XWindowSystem.cpp:1996
void handleButtonReleaseEvent(LinuxComponentPeer *, const XButtonReleasedEvent &) const
Definition juce_linux_XWindowSystem.cpp:3553
long getUserTime(::Window) const
Definition juce_linux_XWindowSystem.cpp:3085
void xchangeProperty(::Window, Atom, Atom, int, const void *, int) const
Definition juce_linux_XWindowSystem.cpp:2852
void dismissBlockingModals(LinuxComponentPeer *) const
Definition juce_linux_XWindowSystem.cpp:3690
void handleFocusInEvent(LinuxComponentPeer *) const
Definition juce_linux_XWindowSystem.cpp:3626
const XWindowSystemUtilities::Atoms & getAtoms() const noexcept
Definition juce_linux_XWindowSystem.h:239
int shmCompletionEvent
Definition juce_linux_XWindowSystem.h:340
void setTitle(::Window, const String &) const
Definition juce_linux_XWindowSystem.cpp:1654
Cursor createStandardMouseCursor(MouseCursor::StandardCursorType) const
Definition juce_linux_XWindowSystem.cpp:2361
Point< int > getPhysicalParentScreenPosition() const
Definition juce_linux_XWindowSystem.cpp:1908
bool xIsAvailable
Definition juce_linux_XWindowSystem.h:329
bool isKeyCurrentlyDown(int keyCode) const
Definition juce_linux_XWindowSystem.cpp:2425
void addPendingPaintForWindow(::Window)
Definition juce_linux_XWindowSystem.cpp:2188
bool canUseSemiTransparentWindows() const
Definition juce_linux_XWindowSystem.cpp:2055
void initialiseXSettings()
Definition juce_linux_XWindowSystem.cpp:3100
void addWindowButtons(::Window, int) const
Definition juce_linux_XWindowSystem.cpp:2917
void deleteIconPixmaps(::Window) const
Definition juce_linux_XWindowSystem.cpp:3033
Definition juce_linux_XWindowSystem.h:131
::Display * display
Definition juce_linux_XWindowSystem.h:152
int lastUpdateSerial
Definition juce_linux_XWindowSystem.h:156
void removeListener(Listener *listenerToRemove)
Definition juce_linux_XWindowSystem.h:149
::Window settingsWindow
Definition juce_linux_XWindowSystem.h:153
std::unordered_map< String, XSetting > settings
Definition juce_linux_XWindowSystem.h:158
XSettings(::Display *, Atom, ::Window)
Definition juce_linux_XWindowSystem.cpp:194
Atom settingsAtom
Definition juce_linux_XWindowSystem.h:154
::Window getSettingsWindow() const noexcept
Definition juce_linux_XWindowSystem.h:137
void addListener(Listener *listenerToAdd)
Definition juce_linux_XWindowSystem.h:148
ListenerList< Listener > listeners
Definition juce_linux_XWindowSystem.h:159
void update()
Definition juce_linux_XWindowSystem.cpp:210
static std::unique_ptr< XSettings > createXSettings(::Display *)
Definition juce_linux_XWindowSystem.cpp:182
unsigned v[N_MAX]
Definition inflate.c:1584
static const char * name
Definition pugl.h:1582
static int int height
Definition pugl.h:1594
static int width
Definition pugl.h:1593
#define JUCE_DECLARE_SINGLETON(Classname, doNotRecreateAfterDeletion)
Definition juce_Singleton.h:184
static char ** files
Definition misc.c:28
Definition juce_linux_XWindowSystem.h:31
Definition carla_juce.cpp:31
png_uint_32 length
Definition png.c:2247
Definition byte_source.h:28
VisualAndDepth getBestVisualForWindow(bool) const
Definition juce_linux_XWindowSystem.cpp:3128
Visual * visual24Bit
Definition juce_linux_XWindowSystem.h:273
Visual * visual16Bit
Definition juce_linux_XWindowSystem.h:272
bool isValid() const noexcept
Definition juce_linux_XWindowSystem.cpp:3139
DisplayVisuals(::Display *)
Definition juce_linux_XWindowSystem.cpp:3110
Visual * visual32Bit
Definition juce_linux_XWindowSystem.h:274
Definition juce_linux_XWindowSystem.h:260
int depth
Definition juce_linux_XWindowSystem.h:262
Visual * visual
Definition juce_linux_XWindowSystem.h:261
Definition juce_linux_XWindowSystem.h:69
Atom allowedMimeTypes[4]
Definition juce_linux_XWindowSystem.h:91
Atom XdndFinished
Definition juce_linux_XWindowSystem.h:89
Atom XdndPosition
Definition juce_linux_XWindowSystem.h:89
Atom windowType
Definition juce_linux_XWindowSystem.h:88
Atom utf8String
Definition juce_linux_XWindowSystem.h:91
Atom XdndAware
Definition juce_linux_XWindowSystem.h:89
Atom activeWin
Definition juce_linux_XWindowSystem.h:88
Atom windowStateHidden
Definition juce_linux_XWindowSystem.h:88
Atom XdndLeave
Definition juce_linux_XWindowSystem.h:89
ProtocolItems
Definition juce_linux_XWindowSystem.h:71
@ TAKE_FOCUS
Definition juce_linux_XWindowSystem.h:72
@ PING
Definition juce_linux_XWindowSystem.h:74
@ DELETE_WINDOW
Definition juce_linux_XWindowSystem.h:73
Atom XdndActionDescription
Definition juce_linux_XWindowSystem.h:90
Atom XdndDrop
Definition juce_linux_XWindowSystem.h:89
Atom XdndActionList
Definition juce_linux_XWindowSystem.h:90
Atom changeState
Definition juce_linux_XWindowSystem.h:88
Atom protocols
Definition juce_linux_XWindowSystem.h:88
Atom windowState
Definition juce_linux_XWindowSystem.h:88
Atom XdndTypeList
Definition juce_linux_XWindowSystem.h:90
static Atom getIfExists(::Display *, const char *name)
Definition juce_linux_XWindowSystem.cpp:142
Atom XdndStatus
Definition juce_linux_XWindowSystem.h:89
Atom pid
Definition juce_linux_XWindowSystem.h:88
static constexpr unsigned long DndVersion
Definition juce_linux_XWindowSystem.h:86
Atom XdndActionCopy
Definition juce_linux_XWindowSystem.h:90
Atom allowedActions[5]
Definition juce_linux_XWindowSystem.h:91
Atom XdndEnter
Definition juce_linux_XWindowSystem.h:89
Atom clipboard
Definition juce_linux_XWindowSystem.h:91
Atom XdndActionPrivate
Definition juce_linux_XWindowSystem.h:90
Atom targets
Definition juce_linux_XWindowSystem.h:91
Atom XdndSelection
Definition juce_linux_XWindowSystem.h:89
Atom protocolList[3]
Definition juce_linux_XWindowSystem.h:88
Atom XembedInfo
Definition juce_linux_XWindowSystem.h:91
static bool isMimeTypeFile(::Display *, Atom)
Definition juce_linux_XWindowSystem.cpp:160
Atom XembedMsgType
Definition juce_linux_XWindowSystem.h:91
Atom state
Definition juce_linux_XWindowSystem.h:88
static Atom getCreating(::Display *, const char *name)
Definition juce_linux_XWindowSystem.cpp:147
Atom userTime
Definition juce_linux_XWindowSystem.h:88
static String getName(::Display *, Atom)
Definition juce_linux_XWindowSystem.cpp:152
unsigned long numItems
Definition juce_linux_XWindowSystem.h:58
unsigned char * data
Definition juce_linux_XWindowSystem.h:57
bool success
Definition juce_linux_XWindowSystem.h:56
GetXProperty(::Display *display, ::Window windowH, Atom property, long offset, long length, bool shouldDelete, Atom requestedType)
Definition juce_linux_XWindowSystem.cpp:166
unsigned long bytesLeft
Definition juce_linux_XWindowSystem.h:58
Atom actualType
Definition juce_linux_XWindowSystem.h:59
int actualFormat
Definition juce_linux_XWindowSystem.h:60
ScopedXLock()
Definition juce_linux_XWindowSystem.cpp:78
Definition juce_linux_XWindowSystem.h:100
bool isValid() const noexcept
Definition juce_linux_XWindowSystem.h:115
Type
Definition juce_linux_XWindowSystem.h:102
@ invalid
Definition juce_linux_XWindowSystem.h:106
Type type
Definition juce_linux_XWindowSystem.h:118
XSetting(const String &n, int v)
Definition juce_linux_XWindowSystem.h:111
String stringValue
Definition juce_linux_XWindowSystem.h:121
String name
Definition juce_linux_XWindowSystem.h:117
int integerValue
Definition juce_linux_XWindowSystem.h:120
XSetting(const String &n, const String &v)
Definition juce_linux_XWindowSystem.h:112
XSetting(const String &n, const Colour &v)
Definition juce_linux_XWindowSystem.h:113
Colour colourValue
Definition juce_linux_XWindowSystem.h:122
Definition juce_linux_XWindowSystem.h:143
virtual ~Listener()=default
virtual void settingChanged(const XSetting &settingThatHasChanged)=0
const char * text
Definition swell-functions.h:167
RECT const char void(* callback)(const char *droppath))) SWELL_API_DEFINE(BOOL
Definition swell-functions.h:1004
int n
Definition crypt.c:458
static ZCONST char Far None[]
Definition unzip.c:380
#define const
Definition zconf.h:137