Mailing List Archive

Key mapping for BOOKMARK
During playback, the select key assigned in global key mapping is used
for setting and removing bookmarks.

To allow users to set a different key for bookmarks without having to
change global select, I have create a new key mapping for bookmarks. I
can default this to the same keys as SELECT (i.e. space, enter, return)
and it should not affect anybody unless they have changed their global
select settings. (see
https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
It is not committed yet.

Personally I never set a bookmark and the fact that it is on the most
prominent keyboard keys seems inappropriate.

On the Nvidia Shield there is only one button (enter), and it should do
something useful that leads to other interactions, rather than set a
bookmark. Other remotes also have a prominent enter button, which should
be used for something more important.

I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is
"jump to bookmark"). I would default Space to pause(which is how most
players work), and Enter to a new navigation OSD that I plan to develop.

Existing frontends would find that space enter and return would no
longer invoke bookmark. They could still assign those keys to bookmark
in the key mappings.

I expect that bookmarks are not widely used and that most people would
not be upset at this.

If necessary the code could apply different defaults for Android so as
to have less impact on existing users, but I think it is better if
possible to keep the different platforms working the same.

Please let me have feedback on this.

Peter

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/13/2018 01:44 PM, Peter Bennett wrote:
> During playback, the select key assigned in global key mapping is used for setting and removing bookmarks.
>
> To allow users to set a different key for bookmarks without having to change global select, I have create a new key mapping for bookmarks. I can
> default this to the same keys as SELECT (i.e. space, enter, return) and it should not affect anybody unless they have changed their global
> select settings. (see https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch). It is not committed yet.
>
> Personally I never set a bookmark and the fact that it is on the most prominent keyboard keys seems inappropriate.
>
> On the Nvidia Shield there is only one button (enter), and it should do something useful that leads to other interactions, rather than set a
> bookmark. Other remotes also have a prominent enter button, which should be used for something more important.
>
> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is "jump to bookmark"). I would default Space to pause(which is how most
> players work), and Enter to a new navigation OSD that I plan to develop.
>
> Existing frontends would find that space enter and return would no longer invoke bookmark. They could still assign those keys to bookmark in the
> key mappings.
>
> I expect that bookmarks are not widely used and that most people would not be upset at this.
>
> If necessary the code could apply different defaults for Android so as to have less impact on existing users, but I think it is better if
> possible to keep the different platforms working the same.
>
> Please let me have feedback on this.

Peter,

Just FYI, of my 265 recordings, 51 have bookmark = 1. I wouldn't have
any problem using ^K or remapping if required. I believe that MythMote
users would need to remap and perhaps other 3rd party clients (if the
proposed ^K default is used.) MythMote uses NetworkControlPort (6546.)
Others use Frontend/SendAction and/or Frontend/SendKey.

--
Bill
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 13/03/18 18:44, Peter Bennett wrote:
> During playback, the select key assigned in global key mapping is used
> for setting and removing bookmarks.
>
> To allow users to set a different key for bookmarks without having to
> change global select, I have create a new key mapping for bookmarks. I
> can default this to the same keys as SELECT (i.e. space, enter,
> return) and it should not affect anybody unless they have changed
> their global select settings. (see
> https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
> It is not committed yet.
>
> Personally I never set a bookmark and the fact that it is on the most
> prominent keyboard keys seems inappropriate.
>
> On the Nvidia Shield there is only one button (enter), and it should
> do something useful that leads to other interactions, rather than set
> a bookmark. Other remotes also have a prominent enter button, which
> should be used for something more important.
>
> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is
> "jump to bookmark"). I would default Space to pause(which is how most
> players work), and Enter to a new navigation OSD that I plan to develop.
>
> Existing frontends would find that space enter and return would no
> longer invoke bookmark. They could still assign those keys to bookmark
> in the key mappings.
>
> I expect that bookmarks are not widely used and that most people would
> not be upset at this.
>
> If necessary the code could apply different defaults for Android so as
> to have less impact on existing users, but I think it is better if
> possible to keep the different platforms working the same.
>
> Please let me have feedback on this.
>
> Peter

My frontends have "Action on playback exit:" set to "Always prompt
(including Live TV)", default action is to set BOOKMARK, so changing the
key assignment for BOOKMARK is no issue for me.

For pause (on a standard qwerty keyboard) are you keeping "p" for
play/pause or replacing it with Space?  Many remote controls (IR and
wireless)  map the play/pause button to "p"

Mike






