Re: There's no proper replacement for KIcon

2014-09-12 Thread Kevin Krammer
On Thursday, 2014-09-11, 17:56:38, Eike Hein wrote:
 On 11.09.2014 17:22, Kevin Krammer wrote:
  Hicolor is there for cases where the setup fails to provide any workspace
  or distribution specific theme.
 
 Yes. So I'm thinking ahead and telling you how that setup looks
 like for a workspace:
 
 - Write a Qt platform plugin. Needs coding chops. We have them. What
about workspaces which don't? What about all the other toolkits be-
sides Qt?
 
 - Swap out icons in hicolor.
 
 Which do you think happens?

Depends on the wanted results.

A platform plugin provide platform integration which icons are only a small 
part of. If the platform vendor wants Qt application to properly integrate 
with their choice of workspace, they will have a platform integration plugins.

If they just want to have icons, they are very well able to ship their own 
version of hicolor fallback icons.
This does not conflict with having a non-broken hicolor theme package to start 
with.

  But why not just have your theme as an explicit theme like everyone else
  and only get your theme in case the fallback path is triggered?
 
 Because making Qt aware of an explicit theme involves writing a Qt
 platform plugin. It means if you're a sys admin / distro you can no
 longer solve your problem on the spec level (unless you swap out
 icons in hicolor), you need to be aware Qt exists. Seems like a
 layering violation to me.

As I said above, it depends on the level of integration you'd like to achieve.
There are lots of integration points provided by said plugin.

  Sharing a setting that indicates a default theme name is of course a good
  goal, doesn't however fix the problem of the fallback being incomplete.
 
 No, but it makes it a lot easier for distros to provide a complete
 fallback (- installing Oxygen or something else, setting it as
 preferred fallback). It's less work than maintaining a complete hi-
 color no one can agree on.

I don't see why it would be difficult to agree on having a non-broken 
fallback.

  Or do you mean install the custom theme twice, once as itself and once as
  hicolor?
 
 Wait - I think I now understand why we're having trouble
 communicating about this.
 
 You think a distro has the option to install Oxygen *as*
 hicolor, right, making my preferred fallback thing seem
 redundant?
 
 That's not so - because numerous apps install app icons
 *into* the hicolor folder structure, including KDE apps,
 and those can conflict with the icons in a theme. For
 distro packagers that means they'd have to fix numerous
 package installs to eliminate those conflicts.

No, I mean providing their own hicolor theme if they want to (ab)use the 
fallback as their integration point.

I really have to read the spec soon, but I have my doubt that it lists any app 
specific icons. Thus installing such into its paths should not conflict with 
anything already there.

 So using any given theme *as* hicolor doesn't fly without
 manual merging/maintenance work for packagers, which is
 what I suggest to avoid with a 'preferred system fallback'
 config knob.

Assuming that a vendor wants to override the default hicolor package, then yes 
that will obviously require maintenance. This is no different with any other 
deviation from upstream.

Again, having a shared setting, exposed via whatever mechanism (env variable, 
X11 property, file, ) is orthogonal to having a working fallback.

The fallback is hit when no other means of lookup, whether configurable or 
hardcoded, resulted in a matching icon.
So it *must* at least contain all icons that are specified in the spec, it is 
an icon loader's last resort.

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-12 Thread Allan Sandfeld Jensen
On Wednesday 03 September 2014, Albert Astals Cid wrote:
 Porting guide lies in saying that KIcon should be replaced with
 QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
 QIcon::fromTheme doesn't do that.
 
 Please someone provide a solution for this problem or undeprecate KIcon.
 This is blocking the porting of my applications.
 
Is there a problem with using QIcon::setThemeName(Oxygen)? It you want to 
use the system defined theme Qt needs to detect the desktop platform and at 
least the KDE platform theme already defaults to Oxygen. 

If that is not enough, it might be possible to add some kind of QIcon fallback 
theme setting.

`Allan
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-12 Thread Albert Astals Cid
El Divendres, 12 de setembre de 2014, a les 12:04:38, Allan Sandfeld Jensen va 
escriure:
 On Wednesday 03 September 2014, Albert Astals Cid wrote:
  Porting guide lies in saying that KIcon should be replaced with
  QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
  QIcon::fromTheme doesn't do that.
  
  Please someone provide a solution for this problem or undeprecate KIcon.
  This is blocking the porting of my applications.
 
 Is there a problem with using QIcon::setThemeName(Oxygen)? It you want to
 use the system defined theme Qt needs to detect the desktop platform and at
 least the KDE platform theme already defaults to Oxygen.
 
 If that is not enough, it might be possible to add some kind of QIcon
 fallback theme setting.

Read the rest of the thread, it's not that simple :)

Cheers,
  Albert

 
 `Allan
 ___
 Kde-frameworks-devel mailing list
 Kde-frameworks-devel@kde.org
 https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Wednesday, 2014-09-10, 23:43:15, Albert Astals Cid wrote:
 El Dimarts, 9 de setembre de 2014, a les 16:25:26, Kevin Krammer va 
escriure:
  On Sunday, 2014-09-07, 10:27:06, Albert Astals Cid wrote:
   So as I see it, there's three options:
* Do nothing, and expect that people have to set one of
   
   XDG_CURRENT_DESKTOP, KDE_FULL_SESSION, GNOME_DESKTOP_SESSION_ID or
   DESKTOP_SESSION environment variables to get icons
   
* Do the change/hack to QGenericUnixTheme::themeHint return any of the
   
   themes in xdgIconThemePaths that is not hicolor
   
* Talk to the xdg-people to include a way to get the current icon theme
and
   
   use that in QGenericUnixTheme::themeHint
  
  Wouldn't a fourth option be to make sure that hicolor is actually a proper
  fallback as specified?
  
  Applications already are more or less required to install their fallbacks
  in hicolor, so the shared icons should be there as well, no?
 
 I don't think it makes sense, i mean who would install stuff to
 hicolor/actions/document-open.png ? oxygen? breeze? tango? someothericonset?
 
 For applications it makes sense tha application to install to hicolor since
 the application owns the name for that icon, but noone actually owns the
 document-open.png action so that's why i think it makes no sense for it to
 be there.

The rule to always also install an application icon into Hicolor was meant as 
an example of a general intent that Hicolor be fully usable.

I don't know the details of the icon spec but my understanding was that 
document-open was a specified standard name.

Assuming that is the case it would have implied for me that an icon of this 
name is always present.
If not in the current theme then at least in the fallback Hicolor theme.

Again based on these prior assumptions on the spec, not having that icon in 
Hicolor would constitute a bug in the Hicolor theme and should be fixed by 
adding the icon there,no?

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Albert Astals Cid
El Dijous, 11 de setembre de 2014, a les 08:46:11, Kevin Krammer va escriure:
 On Wednesday, 2014-09-10, 23:43:15, Albert Astals Cid wrote:
  El Dimarts, 9 de setembre de 2014, a les 16:25:26, Kevin Krammer va
 
 escriure:
   On Sunday, 2014-09-07, 10:27:06, Albert Astals Cid wrote:
So as I see it, there's three options:
 * Do nothing, and expect that people have to set one of

