cleanup: Remove Context dbus interface remains
This commit is contained in:
		@ -150,13 +150,6 @@ static void emit_visibility_changed_signal
 | 
			
		||||
                                     (EekboardContextService *context,
 | 
			
		||||
                                      gboolean                visible);
 | 
			
		||||
 | 
			
		||||
static const GDBusInterfaceVTable interface_vtable =
 | 
			
		||||
{
 | 
			
		||||
  handle_method_call,
 | 
			
		||||
  NULL,
 | 
			
		||||
  NULL
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
static Display *display = NULL;
 | 
			
		||||
 | 
			
		||||
static EekKeyboard *
 | 
			
		||||
@ -816,146 +809,6 @@ connect_keyboard_signals (EekboardContextService *context)
 | 
			
		||||
                          context);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
handle_method_call (GDBusConnection       *connection,
 | 
			
		||||
                    const gchar           *sender,
 | 
			
		||||
                    const gchar           *object_path,
 | 
			
		||||
                    const gchar           *interface_name,
 | 
			
		||||
                    const gchar           *method_name,
 | 
			
		||||
                    GVariant              *parameters,
 | 
			
		||||
                    GDBusMethodInvocation *invocation,
 | 
			
		||||
                    gpointer               user_data)
 | 
			
		||||
{
 | 
			
		||||
    EekboardContextService *context = user_data;
 | 
			
		||||
    EekboardContextServiceClass *klass = EEKBOARD_CONTEXT_SERVICE_GET_CLASS(context);
 | 
			
		||||
    
 | 
			
		||||
    if (context->priv->repeat_timeout_id) {
 | 
			
		||||
        g_source_remove (context->priv->repeat_timeout_id);
 | 
			
		||||
        context->priv->repeat_timeout_id = 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "RemoveKeyboard") == 0) {
 | 
			
		||||
        guint keyboard_id, current_keyboard_id;
 | 
			
		||||
 | 
			
		||||
        g_variant_get (parameters, "(u)", &keyboard_id);
 | 
			
		||||
 | 
			
		||||
        if (context->priv->keyboard != NULL) {
 | 
			
		||||
            current_keyboard_id =
 | 
			
		||||
                GPOINTER_TO_UINT (g_object_get_data (G_OBJECT(context->priv->keyboard),
 | 
			
		||||
                                                     "keyboard-id"));
 | 
			
		||||
            if (keyboard_id == current_keyboard_id) {
 | 
			
		||||
                disconnect_keyboard_signals (context);
 | 
			
		||||
                context->priv->keyboard = NULL;
 | 
			
		||||
                g_object_notify (G_OBJECT(context), "keyboard");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        g_hash_table_remove (context->priv->keyboard_hash,
 | 
			
		||||
                             GUINT_TO_POINTER(keyboard_id));
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "SetFullscreen") == 0) {
 | 
			
		||||
        gboolean fullscreen;
 | 
			
		||||
 | 
			
		||||
        g_variant_get (parameters, "(b)", &fullscreen);
 | 
			
		||||
 | 
			
		||||
        if (context->priv->fullscreen == fullscreen) {
 | 
			
		||||
            g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
        context->priv->fullscreen = fullscreen;
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
 | 
			
		||||
        g_object_notify (G_OBJECT(context), "fullscreen");
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "SetGroup") == 0) {
 | 
			
		||||
        gint group;
 | 
			
		||||
 | 
			
		||||
        if (!context->priv->keyboard) {
 | 
			
		||||
            g_dbus_method_invocation_return_error (invocation,
 | 
			
		||||
                                                   G_IO_ERROR,
 | 
			
		||||
                                                   G_IO_ERROR_FAILED_HANDLED,
 | 
			
		||||
                                                   "keyboard is not set");
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        g_variant_get (parameters, "(i)", &group);
 | 
			
		||||
        eek_element_set_group (EEK_ELEMENT(context->priv->keyboard), group);
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
        emit_group_changed_signal (context, group);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "ShowKeyboard") == 0) {
 | 
			
		||||
        if (!context->priv->keyboard) {
 | 
			
		||||
            g_dbus_method_invocation_return_error (invocation,
 | 
			
		||||
                                                   G_IO_ERROR,
 | 
			
		||||
                                                   G_IO_ERROR_FAILED_HANDLED,
 | 
			
		||||
                                                   "keyboard is not set");
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        eekboard_context_service_show_keyboard (context);
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "HideKeyboard") == 0) {
 | 
			
		||||
        eekboard_context_service_hide_keyboard (context);
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (g_strcmp0 (method_name, "PressKeycode") == 0 ||
 | 
			
		||||
        g_strcmp0 (method_name, "ReleaseKeycode") == 0) {
 | 
			
		||||
        EekKey *key;
 | 
			
		||||
        guint keycode;
 | 
			
		||||
 | 
			
		||||
        if (!context->priv->keyboard) {
 | 
			
		||||
            g_dbus_method_invocation_return_error (invocation,
 | 
			
		||||
                                                   G_IO_ERROR,
 | 
			
		||||
                                                   G_IO_ERROR_FAILED_HANDLED,
 | 
			
		||||
                                                   "keyboard is not set");
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        g_variant_get (parameters, "(u)", &keycode);
 | 
			
		||||
        key = eek_keyboard_find_key_by_keycode (context->priv->keyboard, keycode);
 | 
			
		||||
 | 
			
		||||
        if (!key) {
 | 
			
		||||
            g_dbus_method_invocation_return_error (invocation,
 | 
			
		||||
                                                   G_IO_ERROR,
 | 
			
		||||
                                                   G_IO_ERROR_FAILED_HANDLED,
 | 
			
		||||
                                                   "key for %u is not found",
 | 
			
		||||
                                                   keycode);
 | 
			
		||||
            return;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        if (g_strcmp0 (method_name, "PressKeycode") == 0) {
 | 
			
		||||
            g_signal_handler_block (context->priv->keyboard,
 | 
			
		||||
                                    context->priv->key_pressed_handler);
 | 
			
		||||
            g_signal_emit_by_name (key, "pressed");
 | 
			
		||||
            g_signal_handler_unblock (context->priv->keyboard,
 | 
			
		||||
                                      context->priv->key_pressed_handler);
 | 
			
		||||
        } else {
 | 
			
		||||
            g_signal_handler_block (context->priv->keyboard,
 | 
			
		||||
                                    context->priv->key_released_handler);
 | 
			
		||||
            g_signal_emit_by_name (key, "released");
 | 
			
		||||
            g_signal_handler_unblock (context->priv->keyboard,
 | 
			
		||||
                                      context->priv->key_released_handler);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        g_dbus_method_invocation_return_value (invocation, NULL);
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    g_return_if_reached ();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * eekboard_context_service_enable:
 | 
			
		||||
 * @context: an #EekboardContextService
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user