_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/13/2018 03:58 PM, Mike Bibbings wrote:
>
> My frontends have "Action on playback exit:" set to "Always prompt
> (including Live TV)", default action is to set BOOKMARK, so changing
> the key assignment for BOOKMARK is no issue for me.
>
> For pause (on a standard qwerty keyboard) are you keeping "p" for
> play/pause or replacing it with Space?  Many remote controls (IR and
> wireless)  map the play/pause button to "p"
>
> Mike
>
I would keep the P and add Space as a second key that activates pause.
Peter
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On Tue, Mar 13, 2018 at 02:44:46PM -0400, Peter Bennett wrote:
> During playback, the select key assigned in global key mapping is used for
> setting and removing bookmarks.
>
> To allow users to set a different key for bookmarks without having to change
> global select, I have create a new key mapping for bookmarks. I can default
> this to the same keys as SELECT (i.e. space, enter, return) and it should
> not affect anybody unless they have changed their global select settings.
> (see https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
> It is not committed yet.
>
> Personally I never set a bookmark and the fact that it is on the most
> prominent keyboard keys seems inappropriate.
>
> On the Nvidia Shield there is only one button (enter), and it should do
> something useful that leads to other interactions, rather than set a
> bookmark. Other remotes also have a prominent enter button, which should be
> used for something more important.
>
> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is "jump to
> bookmark"). I would default Space to pause(which is how most players work),
> and Enter to a new navigation OSD that I plan to develop.
>
> Existing frontends would find that space enter and return would no longer
> invoke bookmark. They could still assign those keys to bookmark in the key
> mappings.
>
> I expect that bookmarks are not widely used and that most people would not
> be upset at this.
>
> If necessary the code could apply different defaults for Android so as to
> have less impact on existing users, but I think it is better if possible to
> keep the different platforms working the same.
>
> Please let me have feedback on this.

I use the bookmark feature quite a bit and really like the key it is
assigned to. Certainly needing a two key combo would be extremely
annoying in my opinion.

We already have m to bring up an onscreen menu for the rare case it
is used.

--
Len Sorensen
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 3/13/2018 2:44 PM, Peter Bennett wrote:
> During playback, the select key assigned in global key mapping is used
> for setting and removing bookmarks.
>
> To allow users to set a different key for bookmarks without having to
> change global select, I have create a new key mapping for bookmarks. I
> can default this to the same keys as SELECT (i.e. space, enter, return)
> and it should not affect anybody unless they have changed their global
> select settings. (see
> https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
> It is not committed yet.
>
> Personally I never set a bookmark and the fact that it is on the most
> prominent keyboard keys seems inappropriate.
>
> On the Nvidia Shield there is only one button (enter), and it should do
> something useful that leads to other interactions, rather than set a
> bookmark. Other remotes also have a prominent enter button, which should
> be used for something more important.
>
> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is
> "jump to bookmark"). I would default Space to pause(which is how most
> players work), and Enter to a new navigation OSD that I plan to develop.
>
> Existing frontends would find that space enter and return would no
> longer invoke bookmark. They could still assign those keys to bookmark
> in the key mappings.
>
> I expect that bookmarks are not widely used and that most people would
> not be upset at this.
>
> If necessary the code could apply different defaults for Android so as
> to have less impact on existing users, but I think it is better if
> possible to keep the different platforms working the same.
>
> Please let me have feedback on this.
>
> Peter

1) I DO use the enter key to set bookmarks all the time.

2) If you want to poll the user community w.r.t how popular the current
behavior is, it is not sufficient to poll the developer community, i.e.
this list mythtv-dev. You really need to poll the user community, e.g.
the mythtv-users list and the forum.

3) I think it is bad policy to change the default behavior for
functionality that has worked this way since I'm guessing forever. I
know it has worked this way since at least 2009 when I first became a
user. I quite understand why the current behavior is a problem for you,
but please don't break it for all of us who are happy with the way it
works now. By all means create a new key mapping for bookmarks, but make
sure the default is to map it to the same keys used by the select key
mapping. I understand it could generate some warnings in the log file,
but better that than breaking what many users consider a feature.


_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/14/2018 06:25 PM, faginbagin wrote:
> 1) I DO use the enter key to set bookmarks all the time.
>
> 2) If you want to poll the user community w.r.t how popular the
> current behavior is, it is not sufficient to poll the developer
> community, i.e. this list mythtv-dev. You really need to poll the user
> community, e.g. the mythtv-users list and the forum.
>
> 3) I think it is bad policy to change the default behavior for
> functionality that has worked this way since I'm guessing forever. I
> know it has worked this way since at least 2009 when I first became a
> user. I quite understand why the current behavior is a problem for
> you, but please don't break it for all of us who are happy with the
> way it works now. By all means create a new key mapping for bookmarks,
> but make sure the default is to map it to the same keys used by the
> select key mapping. I understand it could generate some warnings in
> the log file, but better that than breaking what many users consider a
> feature.

Hi Helen

Thanks for responding. I did not get a lot of responses on this and I
agree with your points. I do not want to change things people are used
to - but I wonder how to eventually make a change. Any suggestions would
be welcome.

If I did make the change as I had suggested, you and others would still
be able to go to the key mappings and change it back to the way you like it.

For now, I am going to map bookmark to the existing select keys plus
Ctrl+K. People will have the option of remapping the enter key to
something else, or mapping other keys to bookmark.

