Ensure binary effects are loaded before cleints

Merged David Edmundson requested to merge work/simplify_effects into master

The current code performed two functions:

  • metadata was read async
  • the event loop is spun between each effect loading

After we merged static and binary plugins this caused a problem for things like blur and background contrast where loading an effect influences what we advertise as supported. We don't want plasmashell to have to reload all it's SVGs.

All KDE provided binary plugins are statically bundled so querying for plugins is super duper fast anyway. It's not the kbuildsycococa path that it used to be.

The C++ plugins tend to be considerably faster in their constructor than scripted counterparts, and if anything should be loaded lazily it can be handled inside the effect.

Merge request reports