XDG_CURRENT_DESKTOP, KDE_FULL_SESSION, GNOME_DESKTOP_SESSION_ID or
DESKTOP_SESSION environment variables to get icons

 * Do the change/hack to QGenericUnixTheme::themeHint return any of
 the

themes in xdgIconThemePaths that is not hicolor

 * Talk to the xdg-people to include a way to get the current icon
 theme
 and

use that in QGenericUnixTheme::themeHint
   
   Wouldn't a fourth option be to make sure that hicolor is actually a
   proper
   fallback as specified?
   
   Applications already are more or less required to install their
   fallbacks
   in hicolor, so the shared icons should be there as well, no?
  
  I don't think it makes sense, i mean who would install stuff to
  hicolor/actions/document-open.png ? oxygen? breeze? tango?
  someothericonset?
  
  For applications it makes sense tha application to install to hicolor
  since
  the application owns the name for that icon, but noone actually owns the
  document-open.png action so that's why i think it makes no sense for it to
  be there.
 
 The rule to always also install an application icon into Hicolor was meant
 as an example of a general intent that Hicolor be fully usable.
 
 I don't know the details of the icon spec but my understanding was that
 document-open was a specified standard name.

Correct.

 Assuming that is the case it would have implied for me that an icon of this
 name is always present.

Should be always present in valid themes, yes.

 If not in the current theme then at least in the fallback Hicolor theme.
 
 Again based on these prior assumptions on the spec, not having that icon in
 Hicolor would constitute a bug in the Hicolor theme and should be fixed by
 adding the icon there,no?

There's no hicolor theme per se. Only a bunch of empty folders
http://www.freedesktop.org/software/icon-theme/releases/hicolor-icon-theme-0.5.tar.gz

Cheers,
  Albert

 
 Cheers,
 Kevin

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 09:33:23, Albert Astals Cid wrote:
 El Dijous, 11 de setembre de 2014, a les 08:46:11, Kevin Krammer va 
escriure:

  The rule to always also install an application icon into Hicolor was meant
  as an example of a general intent that Hicolor be fully usable.
  
  I don't know the details of the icon spec but my understanding was that
  document-open was a specified standard name.
 
 Correct.
 
  Assuming that is the case it would have implied for me that an icon of
  this
  name is always present.
 
 Should be always present in valid themes, yes.
 
  If not in the current theme then at least in the fallback Hicolor theme.
  
  Again based on these prior assumptions on the spec, not having that icon
  in
  Hicolor would constitute a bug in the Hicolor theme and should be fixed by
  adding the icon there,no?
 
 There's no hicolor theme per se. Only a bunch of empty folders
 http://www.freedesktop.org/software/icon-theme/releases/hicolor-icon-theme-0
 .5.tar.gz

Is there a maintainer for this package?
IMHO the only sensible solution is to make sure that it actually contains the 
icons specified. Without it is rather useless as a specification base line.

Cheers,
Kevin

-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Albert Astals Cid
El Dijous, 11 de setembre de 2014, a les 10:57:17, Kevin Krammer va escriure:
 On Thursday, 2014-09-11, 09:33:23, Albert Astals Cid wrote:
  El Dijous, 11 de setembre de 2014, a les 08:46:11, Kevin Krammer va
 
 escriure:
   The rule to always also install an application icon into Hicolor was
   meant
   as an example of a general intent that Hicolor be fully usable.
   
   I don't know the details of the icon spec but my understanding was that
   document-open was a specified standard name.
  
  Correct.
  
   Assuming that is the case it would have implied for me that an icon of
   this
   name is always present.
  
  Should be always present in valid themes, yes.
  
   If not in the current theme then at least in the fallback Hicolor theme.
   
   Again based on these prior assumptions on the spec, not having that icon
   in
   Hicolor would constitute a bug in the Hicolor theme and should be fixed
   by
   adding the icon there,no?
  
  There's no hicolor theme per se. Only a bunch of empty folders
  http://www.freedesktop.org/software/icon-theme/releases/hicolor-icon-theme
  -0 .5.tar.gz
 
 Is there a maintainer for this package?
I have no idea

 IMHO the only sensible solution is to make sure that it actually contains
 the icons specified. Without it is rather useless as a specification base
 line.

By reading
http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
i think they disagree with you as they mention hicolor for icon apps and not 
for general icons.

Cheers,
  Albert

 
 Cheers,
 Kevin

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 02:06:02, Albert Astals Cid wrote:
 El Dijous, 11 de setembre de 2014, a les 10:57:17, Kevin Krammer va 
escriure:
  On Thursday, 2014-09-11, 09:33:23, Albert Astals Cid wrote:
   El Dijous, 11 de setembre de 2014, a les 08:46:11, Kevin Krammer va
  
  escriure:
The rule to always also install an application icon into Hicolor was
meant
as an example of a general intent that Hicolor be fully usable.

I don't know the details of the icon spec but my understanding was
that
document-open was a specified standard name.
   
   Correct.
   
Assuming that is the case it would have implied for me that an icon of
this
name is always present.
   
   Should be always present in valid themes, yes.
   
If not in the current theme then at least in the fallback Hicolor
theme.

Again based on these prior assumptions on the spec, not having that
icon
in
Hicolor would constitute a bug in the Hicolor theme and should be
fixed
by
adding the icon there,no?
   
   There's no hicolor theme per se. Only a bunch of empty folders
   http://www.freedesktop.org/software/icon-theme/releases/hicolor-icon-the
   me
   -0 .5.tar.gz
  
  Is there a maintainer for this package?
 
 I have no idea
 
  IMHO the only sensible solution is to make sure that it actually contains
  the icons specified. Without it is rather useless as a specification base
  line.
 
 By reading
 http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
 i think they disagree with you as they mention hicolor for icon apps and
 not for general icons.

Ok, I'll try to read the spec and ask for clarification on the XDG list.

From my point of view there is little use case of having a fallback if it does 
not allow one to fall back to it.

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 11:11, Kevin Krammer wrote:

 From my point of view there is little use case of having a fallback if it does
not allow one to fall back to it.


Check out the chat log for the idea of enhancing the spec to
add some sort of system-level configuration scheme to set a
fallback one level higher than hicolor (to avoid a namespace
fight over hicolor). I imagine that will come up in the xdg
thread.



Cheers,
Kevin


Cheers,
Eike

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 15:29:13, Eike Hein wrote:
 On 11.09.2014 11:11, Kevin Krammer wrote:
   From my point of view there is little use case of having a fallback if it
   does 
  not allow one to fall back to it.
 
 Check out the chat log for the idea of enhancing the spec to
 add some sort of system-level configuration scheme to set a
 fallback one level higher than hicolor (to avoid a namespace
 fight over hicolor). I imagine that will come up in the xdg
 thread.

Sounds interesting, but checkout where?

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 15:33, Kevin Krammer wrote:

Sounds interesting, but checkout where?


In this thread, where I've posted it and encouraged reading
it a few times :).



Cheers,
Kevin


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 15:40:14, Eike Hein wrote:
 On 11.09.2014 15:33, Kevin Krammer wrote:
  Sounds interesting, but checkout where?
 
 In this thread, where I've posted it and encouraged reading
 it a few times :).

