Opened 12 years ago

Closed 2 years ago

#10407 closed Developer Task (Trac EOL)

Jump point redesign

Reported by: Jim Stichnoth Owned by: Jim Stichnoth
Priority: minor Milestone: needs_triage
Component: MythTV - General Version: Master Head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

This ticket tracks the various issues related to re-implementing jump points.

The current implementation sends an explicit Escape key event to the top screen. Its handler is expected to check IsJumpingToMain?(), do any cleanup action, and cooperatively pass the event to the next screen until the Main Menu is reached. This requires full and active cooperation everywhere, and if any component fails to test for an in-progress jump point, the jump point execution will stall/stop at that point.

See http://code.mythtv.org/trac/ticket/7939#comment:13 for a pointer to the suggested approach: "iterate down the stacks closing screens until we reach the main menu." However, each screen needs the opportunity to execute cleanup/destructor code, e.g. the cutlist editor should cleanly leave edit mode.

Workarounds in place in #7322 and #8250 - explicit handling of Escape keypress while IsExitingToMain?(). #7939 sends an EXIT_TO_MAIN event, which a TV object receives and acts on do to cleanup, which is a step in the right direction.

#9537 shows more issues in the current design.

Change History (6)

comment:1 Changed 12 years ago by Jim Stichnoth

Owner: set to Jim Stichnoth
Status: newaccepted

comment:2 Changed 12 years ago by Jim Stichnoth

#8045 another media handler issue with a patch.

comment:3 Changed 12 years ago by Github

Fix a crash when executing a jump point during a playlist.

Refs #10407.

Branch: master Changeset: 343022203cdf6948428187e8f1fb6337ca7b0de0

comment:4 Changed 12 years ago by Jim Stichnoth

Milestone: 0.26unknown

Discussion on IRC points out the silliness of executing the LiveTV jump point from within live TV -- the current live TV session exits out to the main menu and then reenters live TV, a process taking many agonizing seconds to complete.

Conversely, it is pointed out that executing the TV Recording Playback jump point from within the Watch Recordings screen is a convenient way to quickly get back to the top of the list.

A good approach might be to only invoke a reset/initialize method when the current context is the same as the jump point's target context.

comment:5 Changed 4 years ago by Stuart Auchterlonie

Milestone: unknownneeds_triage

comment:6 Changed 2 years ago by Stuart Auchterlonie

Resolution: Trac EOL
Status: acceptedclosed

We have moved all bug tracking to github [1]

If you continue to have this issue, please open a new issue at github, referencing this ticket.

[1] - https://github.com/MythTV/mythtv/issues

Note: See TracTickets for help on using tickets.