36 struct wl_output* output,
39 int32_t physicalWidth,
40 int32_t physicalHeight,
51 monitor->
widthMM = physicalWidth;
54 snprintf(name,
sizeof(name),
"%s %s", make, model);
59 struct wl_output* output,
80 if (flags & WL_OUTPUT_MODE_CURRENT)
92 struct wl_output* output,
97 monitor->wl.scale = factor;
115 struct wl_output *output;
120 "Wayland: Unsupported output interface version");
127 output = wl_registry_bind(
_glfw.wl.registry,
129 &wl_output_interface,
137 monitor->wl.scale = 1;
138 monitor->wl.output = output;
139 monitor->wl.
name = name;
151 if (monitor->wl.output)
152 wl_output_destroy(monitor->wl.output);
158 *xpos = monitor->wl.x;
160 *ypos = monitor->wl.y;
164 float* xscale,
float* yscale)
167 *xscale = (float) monitor->wl.scale;
169 *yscale = (float) monitor->wl.scale;
175 return monitor->
modes;
186 "Wayland: Gamma ramp access it not available");
194 "Wayland: Gamma ramp access is not available");
206 return monitor->wl.output;
void _glfwPlatformFreeMonitor(_GLFWmonitor *monitor)
void _glfwPlatformSetGammaRamp(_GLFWmonitor *monitor, const GLFWgammaramp *ramp)
static void outputHandleGeometry(void *data, struct wl_output *output, int32_t x, int32_t y, int32_t physicalWidth, int32_t physicalHeight, int32_t subpixel, const char *make, const char *model, int32_t transform)
GLFWvidmode * _glfwPlatformGetVideoModes(_GLFWmonitor *monitor, int *found)
void _glfwPlatformGetMonitorPos(_GLFWmonitor *monitor, int *xpos, int *ypos)
_GLFWmonitor * _glfwAllocMonitor(const char *name, int widthMM, int heightMM)
void _glfwAddOutputWayland(uint32_t name, uint32_t version)
char * _glfw_strdup(const char *source)
GLFWbool _glfwPlatformGetGammaRamp(_GLFWmonitor *monitor, GLFWgammaramp *ramp)
struct GLFWmonitor GLFWmonitor
Opaque monitor object.
static void outputHandleDone(void *data, struct wl_output *output)
#define _GLFW_REQUIRE_INIT_OR_RETURN(x)
#define GLFW_PLATFORM_ERROR
A platform-specific error occurred that does not match any of the more specific categories.
void _glfwFreeMonitor(_GLFWmonitor *monitor)
GLFWAPI struct wl_output * glfwGetWaylandMonitor(GLFWmonitor *handle)
void _glfwPlatformGetMonitorContentScale(_GLFWmonitor *monitor, float *xscale, float *yscale)
void _glfwInputError(int code, const char *format,...)
void _glfwInputMonitor(_GLFWmonitor *monitor, int action, int placement)
static void outputHandleScale(void *data, struct wl_output *output, int32_t factor)
void _glfwPlatformGetVideoMode(_GLFWmonitor *monitor, GLFWvidmode *mode)
static void outputHandleMode(void *data, struct wl_output *output, uint32_t flags, int32_t width, int32_t height, int32_t refresh)
static const struct wl_output_listener outputListener
#define _GLFW_INSERT_LAST