Ah :)
I thought you were referring to some XDG discussion.

Having a configurable fallback before the final fallback can't hurt, but that 
doesn't solve the actual problem of hicolor being incomplete.
It is just a work around.

Might be the only way if the other participants in the icon spec standard want 
the fallback to be broken.

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 15:43, Kevin Krammer wrote:

Having a configurable fallback before the final fallback can't hurt, but that
doesn't solve the actual problem of hicolor being incomplete.
It is just a work around.


Sort of, except I think the outcome is more or less the
same - either a distro/ISV decides on a particular set of
icons to roll into hicolor to make things look good
(which means work) or they get an explicit config knob to
do that merging.

I don't think you really get out of distributed work in
either scenario - in the fix hicolor scenario you have
many distros replicating the work (because no, deciding
on a single hicolor isn't going to happen, if only because
theming is one of the things distros do to differentiate
themselves), in the fix the spec scenario you need to
fix many implementations of the spec. The advantage of
the latter is that it happens once and is done; new
distros (and new icons) will be made for a long time to
come.

Another trick that came up would be to enhance the lookup
algo in the spec to allow one level of inheritance for
hicolor ...


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 15:53:57, Eike Hein wrote:
 On 11.09.2014 15:43, Kevin Krammer wrote:
  Having a configurable fallback before the final fallback can't hurt, but
  that doesn't solve the actual problem of hicolor being incomplete.
  It is just a work around.
 
 Sort of, except I think the outcome is more or less the
 same - either a distro/ISV decides on a particular set of
 icons to roll into hicolor to make things look good
 (which means work) or they get an explicit config knob to
 do that merging.

Why would hicolor be distro/ISV specific?

 I don't think you really get out of distributed work in
 either scenario - in the fix hicolor scenario you have
 many distros replicating the work (because no, deciding
 on a single hicolor isn't going to happen, if only because
 theming is one of the things distros do to differentiate
 themselves),

I am afraid I can't follow.
No distro would be involved in that, I am talking about a hicolor package that 
is provided alongside the spec.

Cheers,
Kevin

-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 16:09, Kevin Krammer wrote:

Why would hicolor be distro/ISV specific?


Because a hicolor theme everyone likes visually isn't going
to happen. People will want to modify what's in that fall-
back for theming reasons, and distros theme to differentiate
themselves.

In the hicolor as fallback scheme, there are two ways to
affect what icons actually show in KF5 apps outside Plasma:

- Make sure this environment outside Plasma, whatever it is,
  has a Qt platform plugin available that reads some setting
  somewhere that overrides hicolor by specifying a theme.

  (This is how Plasma itself solves this.)

- Manipulate what icons are actually in hicolor.

If we introduce a preferred system fallback theme config
option in the spec that overrides hicolor, and make Qt aware
of it, that avoids either work, which is more extensible to
new environments.



Cheers,
Kevin


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Kevin Krammer
On Thursday, 2014-09-11, 17:05:43, Eike Hein wrote:
 On 11.09.2014 16:09, Kevin Krammer wrote:
  Why would hicolor be distro/ISV specific?
 
 Because a hicolor theme everyone likes visually isn't going
 to happen. People will want to modify what's in that fall-
 back for theming reasons, and distros theme to differentiate
 themselves.

Why would anyone want to change the fallback?
The fallback is something you never ever want to see, it is a worst case 
scenario puffer.
Like the safety net in a circus arena.

I think what you mean is a default, like us using Oxygen/whatever, GNOME using 
Tango/whatever, etc.

Hicolor is there for cases where the setup fails to provide any workspace or 
distribution specific theme.
Its purpose (I have still not read the spec but that is the only thing that 
makes sense to me) is to make sure there is an icon if anything else has 
failed.
A shared resource to avoid every application having to ship fallbacks for each 
used icon.

 In the hicolor as fallback scheme, there are two ways to
 affect what icons actually show in KF5 apps outside Plasma:
 
 - Make sure this environment outside Plasma, whatever it is,
has a Qt platform plugin available that reads some setting
somewhere that overrides hicolor by specifying a theme.

Right, this is what a distributor or other workspace would do if they care 
about theming as a means of differentiation.

(This is how Plasma itself solves this.)

Exactly.

 - Manipulate what icons are actually in hicolor.

Sure, if somebody wants to install their icon theme instead of hicolor, why 
not.
But why not just have your theme as an explicit theme like everyone else and 
only get your theme in case the fallback path is triggered?

Or do you mean install the custom theme twice, once as itself and once as 
hicolor?

 If we introduce a preferred system fallback theme config
 option in the spec that overrides hicolor, and make Qt aware
 of it, that avoids either work, which is more extensible to
 new environments.

Sharing a setting that indicates a default theme name is of course a good 
goal, doesn't however fix the problem of the fallback being incomplete.

I read that non Qt based systems use XSettings to exchange that information 
(on X11 only of course) so maybe we can have that in Qt as well?

And come up with a way to do something equivalent on Wayland?

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 17:22, Kevin Krammer wrote:

Hicolor is there for cases where the setup fails to provide any workspace or
distribution specific theme.


Yes. So I'm thinking ahead and telling you how that setup looks
like for a workspace:

- Write a Qt platform plugin. Needs coding chops. We have them. What
  about workspaces which don't? What about all the other toolkits be-
  sides Qt?

- Swap out icons in hicolor.

Which do you think happens?



But why not just have your theme as an explicit theme like everyone else and
only get your theme in case the fallback path is triggered?


Because making Qt aware of an explicit theme involves writing a Qt
platform plugin. It means if you're a sys admin / distro you can no
longer solve your problem on the spec level (unless you swap out
icons in hicolor), you need to be aware Qt exists. Seems like a
layering violation to me.



Sharing a setting that indicates a default theme name is of course a good
goal, doesn't however fix the problem of the fallback being incomplete.


No, but it makes it a lot easier for distros to provide a complete
fallback (- installing Oxygen or something else, setting it as
preferred fallback). It's less work than maintaining a complete hi-
color no one can agree on.



Cheers,
Kevin


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-11 Thread Eike Hein



On 11.09.2014 17:22, Kevin Krammer wrote:

Or do you mean install the custom theme twice, once as itself and once as
hicolor?


Wait - I think I now understand why we're having trouble
communicating about this.

You think a distro has the option to install Oxygen *as*
hicolor, right, making my preferred fallback thing seem
redundant?

That's not so - because numerous apps install app icons
*into* the hicolor folder structure, including KDE apps,
and those can conflict with the icons in a theme. For
distro packagers that means they'd have to fix numerous
package installs to eliminate those conflicts.

This is what Albert pointed out earlier - hicolor is a
multi-stakeholder namespace, so you need to be very
careful to only install icons there that you can reason-
nably assume no one else wants to install. In practice
that means apps only put app icons there, but plenty of
explicit themes also include app icons.

