[kcms/keys] Handle conflicts in the kcm
Previously conflicts where handled in KeySequenceItem where inputs were being compared against the current active shortcut configuration. For simple configuration actions this is good enough but inconvenient for more complicated user interaction. If action A has key sequence K, the user removes K from A and assigns it to another action B, they would prviously be prompted that K is assigned to A, even though after clicking apply there were no changes. Doing conflict detection ourselves we can keep the model consistent and prompt for conflicts against the current state of the models of the kcm. Also solves a bug where it would fail to activate a default key sequence when it was assigned to another action because the checkbox would not check for conflicts.
Showing with 84 additions and 22 deletions