On Sun, 27 Jan 2013, "Rodolfo García Peñas (kix)" wrote:
The AlwaysUserIcon is saved only if the user edit the icon. I need save
it to the attributes file because if I save only the textbox then is
like the AlwaysUserIcon is set to true.

Then it's a problem in your patch because it has reverted the default. Previously if the attribute was not present in the config then it was off. Unless you add the option with "No" value to existing configs you will change default behaviour.

There is not more difficult to understand the attributes file, is only
one line more. OTOH, we can hold the last icon set in the textbox
without use it, for example if the user want to use the icon sometimes,
only open the winspector and then set or unset the flag.

The patch is backward compatible, because if the textbox is set, then is
because AlwaysUserIcon is true.

No this is wrong. I have this in my WMWindowAttributes:

  urxvt.URxvt = {
    Icon = penguin.xpm;
  };
  Firefox = {
    AlwaysUserIcon = Yes;
    Icon = "mozilla-firefox.png";
  };

And only Firefox has the Ignore client supplied icon switch ticked. If this has changed after your patch and now URxvt also has the option set then there's a problem with the patch.

two cases: AlwaysUserIcon option is present (with value Yes) or it's
missing instead of also having AlwaysUserIcon=No; as a third case. You
might consider this too for the final version of your patch.

But in this case, the checkbox should be removed? If the textbox is set,
then AlwaysUserIcon is true, and if is empty, AlwaysUserIcon  is false.

No. Maybe you are confused by the fact that the switch box in the GUI and the option in the config have names and meanings inverted but it's not that complicated. Basically there are these options:

1. Nothing is set: the client supplied icon is used
2. The Icon filename is set: the user provided icon overrides the client provided static icon (but if there's an icon window it's still preferred over the static icon because the application might use it to display information). 3. The Ignore client supplied icon option is also set: The user supplied icon is always preferred over all client supplied icons.

Additionally the Ignore client supplied icon option is only meaningful if there's a user set icon so it should be deactivated otherwise to prevent the user to select a non-sensical option. This is better than giving a warning in this case.

Does that make it clear or am I missing something?

Regards,
BALATON Zoltan

Reply via email to