So using any given theme *as* hicolor doesn't fly without
manual merging/maintenance work for packagers, which is
what I suggest to avoid with a 'preferred system fallback'
config knob.



Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-10 Thread David Faure
On Tuesday 09 September 2014 16:25:26 Kevin Krammer wrote:
 Wouldn't a fourth option be to make sure that hicolor is actually a proper 
 fallback as specified?
 
 Applications already are more or less required to install their fallbacks
 in  hicolor, so the shared icons should be there as well, no?

+1.

It seems to me that the best solution is to actually use hicolor in the first 
place, for application icons.

Possibly with an oxygen or breeze variant as well, but that's the optional 
part.

I think we're dealing with a not-well-thought-out migration from years ago 
when we switched from hicolor to oxygen and just renamed every icon without 
thinking much about interoperability.

-- 
David Faure, fa...@kde.org, http://www.davidfaure.fr
Working on KDE Frameworks 5

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-10 Thread Albert Astals Cid
El Dimecres, 10 de setembre de 2014, a les 16:38:55, David Faure va escriure:
 On Tuesday 09 September 2014 16:25:26 Kevin Krammer wrote:
  Wouldn't a fourth option be to make sure that hicolor is actually a proper
  fallback as specified?
  
  Applications already are more or less required to install their fallbacks
  in  hicolor, so the shared icons should be there as well, no?
 
 +1.
 
 It seems to me that the best solution is to actually use hicolor in the
 first place, for application icons.

We're not speaking about application icons here but about KStandardAction 
icons.

Cheers,
  Albert

 
 Possibly with an oxygen or breeze variant as well, but that's the optional
 part.
 
 I think we're dealing with a not-well-thought-out migration from years ago
 when we switched from hicolor to oxygen and just renamed every icon without
 thinking much about interoperability.

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-10 Thread Albert Astals Cid
El Dimarts, 9 de setembre de 2014, a les 16:25:26, Kevin Krammer va escriure:
 On Sunday, 2014-09-07, 10:27:06, Albert Astals Cid wrote:
  So as I see it, there's three options:
   * Do nothing, and expect that people have to set one of
  
  XDG_CURRENT_DESKTOP, KDE_FULL_SESSION, GNOME_DESKTOP_SESSION_ID or
  DESKTOP_SESSION environment variables to get icons
  
   * Do the change/hack to QGenericUnixTheme::themeHint return any of the
  
  themes in xdgIconThemePaths that is not hicolor
  
   * Talk to the xdg-people to include a way to get the current icon theme
   and
  
  use that in QGenericUnixTheme::themeHint
 
 Wouldn't a fourth option be to make sure that hicolor is actually a proper
 fallback as specified?
 
 Applications already are more or less required to install their fallbacks in
 hicolor, so the shared icons should be there as well, no?

I don't think it makes sense, i mean who would install stuff to 
hicolor/actions/document-open.png ? oxygen? breeze? tango? someothericonset?

For applications it makes sense tha application to install to hicolor since 
the application owns the name for that icon, but noone actually owns the 
document-open.png action so that's why i think it makes no sense for it to be 
there.

Cheers,
  Albert

 
 Cheers,
 Kevin

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-09 Thread Kevin Krammer
On Sunday, 2014-09-07, 10:27:06, Albert Astals Cid wrote:

 So as I see it, there's three options:
  * Do nothing, and expect that people have to set one of
 XDG_CURRENT_DESKTOP, KDE_FULL_SESSION, GNOME_DESKTOP_SESSION_ID or
 DESKTOP_SESSION environment variables to get icons
  * Do the change/hack to QGenericUnixTheme::themeHint return any of the
 themes in xdgIconThemePaths that is not hicolor
  * Talk to the xdg-people to include a way to get the current icon theme and
 use that in QGenericUnixTheme::themeHint

Wouldn't a fourth option be to make sure that hicolor is actually a proper 
fallback as specified?

Applications already are more or less required to install their fallbacks in 
hicolor, so the shared icons should be there as well, no?

Cheers,
Kevin
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring


signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-07 Thread Albert Astals Cid
El Dijous, 4 de setembre de 2014, a les 14:04:04, Kevin Ottens va escriure:
 On Thursday 04 September 2014 11:36:38 Martin Klapetek wrote:
  On Wed, Sep 3, 2014 at 10:10 PM, Eike Hein h...@kde.org wrote:
   On 09/03/2014 10:07 PM, Nicolás Alvarez wrote:
   So if I'm not in a Plasma session I get no icons?
   
   If you're not in a Plasma session you don't get the Plasma
   platform plugin. Other platform plugins can drive this as
   they prefer.
  
  Isn't that the task of the given platform plugin? Eg. if I run my app in
  Gnome, there should be a Gnome plugin which provides its own icon plugin
  and loads Gnome icons (well in an ideal world, anyway) and thus making the
  app actually look more integrated...in other words, shouldn't this
  problem be moved there?
 
 Spot on. And such a plugin is in fact shipped with Qt, but for some reason
 isn't loaded in Albert's case. That awfully sounds like a bug to me, hence
 why my line of argument is that it should be investigated and fixed.

My setup  investigation:
 * Plasma 4 logged in with tsdgeos
 * konsole logged in to kdeunstable via su - kdeunstable
 * I'm using the QGenericUnixTheme QPT (aka PlatformTheme) 
 * QGenericUnixTheme uses XDG_CURRENT_DESKTOP, KDE_FULL_SESSION, 
GNOME_DESKTOP_SESSION_ID or DESKTOP_SESSION environment variables to decide in 
which desktop environment you are
 * Since none of those environment variables are defined in my kdeunstable 
user it falls back to the UNKNOWN desktop environment
 * Then it goes to QGenericUnixTheme::themeNames and since it's not a known 
desktop it will default to QGenericUnixTheme as QPT instead of to QKdeTheme or 
QGnomeTheme for icon theme handling
 * Then QGenericUnixTheme::themeHint does not implement 
QPlatformTheme::SystemIconThemeName and 
QPlatformTheme::SystemIconFallbackThemeName defaults to hicolor
 * And hicolor is not a proper theme, just a fallback theme, so it is not 
designed to hold icons for the majority of icons.

One could say the bug is in QGenericUnixTheme::themeHint that should actually 
provide a meaningul icon theme instead of hicolor as default.

The problem is that there is not (or I could not find it) a xdg-way to 
set/get the current icon theme so it's hard not to default to something 
different than hicolor, one possibility would be making 
QGenericUnixTheme::themeHint default to say the first icon theme in 
xdgIconThemePaths, but that's obviously not that great either.

So as I see it, there's three options:
 * Do nothing, and expect that people have to set one of XDG_CURRENT_DESKTOP, 
KDE_FULL_SESSION, GNOME_DESKTOP_SESSION_ID or DESKTOP_SESSION environment 
variables to get icons
 * Do the change/hack to QGenericUnixTheme::themeHint return any of the themes 
in xdgIconThemePaths that is not hicolor
 * Talk to the xdg-people to include a way to get the current icon theme and 
use that in QGenericUnixTheme::themeHint


Cheers,
  Albert

