PDA

View Full Version : [ViX_Misc] Graph/Text EPG selection "walks"



simonc
06-11-18, 01:53
Something that's been bugging me with the grid based EPG since moving from a Topfield a year ago is the slightly odd experience it gives regarding selection. It has a tendency to walk across the screen as you move up and down. Take this example:
For starters, opening the EPG places the selection not on the timeline but on the weather which doesn't start for another 10 minutes!
57694
If I scroll left onto Graham Norton, to get back on the now timeline, the order of selection is as follows as we scroll down:

Diagnosis
Piers Morgan
Ramsay's Kitchen
Criminals, uh, not Superorgasm? That's a shame :-)
Utopia
Attack the block
QI
Worlds Most...
Gogglebox

When what I was really interested in was what's on now.

Amusingly, this evening, as I scroll down page 2 it works its way left back to the current time again:
57695
I am indeed fortunate today :-)

It seems that the logic chooses where to move next based on where its just been using something like the nearest midpoint intersection. This seems a sensible approach, but leads to scrolling up and down not always returning you to where you started from.

If you consider the purpose of the grid based EPGs, compared to the single or the multi, it's about seeing a simultaneous view of what's on now or at a specifc time across a range of channels. You indicate the time you're interested in by moving left and right, once you've picked that time, you move up and down the channels. So, if the EPG kept track of say, the start time or midpoint of the selected cell when you arrive on it using left or right, and used that time to work out what to select when moving up or down, then the selection would remain within a narrow time window. Benefits being

Scrolling down the now timeline would remain on the now timeline
Scrolling up would select the same events on the way back up


There are also a few performance issues with the grid EPG, which seem to be related to the number of cells being created. On my XTrend 8500, it takes in the region of 500ms to get something up on screen, or to scroll to another page of channels, but much quicker on the final page where there's only 2 channels to show. Moving around within a page is fine. The single channel EPG or the Movielist are more or less instant openers. I'm wondering if there's some optimisation that could be applied somewhere to make it a bit more snappy. Switching to the text EPG seems slightly quicker, but not significantly so.

simonc
09-11-18, 01:13
Experimental code for fixing a focused time available at
https://github.com/SimonCapewell/enigma2/tree/graphepg-movement-algorithm Changes to EpgList.py and EpgSelection.py.

When moving left of right, the EPG remembers the time at the middle of the newly selected cell
When moving up or down, the selected cell on the newly selected channel will be the one that contains the time set on the last movement left or right
If the current selection contains the current time, i.e. you're viewing what's on now, the focused time is updated as you move up and down

The patch also ensures that when you page left and right with 4 and 6, that the focused time remains at the same position on the screen

birdman
09-11-18, 02:33
When moving left of right, the EPG remembers the time at the middle of the newly selected cellWould it not make more sense for it to remember the current time when you start and always remember the concurrent time (start of programme?) when you move right/left.
Your rule still sounds as though it may wander, as the middle of a 4 hour programme (think Wimbledon coverage) may be 2 hours ahead of now.

simonc
09-11-18, 11:27
It might well be better; I'll give it a go later. I'm still at the experimenting phase at the moment, so any suggestions are welcome. The main thing that you notice now is that every vertical movement is repeatable: you can scroll right the way down the EPG and back again with the same cells selecting each time.