[mythtv] Why allow conflicting bindings (was Re: "New" default keybindings)

Michael T. Dean mtdean at thirdcontact.com
Tue Apr 24 15:25:09 UTC 2007


On 04/23/2007 05:49 PM, Michael T. Dean wrote:
> However, REG_KEY (specifically, MythMainWindow::RegisterKey()) does 
> not check for conflicts with existing bindings when adding a new 
> binding to the DB.

OK, I guess I wrote too much of a novel the first time, so paring it 
down and taking a different tack...

As above, RegisterKey() does not check for conflicts with existing 
bindings when adding a new binding to the DB.  Would it make more sense 
to check for conflicts in RegisterKey() and ignore the 
(in-C++-code-specified) keylist for brand-new keybindings when writing 
the keybinding to the DB if a conflict is found?  This would prevent new 
keybindings from changing a key's behavior for users who use non-default 
mappings.

Mike

Perhaps relevant to the discussion:
[5896] ( http://svn.mythtv.org/trac/changeset/5896 ) changed the code to 
print a warning but allow multiple actions to be bound to the same key 
in a context, such that the first action handled by the code wins and 
others are ignored.  Why was that approach chosen by David Engel?  Was 
it specifically for user-specified mappings (when the user chooses to 
create a conflicting binding), or was it meant to help handle new 
bindings that create conflicts for the user (meaning changing 
RegisterKey() is probably not desirable)?


More information about the mythtv-dev mailing list