Ziehen erstellt Termine -> ausschaltbar?

  • Um Rückfragen vorzubeugen, bitten wir um folgende Angaben:
    * Thunderbird-Version: 45.4
    * Lightning-Version: konnte ich nicht finden
    * Betriebssystem + Version: Win 7 Pro


    Hallo,
    ich habe motorische Probleme und komme beim Arbeiten mit dem Lightning Kalender oft in der Wochenansicht auf die Maustasten. Wenn man bei einer Mausbewegung die linke Maustaste drückt, dann erstellt Lightning einen neuen Termin.


    Weiß jemand vielleicht, ob ich das irgendwie ausschalten könnte? Ich erstelle Termine eh lieber mit Doppelklicks.
    Wäre echt super.

  • Hallo Donneradler,

    Ich erstelle Termine eh lieber mit Doppelklicks.

    da hilft nur eins bei der Mausbewegung den Zeigefinger weit weg von den Tasten.
    Wenn Du mit gedrückter Maustaste über den Kalender fährst, meint Lightning Du möchtest einen Termin einstellen, das ist so gewollt.


     
    Gruß
     EDV-Oldi

  • Hallo edvoldi,


    anderes Maushandling ist nicht möglich, sonst würde ich ja nicht fragen.


    Der Quellcode von Mozilla ist doch offen oder? Dann müsste ich also nur jemanden finden, der weiß, wie ich diese Funktion herauskille, oder?

  • Hier im Forum kennst du keinen?


    (Ich würde es ja auch selbst versuchen, aber ich habe leider gar keine Vorstellung davon, wonach ich suchen müsste im QC.)

  • Hier im Forum kennst du keinen?

    Nein, ich wüsste auch sonst keinen Ort wo man das suchen sollte.
    Aber nach jedem Updaten von Lightning muss die Änderung dann wieder Programmiert werden.
    Was ist mit einer anderen Maus?
     
    Gruß
     EDV-Oldi

  • (Ich würde es ja auch selbst versuchen, aber ich habe leider gar keine Vorstellung davon, wonach ich suchen müsste im QC.)


    Da kann ich vielleicht behilflich sein:


    Die Links sind jeweils für TB 45, mit "Switch Tree" kommt man auch zu anderen Versionen (comm-central ist z.B. der aktuellste Entwicklungsstand 'trunk'/'daily').

  • Boar, generalsynch, das ist GENAU was ich gesucht und als Wegweiser gebraucht habe!


    Vielen, herzlichen Dank! :thumbsup:


    Ich habe zwar gerade zwei Stunden gebraucht um das entsprechende file in meiner PC Installation zu finden - versteckter/verzweigter konnte das file nicht sein - und dann nochmal ca. zwei Std. bis ich endlich eine Manipulation gefunden habe (mit meinem Grundschul-Java-Knowledge), die nicht alles zerschießt, aber ich habe es hingekriegt und das ist ein vielleicht Erfolgserlebnis! Ich wusste es geht!


    Zumindest rein technisch habe ich es gelöst, "elegant" wäre sicher anders. Aber ich hab was ich wollte. Denn weil es mir jetzt nicht ad hoc gelungen ist die richtigen Stellen auszukommentieren oder löschen, ohne noch mehrere andere Module zu zerschießen, hab ich einfach mal eingestellt, dass dieser entsprechede Movedown handler bei nicht-schreibgeschützten Kalendern exited. Wenn du weißt was ich meine. Ursprünglich war es für das Gegenteil gedacht, dass dieser handler nicht greift, wenn es sich um einen reinen Lesemodus handelt.


    Egal! Die sind bei mir eh immer writeable.


    ...Werde die nächsten Tage noch schauen, ob's eine elegantere Lösung gibt, aber auf jeden Fall macht er jetzt keine fucking drag - Termine mehr! Das ist echt der Hammer!


    Ohne deine Links und die Movedown Konkretisierung hätte ich das im Leben nicht gefunden.


    Jetzt ist es nur eine Frage von Java-Rekapitulation und Muße, falls ich das noch schöner hinbiegen möchte. Aber ich kann es auch so lassen.


    Ehrlich, vielen Dank!


    So, und jetzt ab in die Heia.

  • hab ich einfach mal eingestellt, dass dieser entsprechede Movedown handler bei nicht-schreibgeschützten Kalendern exited

    Einfacher wäre es gewesen, als erste Zeile im mousedown-Handler "return;" einzufügen – dann wird das Drücken der Maustaste über leeren Bereichen schlicht generell ignoriert. Aber deine Lösung ist definitiv kreativer wink.svg
    Übrigens ist das JavaScript (bzw. Mozillas JS-Dialekt), nicht Java. Java und JavaScript sind ziemlich verschieden...


    Eine schöne Lösung wäre aber zugegeben komplexer: man müsste ein Add-on schreiben, das den Handler zuverlässig entfernt/überschreibt, damit es auch mit Updates verträglich ist. Sonst musst du das bei jedem Thunderbird-Update nochmals nachholen... – ich habe jedoch noch nie ein XBL-Binding von einem Add-on aus ändern müssen, daher bin ich mir auch gerade unsicher was da die sauberste Lösung wäre.

  • Einfacher wäre es gewesen, als erste Zeile im mousedown-Handler "return;" einzufügen

    Ja, das war auch mein erster Gedanke. Der "schmutzigere" Hack:


    if (!isCalendarWritable(calendar) -> if (isCalendarWritable(calendar)ist aber noch einfacher. Man muss ja nur das "!" entfernen. :D


    Übrigens ist das JavaScript (bzw. Mozillas JS-Dialekt), nicht Java. Java und JavaScript sind ziemlich verschieden...

    Als gelegentliche, aber überzeugte Java-Freizeitentwicklering kann ich dazu nur sagen: Das ist auch gut so! Oder kurz: Wowereit, wie es einige Kollegen hier nennen. ;-)
    (Bevor es jetzt einen Aufstand der JS-Fraktion gibt, man beachte bitte den Smiley.)


    Apropos Dialekt, Java-Script stammt doch ursprünglich vom Herrn Eich (Netscape und später Mozilla). Ich würde dann sagen, Dialekt sprechen die anderen, Mozilla spricht Hoch-JS. Für jemanden, der selbst Dialekt spricht, ist das glatt noch ein Grund, es nicht zu mögen ;-)

  • [OT]

    Das ist auch gut so!

    Manchmal würde ich mir schon wünschen, man hätte JavaScript anders genannt... so fühlen beide Lager jeweils "ihre" Sprache durch die begriffliche Nähe belästigt^^ – wobei ich mich auch zur Java-Fraktion zählen würde (GeneralSync ist ja auch größtenteils in Java geschrieben).
    [/OT]

  • if (!isCalendarWritable(calendar) -> if (isCalendarWritable(calendar)ist aber noch einfacher. Man muss ja nur das "!" entfernen.

    Genau!
    Raffiniert, oder? :D


    Ehm... ja... das mit dem "return;" ist vermutlich intelligenter... Return selbst hatte ich zwar nicht probiert, aber vieles anderes, wie auskommentieren, weglöschen. Ich hänge mal das file an. .txt in .xml umwandeln, dann müsstet ihr alles sehen. Die Frage ist halt beim "return;" ob ich es nur hier:


    >>


    <<
    ...eintragen muss oder auch woanders? Mousedown-Bezüge findet man nämlich auch in Zeile: 211; 2203; 2398; 2430; 2453 usw... (STRG+F für "mousedown" halt.)


    ...Ich hab's jetzt mal getestet, und es scheint zu funkionieren. Ich Depp ey, hätte ich auch drauf kommen können. Naja, es war 3 Uhr morgens...



    Davon abgesehen habe ich aber noch eine letzte Frage an Euch - bitte nicht auslachen:


    Der TB-Ordner (mithin besagtes file) ist ja einmal in \Programme(x86) und einmal in \Roaming...
    Die scheinen auch identisch zu sein. Aber nur in Roaming - wenn ich mich richtig erinnere - hat er meine Änderung "wahrgenommen". In Roaming sind ja irgendwie immer die für die Programme mit den "current running version" Dateien, wenn ihr wisst was ich meine. Muss ich das künftig bei Updates also nur in \Roaming immer ändern? Und, wenn wir schon dabei sind: Wird mir jedes Update das wieder kaputt machen? Also überschreiben die immer alle Dateien dann? Stört mich auch nicht, es jedes Mal neu zu machen, bloß weiß ich dann schonmal bescheid.


    Beste Grüße vom Dilletantenschmutzhacker!
    biggrin.svg


    P.S. Java, Javascript ist für mich wie chinesisch und japanisch. Die sind bestimmt sehr unterschiedlich!

    Dateien

    2 Mal editiert, zuletzt von graba () aus folgendem Grund: Code-Tags gesetzt

  • Der TB-Ordner (mithin besagtes file) ist ja einmal in \Programme(x86) und einmal in \Roaming

    Die Ordner sind ziemlich verschieden: der im Programme-Verzeichnis (Programmordner) enthält Thunderbird selbst, in Roaming gibt es einen Anwendungsordner, der wiederum dein Profil enthält. Das Profil enthält deine Daten, einschließlich manuell installierter Add-ons; darüber hinaus können Add-ons jedoch auch im Programmordner vorinstalliert werden (für das gesamte System). Der Kalender ist technisch ein Add-on; vermutlich hattest du ihn mal im Profil installiert.
    Inzwischen (seit TB 45 iirc) ist das Add-on bei Thunderbird dabei (also im Programmordner), wenn es jedoch auch im Profil zu finden ist, wird die dortige Version bevorzugt. Es ist daher ausreichend, deine Änderungen im Profil vorzunehmen.


    Und ja, bei jedem Update des Lightning Add-ons (in der Praxis heißt das bei jeder neuen TB-Version) muss die Änderung erneut angebracht werden, wenn man sie nicht 'sauber' z.B. als separates Add-on umsetzt.

  • Ehm... ja... das mit dem "return;" ist vermutlich intelligenter...

    Intelligenter sicher nicht, aber nach meinem Geschmack sauberer. Wenn man in Zeile 7 einfach das "!" entfernt, landet man sofort in Zeile 9 auch bei einem return. Das ist aber noch fauler, im doppelten Sinne des Wortes.