https://bugs.kde.org/show_bug.cgi?id=417070

--- Comment #13 from Alex <alexander.loh...@gmx.de> ---
This sounds good!

I currently have another patch waiting to be reviewed which improves the
overall API design of the runner plugin.

Another things that I would implement (brainstorming):
- The implementation if the setup/teardown methods doesn't make that much sense
and is quite wasteful

- Reuse the database connections as long as the file isn't changed (depends
issue above being improved)

- Some better mapping of the url to the favicons, if you have 3 bookmarks of
the same domain with the same icon the icon is only once as a blob in database.
But if you query the runner the icon will get written to disk for each entry.

- If the mapping between url and icon works well, maybe the favicon database
doesn't need to be copied. We could just read it (for instance at startup when
the browser isn't running) and create the icon files. This is similar to what
you suggested.
Then we could also implement a logic which goes like: The already cached
favicon files are used, as long as there is a favicon for every requested
bookmark. Otherwise we will update the cached files.
This way don't copy the database if no favicon of bookmarks is affected (if you
visit a website and you go to your browser history you will get the favicon
displayed, but we don't need the favicon, if the link is not bookmarked).

- Also reusing the results from a previous query, if we already searched for
`kru` and continue to type `krunner` letter for letter we don't need to make
sql queryies for each letter typed.

This will reduce the disk write operations to a minimum and will improve the
performance.
These are just my general ideas in regards to the bookmarks runner and they are
going further that this bugfix. But because you also had good ideas on how to
further improve this I thought it is worth mentioning^^.

And considering that this plugin is also enabled by default in the application
launcher it seems worth to optimize it further :-).

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to