bug: tc/fokus springt an anfang der dateiliste
Moderators: Hacker, Stefan2, white
bug: tc/fokus springt an anfang der dateiliste
hallo,
ein kleiner bug, ich weiss nicht, ob er für euch einfach zu reproduzieren ist:
winXP, tc702a,normale schriftgrößen, bildschirm 1024x1280 (90grad gekippter monitor)
tc hat im nicht-vollbild-modus eine größe von 800x600
cursor ist aktiv auf der rechten seite innerhalb eines verzeichnisses mit ca. 150 dateien. (3 tabs geöffnet, im dritten aktiv)
der horizontale scrollbalken steht irgendwo in der mitte (wichtig!)
der cursor/fokus steht auf irgendeiner datei in der mitte.
verschiebe ich nun die datei, auf der der cursor steht nach links, verhält sich tc "normal", d.h. die datei wird verschoben, alle dateien unterhalb der verschobenen rücken eins nach oben und der cursor steht nun auf der nächsten datei.
nun das verhalten mit bug:
der horizontale scrollbalken steht irgendwo in der mitte (wichtig!)
der cursor/fokus steht auf der ersten sichtbaren datei, also ganz oben. (direkt unter name|erw|größe|datum)
verschiebe ich jetzt diese datei, springt tc ganz an den anfang der dateiliste, also an den anfang des verzeichnisses. das ist der bug.
tc sollte, um sich konsistenz zu verhalten, selbiges verhalten wie oben beschrieben zeigen. also alle unteren dateien eins nach oben schieben und den cursor/fokus nicht ändern.
hoffe, ich hab das einigermassen verständlich beschrieben.
ein kleiner bug, ich weiss nicht, ob er für euch einfach zu reproduzieren ist:
winXP, tc702a,normale schriftgrößen, bildschirm 1024x1280 (90grad gekippter monitor)
tc hat im nicht-vollbild-modus eine größe von 800x600
cursor ist aktiv auf der rechten seite innerhalb eines verzeichnisses mit ca. 150 dateien. (3 tabs geöffnet, im dritten aktiv)
der horizontale scrollbalken steht irgendwo in der mitte (wichtig!)
der cursor/fokus steht auf irgendeiner datei in der mitte.
verschiebe ich nun die datei, auf der der cursor steht nach links, verhält sich tc "normal", d.h. die datei wird verschoben, alle dateien unterhalb der verschobenen rücken eins nach oben und der cursor steht nun auf der nächsten datei.
nun das verhalten mit bug:
der horizontale scrollbalken steht irgendwo in der mitte (wichtig!)
der cursor/fokus steht auf der ersten sichtbaren datei, also ganz oben. (direkt unter name|erw|größe|datum)
verschiebe ich jetzt diese datei, springt tc ganz an den anfang der dateiliste, also an den anfang des verzeichnisses. das ist der bug.
tc sollte, um sich konsistenz zu verhalten, selbiges verhalten wie oben beschrieben zeigen. also alle unteren dateien eins nach oben schieben und den cursor/fokus nicht ändern.
hoffe, ich hab das einigermassen verständlich beschrieben.
Was nützt der Löffel für die Weisheit, wenn man zu weit vom Suppentopf entfernt sitzt?
Mario
Mario
Du meinst die vertikale Scrollleiste, nicht die horizontale!
Der Bug ist reproduzierbar:
Die vertikale Scrollleiste muß so gestellt sein, daß der [..]-Eintrag der Listbox nicht zu sehen ist, also genau eine Zeile nach unten gescrollt. Nach Verschieben der ersten Datei erhält nicht die vormals zweite Datei in der Listbox den Fokus, sondern [..].
Icfu
Der Bug ist reproduzierbar:
Die vertikale Scrollleiste muß so gestellt sein, daß der [..]-Eintrag der Listbox nicht zu sehen ist, also genau eine Zeile nach unten gescrollt. Nach Verschieben der ersten Datei erhält nicht die vormals zweite Datei in der Listbox den Fokus, sondern [..].
Icfu
This account is for sale
- ghisler(Author)
- Site Admin
- Posts: 50650
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Ja, das liegt daran, dass sich der TC vor dem Refresh den Namen der ersten Datei merkt, um diese wieder als erste zu setzen nach dem Refresh. Weil diese aber wegverschoben wird, kann er sie danach nicht mehr finden, und der Cursor landet am Anfang. Dasselbe gilt für die Datei unter dem Cursor. Wenn man z.B. die oberste Datei mit EINF markiert und wegverschiebt, dann stand der Cursor auf der 2. Datei -> er wird wieder auf diese gestellt, aber die oberste Datei kann nicht gesetzt werden, weil sie fehlt!
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
- ghisler(Author)
- Site Admin
- Posts: 50650
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Weil wenn man z.B. 100 Dateien darüber löscht die Position überhaupt nicht mehr stimmt...
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Doch, wenn Du die Anzahl der darüber liegenden verschobenen Dateien subtrahierst.
Wenn Du das gleiche auch für den Cursor machst, steht dieser anschließend auch immer auf der korrekten Datei statt, wie im Moment, genau so viele Einträge zu tief, wie Dateien über dem Cursor verschoben wurden.
Icfu
Wenn Du das gleiche auch für den Cursor machst, steht dieser anschließend auch immer auf der korrekten Datei statt, wie im Moment, genau so viele Einträge zu tief, wie Dateien über dem Cursor verschoben wurden.
Icfu
This account is for sale
- ghisler(Author)
- Site Admin
- Posts: 50650
- Joined: 2003-02-04, 09:46 UTC
- Location: Switzerland
- Contact:
Das Problem ist, dass die Refresh-Funktion eben gerande nicht weiss, dass 100 Dateien oberhalb der aktuellen Position gelöscht wurden! Die Refresh-Funktion wird von sehr vielen verschiedenen Funktionen aufgerufen, wenn dsas Verzeichnis neu eingelesen werden soll...
Author of Total Commander
https://www.ghisler.com
https://www.ghisler.com
Ökonomisches Programmieren ist toll, aber wenn die Funktionalität darunter leidet, sollte man Kompromisse machen, i.e für Spezialfälle wie das Verschieben/Löschen die Standardrefreshfunktion aufbohren, so daß sie einen Parameter mit der Scrollposition akzeptiert, oder eine alternative Funktion bauen.
Wenn's Dir zu umständlich ist, geht's halt nicht. Außer mir und dem OP, der sich offensichtlich in den Urlaub oder sonstwohin verabschiedet hat, scheint das Thema ja eh niemanden zu interessieren, daher – und wegen eines weiteren Dreizeilers in AHK, der mir die Scrollposition zurücksetzt – erspare ich mir weitere Überredungsversuche.
Icfu
Wenn's Dir zu umständlich ist, geht's halt nicht. Außer mir und dem OP, der sich offensichtlich in den Urlaub oder sonstwohin verabschiedet hat, scheint das Thema ja eh niemanden zu interessieren, daher – und wegen eines weiteren Dreizeilers in AHK, der mir die Scrollposition zurücksetzt – erspare ich mir weitere Überredungsversuche.
Icfu
This account is for sale
icfu,icfu wrote:Ökonomisches Programmieren ist toll, aber wenn die Funktionalität darunter leidet, sollte man Kompromisse machen, i.e für Spezialfälle wie das Verschieben/Löschen die Standardrefreshfunktion aufbohren, so daß sie einen Parameter mit der Scrollposition akzeptiert, oder eine alternative Funktion bauen.
Wenn's Dir zu umständlich ist, geht's halt nicht. Außer mir und dem OP, der sich offensichtlich in den Urlaub oder sonstwohin verabschiedet hat, scheint das Thema ja eh niemanden zu interessieren, daher – und wegen eines weiteren Dreizeilers in AHK, der mir die Scrollposition zurücksetzt – erspare ich mir weitere Überredungsversuche.
Icfu
bin ich mit OP gemeint? was ist ein OP? (operator? ohnmächtiger poster? ohnehin pensioniert?) bitte klär mich auf.
interessanterweise erreichen mich die forumsbenachrichtigungsmail nie, wenn es interessant wird ;-/
allerdings hätte ich auch nicht mehr sagen können, als in meinem report-posting. (oder nicht mehr möchten, weil ich auch dieser art der überredungsversuche müde bin. was sich darin äussert, das ich viele dieser oder ähnlichen kleinen bugs gar nicht mehr einstelle, weil es eh keinen sinn zu scheinen hat, da sie eh nicht interessant genug sind. auf der einen seite schade, auf der andern sparts zeit und mühe.)
ich poste hier fast nur bugs (und dumme fragen), und versuche somit auf meine art den tc "runder" zu gestalten.
der programmiertechnische grund (=aufwand), warum dies oder jenes nicht umzusetzen ist, interessiert mich wenig bis gar nicht (die arroganz des users) und bisherige erklärungs-postings zeigen auch mir, dass eher kein interesse herrscht, offensichtliches fehlverhalten in konsitentes umzuwandeln, und zwar, wie du so schön schreibst, mittels aufgebohrten spezialfall-funktionen :)
ich kann leider keine programmiertechnischen tipps geben, wie du, und nur auf logisches verhalten oder die gern genannte usability verweisen. ausser deiner ansicht über ökonomisches programmieren teile ich deine ansicht. bin sogar deiner meinung.
dieser bug hier ist lt. meiner definition ein ebendieser, und deswegen wundert mich -immerwieder- die tatsache, das er nicht mal den status: todo-liste bekommt. große priorität hat er in der tat nicht. schön ist aber, das schon herausgefunden wurde, warum und wie er auftritt. der erste schritt ist also schonmal getan :-)
ist alles sehr OffTopic,
Was nützt der Löffel für die Weisheit, wenn man zu weit vom Suppentopf entfernt sitzt?
Mario
Mario
versalzen wrote:bin ich mit OP gemeint? was ist ein OP? (operator? ohnmächtiger poster? ohnehin pensioniert?) bitte klär mich auf.
aus http://de.wikipedia.org/wiki/Thread_%28Internet%29Wikipedia wrote:Üblicherweise wird in einem Thread genau ein Thema diskutiert, das durch den Anfangsbeitrag (dessen Autor wird manchmal als OP für original poster oder TE für Thread-Ersteller bezeichnet) des Threads angestoßen wurde.
Du bist also das Original

Ja, so geht's mir auch manchmal. Bisher sind zwar nahezu alle von mir gemeldeten Bugs behoben worden, aber eben nicht alle, siehe z.B. [BUG?] Konfig.-dateien direkt ändern öffnet falschen Editorversalzen wrote:oder nicht mehr möchten, weil ich auch dieser art der überredungsversuche müde bin.
MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror