From paul at stat.auckland.ac.nz  Mon Nov 14 20:43:30 2016
From: paul at stat.auckland.ac.nz (Paul Murrell)
Date: Tue, 15 Nov 2016 08:43:30 +1300
Subject: [Rd] getGraphicsEvent() alternative for cairo graphics device?
In-Reply-To: <20161114015325.GB21456@ofb.net>
References: <CAN_GHySs42vK5U1xZYP8h7ZPdFyOcHnEZK4Sn91e7htv=7E54A@mail.gmail.com>
	<20160725191747.GB18530@ofb.net> <57968357.2030509@stat.auckland.ac.nz>
	<20161112200028.GD24681@ofb.net>
	<2e6f0306-da86-211a-05dd-aff3d744df40@stat.auckland.ac.nz>
	<20161114004137.GA21456@ofb.net>
	<25bfd94c-28f6-595e-ffb1-2ae2421b5135@stat.auckland.ac.nz>
	<20161114015325.GB21456@ofb.net>
Message-ID: <039e4e77-d905-b407-ddfa-1578720b694b@stat.auckland.ac.nz>


Thanks Frederick.

Mark, if you have any examples to share, they would also be gratefully 
received.

Paul

On 14/11/16 14:53, frederik at ofb.net wrote:
> Hi Paul,
>
> OK I tried not to make the examples too fancy.
>
> Please let me know what you think. They should probably be amended to
> support the Windows platform, but I think that task would be much
> easier for someone with access to Windows...
>
> By the way I'm Cc'ing Mark O'Connell who shared with me some great
> getGraphicsEvent examples - well, I found them useful, perhaps if
> these are going to the R distro somewhere, then his examples should be
> included as well.
>
> Thank you,
>
> Frederick
>
> On Mon, Nov 14, 2016 at 01:51:08PM +1300, Paul Murrell wrote:
>>
>> Great.  Thanks!
>>
>> Paul
>>
>> On 14/11/16 13:41, frederik at ofb.net wrote:
>>> Hi Paul,
>>>
>>> Thank you, for some reason I didn't seem to get an email notification
>>> for your bugzilla comment!
>>>
>>> I will try to send you something shortly.
>>>
>>> Frederick
>>>
>>> On Mon, Nov 14, 2016 at 08:55:20AM +1300, Paul Murrell wrote:
>>>> Hi
>>>>
>>>> The current status is that I am keen for people to contribute some testing
>>>> code (see https://bugs.r-project.org/bugzilla/show_bug.cgi?id=16951)
>>>>
>>>> There were also some getGraphicsEvent() changes/fixes suggested by Richard
>>>> Bodewits (cc'ed), for which I am also seeking test code.
>>>>
>>>> Paul
>>>>
>>>> On 13/11/16 09:00, frederik at ofb.net wrote:
>>>>> Hi Paul,
>>>>>
>>>>> Just checking in to see what the status is.
>>>>>
>>>>> From my perspective it seems logical to split off X11 into a separate
>>>>> package, so development can proceed at a reasonable rate, but I
>>>>> haven't yet tried to see if that's even possible.
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Frederick
>>>>>
>>>>> On Tue, Jul 26, 2016 at 09:23:35AM +1200, Paul Murrell wrote:
>>>>>> Hi
>>>>>>
>>>>>> Taking a look at those patches is now on my todo list, so I may be in touch
>>>>>> with both of you at some point to request some testing.
>>>>>>
>>>>>> Paul
>>>>>>
>>>>>> On 26/07/16 07:17, frederik at ofb.net wrote:
>>>>>>> Dear Daniel Greenidge,
>>>>>>>
>>>>>>> To enable getGraphicsEvent on Cairo, you have two patches to choose
>>>>>>> from:
>>>>>>>
>>>>>>> https://bugs.r-project.org/bugzilla/show_bug.cgi?id=14364
>>>>>>> https://bugs.r-project.org/bugzilla/show_bug.cgi?id=16951
>>>>>>>
>>>>>>> The second one is by me, and the first one is from five years ago by
>>>>>>> Hugo Mildenberger.
>>>>>>>
>>>>>>> Both patches are very simple, they move some lines enabling
>>>>>>> getGrahpicsEvent outside of a if(!cairo) statement. My patch also adds
>>>>>>> the ability to execute code (e.g. for animation) while the interface
>>>>>>> is idle.
>>>>>>>
>>>>>>> Top guy Duncan Murdoch has expressed that he doesn't have time to work
>>>>>>> on applying these patches, and I haven't had any responses from the
>>>>>>> rest of the R Core Team. I was thinking that perhaps your best bet is
>>>>>>> to try to create a package called e.g. "X11-fixes" which people can
>>>>>>> use to get a better X11 library (there is also a bug waiting to be
>>>>>>> fixed from 2001:
>>>>>>> https://bugs.r-project.org/bugzilla/show_bug.cgi?id=16702).
>>>>>>>
>>>>>>> I don't know if CRAN would accept such a package, or if you'd have to
>>>>>>> distribute it via GitHub, but R has excellent tools to facilitate the
>>>>>>> distribution of code via packages. Whether the R kernel exports enough
>>>>>>> functions to allow a package to take over event handling, I'm not
>>>>>>> sure. I was intending to look more into the details of this
>>>>>>> possibility but haven't had time.
>>>>>>>
>>>>>>> Best wishes,
>>>>>>>
>>>>>>> Frederick
>>>>>>>
>>>>>>> On Mon, Jul 25, 2016 at 02:15:59PM -0400, Daniel Greenidge wrote:
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> I'm writing an interactive plotting function for viewing fMRI
>>>>>>>> datasets. Currently, I get keypresses using
>>>>>>>> grDevices::getGraphicsEvent().
>>>>>>>>
>>>>>>>> Unfortunately getGraphicsEvent() only supports the X11(type="Xlib")
>>>>>>>> graphics device on Unix systems. The Xlib device doesn't support
>>>>>>>> buffering (i.e. dev.hold() and dev.flush()), so redrawing the plots
>>>>>>>> causes lots of flickering.
>>>>>>>>
>>>>>>>> Is there a way to get keypresses while using the cairo graphics
>>>>>>>> device? Alternatively, is there a way to prevent flickering with the
>>>>>>>> Xlib graphics device?
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Daniel Greenidge
>>>>>>>>
>>>>>>>> ______________________________________________
>>>>>>>> R-devel at r-project.org mailing list
>>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>>>>>>
>>>>>>>
>>>>>>> ______________________________________________
>>>>>>> R-devel at r-project.org mailing list
>>>>>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> Dr Paul Murrell
>>>>>> Department of Statistics
>>>>>> The University of Auckland
>>>>>> Private Bag 92019
>>>>>> Auckland
>>>>>> New Zealand
>>>>>> 64 9 3737599 x85392
>>>>>> paul at stat.auckland.ac.nz
>>>>>> http://www.stat.auckland.ac.nz/~paul/
>>>>>>
>>>>
>>>> --
>>>> Dr Paul Murrell
>>>> Department of Statistics
>>>> The University of Auckland
>>>> Private Bag 92019
>>>> Auckland
>>>> New Zealand
>>>> 64 9 3737599 x85392
>>>> paul at stat.auckland.ac.nz
>>>> http://www.stat.auckland.ac.nz/~paul/
>>>>
>>
>> --
>> Dr Paul Murrell
>> Department of Statistics
>> The University of Auckland
>> Private Bag 92019
>> Auckland
>> New Zealand
>> 64 9 3737599 x85392
>> paul at stat.auckland.ac.nz
>> http://www.stat.auckland.ac.nz/~paul/
>>

-- 
Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
Auckland
New Zealand
64 9 3737599 x85392
paul at stat.auckland.ac.nz
http://www.stat.auckland.ac.nz/~paul/



[Rd] getGraphicsEvent() alternative for cairo graphics device?
Paul Murrell