Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
SnowHead
Einsteiger
Beiträge: 105 Registriert: Sonntag 6. Juni 2004, 16:04
Beitrag
von SnowHead » Freitag 27. Februar 2009, 19:13
Hi,
ich hatte bisher immer an meiner Fernbedienung oder Feinmotorik gezweifelt, wenn beim Blättern in der Kanalliste die letzte Seite häufig übersprungen wurde. Irgendwann hatte ich mir das mal genauer angeschaut und festgestellt, daß das reproduzierbar auftrat, wenn der Select-Balken auf der vorletzten Seite tiefer stand, als noch Einträge auf der letzten Seite übrig waren. Ein Blick in die Quellen bestätigte diese Feststellung. Mit der folgenden Änderung wird die letzte Seite in diesem Fall nicht mehr übersprungen:
Code: Alles auswählen
diff -uNr ../cvs/apps/tuxbox/neutrino/src/gui/channellist.cpp ./apps/tuxbox/neutrino/src/gui/channellist.cpp
--- ../cvs/apps/tuxbox/neutrino/src/gui/channellist.cpp 2009-02-12 16:33:50.000000000 +0100
+++ ./apps/tuxbox/neutrino/src/gui/channellist.cpp 2009-02-27 19:07:41.000000000 +0100
@@ -1,7 +1,7 @@
/*
Neutrino-GUI - DBoxII-Project
- $Id: channellist.cpp,v 1.206 2009/02/06 21:29:21 rhabarber1848 Exp $
+ $Id: channellist.cpp,v 1.207 2009/02/27 19:07:41 Exp $
Copyright (C) 2001 Steffen Hehn 'McClean'
Homepage: http://dbox.cyberphoria.org/
@@ -327,7 +327,7 @@
selected += step;
if(selected >= chanlist.size())
- selected = 0;
+ selected = (step==listmaxshow)?(chanlist.size()-1):0;
paintItem(prev_selected - liststart);
unsigned int oldliststart = liststart;
Striper
Erleuchteter
Beiträge: 625 Registriert: Samstag 8. September 2007, 16:17
Beitrag
von Striper » Freitag 27. Februar 2009, 19:43
Is mir bisher nie aufgefallen. Aber trotzdem schon mal Danke. Werds demnächst mal testen.
SnowHead
Einsteiger
Beiträge: 105 Registriert: Sonntag 6. Juni 2004, 16:04
Beitrag
von SnowHead » Freitag 27. Februar 2009, 20:34
Hmm, das Gelbe war das aber auch noch nicht. Man kann von der letzten Seite nicht mehr wegblättern.
rhabarber1848
CDK-Experte
Beiträge: 4335 Registriert: Donnerstag 3. April 2008, 14:05
Beitrag
von rhabarber1848 » Freitag 27. Februar 2009, 21:47
Das Verhalten kann ich bestätigen, die letzte Seite
der Kanalliste eines Bouquets hat bei mir zwei Einträge,
wenn ich auf der vorletzten Seite stehe und volume +
drücke, kommt die erste statt der letzten Seite des
Bouquets, sofern der Auswahlbalken auf der vorletzten
Seite auf dem dritten oder einem höheren Eintrag steht.
SnowHead
Einsteiger
Beiträge: 105 Registriert: Sonntag 6. Juni 2004, 16:04
Beitrag
von SnowHead » Freitag 27. Februar 2009, 22:35
Kann leider selbst nicht testen, aber theoretisch sollte es mit der Zeile
Code: Alles auswählen
selected = ((step==listmaxshow)&&(selected<(((chanlist.size()/listmaxshow)+1)*listmaxshow)))?(chanlist.size()-1):0;
funktionieren. Zugegebenermassen etwas verquer, aber ein einfacherer Test fiel mir nicht ein.
Zuletzt geändert von SnowHead am Samstag 28. Februar 2009, 19:49, insgesamt 1-mal geändert.
GetAway
Contributor
Beiträge: 1509 Registriert: Donnerstag 27. Dezember 2007, 12:59
Beitrag
von GetAway » Samstag 28. Februar 2009, 16:17
Funktioniert, könnte somit comitted werden.
MTM
Foren-Moderator
Beiträge: 944 Registriert: Freitag 21. Januar 2005, 16:18
Beitrag
von MTM » Samstag 28. Februar 2009, 16:36
Hallo,
mich störte das eigentlich auch immer schon. Das gleiche komische Verhalten ist übrigens auch in dem EPG zu finden (Rot, Rot), könnte auch dort gefixt werden.
MfG,
MTM.
SnowHead
Einsteiger
Beiträge: 105 Registriert: Sonntag 6. Juni 2004, 16:04
Beitrag
von SnowHead » Samstag 28. Februar 2009, 18:41
Da GetAway den vorherigen Fix dankenswerterweise erfolgreich getestet hat, sollte sich der von MTM gemeldete Bug in der eventlist.cpp so fixen lassen:
Code: Alles auswählen
diff -uNr ../cvs/apps/tuxbox/neutrino/src/gui/eventlist.cpp ./apps/tuxbox/neutrino/src/gui/eventlist.cpp
--- ../cvs/apps/tuxbox/neutrino/src/gui/eventlist.cpp 2009-01-05 17:40:04.000000000 +0100
+++ ./apps/tuxbox/neutrino/src/gui/eventlist.cpp 2009-02-28 18:39:13.000000000 +0100
@@ -1,5 +1,5 @@
/*
- $Id: eventlist.cpp,v 1.118 2008/12/05 22:06:19 seife Exp $
+ $Id: eventlist.cpp,v 1.119 2009/02/28 18:39:13 Exp $
Neutrino-GUI - DBoxII-Project
@@ -337,7 +337,7 @@
selected += step;
if(selected >= evtlist.size())
- selected = 0;
+ selected = ((step==listmaxshow)&&(selected<(((evtlist.size()/listmaxshow)+1)*listmaxshow)))?(evtlist.size()-1):0;
paintItem(prev_selected - liststart);
unsigned int oldliststart = liststart;
rhabarber1848
CDK-Experte
Beiträge: 4335 Registriert: Donnerstag 3. April 2008, 14:05
Beitrag
von rhabarber1848 » Sonntag 1. März 2009, 15:01
Beide Patches sind im CVS