[Rd] X11 device windows are spawned with empty WM_NAME property

Drew Frank ajfrank at ics.uci.edu
Fri Jun 17 23:05:01 CEST 2011


On Fri, Jun 17, 2011 at 1:57 PM, Drew Frank <ajfrank at ics.uci.edu> wrote:
> On Fri, Jun 17, 2011 at 7:26 AM, peter dalgaard <pdalgd at gmail.com> wrote:
>>
>> On Jun 17, 2011, at 15:32 , Prof Brian Ripley wrote:
>> >>>
>> >>> Is this behavior intended?  Would be it be reasonable to instead create
>> >>> windows with a generic name like "R Graphics" prior to updating them with
>> >>> the device number and active/inactive status?
>> >
>> > Yes, no.
>> >
>>
>> Well, "yes, maybe", I'd say. If the WM insists on looking at the title, it makes some pragmatic sense for the user to set it to a generic name that the WM can recognize.
>>
>> However, on revisiting this, the obvious fix/workaround is just to set
>>
>> X11.options(title="R Graphics: Device %d")
>>
>> and the user can do this in his/her startup files. No need to inflict it on every user with any WM.
>>
>> --
>> Peter Dalgaard
>> Center for Statistics, Copenhagen Business School
>> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
>> Phone: (+45)38153501
>> Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com
>>

Thank you Peter and Brian for your replies.  The X11.options
workaround is effective, and I'd be happy to make use of it.

That said, after reading your replies I agree that the "correct" thing
to do would be for the WM to match on WM_CLASS, which is currently not
set.  I checked out the R-devel trunk and was preparing a patch to set
WM_CLASS when I noticed that Brian already committed code to do this
in r56008.  However, the code is wrapped in an "#ifndef USE_Xt", with
the comment "/* For those too idle to make use of Xt (PR#14588) */".
When I compile, USE_Xt is set so this code isn't executed and WM_CLASS
is never set.  Is it supposed to be set somewhere else?

Thank you,
Drew



More information about the R-devel mailing list