Probleme mit TCalendar unter GTK2

Rund um die LCL und andere Komponenten
Antworten
pedali
Beiträge: 13
Registriert: Fr 12. Okt 2007, 11:09

Probleme mit TCalendar unter GTK2

Beitrag von pedali »

Hallo zusammen,
ich habe folgendes Problem:
mit der TCalendar component (und den anderen components, die diese Klasse nutzen) kann man sich unter Linux wunderbar den Desktop sperren. Im angehängten Archiv findet ihr ein kleines Testprojekt dazu. Eine Beschreibung, wie man das Verhalten nachvollziehen kann, habe ich bereits im Lazarus BugTracker gemeldet (issue 0013712). Wer das Problem nachvollziehen möchte, sollte das beigefügte Projekt nehmen, denn das beendet sich selbst nach 15 Sekunden. So muss man keine Klimmzüge machen, um wieder Herr über seinen Desktop zu werden :wink:

Hier die Meldung aus dem BugTracking von Lazarus
###############
1. open a new project
2. put a TDateEdit on the form
3. compile and run
4. in the now running application open the small calendar by clicking on the button of the DateEdit
5. in the open calendar do following: drag one of the date numbers out of the small calendar

-> The mouse pointer icon switches to the drag icon and no desktop interaction (neither mouse, nor keyboard) is possible.

I tried it on ubuntu 8.04 and Debian etch with fpc 2.2.2 and lazarus 0.9.26.1
as well as ubuntu 8.10 with fpc 2.2.3 and lazarus 0.9.27 beta (svn revision 17290).
In every case I had to switch to a terminal and kill the running application to get back control about my desktop.
On Windows it works perfect (lazarus 0.9.26.2 fpc 2.2.2) so far.
###############