P.S: Sorry it took that much to answer, akademy+travel kept me busy.

 
 Regards.

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-06 Thread Albert Astals Cid
El Dijous, 4 de setembre de 2014, a les 01:04:11, Aleix Pol va escriure:
 On Wed, Sep 3, 2014 at 10:01 PM, Albert Astals Cid aa...@kde.org wrote:
  El Dimecres, 3 de setembre de 2014, a les 21:42:24, Mark Gaiser va
  
  escriure:
   On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
Porting guide lies in saying that KIcon should be replaced with
QIcon::fromTheme since KIcon defauted to oxygen icon theme and
  
  obviously
  
QIcon::fromTheme doesn't do that.

Please someone provide a solution for this problem or undeprecate
  
  KIcon.
  
This is blocking the porting of my applications.
   
   I've seen that issue before.
   The thing that fixed it for me was setting the environment variable:
   export KDE_FULL_SESSION=true
   
   I hope it still works :)
  
  That's not a fix, that's a workaround, we can't ask all the users out
  there to
  export that variable.
  
  Cheers,
  
Albert
 
 It's a workaround only for non-Plasma setups, but agreed.
 
 What about documenting that if Oxygen is a hard dependency then a call to
 QIcon::setThemeSearchPaths should be made? 

QIcon::setThemeSearchPaths won't help, the paths are fine, it's the theme that 
is wrong (hicolor or empty string depending on which Qt version).

Cheers,
  Albert


 We could even use KIconThemes
 for figuring out what's the Oxygen path.
 
 Aleix

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-06 Thread Albert Astals Cid
El Dijous, 4 de setembre de 2014, a les 14:21:04, Luigi Toscano va escriure:
 Il 04.09.2014 14:15 Martin Klapetek ha scritto:
  On Thu, Sep 4, 2014 at 2:04 PM, Kevin Ottens wrote:
  Spot on. And such a plugin is in fact shipped with Qt, but for some
  reason
  isn't loaded in Albert's case. That awfully sounds like a bug to me,
  hence why
  my line of argument is that it should be investigated and fixed.
  
  Maybe it's also related to this:
 http://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnem
 onics/
  [2]
  ...in which case, if that's true and actually the case here, I think
  it's
  actually better to have our apps in Gnome without those icons as it
  simply integrates better and doesn't look all out of place (in Gnome
  and/or others, obviously).
 
 Albert uses Unity, I think.

Nope. It's Plasma 4, just not the logged in user.

 What I don't understand here: is this Qt plugin a GNOME-specific one,
 or the generic default one? 

The generic one.

Cheers,
  Albert

 This is not (only) a GNOME issue; replace
 GNOME with generic unknown window manager. I think we need a sane
 default, if the default is there and it is broken, the solution as
 pointed out is to fix it; if not, I think we should investigate how to
 have it.
 
 Ciao

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-04 Thread Martin Klapetek
On Wed, Sep 3, 2014 at 10:10 PM, Eike Hein h...@kde.org wrote:



 On 09/03/2014 10:07 PM, Nicolás Alvarez wrote:

 So if I'm not in a Plasma session I get no icons?


 If you're not in a Plasma session you don't get the Plasma
 platform plugin. Other platform plugins can drive this as
 they prefer.


Isn't that the task of the given platform plugin? Eg. if I run my app in
Gnome, there should be a Gnome plugin which provides its own icon plugin
and loads Gnome icons (well in an ideal world, anyway) and thus making the
app actually look more integrated...in other words, shouldn't this
problem be moved there?

Cheers
-- 
Martin Klapetek | KDE Developer
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-04 Thread Kevin Ottens
On Thursday 04 September 2014 11:36:38 Martin Klapetek wrote:
 On Wed, Sep 3, 2014 at 10:10 PM, Eike Hein h...@kde.org wrote:
  On 09/03/2014 10:07 PM, Nicolás Alvarez wrote:
  So if I'm not in a Plasma session I get no icons?
  
  If you're not in a Plasma session you don't get the Plasma
  platform plugin. Other platform plugins can drive this as
  they prefer.
 
 Isn't that the task of the given platform plugin? Eg. if I run my app in
 Gnome, there should be a Gnome plugin which provides its own icon plugin
 and loads Gnome icons (well in an ideal world, anyway) and thus making the
 app actually look more integrated...in other words, shouldn't this
 problem be moved there?

Spot on. And such a plugin is in fact shipped with Qt, but for some reason 
isn't loaded in Albert's case. That awfully sounds like a bug to me, hence why 
my line of argument is that it should be investigated and fixed.
 
Regards.
-- 
Kévin Ottens, http://ervin.ipsquad.net

KDAB - proud supporter of KDE, http://www.kdab.com



signature.asc
Description: This is a digitally signed message part.
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-04 Thread Martin Klapetek
On Thu, Sep 4, 2014 at 2:04 PM, Kevin Ottens er...@kde.org wrote:


 Spot on. And such a plugin is in fact shipped with Qt, but for some reason
 isn't loaded in Albert's case. That awfully sounds like a bug to me, hence
 why
 my line of argument is that it should be investigated and fixed.


Maybe it's also related to this:
http://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnemonics/

...in which case, if that's true and actually the case here, I think it's
actually better to have our apps in Gnome without those icons as it simply
integrates better and doesn't look all out of place (in Gnome and/or
others, obviously).

Cheers
-- 
Martin Klapetek | KDE Developer
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-04 Thread Luigi Toscano

Il 04.09.2014 14:15 Martin Klapetek ha scritto:


On Thu, Sep 4, 2014 at 2:04 PM, Kevin Ottens wrote:


Spot on. And such a plugin is in fact shipped with Qt, but for some
reason
isn't loaded in Albert's case. That awfully sounds like a bug to me,
hence why
my line of argument is that it should be investigated and fixed.


Maybe it's also related to this:


http://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnemonics/

[2]
...in which case, if that's true and actually the case here, I think 
it's

actually better to have our apps in Gnome without those icons as it
simply integrates better and doesn't look all out of place (in Gnome
and/or others, obviously).


Albert uses Unity, I think.

What I don't understand here: is this Qt plugin a GNOME-specific one, 
or the generic default one? This is not (only) a GNOME issue; replace 
GNOME with generic unknown window manager. I think we need a sane 
default, if the default is there and it is broken, the solution as 
pointed out is to fix it; if not, I think we should investigate how to 
have it.


Ciao
--
Luigi



Scopri istella, il nuovo motore per il web italiano.
Istella garantisce risultati di qualità e la possibilità di 
condividere, in modo semplice e veloce, documenti, immagini, audio e 
video.

Usa istella, vai su http://www.istella.it?wtk=amc138614816829636


___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-04 Thread Eike Hein



On 04.09.2014 14:21, Luigi Toscano wrote:

What I don't understand here: is this Qt plugin a GNOME-specific one, or
the generic default one? This is not (only) a GNOME issue; replace GNOME
with generic unknown window manager. I think we need a sane default,
if the default is there and it is broken, the solution as pointed out is
to fix it; if not, I think we should investigate how to have it.


Please also check out the chat log I posted - I realize
it's not as convenient to read as a proper write-up and
I apologize for not having the time to compose one, but
it went over a lot of this ground in a pretty condensed
manner and should help with syncing us up.

(Not specifically you, Luigi.)



