}
}
+#ifdef WE_NEED_UGRAB_MOUSE
static int
spi_dec_ungrab_mouse (gpointer data)
{
}
return FALSE;
}
+#endif
static void
spi_dec_init_mouse_listener (SpiRegistry *registry)
g_object_get_qdata (G_OBJECT (controller), spi_dec_private_quark);
/* FIXME: should check for extension first! */
XTestGrabControl (spi_get_display (), True);
- priv->xkb_desc = XkbGetMap (spi_get_display (), 0, XkbUseCoreKbd);
/* calls to device-specific implementations and routines go here */
/* register with: keyboard hardware code handler */
&priv->xkb_base_error_code, NULL, NULL);
if (priv->have_xkb)
{
+ priv->xkb_desc = XkbGetMap (spi_get_display (), 0, XkbUseCoreKbd);
XkbSelectEvents (spi_get_display (),
XkbUseCoreKbd,
XkbStateNotifyMask, XkbStateNotifyMask);
}
+
gdk_window_add_filter (NULL, global_filter_fn, controller);
gdk_window_set_events (gdk_get_default_root_window (),
{
SpiDEController *controller =
SPI_DEVICE_EVENT_CONTROLLER (bonobo_object (servant));
- DEControllerPrivateData *priv;
long key_synth_code;
- unsigned int slow_keys_delay;
- unsigned int press_time;
- unsigned int release_time;
#ifdef SPI_DEBUG
fprintf (stderr, "synthesizing keystroke %ld, type %d\n",
const CORBA_char *eventName,
CORBA_Environment *ev)
{
- int button;
+ int button = 0;
gboolean error = FALSE;
Display *display = spi_get_display ();
#ifdef SPI_DEBUG
case '3':
button = 3;
break;
+ case '4':
+ button = 4;
+ break;
+ case '5':
+ button = 5;
+ break;
default:
error = TRUE;
}
{
SpiDEController *retval = g_object_new (
SPI_DEVICE_EVENT_CONTROLLER_TYPE, NULL);
- DEControllerPrivateData *private;
retval->registry = SPI_REGISTRY (bonobo_object_ref (
BONOBO_OBJECT (registry)));