On 2019-05-10 13:35:28 +0200 Richard Frith-Macdonald 
<[email protected]> wrote:

> 
> 
>> On 10 May 2019, at 12:24, Bertrand Dekoninck <[email protected]> 
>> wrote:
> 
>> On 2019-05-10 13:06:02 +0200 Fred Kiefer <[email protected]> wrote:
> 
>>> Hi Bertrand,
> 
>>> I think you are misreading the compiler warning. This just complains that 
>>> the class that this method is on already has an instance variable with the 
>>> name „defaults“. You should just use a different name for your local 
>>> variable instead. Maybe something like „user_defaults“?
> 
>>> Hope this helps,
>>> Fred
>> Thanks,
> 
>> I can get rid of the warning in this way, but I think my problem is 
>> different. In the code hereafter, is standardUserDefaults the database of 
>> the theme, or the database of the app using the theme ? If it's the theme 
>> 's one, how could I write to it with the command line. Should I use the 
>> bundle identifier ?
> 
> NSUserDefaults has multiple databases (called 'domains') in a list which 
> defines their order of precedence, so when you ask for a default, and 
> multiple domains in the list contain the default name, you get the correct 
> value returned (the one from the first domain that contains a value for the 
> key).
> 
> The normal order of the important domains here is
> 
> Command line arguments,  Application, NSGlobalDomain, GSThemeDomain, 
> Registration (hard coded and set on application startup)
> 
> GSThemeDomain is set up by your theme (information in a property list in the 
> theme bundle) and changes whenever a new theme is made active in an app, so 
> to get the behavior you want, you need zero coding, you just have to put the 
> key/value pair into your GSThemeDomain and it will be used unless the user 
> overrides it by setting a value in a higher precedence domain (eg on the 
> cmmand line).
> 

Thanks, I got it ! I've added a "RikMenuBarTransparency" key in RikInfo.plist, 
and now I can override it when I write in NSGlobalDomain as you explained.  I 
also cleaned up a little this plist. I've still got an issue with it : the 
"GSBackendHandleWindowDecorations = NO" that it contains doesn't seem to work 
(I've looked in the other domains if it is overridden and it isn't). I still 
have to investigate, but I did understand a few more things today.

Bertrand


_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to