Ciao


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Mark Gaiser
On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
 Porting guide lies in saying that KIcon should be replaced with
 QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
 QIcon::fromTheme doesn't do that.

 Please someone provide a solution for this problem or undeprecate KIcon. This
 is blocking the porting of my applications.

I've seen that issue before.
The thing that fixed it for me was setting the environment variable:
export KDE_FULL_SESSION=true

I hope it still works :)
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Albert Astals Cid
El Dimecres, 3 de setembre de 2014, a les 21:42:24, Mark Gaiser va escriure:
 On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
  Porting guide lies in saying that KIcon should be replaced with
  QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
  QIcon::fromTheme doesn't do that.
  
  Please someone provide a solution for this problem or undeprecate KIcon.
  This is blocking the porting of my applications.
 
 I've seen that issue before.
 The thing that fixed it for me was setting the environment variable:
 export KDE_FULL_SESSION=true
 
 I hope it still works :)

That's not a fix, that's a workaround, we can't ask all the users out there to 
export that variable.

Cheers,
  Albert

 ___
 Kde-frameworks-devel mailing list
 Kde-frameworks-devel@kde.org
 https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Mark Gaiser
On Wed, Sep 3, 2014 at 10:01 PM, Albert Astals Cid aa...@kde.org wrote:
 El Dimecres, 3 de setembre de 2014, a les 21:42:24, Mark Gaiser va escriure:
 On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
  Porting guide lies in saying that KIcon should be replaced with
  QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
  QIcon::fromTheme doesn't do that.
 
  Please someone provide a solution for this problem or undeprecate KIcon.
  This is blocking the porting of my applications.

 I've seen that issue before.
 The thing that fixed it for me was setting the environment variable:
 export KDE_FULL_SESSION=true

 I hope it still works :)

 That's not a fix, that's a workaround, we can't ask all the users out there to
 export that variable.

Wasn't that one supposed to be exported by default in a KDE/Plasma 5 session?
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Nicolás Alvarez
2014-09-03 17:05 GMT-03:00 Mark Gaiser mark...@gmail.com:
 On Wed, Sep 3, 2014 at 10:01 PM, Albert Astals Cid aa...@kde.org wrote:
 El Dimecres, 3 de setembre de 2014, a les 21:42:24, Mark Gaiser va escriure:
 On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
  Porting guide lies in saying that KIcon should be replaced with
  QIcon::fromTheme since KIcon defauted to oxygen icon theme and obviously
  QIcon::fromTheme doesn't do that.
 
  Please someone provide a solution for this problem or undeprecate KIcon.
  This is blocking the porting of my applications.

 I've seen that issue before.
 The thing that fixed it for me was setting the environment variable:
 export KDE_FULL_SESSION=true

 I hope it still works :)

 That's not a fix, that's a workaround, we can't ask all the users out there 
 to
 export that variable.

 Wasn't that one supposed to be exported by default in a KDE/Plasma 5 session?

So if I'm not in a Plasma session I get no icons?

-- 
Nicolás
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Eike Hein



On 09/03/2014 10:07 PM, Nicolás Alvarez wrote:

So if I'm not in a Plasma session I get no icons?


If you're not in a Plasma session you don't get the Plasma
platform plugin. Other platform plugins can drive this as
they prefer.


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Albert Astals Cid
El Dimecres, 3 de setembre de 2014, a les 22:10:52, Eike Hein va escriure:
 On 09/03/2014 10:07 PM, Nicolás Alvarez wrote:
  So if I'm not in a Plasma session I get no icons?
 
 If you're not in a Plasma session you don't get the Plasma
 platform plugin. Other platform plugins can drive this as
 they prefer.

Are you suggesting it is acceptable for my apps to regress (compared to their 
kdelibs4 version) and have no icons because they are not being run under a 
Plasma session?

Cheers,
  Albert

 
 
 Cheers,
 Eike
 ___
 Kde-frameworks-devel mailing list
 Kde-frameworks-devel@kde.org
 https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Eike Hein



On 09/03/2014 10:14 PM, Albert Astals Cid wrote:

Are you suggesting it is acceptable for my apps to regress (compared to their
kdelibs4 version) and have no icons because they are not being run under a
Plasma session?


No, I'm not. The context my reply is about was quoted in
my email.

I honestly didn't even understand your initial mail to
the list. There's a vague claim about QIcon::fromTheme
obviously not doing something, but I guess it's not
obvious enough for me.

So no, I:

a) Did not kill your puppy. Puppies are awesome. Mostly.

b) Think your attack tone has no place on this list.

Some advice: Your inquiry could have been phrased as a
question instead (am I getting this right? if so, any
help?). Or it could have provided a little more analysis
of the problem you're seeing at least. This is what
common ownership on http://manifesto.kde.org/ is about,
BTW.


Here's my understanding of how this works, which may
be wrong: QIcon::fromTheme() ends up calling into the
currently active platform plugin when it needs to
access the fallback theme. Which platform plugin gets
loaded depends on the environment. Our platform plugin
returns a KIconEngine, which I'm guessing has a
reasonable default for Plasma.

I think there are other platform plugins for other
prominent workspace environments.

I don't know how the ultimate fallback works when
there's no suitable plugin. I think the fd.o spec pro-
scribes the hicolor theme then? In that case it would
be up to the distro to make sure this works out.

I'm not sure what alternatives we have here. It's not
reasonable for KF5 to override the platform plugin re-
gardless of environment, and I don't think duplicating
the platform plugin system inside KIcon or writing a
wrapper around QIcon::fromTheme seems sensible.



Cheers,
   Albert


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Harald Sitter
On Wed, Sep 3, 2014 at 10:26 PM, Eike Hein h...@kde.org wrote:
 I think the fd.o spec pro-
 scribes the hicolor theme then?

^ this

  In that case it would
 be up to the distro to make sure this works out.

That wouldn't help the original issue that we previously had a
hardcoded fallback to oxygen, in fact we still do as far as the
platform plugin is concerned [1]. So IIRC the effective lookup order
was user_theme (which in turn may have internal fallbacks defined) 
default_theme (oxygen)  hicolor. So even on windows you'd get oxygen
icons I suppose, without the user or the developer doing anything.

 I'm not sure what alternatives we have here. It's not
 reasonable for KF5 to override the platform plugin re-
 gardless of environment, and I don't think duplicating
 the platform plugin system inside KIcon or writing a
 wrapper around QIcon::fromTheme seems sensible.

To be honest I think this might be considered intentional
compatibility breakage because the original assumption that installing
something to oxygen and it will be available in the app regardless of
what the user configured seems wrong to me. The icon theme spec
outlines one solid fallback and that is hicolor.

*Assuming* as an application developer that KIcon/QIcon will also look
in oxygen in addition to hicolor seems an awful lot like writing
against the implementation rather than the API (the API in this case
being the spec I guess ;)).

So, IMO the correct solution to this is to install the icons one needs
to hicolor so that they are picked up unless provided by a user
configured theme, as outlined by the spec.

NB: I have no idea how this would or should work on windows or osx, so
this approach might be entirely pointless and non-functional there,
which in turn might actually be a reason to bring back something like
KIcon as to provide a grand unified way of getting 'the right' icon
looked up.