Peter
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 3/14/2018 7:40 PM, Peter Bennett wrote:
> On 03/14/2018 06:25 PM, faginbagin wrote:
>> 1) I DO use the enter key to set bookmarks all the time.
>>
>> 2) If you want to poll the user community w.r.t how popular the
>> current behavior is, it is not sufficient to poll the developer
>> community, i.e. this list mythtv-dev. You really need to poll the user
>> community, e.g. the mythtv-users list and the forum.
>>
>> 3) I think it is bad policy to change the default behavior for
>> functionality that has worked this way since I'm guessing forever. I
>> know it has worked this way since at least 2009 when I first became a
>> user. I quite understand why the current behavior is a problem for
>> you, but please don't break it for all of us who are happy with the
>> way it works now. By all means create a new key mapping for bookmarks,
>> but make sure the default is to map it to the same keys used by the
>> select key mapping. I understand it could generate some warnings in
>> the log file, but better that than breaking what many users consider a
>> feature.
>
> Hi Helen
>
> Thanks for responding. I did not get a lot of responses on this and I
> agree with your points. I do not want to change things people are used
> to - but I wonder how to eventually make a change. Any suggestions would
> be welcome.
>
> If I did make the change as I had suggested, you and others would still
> be able to go to the key mappings and change it back to the way you like
> it.
>
> For now, I am going to map bookmark to the existing select keys plus
> Ctrl+K. People will have the option of remapping the enter key to
> something else, or mapping other keys to bookmark.
>
> Peter

Hi Peter,

I'm glad you agree with my points. The concern I have with you making
the change as you've suggested is that it puts the onus on the user to
restore the original behavior, if that's what they want. It's one thing
to expect users to go through the various setup screens, but I suspect
editing the key mappings are above and beyond the comfort level of many
users. I know I wouldn't have a problem with it, but many users have
probably never had to tinker with them.

Regards,
Helen
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/13/2018 02:44 PM, Peter Bennett wrote:
> During playback, the select key assigned in global key mapping is used
> for setting and removing bookmarks.

Yes, it's an action "override" (where you tell MythTV to do
something--SELECT--and it does something else, though in this case the
something else is at least reasonable as it's selecting that location
for the bookmark) and is modified via a setting:

Alternate clear and save bookmark
During playback the SELECT key (Enter or Space) will alternate between
"Bookmark Saved" and "Bookmark Cleared". If disabled, the SELECT key
will save the current position for each keypress.

You'll need to handle this, also, when you modify. Since a setting
shouldn't modify key behavior (so that users can map both behaviors, if
desired), we really should have a separate action for SET_BOOKMARK
(always sets the current location as the bookmark) and TOGGLE_BOOKMARK
(which alternates between setting and clearing) rather than just keeping
the setting and changing a generic action (BOOKMARK) to set or toggle
based on the setting--which is a problem for users who want both actions
available.

> To allow users to set a different key for bookmarks without having to
> change global select, I have create a new key mapping for bookmarks.

Creating a new action for setting bookmarks is good. All actions should
be separately modifiable, exactly for the reason you describe.

> I can default this to the same keys as SELECT (i.e. space, enter,
> return) and it should not affect anybody unless they have changed
> their global select settings. (see
> https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
> It is not committed yet.

This--the "unless they have changed their global settings" part--is one
reason why...

> Personally I never set a bookmark and the fact that it is on the most
> prominent keyboard keys seems inappropriate.
>
> On the Nvidia Shield there is only one button (enter), and it should
> do something useful that leads to other interactions, rather than set
> a bookmark. Other remotes also have a prominent enter button, which
> should be used for something more important.
>
> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is
> "jump to bookmark").

...our approach in the past has generally been to not provide a default
key binding for any new actions added to MythTV because the chosen
key(s) may conflict with a user-mapped binding. See
https://lists.gt.net/mythtv/dev/266100#266100 . Based on the responses
in this thread--suggesting few people use SELECT to set a bookmark--I
would consider this to be a not significant case. Therefore, having an
empty default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would
make sense since there are other approaches by which the user can set a
bookmark (even by just exiting playback).

However, some existing users are using the functionality. Therefore, my
recommendation is to do it the hard way, but the way that will work for
everyone. You'll create the new actions (one for SET_ and one for
TOGGLE_BOOKMARK), and default each to an empty keylist. So, new users
will have to manually set a key binding if they want to use the actions
(but based on the responses to this showing little use of the SELECT
override and my assumption that more people more often set bookmarks by
exiting playback than by using our SELECT override, that shouldn't be a
problem). And, to ensure that existing users get the behavior they're
used to, you can then do a DB update that:

for each host in the keybindings table with a Global/SELECT mapping:
get the keylist for Global/SELECT
check the setting AltClearSavedPosition
if enabled, map the Global/SELECT keylist to
TV_Playback/TOGGLE_BOOKMARK
if disabled, map the Global/SELECT keylist to TV_Playback/SET_BOOKMARK

This will be similar to what was done in DB update 1280.

However, I think mapping a key that's already mapped to a Global action
to an action in another context will result in a warning every time you
start up mythfrontend. See
https://github.com/MythTV/mythtv/commit/629db590 and test by looking for:

