Review Request 119033: Replace KServiceTypeTrader with KoServiceLocator

Sven Langkamp sven.langkamp at gmail.com
Tue Jul 8 16:56:57 BST 2014


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

Ship it!


Tested it with Krita and Karbon and it works good. No slower start time noticeable.

- Sven Langkamp


On Juli 8, 2014, 8:22 vorm., Boudewijn Rempt wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/119033/
> -----------------------------------------------------------
> 
> (Updated Juli 8, 2014, 8:22 vorm.)
> 
> 
> Review request for Calligra.
> 
> 
> Repository: calligra
> 
> 
> Description
> -------
> 
> Use KoServiceLocator instead of KServiceTypeTrader
> 
> KServiceTypeTrader is dependent on the sysoca -- and on OSX and Windows that is a big chore. KoServiceLocator just loads all desktop files in services/calligra and applications/kde4/calligra and sorts them by type.
> 
> Loading the desktop files and creating KService entries for them takes less than 100ms on my system, so it's not a huge performance penalty.
> 
> 
> Diffs
> -----
> 
>   krita/plugins/extensions/dockers/lut/CMakeLists.txt 28e043c 
>   krita/plugins/extensions/dockers/overview/CMakeLists.txt 3cef9b1 
>   krita/plugins/extensions/dockers/imagedocker/CMakeLists.txt 86cea99 
>   krita/plugins/extensions/colorrange/CMakeLists.txt f678c19 
>   kexi/plugins/forms/CMakeLists.txt 3dbd3b7 
>   krita/plugins/extensions/colorspaceconversion/CMakeLists.txt 8337a48 
>   krita/plugins/extensions/dockers/advancedcolorselector/CMakeLists.txt f3ca701 
>   krita/plugins/extensions/dockers/artisticcolorselector/CMakeLists.txt 6af6ad8 
>   krita/plugins/extensions/dockers/channeldocker/CMakeLists.txt f21828c 
>   krita/plugins/extensions/dockers/compositiondocker/CMakeLists.txt 8beb794 
>   krita/plugins/extensions/dockers/defaultdockers/CMakeLists.txt 8273262 
>   krita/plugins/extensions/dockers/digitalmixer/CMakeLists.txt c2bca8f 
>   kexi/plugins/forms/widgets/mapbrowser/CMakeLists.txt fd29579 
>   kexi/plugins/forms/widgets/webbrowser/CMakeLists.txt d8c61a6 
>   kexi/plugins/importexport/csv/CMakeLists.txt 59df853 
>   kexi/plugins/migration/CMakeLists.txt dcd625a 
>   kexi/plugins/queries/CMakeLists.txt 02220fa 
>   kexi/plugins/relations/CMakeLists.txt 821eba9 
>   kexi/plugins/reports/CMakeLists.txt 8bff375 
>   kexi/plugins/scripting/kexiscripting/CMakeLists.txt 17d02c8 
>   kexi/plugins/shapes/relationdesign/CMakeLists.txt 357a3c7 
>   kexi/plugins/tables/CMakeLists.txt b0eca15 
>   krita/CMakeLists.txt d78217d 
>   krita/crashreporter/main.cpp 3ee0e78 
>   krita/gemini/CMakeLists.txt f597885 
>   krita/plugins/assistants/RulerAssistant/CMakeLists.txt 9a08253 
>   krita/plugins/colorspaces/extensions/CMakeLists.txt f96e1f5 
>   krita/plugins/extensions/bigbrother/CMakeLists.txt da02298 
>   krita/plugins/extensions/clonesarray/CMakeLists.txt 23f3e6c 
>   kexi/migration/txt/CMakeLists.txt c3514f7 
>   kexi/migration/xbase/CMakeLists.txt c915b92 
>   kexi/plugins/autoforms/CMakeLists.txt b703bef 
>   krita/plugins/formats/bmp/CMakeLists.txt b7f16a3 
>   krita/plugins/formats/eps/CMakeLists.txt 33a0784 
>   krita/plugins/formats/exr/CMakeLists.txt 70d4ada 
>   krita/plugins/formats/flipbook/CMakeLists.txt 0f54991 
>   krita/plugins/formats/heightmap/CMakeLists.txt e883968 
>   krita/plugins/formats/jp2/CMakeLists.txt fc5915f 
>   krita/plugins/formats/jpeg/CMakeLists.txt 2acf912 
>   krita/plugins/formats/odg/CMakeLists.txt c362dbf 
>   krita/plugins/formats/oiio/CMakeLists.txt 5d7ca14 
>   krita/plugins/filters/colors/CMakeLists.txt 4ee8d3f 
>   krita/plugins/filters/colorsfilters/CMakeLists.txt 2f71712 
>   krita/plugins/filters/convolutionfilters/CMakeLists.txt 4abcdff 
>   krita/plugins/filters/dodgeburn/CMakeLists.txt 54684a2 
>   krita/plugins/filters/embossfilter/CMakeLists.txt d1f4a53 
>   krita/plugins/filters/example/CMakeLists.txt 73f39ca 
>   krita/plugins/filters/fastcolortransfer/CMakeLists.txt c7712b4 
>   krita/plugins/filters/imageenhancement/CMakeLists.txt 917d9e8 
>   krita/plugins/filters/indexcolors/CMakeLists.txt 2e74c95 
>   krita/plugins/filters/levelfilter/CMakeLists.txt d4e2297 
>   krita/plugins/filters/noisefilter/CMakeLists.txt 35022b3 
>   krita/plugins/filters/oilpaintfilter/CMakeLists.txt 5687740 
>   krita/plugins/filters/phongbumpmap/CMakeLists.txt b263313 
>   krita/plugins/filters/pixelizefilter/CMakeLists.txt 5fb58de 
>   krita/plugins/filters/posterize/CMakeLists.txt 84e56ac 
>   krita/plugins/filters/raindropsfilter/CMakeLists.txt a5994b1 
>   krita/plugins/filters/randompickfilter/CMakeLists.txt 327327f 
>   krita/plugins/filters/roundcorners/CMakeLists.txt d70ee53 
>   krita/plugins/filters/smalltilesfilter/CMakeLists.txt ee6966d 
>   krita/plugins/filters/sobelfilter/CMakeLists.txt 3a82020 
>   krita/plugins/filters/unsharp/CMakeLists.txt 5ac34f8 
>   krita/plugins/filters/wavefilter/CMakeLists.txt 1f2ea48 
>   words/plugins/scripting/CMakeLists.txt 27bd499 
>   sheets/plugins/calendar/CMakeLists.txt 3e2e009 
>   sheets/plugins/scripting/CMakeLists.txt 594d87d 
>   sheets/plugins/solver/CMakeLists.txt 83b097a 
>   sheets/shape/CMakeLists.txt f16b1a3 
>   plan/plugins/filters/kplato/import/CMakeLists.txt 37796fc 
>   plan/plugins/schedulers/rcps/CMakeLists.txt 57b5f10 
>   plan/plugins/schedulers/tj/CMakeLists.txt 59d799c 
>   plan/plugins/scripting/CMakeLists.txt 9d22fb2 
>   plan/workpackage/CMakeLists.txt 845e137 
>   plugins/artistictextshape/CMakeLists.txt 7669312 
>   plugins/chartshape/CMakeLists.txt ad3649c 
>   plugins/colorengines/lcms2/CMakeLists.txt 23426e3 
>   plugins/commentshape/CMakeLists.txt 48444c8 
>   plugins/defaultTools/CMakeLists.txt 8705c1e 
>   krita/plugins/tools/tool_transform2/CMakeLists.txt 57058f2 
>   krita/sketch/CMakeLists.txt 3e8bcba 
>   krita/ui/kis_view2.cpp 096436d 
>   libs/basicflakes/plugin/CMakeLists.txt bd3c950 
>   libs/db/drivers/sqlite/CMakeLists.txt c4deb6b 
>   libs/db/pluginloader.h PRE-CREATION 
>   libs/db/pluginloader.cpp PRE-CREATION 
>   libs/flake/KoShapeFactoryBase.cpp 1fb57fb 
>   libs/kopageapp/tools/backgroundTool/CMakeLists.txt 748bde7 
>   libs/koplugin/CMakeLists.txt 8d18cf2 
>   libs/koplugin/KoPluginLoader.cpp e6eb342 
>   libs/koplugin/KoServiceLocator.h PRE-CREATION 
>   libs/koplugin/KoServiceLocator.cpp PRE-CREATION 
>   stage/app/CMakeLists.txt 9370b9c 
>   stage/part/CMakeLists.txt f79eea9 
>   stage/part/tools/animationtool/CMakeLists.txt c6bd045 
>   stage/plugins/eventactions/CMakeLists.txt 5e615c3 
>   stage/plugins/pageeffects/barwipe/CMakeLists.txt a1120bf 
>   stage/plugins/pageeffects/clockwipe/CMakeLists.txt f868291 
>   stage/plugins/pageeffects/edgewipe/CMakeLists.txt e404ea0 
>   stage/plugins/pageeffects/example/CMakeLists.txt aa979df 
>   stage/plugins/pageeffects/fade/CMakeLists.txt a3a5715 
>   plugins/dockers/CMakeLists.txt 75f007e 
>   plugins/formulashape/CMakeLists.txt 015cb8f 
>   plugins/kexi/spreadsheet/CMakeLists.txt 1a7d1d5 
>   plugins/musicshape/CMakeLists.txt ae5f5eb 
>   plugins/pathshapes/CMakeLists.txt 177faf5 
>   plugins/pictureshape/CMakeLists.txt 64aa998 
>   plugins/pluginshape/CMakeLists.txt e29b2cc 
>   plugins/reporting/barcode/CMakeLists.txt 145781e 
>   plugins/reporting/chart/CMakeLists.txt 348c9e5 
>   plugins/reporting/maps/CMakeLists.txt 7993ca6 
>   plugins/reporting/web/CMakeLists.txt 7fd8c0c 
>   plugins/semanticitems/contact/CMakeLists.txt f23492e 
>   plugins/semanticitems/event/CMakeLists.txt 407826e 
>   plugins/semanticitems/location/CMakeLists.txt 5b9c233 
>   libs/main/KoApplication.cpp 0b8965d 
>   libs/main/KoDocumentEntry.h e9884d0 
>   libs/main/KoDocumentEntry.cpp 12b4117 
>   libs/main/KoFilterEntry.cpp 75ae32d 
>   libs/main/KoFilterGraph.cpp 59177d9 
>   libs/main/KoFilterManager.cpp f6cdec9 
>   krita/plugins/paintops/chalk/CMakeLists.txt b3ba824 
>   krita/plugins/paintops/colorsmudge/CMakeLists.txt 6874326 
>   krita/plugins/paintops/curvebrush/CMakeLists.txt 779e569 
>   krita/plugins/paintops/defaultpaintops/CMakeLists.txt 7618ecb 
>   krita/plugins/paintops/deform/CMakeLists.txt e511d68 
>   krita/plugins/paintops/dynadraw/CMakeLists.txt 7f599ac 
>   krita/plugins/paintops/experiment/CMakeLists.txt 6b05915 
>   krita/plugins/paintops/filterop/CMakeLists.txt fca6436 
>   krita/plugins/paintops/gridbrush/CMakeLists.txt b550bdb 
>   krita/plugins/paintops/hairy/CMakeLists.txt 547e2d3 
>   krita/plugins/paintops/hatching/CMakeLists.txt 872ccd3 
>   krita/plugins/paintops/mypaint/CMakeLists.txt 7977f26 
>   krita/plugins/paintops/particle/CMakeLists.txt 1dd0538 
>   krita/plugins/formats/qml/CMakeLists.txt 756852e 
>   krita/plugins/formats/raw/CMakeLists.txt fd9d0f2 
>   krita/plugins/formats/tga/CMakeLists.txt c677691 
>   krita/plugins/formats/tiff/CMakeLists.txt ce5af68 
>   krita/plugins/formats/xcf/CMakeLists.txt b639734 
>   krita/plugins/generators/pattern/CMakeLists.txt cc92150 
>   krita/plugins/formats/ora/CMakeLists.txt 0ea7784 
>   krita/plugins/formats/pdf/CMakeLists.txt 6bee050 
>   krita/plugins/formats/png/CMakeLists.txt 6f46370 
>   krita/plugins/formats/ppm/CMakeLists.txt 34b499b 
>   krita/plugins/formats/psd/CMakeLists.txt b4032c2 
>   stage/plugins/pageeffects/iriswipe/CMakeLists.txt 81d51c6 
>   stage/plugins/pageeffects/matrixwipe/CMakeLists.txt 7223f6d 
>   stage/plugins/pageeffects/slidewipe/CMakeLists.txt e24ce6b 
>   stage/plugins/pageeffects/spacerotation/CMakeLists.txt 7e1b110 
>   stage/plugins/pageeffects/swapeffect/CMakeLists.txt c974f35 
>   stage/plugins/shapeanimations/example/CMakeLists.txt 7cf03f4 
>   stage/plugins/variable/CMakeLists.txt a09a8ae 
>   words/app/CMakeLists.txt 61d5180 
>   words/part/CMakeLists.txt 41f675b 
>   plugins/spacenavigator/CMakeLists.txt 9859962 
>   plugins/staging/pivottables/CMakeLists.txt c1b15b5 
>   plugins/staging/templateshape/CMakeLists.txt 36af7d2 
>   plugins/staging/threedshape/CMakeLists.txt c7e113a 
>   plugins/textediting/autocorrection/CMakeLists.txt 6e8ce4f 
>   plugins/textediting/changecase/CMakeLists.txt 93fa63c 
>   plugins/textediting/spellcheck/CMakeLists.txt 0c7a324 
>   plugins/textediting/thesaurus/CMakeLists.txt 5f4c1dd 
>   plugins/textshape/CMakeLists.txt f7fcdb4 
>   plugins/variables/CMakeLists.txt 4a50e04 
>   plugins/vectorshape/CMakeLists.txt b2526eb 
>   plugins/videoshape/CMakeLists.txt ccf5013 
>   sheets/CMakeLists.txt 71c6159 
>   sheets/functions/CMakeLists.txt 27f8c8f 
>   libs/main/tests/filter_graph.cpp 87ee024 
>   plan/CMakeLists.txt d9e24d8 
>   plan/plugins/filters/icalendar/export/CMakeLists.txt a20e2b0 
>   krita/plugins/paintops/resourcemanager/CMakeLists.txt 56db1bb 
>   krita/plugins/paintops/sketch/CMakeLists.txt 9263b02 
>   krita/plugins/paintops/spray/CMakeLists.txt 63b0618 
>   krita/plugins/tools/defaulttools/CMakeLists.txt a33a1b1 
>   krita/plugins/tools/selectiontools/CMakeLists.txt bbb8c88 
>   krita/plugins/tools/tool_crop/CMakeLists.txt 5c7bd9b 
>   krita/plugins/tools/tool_dyna/CMakeLists.txt 80c5025 
>   krita/plugins/tools/tool_grid/CMakeLists.txt d068671 
>   krita/plugins/tools/tool_perspectivegrid/CMakeLists.txt 968d0e0 
>   krita/plugins/tools/tool_polygon/CMakeLists.txt bd4eaf1 
>   krita/plugins/tools/tool_polyline/CMakeLists.txt e124221 
>   krita/plugins/tools/tool_text/CMakeLists.txt 8ac17d1 
>   krita/plugins/generators/solid/CMakeLists.txt 8c4b7b8 
>   krita/plugins/kimgio/CMakeLists.txt 15187a2 
>   krita/plugins/extensions/imagesplit/CMakeLists.txt b1d28e1 
>   krita/plugins/extensions/layergroupswitcher/CMakeLists.txt 31847bc 
>   krita/plugins/extensions/metadataeditor/CMakeLists.txt bdde0fa 
>   krita/plugins/extensions/modify_selection/CMakeLists.txt f788780 
>   krita/plugins/extensions/offsetimage/CMakeLists.txt 2538911 
>   krita/plugins/extensions/rotateimage/CMakeLists.txt f6a52ef 
>   krita/plugins/extensions/separate_channels/CMakeLists.txt 5a122ec 
>   krita/plugins/extensions/shearimage/CMakeLists.txt a7536be 
>   krita/plugins/filters/blur/CMakeLists.txt 85ca597 
>   krita/plugins/extensions/dockers/palettedocker/CMakeLists.txt 3b088d2 
>   krita/plugins/extensions/dockers/patterndocker/CMakeLists.txt 0148dcd 
>   krita/plugins/extensions/dockers/presetdocker/CMakeLists.txt c0d2654 
>   krita/plugins/extensions/dockers/smallcolorselector/CMakeLists.txt 8957b33 
>   krita/plugins/extensions/dockers/specificcolorselector/CMakeLists.txt dc7a333 
>   krita/plugins/extensions/dockers/tasksetdocker/CMakeLists.txt 8234972 
>   krita/plugins/extensions/dropshadow/CMakeLists.txt 9337d7d 
>   krita/plugins/extensions/gmic/CMakeLists.txt 34c4fec 
>   krita/plugins/extensions/histogram/CMakeLists.txt fd05940 
>   krita/plugins/extensions/imagesize/CMakeLists.txt 70a5371 
>   kexi/CMakeLists.txt 01ea697 
>   kexi/formeditor/factories/CMakeLists.txt 635852d 
>   kexi/kexidb/drivers/mysql/CMakeLists.txt c10e847 
>   kexi/kexidb/drivers/odbc/CMakeLists.txt d554be9 
>   kexi/kexidb/drivers/oracle/CMakeLists.txt 08ca310 
>   kexi/kexidb/drivers/pqxx/CMakeLists.txt 2df3374 
>   kexi/kexidb/drivers/sybase/CMakeLists.txt 1a23da9 
>   kexi/kexidb/drivers/xbase/CMakeLists.txt 10f3933 
>   kexi/migration/mdb/src/CMakeLists.txt 827b19f 
>   kexi/migration/mysql/CMakeLists.txt b04acf8 
>   kexi/migration/pqxx/CMakeLists.txt 2136d17 
>   kexi/migration/sybase/CMakeLists.txt 684da55 
>   active/CMakeLists.txt d6faa0a 
>   braindump/data/CMakeLists.txt b67d164 
>   braindump/plugins/quickstates/CMakeLists.txt cb97fff 
>   braindump/plugins/stateshape/CMakeLists.txt 25f086e 
>   braindump/plugins/webshape/CMakeLists.txt b823d15 
>   braindump/src/View.cpp 6421fac 
>   doc/CMakeLists.txt 0b4e238 
>   extras/calligra/main.cpp 051a955 
>   extras/properties/CMakeLists.txt 6eb2559 
>   extras/quickprint/CMakeLists.txt 659b8ed 
>   filters/flow/imageexport/CMakeLists.txt e11ee80 
>   filters/flow/visio/import/CMakeLists.txt dde9ec2 
>   filters/flow/wpg/import/CMakeLists.txt 34eab50 
>   filters/karbon/eps/CMakeLists.txt d2f2192 
>   filters/karbon/image/CMakeLists.txt 112a5cd 
>   filters/karbon/karbon1.x/CMakeLists.txt 482cc65 
>   filters/karbon/pdf/CMakeLists.txt 6128938 
>   filters/karbon/svg/CMakeLists.txt e87ae77 
>   filters/karbon/wmf/CMakeLists.txt 13532ed 
>   filters/karbon/wpg/CMakeLists.txt 5f0c060 
>   filters/karbon/xaml/CMakeLists.txt cd4a494 
>   filters/karbon/xfig/CMakeLists.txt 26038f8 
>   filters/plan/mpxj/import/CMakeLists.txt 942d460 
>   filters/sheets/applixspread/CMakeLists.txt b77c678 
>   filters/sheets/csv/CMakeLists.txt 0a8ea31 
>   filters/sheets/dbase/CMakeLists.txt ac39a5b 
>   filters/sheets/excel/export/CMakeLists.txt a9944a5 
>   filters/sheets/excel/import/CMakeLists.txt c9b1efd 
>   filters/sheets/gnumeric/CMakeLists.txt 887f7c3 
>   filters/sheets/html/CMakeLists.txt 3b5d89b 
>   filters/sheets/latex/export/CMakeLists.txt 8c69ed4 
>   filters/sheets/opencalc/CMakeLists.txt 2809b64 
>   filters/sheets/qpro/CMakeLists.txt e4f8b7e 
>   filters/sheets/xlsx/CMakeLists.txt e819631 
>   filters/stage/keynote/import/CMakeLists.txt a1e0b4d 
>   filters/stage/kpr2odf/CMakeLists.txt 8809b261 
>   filters/stage/powerpoint/CMakeLists.txt 90b55c7 
>   filters/stage/pptx/CMakeLists.txt b46e5e3 
>   filters/words/applixword/CMakeLists.txt 155ebc0 
>   filters/words/ascii/CMakeLists.txt 19568cd 
>   filters/words/docx/export/CMakeLists.txt e6b27ba 
>   filters/words/docx/import/CMakeLists.txt 375e974 
>   filters/words/epub/CMakeLists.txt 7015188 
>   filters/words/mobi/CMakeLists.txt 6db5b4e 
>   filters/words/msword-odf/CMakeLists.txt 717aabd 
>   filters/words/rtf/import/CMakeLists.txt 62f5d20 
>   filters/words/wordperfect/import/CMakeLists.txt 4fa8a0a 
>   filters/words/works/import/CMakeLists.txt 3ac307f 
>   flow/part/CMakeLists.txt e17ef39 
>   flow/plugins/dockers/CMakeLists.txt 62474e9 
>   karbon/data/CMakeLists.txt 9d4a447 
>   karbon/plugins/filtereffects/CMakeLists.txt 1cd6304 
>   karbon/plugins/flattenpath/CMakeLists.txt 624cdbd 
>   karbon/plugins/refinepath/CMakeLists.txt 0f28b9b 
>   karbon/plugins/roundcorners/CMakeLists.txt feacf7b 
>   karbon/plugins/tools/CMakeLists.txt a3210e2 
>   karbon/plugins/whirlpinch/CMakeLists.txt a454cd0 
>   karbon/ui/KarbonView.cpp c57479c 
>   krita/plugins/extensions/dockers/flipbook/CMakeLists.txt e5099eb 
>   krita/plugins/extensions/dockers/historydocker/CMakeLists.txt 513dae3 
> 
> Diff: https://git.reviewboard.kde.org/r/119033/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Boudewijn Rempt
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20140708/d832537c/attachment.htm>


More information about the calligra-devel mailing list