20 #ifndef LIBUI_PROTOCOL_H 21 #define LIBUI_PROTOCOL_H 23 #include "pedigree/native/types.h" 25 #include "pedigree/native/graphics/Graphics.h" 26 #include "pedigree/native/ipc/Ipc.h" 34 #define WINMAN_SOCKET_PATH "sockets/winman.sock" 35 #define CLIENT_SOCKET_BASE "sockets/winman-client-%s.sock" 37 #define WINMAN_SOCKET_PATH "unix»/winman.sock" 38 #define CLIENT_SOCKET_BASE "unix»/winman-client-%s.sock" 44 bool sendMessage(
void *pMessage,
size_t messageLength);
48 PedigreeIpc::IpcEndpoint *endpoint,
void *pBuffer,
size_t maxSize);
51 bool recvMessageAsync(
52 PedigreeIpc::IpcEndpoint *endpoint,
void *pBuffer,
size_t maxSize);
55 typedef uint64_t handle_t;
64 enum MessageIdentifiers
248 char propertyName[256];
255 char propertyName[256];
256 size_t maxValueLength;
309 ButtonState buttons[8];
PedigreeGraphics::Rect rt
New rect.
bool rigid
A 'rigid' window cannot be resized by the window manager.
void * shmem_handle
New handle for the shared memory space.
size_t bufferLength
Length of the buffer (in & out).
handle_t widgetHandle
Handle for the widget being referred to. Zero if no widget.
size_t messageSize
Size of the data in the message (after this header).
size_t shmem_size
Size of the framebuffer.
size_t minWidth
Minimum width and height for the window.
bool bIsResponse
Whether this is a response or a request.
MessageIdentifiers messageCode
Code of the message being sent.
uintptr_t bufferAddress
Address off the large buffer. Null in a request.
bool isResponse
Whether this message is a response from the window manager or not.
PedigreeGraphics::GraphicsProvider provider