Registered Member
|
Ciao a tutti!
come qualcuno ricorda, tempo fa avevo trovato un bug nella classe klistwidget di pykde4 e l'avevo segnalato sul vecchio forum: http://www.kde-it.org/e107_plugins/forum/forum_viewtopic.php?2345. In questi giorni ho sperimentato col c++ e ho trovato che lo stesso difetto è presente nella stessa classe in c++, ma prima di aprire un bug su bugzilla, vorrei che qualcun altro me lo confermasse con una distribuzione diversa da ubuntu (quella che uso io). Riassumo brevemente. La classe KListWidget è «A variant of QListWidget that honors KDE's system-wide settings. Extends the functionality of QListWidget to honor the system wide settings for Single Click/Double Click mode». (tratto da http://api.kde.org/4.3-api/kdelibs-apidocs/kdeui/html/classKListWidget.html) Il problema è che non fa quello che dovrebbe fare, cioè quando KDE è in modalità singolo clic, se fate CTRL-clic, l'item viene (giustamente) selezionato, ma il segnale di attivazione viene emesso! CTRL-clic non deve emettere il segnale. Quando KDE è in modalità doppio clic, facendo doppio clic su un item, vengono emessi due segnali, cioè sul terminale viene stampato due volte "activated", invece che una volta sola, come dovrebbe essere. Inoltre se premo il tasto invio sull'item selezionato, non emette niente. Ora, vorrei allegare i file sorgenti (1kb) da testare, ma mi sembra non si possa fare, quindi mi preparo a incollarli... ----------------------------------------------------- file CMakeLists.txt
----------------------------------------------------- file main.cpp
----------------------------------------------------- file mainwindow.cpp
----------------------------------------------------- file mainwindow.h
|
Moderator
|
Purtroppo al momento sembra che non molti sviluppatori bazzichino questo forum. Il mio consiglio è quello di segnalare comunque il bug anche se non è stato testato anche in altre distribuzioni vista la dovizia di particolari che hai riportato; sarà poi il manutentore del codice relativo a verificare ed approfondire la cosa.
|
KDE Developer
|
Pardon per il ritardo.
Sembra che qualcun altro in questo forum abbia avuto problemi simili: viewtopic.php?f=64&t=85088.
Pino Toscano
|
Registered Member
|
Tranquillo, nessun problema.
E la risposta che gli han dato non è la soluzione di tutti i mali, perché se imposta kde in modalità singolo clic, avrà qualche problemuccio anche con QListWidget. Chi è curioso si legga il thread qui: http://www.python-it.org/forum/index.php?topic=2756.0 In agosto, con l'aiuto dei ragazzi di python-it, ho informato quelli della trolltech, ma loro si son lavati le mani perché «This is controlled by the style, and none of our styles return true for SH_ItemView_ActivateItemOnSingleClick». Quindi, dovrebbe essere un problema collegato a kde e, dopo aver verificato che KListWidget ha più problemi di QListWidget, io direi di fare un bug-report. Mi aiutate a essere il più chiaro possibile? Io scriverei così: "KListWidget is a variant of QListWidget that honors KDE's system-wide settings. Extends the functionality of QListWidget to honor the system wide settings for Single Click/Double Click mode". (from http://api.kde.org/4.x-api/kdelibs-apid ... idget.html) But when KDE is set on single-click mode (i.e. you have to click once in order to activate an item), if you want to select the item by pressing CTRL+click, the item gets selected but the signal "KListWidget::executed(QListWidgetItem * item)" is emitted. Selecting the item is not supposed to fire the signal. When KDE is set un double-click mode (i.e. you have to click twice in order to activate an item), if you want to activate the item by pressing twice, the signal is emitted twice! In attachment, the code to reproduce this bug. Inoltre, per quanto riguarda l'applicazione che soffre di questo bug, tra tutto l'elenco (sigh) di applicazioni, non ho trovato niente di meglio di «kdelibs - General kdelibs Problems». Che dite? |
Registered users: Bing [Bot], claydoh, Google [Bot], rblackwell, sethaaaa, Sogou [Bot], Yahoo [Bot]