[1] https://bugs.kde.org/show_bug.cgi?id=336739

HS
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Albert Astals Cid
El Dimecres, 3 de setembre de 2014, a les 22:26:22, Eike Hein va escriure:
 On 09/03/2014 10:14 PM, Albert Astals Cid wrote:
  Are you suggesting it is acceptable for my apps to regress (compared to
  their kdelibs4 version) and have no icons because they are not being run
  under a Plasma session?
 
 No, I'm not. The context my reply is about was quoted in
 my email.
 
 I honestly didn't even understand your initial mail to
 the list. There's a vague claim about QIcon::fromTheme
 obviously not doing something, but I guess it's not
 obvious enough for me.
 
 So no, I:
 
 a) Did not kill your puppy. Puppies are awesome. Mostly.
 
 b) Think your attack tone has no place on this list.

Which attack tone? I merely did a question.

 Some advice: Your inquiry could have been phrased as a
 question instead (am I getting this right? if so, any
 help?).

Why would i make a question when i know the answer?

 Or it could have provided a little more analysis
 of the problem you're seeing at least. 

What more analysis you want besides QIcon::fromTheme can never default to 
oxygen as KIcon did so it's not a proper replacement?

 Here's my understanding of how this works, which may
 be wrong: QIcon::fromTheme() ends up calling into the
 currently active platform plugin when it needs to
 access the fallback theme. 

Both current and fallback theme, yes.

 Which platform plugin gets
 loaded depends on the environment. Our platform plugin
 returns a KIconEngine, which I'm guessing has a
 reasonable default for Plasma.
 
 I think there are other platform plugins for other
 prominent workspace environments.
 
 I don't know how the ultimate fallback works when
 there's no suitable plugin. I think the fd.o spec pro-
 scribes the hicolor theme then? 

