This appears to be largely vestigial code from a time when a GtkTreeView was used here. It is very confusing, because someone reading the code expects this to be critical to what's displayed on the screen, but it isn't.
If I understand correctly, the only place this was still useful for
something was in cc_keyboard_manager_remove_custom_shortcut()
, to check
that the CcKeyboardItem is valid. If I understand, this is a sanity
check that should never fail, so this seems unnecessary, and I've
removed it.
If that check is actually important, it would be better to have a
GHashTable
of custom shortcuts, which should be simpler and clearer.
sections_store
should similarly be removed/replaced. It seems to only
be needed in add_shortcuts()
. But that seems like it can't just be
removed, so I haven't changed that yet.