keyboard: move keyboard management code to custom class

Instead of having CcKeyboardPanel managing both UI and backend code,
factor the backend code to a new CcKeyboardManager class and drop
backend management from the panel itself.

The new backend class handles the loading, creation and removal and
search of keyboard shortcuts. It also resolves reversible shortcuts
when searching.

This patch moves the code to this new class, and updates the rest of
the Keyboard panel to use it instead.

https://bugzilla.gnome.org/show_bug.cgi?id=769063
This commit is contained in:
Georges Basile Stavracas Neto 2016-07-21 18:38:37 -03:00
parent 70bba2bbcd
commit 60b235754e
6 changed files with 906 additions and 851 deletions

View file

@ -24,7 +24,7 @@
#include <gtk/gtk.h>
#include "cc-keyboard-item.h"
#include "cc-keyboard-panel.h"
#include "cc-keyboard-manager.h"
G_BEGIN_DECLS
@ -38,7 +38,7 @@ typedef enum
G_DECLARE_FINAL_TYPE (CcKeyboardShortcutEditor, cc_keyboard_shortcut_editor, CC, KEYBOARD_SHORTCUT_EDITOR, GtkDialog)
GtkWidget* cc_keyboard_shortcut_editor_new (CcKeyboardPanel *panel);
GtkWidget* cc_keyboard_shortcut_editor_new (CcKeyboardManager *manager);
CcKeyboardItem* cc_keyboard_shortcut_editor_get_item (CcKeyboardShortcutEditor *self);