-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/107829/
-----------------------------------------------------------

(Updated Dec. 22, 2012, 7:46 p.m.)


Review request for kdelibs and Stephan Kulow.


Description (updated)
-------

When clicking on a item in a KListWidget, the `executed` signals is not 
correctly emitted.
If the system-wide setting is to use single click, only `executed( 
QListWidgetItem *item )` is emitted (once).
If the setting is to use double click, `executed( QListWidgetItem *item )` will 
be emitted twice and `executed( QListWidgetItem *item, const QPoint &pos )` is 
emitted once, which cause the edit note dialog in Kontact_KNotePlugin to popup 
a second time right after close in some cases.

This patch fixes the problem. It is a little hacky but there isn't another easy 
way to get the position of the single click event except overriding the 
mouseReleaseEvent function AFAIK.

According to git log, this bug was introduced by commit 
b4a7662da2ddd14c8f1a9c97dc65b25418a5c05b back in 2007. In the commit log, it 
says

    executed(item, pos); is no longer supported and should
    be removed
    CCMAIL: [email protected]

But I cannot found this anywhere else, as least neither in the api document 
here[1] nor anywhere in the source code/headers (correct me if I am wrong). Is 
this signal really to-be-removed? (At least this patch makes it work again.)

[1] 
http://api.kde.org/4.9-api/kdelibs-apidocs/kdeui/html/classKListWidget.html#a3d8fe2b4c4240e4073bd824e0599b24e


This addresses bug 201093.
    http://bugs.kde.org/show_bug.cgi?id=201093


Diffs
-----

  kdeui/itemviews/klistwidget.h 9309efc 
  kdeui/itemviews/klistwidget.cpp 13497bf 

Diff: http://git.reviewboard.kde.org/r/107829/diff/


Testing
-------

Compiled kdelibs as well as program that has problem (kontact) and the signal 
is triggered correctly.


Thanks,

Yichao Yu

Reply via email to