QString("Key %1 is bound to multiple actions in context
%2.").arg(key).arg(context));
(from MythMainWindow::BindKey() )

in your mythfrontend log. I'm OK with the warning showing up for
existing users who "inherit" the SELECT key list for SET_ or
TOGGLE_BOOKMARK, but it's quite likely you may get a lot of
discussion/confusion on the lists because of the warning just showing up
after a user upgrades to the new version which no longer uses SELECT for
the bookmark actions.

Mike
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On Thu, Mar 15, 2018 at 08:10:40AM -0400, Michael T. Dean wrote:
> ...our approach in the past has generally been to not provide a default key
> binding for any new actions added to MythTV because the chosen key(s) may
> conflict with a user-mapped binding. See
> https://lists.gt.net/mythtv/dev/266100#266100 . Based on the responses in
> this thread--suggesting few people use SELECT to set a bookmark--I would
> consider this to be a not significant case. Therefore, having an empty
> default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would make sense
> since there are other approaches by which the user can set a bookmark (even
> by just exiting playback).

I hate the on exit option and have it off. I only use the hitting space
or enter key method.

--
Len Sorensen
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/15/2018 11:06 AM, Lennart Sorensen wrote:
> On Thu, Mar 15, 2018 at 08:10:40AM -0400, Michael T. Dean wrote:
>> ...our approach in the past has generally been to not provide a default key
>> binding for any new actions added to MythTV because the chosen key(s) may
>> conflict with a user-mapped binding. See
>> https://lists.gt.net/mythtv/dev/266100#266100 . Based on the responses in
>> this thread--suggesting few people use SELECT to set a bookmark--I would
>> consider this to be a not significant case. Therefore, having an empty
>> default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would make sense
>> since there are other approaches by which the user can set a bookmark (even
>> by just exiting playback).
> I hate the on exit option and have it off. I only use the hitting space
> or enter key method.

So you could map the SET_ or TOGGLE_BOOKMARK action as desired. Or,
really, as was the point of my message, it would be done for you,
automatically, by the database update since you're not a new user.

Here I'm simply saying there are other approaches that would be
available to a new user who hasn't mapped the action if it has an empty
key list. Sure, it could be good to have a discoverable option in the
menu, too, but since using the menu to set a bookmark would be rather
clumsy, I'd argue it's not necessary. I would be for changing the
Action on playback exit setting to default (for new users) to save
position and exit.

Mike
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/15/2018 12:12 PM, Michael T. Dean wrote:
> On 03/15/2018 11:06 AM, Lennart Sorensen wrote:
>> On Thu, Mar 15, 2018 at 08:10:40AM -0400, Michael T. Dean wrote:
>>> ...our approach in the past has generally been to not provide a
>>> default key
>>> binding for any new actions added to MythTV because the chosen
>>> key(s) may
>>> conflict with a user-mapped binding.  See
>>> https://lists.gt.net/mythtv/dev/266100#266100 .  Based on the
>>> responses in
>>> this thread--suggesting few people use SELECT to set a bookmark--I
>>> would
>>> consider this to be a not significant case. Therefore, having an empty
>>> default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would make
>>> sense
>>> since there are other approaches by which the user can set a
>>> bookmark (even
>>> by just exiting playback).
>> I hate the on exit option and have it off.  I only use the hitting space
>> or enter key method.
>
Hi Mike

I am digesting your longer reply to my original email, and it all makes
sense. While thinking about a response I came up with another idea that
could be much easier and have less impact.

Let the SELECT keys still operate the bookmarks in the way they always
have, in conjunction with the AltClearSavedPosition setting. Add the
TOGGLE_BOOKMARK and SET_BOOKMARK actions, unassigned to any keys. In the
code, support SELECT and the two new actions. The existing functionality
will not be changed at all. People who want to use the enter key for
pause or other things can map the keys in playback context. They will be
able to map bookmarks to other keys if they still want to use bookmarks.

I see there is some precedent for this, in the manual zoom code, where
you can assign ZOOM actions but also it uses default actions in the code
if a key is used that is not mapped to a zoom action (e.g. left and right).

I am also adding set bookmark and jump to bookmark to the playback
navigation menu.

Peter
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/15/2018 12:54 PM, Peter Bennett wrote:
>
>>> On Thu, Mar 15, 2018 at 08:10:40AM -0400, Michael T. Dean wrote:
>>>> ...our approach in the past has generally been to not provide a
>>>> default key
>>>> binding for any new actions added to MythTV because the chosen
>>>> key(s) may
>>>> conflict with a user-mapped binding. See
>>>> https://lists.gt.net/mythtv/dev/266100#266100 . Based on the
>>>> responses in
>>>> this thread--suggesting few people use SELECT to set a bookmark--I
>>>> would
>>>> consider this to be a not significant case. Therefore, having an empty
>>>> default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would make
>>>> sense
>>>> since there are other approaches by which the user can set a
>>>> bookmark (even
>>>> by just exiting playback).
>
>
> I am digesting your longer reply to my original email, and it all
> makes sense. While thinking about a response I came up with another
> idea that could be much easier and have less impact.
>
> Let the SELECT keys still operate the bookmarks in the way they always
> have, in conjunction with the AltClearSavedPosition setting. Add the
> TOGGLE_BOOKMARK and SET_BOOKMARK actions, unassigned to any keys. In
> the code, support SELECT and the two new actions. The existing
> functionality will not be changed at all. People who want to use the
> enter key for pause or other things can map the keys in playback
> context. They will be able to map bookmarks to other keys if they
> still want to use bookmarks.
>
> I see there is some precedent for this, in the manual zoom code, where
> you can assign ZOOM actions but also it uses default actions in the
> code if a key is used that is not mapped to a zoom action (e.g. left
> and right).
>
> I am also adding set bookmark and jump to bookmark to the playback
> navigation menu.

I'd prefer the approach that changes SELECT to no longer have anything
to do with bookmarks and, instead, change SELECT to do something far
more commonly-used--like, for example, bring up your navigation OSD
(which, BTW, thank you for working on that--it is/was something on my
TODO list***), since navigation is something that is very commonly done
during playback. You're welcome to do it the other way, but--if I ever
get a chance to make time to work on MythTV code, again--I would likely
eventually remove the SELECT stuff and the setting and just use the
SET_/TOGGLE_BOOKMARK actions.

Also, we have been working to remove all of the settings that are just
key bindings in the wrong place--settings that change the way a key
works--and making all approaches available through different key
bindings to give more configurability (and discoverability) for users.
(At least more discoverable from the standpoint that a user should
assume the answer to the question, "How do I modify how my keys work?"
should be, "Through key bindings," and not, "Through settings."**)

And I think since you're adding the bookmark functionality to the nav
menu, it covers the "discoverable for new users, even if the default key
list is empty" case.

Thanks for all the work you're doing on MythTV--and for helping to pare
down my TODO list by doing things I had hoped to one day do, like the
nav OSD. :)

