[Kde-graphics-devel] Review Request 120920: Fill SendTo menu async to fix "Bug 312495 - Very slow 'Send to' menu"

Gregor Mi codestruct at posteo.org
Fri Nov 21 16:23:46 UTC 2014



> On Nov. 21, 2014, 4:12 p.m., Gregor Mi wrote:
> > CMakeLists.txt, line 80
> > <https://git.reviewboard.kde.org/r/120920/diff/3/?file=329371#file329371line80>
> >
> >     I wonder why KIPI_FOUND is still not set although I have the following cmake output:
> >     ...
> >     -- The following OPTIONAL packages have been found:
> >     
> >      * KF5Kipi
> >      * X11
> >      * XCB , X protocol C-language Binding , <http://xcb.freedesktop.org>
> >      * PkgConfig
> >      * X11_XCB , Xlib/XCB interface library , <http://xcb.freedesktop.org>
> >     ...

build/config-ksnapshot.h contains
/* Define to 1 if you have libkipi */
/* #undef KIPI_FOUND */

despite the found KF5Kipi


- Gregor


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120920/#review70742
-----------------------------------------------------------


On Nov. 21, 2014, 4:10 p.m., Gregor Mi wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/120920/
> -----------------------------------------------------------
> 
> (Updated Nov. 21, 2014, 4:10 p.m.)
> 
> 
> Review request for KDE Graphics, KSnapshot, Aaron J. Seigo, and Dominik Haumann.
> 
> 
> Bugs: 312495
>     http://bugs.kde.org/show_bug.cgi?id=312495
> 
> 
> Repository: ksnapshot
> 
> 
> Description
> -------
> 
> Hi, I also feel slightly impaired by Bug 312495 - Very slow "Send to" menu. So here is a fix.
> 
> It consists of the following commits:
>     1. move long-running retrieval of SendTo items to separate method
>     2. fillSendToActionsCache at startup but not yet async
>     3. move code related to SendTo actions to own class and file
>          (this includes the kipi code but KIPI_FOUND was not set in my dev env so thats not tested)
>     4. SendTo menu is built on a separate thread to speed up populating
>     5. delete actions in dtor
> 
> The SendTo actions are now created in QThread which is started on startup of ksnapshot.
> If the user opens the SendTo menu too soon there is a message (as single menu item) that says
> that the menu is still being constructed and that he/she should try a moment later.
> 
> 
> Diffs
> -----
> 
>   .reviewboardrc PRE-CREATION 
>   CMakeLists.txt 627e3b4467578205125125323fb682126dd291e6 
>   ksnapshot.h 4e062de8afe5cfd9a98b769f105b1a174b58dc9f 
>   ksnapshot.cpp 6bd38e1508f4887c17a43e2c5cedaf19e1a1dab2 
>   ksnapshotsendtoactions.cpp PRE-CREATION 
>   ksnapshotsendtoactions.h PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/120920/diff/
> 
> 
> Testing
> -------
> 
> 1. Start ksnapshot (notice that is as fast as before)
> 2. Immediately open SendTo menu => there is a message that the menu is not ready yet.
> 3. Try again after 1 second: menu is populated.
> 4. Close ksnapshot.
> 
> 
> 1. Start ksnapshot. Wait two seconds and then click SendTo menu
>    => menu is populated right away
> 2. Close it.
> 
> 
> 1. Start ksnapshot. Hit the SendTo menu with insanely high button click speed.
>    => No crash observed.
> 
> Could NOT test the moved kipi code because KIPI_FOUND is not set on my environment.
> 
> 
> Thanks,
> 
> Gregor Mi
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-graphics-devel/attachments/20141121/5674b204/attachment-0001.html>


More information about the Kde-graphics-devel mailing list