|
@@ -1980,6 +1980,25 @@ const struct wl_data_device_listener dataDeviceListener =
|
|
|
dataDeviceHandleSelection,
|
|
|
};
|
|
|
|
|
|
+static void xdgActivationHandleDone(void* userData,
|
|
|
+ struct xdg_activation_token_v1* activationToken,
|
|
|
+ const char* token)
|
|
|
+{
|
|
|
+ _GLFWwindow* window = userData;
|
|
|
+
|
|
|
+ if (activationToken != window->wl.activationToken)
|
|
|
+ return;
|
|
|
+
|
|
|
+ xdg_activation_v1_activate(_glfw.wl.activationManager, token, window->wl.surface);
|
|
|
+ xdg_activation_token_v1_destroy(window->wl.activationToken);
|
|
|
+ window->wl.activationToken = NULL;
|
|
|
+}
|
|
|
+
|
|
|
+static const struct xdg_activation_token_v1_listener xdgActivationListener =
|
|
|
+{
|
|
|
+ xdgActivationHandleDone
|
|
|
+};
|
|
|
+
|
|
|
void _glfwAddSeatListenerWayland(struct wl_seat* seat)
|
|
|
{
|
|
|
wl_seat_add_listener(seat, &seatListener, NULL);
|
|
@@ -2339,25 +2358,6 @@ void _glfwHideWindowWayland(_GLFWwindow* window)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-static void xdgActivationHandleDone(void* userData,
|
|
|
- struct xdg_activation_token_v1* activationToken,
|
|
|
- const char* token)
|
|
|
-{
|
|
|
- _GLFWwindow* window = userData;
|
|
|
-
|
|
|
- if (activationToken != window->wl.activationToken)
|
|
|
- return;
|
|
|
-
|
|
|
- xdg_activation_v1_activate(_glfw.wl.activationManager, token, window->wl.surface);
|
|
|
- xdg_activation_token_v1_destroy(window->wl.activationToken);
|
|
|
- window->wl.activationToken = NULL;
|
|
|
-}
|
|
|
-
|
|
|
-static const struct xdg_activation_token_v1_listener xdgActivationListener =
|
|
|
-{
|
|
|
- xdgActivationHandleDone
|
|
|
-};
|
|
|
-
|
|
|
void _glfwRequestWindowAttentionWayland(_GLFWwindow* window)
|
|
|
{
|
|
|
if (!_glfw.wl.activationManager)
|