Review Request 115653: Introduce a showOnCurrentPlatform method to KService

Martin Gräßlin mgraesslin at kde.org
Tue Feb 11 12:26:38 UTC 2014



> On Feb. 11, 2014, 11:53 a.m., Alex Merry wrote:
> > Two (related) things concern me about this:
> > 
> > You're putting stuff that references the particular Qt platform plugin name into desktop files, and you're doing it with something not prefixed with X-KDE-
> > 
> > I'm not even sure "platform" is really the right term, since you are talking about the window system.
> > 
> > I would suggest, at a minimum, translating between "xcb" (the Qt platform name that refers to the libraries used to implement it) and "X11" (the actual window system).
> 
> Dominik Haumann wrote:
>     I'd also be interested as to why we need to extend KService and add a getter for this. Can't we achieve the same by adding a X-KDE-... flag that is read by the host application? For instance, in KF5, Kate and KDevelop may share plugins, therefore, we introduced a X-KTextEditor-Load-Default={kate, kdevelop, ...}, which looks like a similar use case to me.

> I would suggest, at a minimum, translating between "xcb" (the Qt platform name that refers to the libraries used to implement it) and "X11" (the actual window system).

no, I really want it to be the platform name as it's specified by QGuiPlatform::platormName

> I'd also be interested as to why we need to extend KService and add a getter for this.

I had talked to Ben (systemsettings maintainer) how to do it and he pointed me to KService::noDisplay() :-) Let's say I consider this as an RFC, that's why I haven't extended KServiceTypeTrader like it's done for showInKDE.

I'm not sure whether just do it in the host application will be enough or will lead to lots of code duplication. We at least need this in:
* Systemsettings (hide modules which are X11 specific, add modules which are Wayland specific)
* KInfoCenter (same thing)
* kcmshell (would be nice not to crash)
* KWin (awesome solution to get rid of screenshot effect on Wayland)

And probably more - Plasma is a clear candidate where we might also want to make some plasmoids not available on one or the other platform (e.g. Pager looks pretty broken on Wayland at the moment).


- Martin


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


On Feb. 11, 2014, 11:40 a.m., Martin Gräßlin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/115653/
> -----------------------------------------------------------
> 
> (Updated Feb. 11, 2014, 11:40 a.m.)
> 
> 
> Review request for KDE Frameworks.
> 
> 
> Repository: kservice
> 
> 
> Description
> -------
> 
> Introduce a showOnCurrentPlatform method to KService
> 
> This is inspired by showInKDE to easily exclude modules which doesn't
> make any sense on the current platform. E.g. in systemsettings we
> do not want services which are X11 specific if systemsettings is
> executed on Wayland.
> 
> 
> Diffs
> -----
> 
>   src/services/kservice.h 6bc1bb988b273c9b2e6593f5f517535701b3854d 
>   src/services/kservice.cpp 1da29e2629c09a150acee977237a25924056e3bc 
> 
> Diff: https://git.reviewboard.kde.org/r/115653/diff/
> 
> 
> Testing
> -------
> 
> Added "OnlyShowOnPlatforms=xcb;" to kcmbell's desktop file. Shown in systemsettings on X, hidden on Wayland
> 
> 
> Thanks,
> 
> Martin Gräßlin
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140211/31987166/attachment.html>


More information about the Kde-frameworks-devel mailing list