Correct, it defaults to hicolor (well there's a bug right now that defaults 
to empty, but that's a different story)

 In that case it would
 be up to the distro to make sure this works out.

What would a distro do?

 I'm not sure what alternatives we have here. It's not
 reasonable for KF5 to override the platform plugin re-
 gardless of environment, and I don't think duplicating
 the platform plugin system inside KIcon or writing a
 wrapper around QIcon::fromTheme seems sensible.

I don't know, i tried fixing the problem by myself presented a review that was 
approved (common ownersip!) but my code has been accused of bastardization so 
i had to revert it.

Cheers,
  Albert

 
  Cheers,
  
 Albert
 
 Cheers,
 Eike
 ___
 Kde-frameworks-devel mailing list
 Kde-frameworks-devel@kde.org
 https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Eike Hein



On 09/03/2014 11:12 PM, Albert Astals Cid wrote:

Which attack tone? I merely did a question.


Yes, a Did you stop beating your wife?-type loaded
question casting me as an ally to evil app-breaking
perpetrators, while answering a specific technical
question someone had.



What more analysis you want besides QIcon::fromTheme can never default to
oxygen as KIcon did so it's not a proper replacement?


Why this is a problem for you and others, and why you feel
it needs to be solved at the level you suggest. Since you
expect others to do this work for you as per your mail,
that would help in enabling them to do so.



What would a distro do?


A distro or system administrator would make sure that
either a suitable Qt platform plugin exists and works,
or that a suitable 'hicolor' theme is installed, for
the environment they expect users to use.

I don't see how Qt can solve this for all scenarios,
or needs to when the spec already specifies a fall-
back. I don't see why KF5 should override this fall-
back, or why the fallback should be Oxygen. Oxygen is
not a part of KF5, it's just an fd.o-compliant icon
theme. KF5 and Qt target the fd.o spec. Qt provides
mechanisms to adapt the behavior to the environment
etc etc.

Can I think up scenarios where the ball gets dropped?
Yes. I'm not sure those scenarios are relevant because
all the options seem to be there to fix them. So don't
see where the loophole is.



I don't know, i tried fixing the problem by myself presented a review that was
approved (common ownersip!) but my code has been accused of bastardization so
i had to revert it.


I didn't see that review. Maybe linking to it in your
mail would have provided some useful context.



Cheers,
   Albert


Cheers,
Eike
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Albert Astals Cid
El Dimecres, 3 de setembre de 2014, a les 23:12:58, Albert Astals Cid va 
escriure:
 El Dimecres, 3 de setembre de 2014, a les 22:26:22, Eike Hein va escriure:
  I don't know how the ultimate fallback works when
  there's no suitable plugin. I think the fd.o spec pro-
  scribes the hicolor theme then?
 
 Correct, it defaults to hicolor (well there's a bug right now that
 defaults to empty, but that's a different story)

For those interested here's a large strace with the lots of stats trying to 
find all the missing icons
http://paste.ubuntu.com/8226923/

Cheers,
  Albert
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Albert Astals Cid
El Dimecres, 3 de setembre de 2014, a les 23:23:37, Eike Hein va escriure:
 On 09/03/2014 11:12 PM, Albert Astals Cid wrote:
  Which attack tone? I merely did a question.
 
 Yes, a Did you stop beating your wife?-type loaded
 question casting me as an ally to evil app-breaking
 perpetrators, while answering a specific technical
 question someone had.

I already explained on IRC why my question has nothing to do with Did you 
stop beating your wife?, let me explain why.

Did you stop beating your wife? has two answers:
No - means you did and do beat your wife
Yes - means you did beat your wife and do not anymore
So whatever you answer Yes or No it carries the information that you did 
beat your wife. That's why it's called a loaded question.

Are you suggesting it is acceptable for my apps to regress more stuff? has 
two answers:
No - you think it's not ok for apps to regress
Yes - you think it's ok for apps to regress.
In this question both answers provide a separate set of values, so it is not a 
loaded question. 

  What more analysis you want besides QIcon::fromTheme can never default to
  oxygen as KIcon did so it's not a proper replacement?
 
 Why this is a problem for you and others, and why you feel
 it needs to be solved at the level you suggest. Since you
 expect others to do this work for you as per your mail,
 that would help in enabling them to do so.

It is a problem because you have no icons anymore since oxygen is no longer 
the default theme (and hicolor is not really a theme just a default).

  What would a distro do?
 
 A distro or system administrator would make sure that
 either a suitable Qt platform plugin exists and works,
 or that a suitable 'hicolor' theme is installed, for
 the environment they expect users to use.

No distro provides any suitable hicolor theme. As far as i understand from 
reading the spec that's even discouraged.

 I don't see how Qt can solve this for all scenarios,
 or needs to when the spec already specifies a fall-
 back. I don't see why KF5 should override this fall-
 back, or why the fallback should be Oxygen. Oxygen is
 not a part of KF5, it's just an fd.o-compliant icon
 theme. KF5 and Qt target the fd.o spec. Qt provides
 mechanisms to adapt the behavior to the environment
 etc etc.
 
 Can I think up scenarios where the ball gets dropped?
 Yes. I'm not sure those scenarios are relevant because
 all the options seem to be there to fix them. So don't
 see where the loophole is.

I don't care where and how it's fixed, but i have apps that had icons and now 
don't, in my opinion we need to get them back.

  I don't know, i tried fixing the problem by myself presented a review that
  was approved (common ownersip!) but my code has been accused of
  bastardization so i had to revert it.
 
 I didn't see that review. Maybe linking to it in your
 mail would have provided some useful context.

https://git.reviewboard.kde.org/r/119713/
http://lists.kde.org/?l=kde-commitsm=140950097506983w=2
And a discussion this morning in that channel that does not exist.

Cheers,
  Albert

 
  Cheers,
  
 Albert
 
 Cheers,
 Eike
 ___
 Kde-frameworks-devel mailing list
 Kde-frameworks-devel@kde.org
 https://mail.kde.org/mailman/listinfo/kde-frameworks-devel

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: There's no proper replacement for KIcon

2014-09-03 Thread Eike Hein


For the list's benefit, here's a log of a technical discussion
we had in #kde-devel as an extension of this thread that went
over various aspects of the problem and possible solutions (I've
removed some unrelated parts):


[23:33] tosky uhm, I have no idea of how it works in details, but I 
understood it's about missing icon if you use a normal KF5 application 
outside Plasma
[23:35] hein tosky: and solving that by adding an API to KF5 that 
overrides the spec fallback with a random other icon theme that isn't a 
dependency of KF5 seems like a layering violation to me
[23:35] hein tosky: it also means KF5 apps would behave differently 
from Qt apps, which wasn't the goal
[23:36] tosky hein: are you saying that setting those icons as part of 
the hicolor theme should solve the problem?

[23:37] hein tosky: no, that's what the fd.o spec says
[23:37] hein tosky: which is what KF5 targets
[23:38] hein tosky: having a 
fetchIconFromWellKnownThemeThatMayOrMayNotBeInstalled() API doesn't seem 
like a solution to me
[23:40] hein tosky: if an app really really wants some sort of private 
overlay they could also use QIcon::setThemeSearchPaths and 
QIcon::setThemeName

[23:40] tsdgeos better than fetchIconFromThemeThatIsNotATheme
[23:40] tsdgeos at least if you're lucky you'll get an icon :D
[23:43] tsdgeos hein: apachelogger actually said that yes, he is ok 
with the regression, and i actually am not sure i disagree with it

[...]
[23:46] apachelogger FWIW as I noted, I think windows and osx is the 
bigger question mark
[23:46] hein apachelogger: I think I vaguely vaguely vaguely remember 
Pov talking about this re KF5 on Windows
[23:46] apachelogger in particular since the docs say terrible things 
about fromTheme - Note: By default, only X11 will support themed icons. 
In order to use themed icons on Mac and Windows, you will have to bundle 
a compliant theme in one of your themeSearchPaths() and set the 
appropriate themeName().
[23:46] hein apachelogger: I think their copy of Qt hardcodes the KDE 
platform plugin

[23:46] hein or something like that
[23:47] apachelogger sounds scary xD
[23:47] hein but I still think that this stuff needs to happen on the 
Qt level instead of saying KF5 apps should use a different API and 
behave differently from Qt apps again is the right fix

[23:50] apachelogger *nod*
[23:51] jpwhiting hein: that may be, but what should such an api at 
the Qt level look like ?

[23:51] hein it could be as easy as adding a QIcon::setFallbackThemeName
[23:51] jpwhiting which probably wont work on win/osx, right ?
[23:51] hein or a list of fallback theme names
[23:51] jpwhiting since they don't use icon themes, etc.
[23:51] jpwhiting or do they
[23:51] hein this sounds horrible, but is effectively what tsdgeos 
wants if i understand him right

[23:51] jpwhiting but QIcon::fromTheme doesn't recognize/work with those
[23:51] hein tsdgeos' stance comes down to I'm the app dev and i know 
these icons i want are only in oxygen

[23:51] hein which is implicitly a per-app thing
[23:52] jpwhiting yep
[23:52] jpwhiting hein: the porting guide for porting applications to 
android/etc. suggests including all assets like that inside a qrc, I 
wonder if we should adopt that practice on desktop also
[23:53] jpwhiting the drawback to that approach is that the assets 
can't be shared between different applications
[23:53] jpwhiting i.e. the flags kgeography uses/ships can't be used 
in other places that also want to display flags, etc.
[23:53] hein jpwhiting: that's what i meant with the private overlay 
thing earlier and setThemeSearchPaths/setThemeName
[23:54] hein jpwhiting: the problem with using setThemeName is that 
then you override the QPA mechanism
[23:54] frinring also means that one needs to know all icons/resources 
that the used (framework) libs use
[23:54] hein jpwhiting: so semantically it would need to be a 
setFallbackThemeName that just adds one more thing between QPA + hicolor 
or sth

[23:54] tsdgeos note i'm not speaking about any app specific icon
[23:54] tsdgeos have a look at the strace
[23:54] tsdgeos it's document-open
[23:54] hein jpwhiting: which is effectively what KIcon does
[23:54] tsdgeos and those things
[23:54] tsdgeos hicolor is not a theme and is not supposed to be
[23:54] tsdgeos i guess it's just that linux sucks
[23:54] hein tsdgeos: in what DE?
[23:54] tsdgeos and what i want can't be solved
[23:55] hein unity? why does unity not install a QPA plugin if it's 
using Qt anyway?

[23:55] apachelogger hein: an intermediate fallback might be cheating
[23:55] tsdgeos hein: what does it matter which DE it is?
[23:55] tsdgeos hein: unity is not using Qt yet
[23:55] hein tsdgeos: because Qt's platform abstraction mechanism cares
[23:55] hein what DE it is
[23:55] jpwhiting yeah, it shouldn't matter which DE we are using to 
run our application

[23:55] hein jpwhiting: then convince Qt of that
[23:55] hein QPA plugins is the integration mechanism it provides to ISVs
[23:55] 

Re: There's no proper replacement for KIcon

2014-09-03 Thread Aleix Pol
On Wed, Sep 3, 2014 at 10:01 PM, Albert Astals Cid aa...@kde.org wrote:

 El Dimecres, 3 de setembre de 2014, a les 21:42:24, Mark Gaiser va
 escriure:
  On Wed, Sep 3, 2014 at 7:16 PM, Albert Astals Cid aa...@kde.org wrote:
   Porting guide lies in saying that KIcon should be replaced with
   QIcon::fromTheme since KIcon defauted to oxygen icon theme and
 obviously
   QIcon::fromTheme doesn't do that.
  
   Please someone provide a solution for this problem or undeprecate
 KIcon.
   This is blocking the porting of my applications.
 
  I've seen that issue before.
  The thing that fixed it for me was setting the environment variable:
  export KDE_FULL_SESSION=true
 
  I hope it still works :)

 That's not a fix, that's a workaround, we can't ask all the users out
 there to
 export that variable.

 Cheers,
   Albert


It's a workaround only for non-Plasma setups, but agreed.

What about documenting that if Oxygen is a hard dependency then a call to
QIcon::setThemeSearchPaths should be made? We could even use KIconThemes
for figuring out what's the Oxygen path.

Aleix
___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel