50 lines
1.7 KiB
Diff
50 lines
1.7 KiB
Diff
Description: Fix showing startup notification
|
|
Author: Andrej N. Gritsenko <andrej@rep.kiev.ua>
|
|
Bug-Debian: http://bugs.debian.org/719620
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index a183309..5d55c56 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -125,7 +125,7 @@ AC_ARG_ENABLE(startup-notification,
|
|
)
|
|
|
|
if test "$enable_sn" = yes; then
|
|
-PKG_CHECK_MODULES(LIBSN, [libstartup-notification-1.0 >= 0.8],
|
|
+PKG_CHECK_MODULES(LIBSN, [libstartup-notification-1.0 >= 0.8 xi],
|
|
[
|
|
AC_DEFINE(USE_LIBSN, [1], [Use startup-notification])
|
|
AC_SUBST(LIBSN_CFLAGS)
|
|
diff --git a/openbox/screen.c b/openbox/screen.c
|
|
index 33acb4a..ed57f22 100644
|
|
--- a/openbox/screen.c
|
|
+++ b/openbox/screen.c
|
|
@@ -40,6 +40,7 @@
|
|
#include "obt/prop.h"
|
|
|
|
#include <X11/Xlib.h>
|
|
+#include <X11/extensions/XInput2.h>
|
|
#ifdef HAVE_UNISTD_H
|
|
# include <sys/types.h>
|
|
# include <unistd.h>
|
|
@@ -1844,12 +1845,15 @@ const Rect* screen_physical_area_primary(gboolean fixed)
|
|
|
|
void screen_set_root_cursor(void)
|
|
{
|
|
+ int pointer_id;
|
|
+ if (!XIGetClientPointer(obt_display, None, &pointer_id))
|
|
+ return;
|
|
if (sn_app_starting())
|
|
- XDefineCursor(obt_display, obt_root(ob_screen),
|
|
- ob_cursor(OB_CURSOR_BUSYPOINTER));
|
|
+ XIDefineCursor(obt_display, pointer_id, obt_root(ob_screen),
|
|
+ ob_cursor(OB_CURSOR_BUSYPOINTER));
|
|
else
|
|
- XDefineCursor(obt_display, obt_root(ob_screen),
|
|
- ob_cursor(OB_CURSOR_POINTER));
|
|
+ XIDefineCursor(obt_display, pointer_id, obt_root(ob_screen),
|
|
+ ob_cursor(OB_CURSOR_POINTER));
|
|
}
|
|
|
|
guint screen_find_monitor_point(guint x, guint y)
|