Paul Murrell
2016-Jul-25 21:23 UTC
[Rd] getGraphicsEvent() alternative for cairo graphics device?
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/
frederik at ofb.net
2016-Nov-12 20:00 UTC
[Rd] getGraphicsEvent() alternative for cairo graphics device?
Hi Paul, Just checking in to see what the status is.>From my perspective it seems logical to split off X11 into a separatepackage, 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/ >
Paul Murrell
2016-Nov-13 19:55 UTC
[Rd] getGraphicsEvent() alternative for cairo graphics device?
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/
Reasonably Related Threads
- getGraphicsEvent() alternative for cairo graphics device?
- getGraphicsEvent() alternative for cairo graphics device?
- getGraphicsEvent() alternative for cairo graphics device?
- getGraphicsEvent() alternative for cairo graphics device?
- getGraphicsEvent() alternative for cairo graphics device?