Mike

* FWIW, my plans included allowing users to jump around via prev/next
commercial marks (marks placed by commercial detection), prev/next cut
points (marks placed by users), bookmarks (allowing multiple, which I
think Stuart M modified the code to allow, even though we have no UI to
do it, yet), and eventually (since I think we'd have to actually start
writing these from the commercial flagger) blank frames, etc, that come
from the commercial detection. I'm not asking you to do any of these
things, but just giving you an idea of what I had been thinking in case
you like any of the ideas and hadn' t thought of them. My main problem
with getting the nav menu done was figuring out a useable UI/UX, but I'm
sure you'll do far better than I would have, so maybe it's good I never
got around to doing it. :)

** And, yes, key bindings are hard to edit and hard to share (between
frontends and between users), so maybe not the most discoverable place
for functionality. I still hope to one day get a chance to modify
MythTV to use key-binding "themes" (so to speak) such that we can
export/import key bindings to/from XML files for sharing across systems
(or even editing) and have several available for selection (or
auto-selection, for example for Android vs GNU/Linux) such that we no
longer need to hard-code
potentially-conflicting-but-hard-to-check-because-they're-spread-out-everywhere
default key lists in our source code and worry about things like in this
thread. Also some users (like Yeechang Lee) have spent a great deal of
time actually modifying their key bindings to give extremely efficient
usage of a limited number of keys to allow for use with remote controls,
and this would give them the opportunity to contribute back various
bindings that provide various differing options for users. (Oh, and
rather than force the use of XML files to share within a system--across
multiple frontends--the "key bindings theme" setting would allow users
to select another frontend to copy (at least the current, if not
automatically updating for future changes to that host's) configuration
from that frontend.) This approach would even allow
remote-control-specific bindings, allowing someone to create a
recommended set of bindings for a given remote or style of remote. In
all, it's likely much easier than our current approach.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On Thu, Mar 15, 2018 at 12:12:59PM -0400, Michael T. Dean wrote:
> So you could map the SET_ or TOGGLE_BOOKMARK action as desired. Or, really,
> as was the point of my message, it would be done for you, automatically, by
> the database update since you're not a new user.

I was just saying I am not so sure the most common bookmark user uses
the bookmark on exit.

Also changing what a new user gets vs an upgrade is not usually a
good idea. What if I want to setup another frontend. Now it behaves
differently and I have to go spend a bunch of effort to figure out why
the heck this is and how to fix it.

> Here I'm simply saying there are other approaches that would be available to
> a new user who hasn't mapped the action if it has an empty key list. Sure,
> it could be good to have a discoverable option in the menu, too, but since
> using the menu to set a bookmark would be rather clumsy, I'd argue it's not
> necessary. I would be for changing the Action on playback exit setting to
> default (for new users) to save position and exit.

I would think that would be very confusing. I think people expect
playback to start from the beginning in general when they select a
recording. Not a good default to change.

Do not assume single users. Most households have multiple users who
may watch the same show at different times.

I think the current defaults that have been around for years are good,
and the suggested changes to the defaults are not.

--
Len Sorensen
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
Thank you Mike for your detailed response. This is very helpful.


On 03/15/2018 08:10 AM, Michael T. Dean wrote:

> However, I think mapping a key that's already mapped to a Global
> action to an action in another context will result in a warning every
> time you start up mythfrontend.  See
> https://github.com/MythTV/mythtv/commit/629db590 and test by looking for:
>
> QString("Key %1 is bound to multiple actions in context
> %2.").arg(key).arg(context));
> (from MythMainWindow::BindKey() )
>
> in your mythfrontend log. I'm OK with the warning showing up for
> existing users who "inherit" the SELECT key list for SET_ or
> TOGGLE_BOOKMARK, but it's quite likely you may get a lot of
> discussion/confusion on the lists because of the warning just showing
> up after a user upgrades to the new version which no longer uses
> SELECT for the bookmark actions.
>
I checked this, and with a mapping of space, enter, return in both
global select and playback bookmark, I do not get this warning. It seems
to only output the warning if the same key is assigned to two actions in
playback.

Normally the key mappings do not let you do that, but I am able to map
left and right to ZOOMIN and ZOOMOUT as well as to SEEKFFWD and
SEEKRWND. This is valid since zoom is a separate mode and is allowed by
the key mappings. This gives the above warning. So I think I do not have
to worry about the warning.

I will change the approach to what you have suggested.

There will likely be some complaints. You can please some of the people
all of the time, you can please all of the people some of the time, but
you can’t please all of the people all of the time.

Peter
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/15/2018 02:47 PM, Peter Bennett wrote:
> Thank you Mike for your detailed response. This is very helpful.
>
>
> On 03/15/2018 08:10 AM, Michael T. Dean wrote:
>
>> However, I think mapping a key that's already mapped to a Global
>> action to an action in another context will result in a warning every
>> time you start up mythfrontend. See
>> https://github.com/MythTV/mythtv/commit/629db590 and test by looking
>> for:
>>
>> QString("Key %1 is bound to multiple actions in context
>> %2.").arg(key).arg(context));
>> (from MythMainWindow::BindKey() )
>>
>> in your mythfrontend log. I'm OK with the warning showing up for
>> existing users who "inherit" the SELECT key list for SET_ or
>> TOGGLE_BOOKMARK, but it's quite likely you may get a lot of
>> discussion/confusion on the lists because of the warning just showing
>> up after a user upgrades to the new version which no longer uses
>> SELECT for the bookmark actions.
>>
> I checked this, and with a mapping of space, enter, return in both
> global select and playback bookmark, I do not get this warning. It
> seems to only output the warning if the same key is assigned to two
> actions in playback.

OK. I couldn't remember if the warning would be emitted if you mapped a
key in a specific context that was already mapped in Global. It seems
it doesn't, and that's probably good.

>
> Normally the key mappings do not let you do that, but I am able to map
> left and right to ZOOMIN and ZOOMOUT as well as to SEEKFFWD and
> SEEKRWND. This is valid since zoom is a separate mode and is allowed
> by the key mappings. This gives the above warning. So I think I do not
> have to worry about the warning.
>
> I will change the approach to what you have suggested.
>
> There will likely be some complaints. You can please some of the
> people all of the time, you can please all of the people some of the
> time, but you can’t please all of the people all of the time.

Exactly. And progress requires making changes. I'll try to help with
explanations and directions for getting the desired behavior when we
start getting questions to the list. Since you're doing the hard work
of changing the code, it's the least I could do. :)

Thanks, again.

Mike
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 3/15/2018 8:10 AM, Michael T. Dean wrote:
> On 03/13/2018 02:44 PM, Peter Bennett wrote:
>> During playback, the select key assigned in global key mapping is used
>> for setting and removing bookmarks.
>
> Yes, it's an action "override" (where you tell MythTV to do
> something--SELECT--and it does something else, though in this case the
> something else is at least reasonable as it's selecting that location
> for the bookmark) and is modified via a setting:
>
> Alternate clear and save bookmark
> During playback the SELECT key (Enter or Space) will alternate between
> "Bookmark Saved" and "Bookmark Cleared". If disabled, the SELECT key
> will save the current position for each keypress.
>
> You'll need to handle this, also, when you modify.  Since a setting
> shouldn't modify key behavior (so that users can map both behaviors, if
> desired), we really should have a separate action for SET_BOOKMARK
> (always sets the current location as the bookmark) and TOGGLE_BOOKMARK
> (which alternates between setting and clearing) rather than just keeping
> the setting and changing a generic action (BOOKMARK) to set or toggle
> based on the setting--which is a problem for users who want both actions
> available.
>
>> To allow users to set a different key for bookmarks without having to
>> change global select, I have create a new key mapping for bookmarks.
>
> Creating a new action for setting bookmarks is good.  All actions should
> be separately modifiable, exactly for the reason you describe.
>
>> I can default this to the same keys as SELECT (i.e. space, enter,
>> return) and it should not affect anybody unless they have changed
>> their global select settings. (see
>> https://code.mythtv.org/trac/attachment/ticket/13234/20180313_1414_bookmark.patch).
>> It is not committed yet.
>
> This--the "unless they have changed their global settings" part--is one
> reason why...
>
>> Personally I never set a bookmark and the fact that it is on the most
>> prominent keyboard keys seems inappropriate.
>>
>> On the Nvidia Shield there is only one button (enter), and it should
>> do something useful that leads to other interactions, rather than set
>> a bookmark. Other remotes also have a prominent enter button, which
>> should be used for something more important.
>>
>> I propose defaulting the new BOOKMARK setting to Ctrl+K (since K is
>> "jump to bookmark").
>
> ...our approach in the past has generally been to not provide a default
> key binding for any new actions added to MythTV because the chosen
> key(s) may conflict with a user-mapped binding.  See
> https://lists.gt.net/mythtv/dev/266100#266100 .  Based on the responses
> in this thread--suggesting few people use SELECT to set a bookmark--I
> would consider this to be a not significant case. Therefore, having an
> empty default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would
> make sense since there are other approaches by which the user can set a
> bookmark (even by just exiting playback).

Please do not make assumptions about how many people use this feature
based on replies to this thread. This is the developers' list. We are
not a representative set of users. Ask the users' list or forum if you
want to get a more realistic idea of how may USERS care about this feature.

<snip>
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 3/15/2018 11:06 AM, Lennart Sorensen wrote:
> On Thu, Mar 15, 2018 at 08:10:40AM -0400, Michael T. Dean wrote:
>> ...our approach in the past has generally been to not provide a default key
>> binding for any new actions added to MythTV because the chosen key(s) may
>> conflict with a user-mapped binding. See
>> https://lists.gt.net/mythtv/dev/266100#266100 . Based on the responses in
>> this thread--suggesting few people use SELECT to set a bookmark--I would
>> consider this to be a not significant case. Therefore, having an empty
>> default keylist for SET_BOOKMARK and for TOGGLE_BOOKMARK would make sense
>> since there are other approaches by which the user can set a bookmark (even
>> by just exiting playback).
>
> I hate the on exit option and have it off. I only use the hitting space
> or enter key method.

I like the option, but there are times when I don't want to move the
bookmark or add one that isn't already there. In that case, I press 0,
FFwd, which seeks to the last second or two of the recording, plays it
out and stops without adding or changing a bookmark.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/15/2018 01:56 PM, Michael T. Dean wrote:
> I'd prefer the approach that changes SELECT to no longer have anything
> to do with bookmarks and, instead, change SELECT to do something far
> more commonly-used--like, for example, bring up your navigation OSD
> (which, BTW, thank you for working on that--it is/was something on my
> TODO list***), since navigation is something that is very commonly
> done during playback.  You're welcome to do it the other way, but--if
> I ever get a chance to make time to work on MythTV code, again--I
> would likely eventually remove the SELECT stuff and the setting and
> just use the SET_/TOGGLE_BOOKMARK actions.
>
> Also, we have been working to remove all of the settings that are just
> key bindings in the wrong place--settings that change the way a key
> works--and making all approaches available through different key
> bindings to give more configurability (and discoverability) for
> users.  (At least more discoverable from the standpoint that a user
> should assume the answer to the question, "How do I modify how my keys
> work?" should be, "Through key bindings," and not, "Through settings."**)
>
> And I think since you're adding the bookmark functionality to the nav
> menu, it covers the "discoverable for new users, even if the default
> key list is empty" case.
>
> Thanks for all the work you're doing on MythTV--and for helping to
> pare down my TODO list by doing things I had hoped to one day do, like
> the nav OSD. :)
>
> Mike
Hi Mike

See  https://code.mythtv.org/trac/ticket/13234#comment:19 . I think that
does everything the way you are recommending. Let me know if you see
anything wrong there.

Peter
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/16/2018 10:08 AM, Peter Bennett wrote:
>
>
> On 03/15/2018 01:56 PM, Michael T. Dean wrote:
>> I'd prefer the approach that changes SELECT to no longer have
>> anything to do with bookmarks and, instead, change SELECT to do
>> something far more commonly-used--like, for example, bring up your
>> navigation OSD (which, BTW, thank you for working on that--it is/was
>> something on my TODO list***), since navigation is something that is
>> very commonly done during playback. You're welcome to do it the
>> other way, but--if I ever get a chance to make time to work on MythTV
>> code, again--I would likely eventually remove the SELECT stuff and
>> the setting and just use the SET_/TOGGLE_BOOKMARK actions.
>>
>> Also, we have been working to remove all of the settings that are
>> just key bindings in the wrong place--settings that change the way a
>> key works--and making all approaches available through different key
>> bindings to give more configurability (and discoverability) for
>> users. (At least more discoverable from the standpoint that a user
>> should assume the answer to the question, "How do I modify how my
>> keys work?" should be, "Through key bindings," and not, "Through
>> settings."**)
>>
>> And I think since you're adding the bookmark functionality to the nav
>> menu, it covers the "discoverable for new users, even if the default
>> key list is empty" case.
>>
>> Thanks for all the work you're doing on MythTV--and for helping to
>> pare down my TODO list by doing things I had hoped to one day do,
>> like the nav OSD. :)
>>
>> Mike
> Hi Mike
>
> See https://code.mythtv.org/trac/ticket/13234#comment:19 . I think
> that does everything the way you are recommending. Let me know if you
> see anything wrong there.

Looks good, but why not do the part that tests to see if they're
currently using the SELECT keys for bookmarks as a one-time DB update
instead of having to do it every startup? It would be something like
the attached (totally untested) patch. The main benefit of this
approach is that it doesn't clutter up tv_play.cpp with code we'll
always wonder how long we need to keep and it takes care of all the
hosts in the system at one time and is done forever. Then, you can just
use the new-host default keylists in the REG_KEY lines in tv_play.cpp
for SETBOOKMARK and TOGGLEBOOKMARK (which would be the empty string, "").

Mike
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/17/2018 12:59 AM, Michael T. Dean wrote:
> Looks good, but why not do the part that tests to see if they're
> currently using the SELECT keys for bookmarks as a one-time DB update
> instead of having to do it every startup?  It would be something like
> the attached (totally untested) patch.  The main benefit of this
> approach is that it doesn't clutter up tv_play.cpp with code we'll
> always wonder how long we need to keep and it takes care of all the
> hosts in the system at one time and is done forever.  Then, you can
> just use the new-host default keylists in the REG_KEY lines in
> tv_play.cpp for SETBOOKMARK and TOGGLEBOOKMARK (which would be the
> empty string, "").
>
Hi Mike

I did consider using a database schema upgrade for this. These are my
thoughts.

I think there are a number of users who run master. They will be forced
to upgrade all frontends and backends when the code gets installed. This
may be a penalty of running master, but I think it should be avoided
when possible.

Doing it in a database upgrade is a lot more code because you have to
loop through all frontends, also cannot use the global routines that get
a setting value or the existing routines that get key assignments. More
testing would be needed. There are 82 lines or more of code against 16
lines of code in the way I have it.

I think the sample code you provided needs a different control loop -
there may be frontends that do not have a settings entry for
AltClearSavedPosition because the user never went into that setting page.

If I do it as it is in my patch I can add a comment in the database
upgrade stuff saying that when consolidating database version 1348 into
initialize you can remove a certain 16 lines of code and where to find them.

Anyway, I will do it which ever way you recommend. Do you recommend
changing it to a schema upgrade?

Regards
Peter
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 03/17/2018 12:51 PM, Peter Bennett wrote:
>
>
> On 03/17/2018 12:59 AM, Michael T. Dean wrote:
>> Looks good, but why not do the part that tests to see if they're
>> currently using the SELECT keys for bookmarks as a one-time DB update
>> instead of having to do it every startup? It would be something like
>> the attached (totally untested) patch. The main benefit of this
>> approach is that it doesn't clutter up tv_play.cpp with code we'll
>> always wonder how long we need to keep and it takes care of all the
>> hosts in the system at one time and is done forever. Then, you can
>> just use the new-host default keylists in the REG_KEY lines in
>> tv_play.cpp for SETBOOKMARK and TOGGLEBOOKMARK (which would be the
>> empty string, "").
>>
> Hi Mike
>
> I did consider using a database schema upgrade for this. These are my
> thoughts.
>
> I think there are a number of users who run master. They will be
> forced to upgrade all frontends and backends when the code gets
> installed. This may be a penalty of running master, but I think it
> should be avoided when possible.
>
> Doing it in a database upgrade is a lot more code because you have to
> loop through all frontends, also cannot use the global routines that
> get a setting value or the existing routines that get key assignments.
> More testing would be needed. There are 82 lines or more of code
> against 16 lines of code in the way I have it.
>
> I think the sample code you provided needs a different control loop -
> there may be frontends that do not have a settings entry for
> AltClearSavedPosition because the user never went into that setting page.

You don't need to go to that page. It's written automatically on
frontend first startup (or, technically, first startup when there's a
valid, proper-schema-version database to which mythfrontend first
connected). There are only a few settings that don't get written
automatically--and they're ones buried inside "only applies if some
other setting has some non-default value" code.

> If I do it as it is in my patch I can add a comment in the database
> upgrade stuff saying that when consolidating database version 1348
> into initialize you can remove a certain 16 lines of code and where to
> find them.

That would work, too.

> Anyway, I will do it which ever way you recommend. Do you recommend
> changing it to a schema upgrade?

So, yeah, you can do it the way you have and the DB update can be added
later and the tv_play code simplified then.

Thanks,
Mike
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Key mapping for BOOKMARK [ In reply to ]
On 17/03/18 16:51, Peter Bennett wrote:
>
>
> On 03/17/2018 12:59 AM, Michael T. Dean wrote:
>> Looks good, but why not do the part that tests to see if they're
>> currently using the SELECT keys for bookmarks as a one-time DB update
>> instead of having to do it every startup?  It would be something like
>> the attached (totally untested) patch.  The main benefit of this
>> approach is that it doesn't clutter up tv_play.cpp with code we'll
>> always wonder how long we need to keep and it takes care of all the
>> hosts in the system at one time and is done forever.  Then, you can
>> just use the new-host default keylists in the REG_KEY lines in
>> tv_play.cpp for SETBOOKMARK and TOGGLEBOOKMARK (which would be the
>> empty string, "").
>>
> Hi Mike
>
> I did consider using a database schema upgrade for this. These are my
> thoughts.
>
> I think there are a number of users who run master. They will be forced
> to upgrade all frontends and backends when the code gets installed. This
> may be a penalty of running master, but I think it should be avoided
> when possible.
>

Master is for schema changes, and the only stream in which they can
be done. Those who run master accept this as a condition of running
it, and should be well familiar with the concept of DB backups prior
to running schema updating changes.

If a schema update is the best way to get it done, then in master
it should be done in a schema update.


Regards
Stuart

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org