Ich würde gerne auf den DragEvent der TCalendar component reagieren bzw. ihn abschalten, aber da find ich nix. Weder in der TCalendar, noch in den darüberliegenden Klassen TCustomCalendar und TWinControl finde ich einen Hinweis auf den ausgelösten Event.
Hat jemand vielleicht eine Idee dazu oder eine Alternative? Die Möglichkeit, in einem kleinen Kalender das Datum auszuwählen ist in dem Fall eine Schlüsselanforderung und daher kann ich nicht so ohne weiteres darauf verzichten :(

Grüße aus Ulm
Peter
Dateianhänge
testDate.tar.gz
(5.99 KiB) 61-mal heruntergeladen

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: Probleme mit TCalendar unter GTK2

Beitrag von monta »

Es könnte wichtig sein...was verwendest du denn als WindowManager? Hast du eventuell etwas exotischeres, als Metacity und KWin?
Johannes

pedali
Beiträge: 13
Registriert: Fr 12. Okt 2007, 11:09

Re: Probleme mit TCalendar unter GTK2

Beitrag von pedali »

Meines Wissens nicht. Es handelt sich in allen Fällen um schnöde Standardinstallationen.
Standard Ubuntu 8.04/8.10 (gnome)
Standard Debian (KDE)

Edit: Bei Ubuntu hab ich unter 8.04 Compiz abgeschaltet und bei 8.10 eingeschaltet. Auf den Debian/KDE-Desk greife ich über NX zu. Immer das selbe Verhalten....

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: Probleme mit TCalendar unter GTK2

Beitrag von monta »

ok, also daran liegt es nicht.
Es gibt bei bestimmten WMs (bspw. Openbox, FVWM usw.) starke Probleme mit dem Formularfocus u.ä. aber Metacity und KWin sollten da gehen, der Fehler liegt also wahrscheinlich irgendwo anders.
Johannes

knight
Beiträge: 802
Registriert: Mi 13. Sep 2006, 22:30

Re: Probleme mit TCalendar unter GTK2

Beitrag von knight »

FPC 2.2.2 hat ja bekanntlich etwas Probleme mit GTK 2.14. Kannst du einen aktuelleren Compiler (2.2.4 oder neuer) versuchen oder mal mit den GTK1 Einstellungen?

knight

pedali
Beiträge: 13
Registriert: Fr 12. Okt 2007, 11:09

Re: Probleme mit TCalendar unter GTK2

Beitrag von pedali »

knight hat geschrieben:FPC 2.2.2 hat ja bekanntlich etwas Probleme mit GTK 2.14. Kannst du einen aktuelleren Compiler (2.2.4 oder neuer) versuchen oder mal mit den GTK1 Einstellungen?

knight
Ich werde morgen mal die neueste Version des Compilers versuchen.
GTK1 macht keinerlei Probleme.

@Linux-Users: Kann sonst jemand von euch den Fehler nachvollziehen?

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Probleme mit TCalendar unter GTK2

Beitrag von creed steiger »

Tritt mit Lazarus SVN 0.9.27 und FPC 2.2.3 unter Linux/GTK2/Kwin
bei mir auch auf.
Edit: Lazarus letzte Revision und FPC 2.3.1 genau dasselbe.
Zuletzt geändert von creed steiger am Di 19. Mai 2009, 23:57, insgesamt 1-mal geändert.

Eb
Lazarusforum e. V.
Beiträge: 240
Registriert: Di 5. Feb 2008, 15:32
OS, Lazarus, FPC: Linux Mint - Laz 2.2.0
CPU-Target: 64Bit
Wohnort: Stuttgart

Re: Probleme mit TCalendar unter GTK2

Beitrag von Eb »

Tritt bei mir auch auf. OpenSuse 11.1, KDE 3.5, Lazarus 09.27 (SVN) fpc 2.2.4
Unter KDE geht nichts mehr.
Ich konnte aber mit Alt-F2 auf eine Konsole wechseln, und lazarus und den gdb-prozess abschiessen.

Scotty
Beiträge: 768
Registriert: Mo 4. Mai 2009, 13:24
OS, Lazarus, FPC: Arch Linux, Lazarus 1.3 r44426M FPC 2.6.4
CPU-Target: x86_64-linux-qt/gtk2
Kontaktdaten:

Re: Probleme mit TCalendar unter GTK2

Beitrag von Scotty »

Confirmed (siehe Sig)
Ubuntu 9.04, Gnome 2.26.1 mit Compiz

pedali
Beiträge: 13
Registriert: Fr 12. Okt 2007, 11:09

Probleme mit TCalendar unter GTK2

Beitrag von pedali »

Zunächst einmal vielen Dank an die furchtlosen Tester :)
Ich habe in der Zwischenzeit mal versucht, eine neue Klasse von TCalendar abzuleiten um dann im Constructor mit den Einstellungen herumzuspielen (ControlStyle, setDragMode ect. ).
Dieses blinde Herumgestochere im Nebel brachte (wie befürchtet) mal garnüscht.
Was mich verwirrt ist der Umstand, dass TCalendar garkein Property "onDragDrop" hat.
Vielleicht fällt jemand was ein oder kann mir sagen wo ich suchen soll.
Ich hole jetzt mal Spitzhacke und Spaten aus dem Schuppen und fange an, etwas tiefer zu graben....

Bis später mal *StirnlampeEinschalt*

Peter

Mattias
Lazarusforum e. V.
Beiträge: 183
Registriert: Do 22. Mai 2008, 15:14
OS, Lazarus, FPC: LinuxOSX (L head FPC head)
CPU-Target: xxBit

Re: Probleme mit TCalendar unter GTK2

Beitrag von Mattias »

Das Dragging ist ein gtk2 Feature. gtk2 faengt die Maus.
Wenn die LCL das Widget freigibt, kommt das gtk2 durcheinander und die Maus bleibt gefangen.
Ich habe eine Freigabe erzwungen in svn r20335.
Bitte testen.

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Probleme mit TCalendar unter GTK2

Beitrag von creed steiger »

Mit SVN R20338 tritt bei mir das Problem immer noch auf

Antworten