a icon indicating copy to clipboard operation
a copied to clipboard

shiny needs new maintainer

Open gdiazlo opened this issue 8 years ago • 1 comments

As per https://github.com/golang/go/issues/11818

gdiazlo avatar Oct 20 '17 17:10 gdiazlo

Shiny is a very solid multi-platform project, but its event-driven architecture doesn't take advantage of features that make Go a great language for designing graphical systems. The event loop one thing that I've found particularly difficult to work with (mouse, keyboard, et.al) all arrive on the same asynchronous queue: that's annoying to work with after using channels in languages like Newsqueak and Go. Perhaps the goal was to approximate the development model that people are used to with other systems, but any efforts to maintain that model here would probably result breaking changes most would find uncomfortable.

That being said, I cloned the repository to see how difficult it would be to maintain this project: it would be moderately difficult.

  • The OSX/cocoa driver contains a primordial version issue golang/go#19902 (im guessing nobody really does partial uploads to catch this)
  • Similarly, the backing buffer swaps causes flickering on my screen (once removed, things run fine)
  • The coordinate scaling and DPI adjustment is non trivial
  • The runes reported through key events are different across OSX and Windows
  • Linux generally performs the best

Features

  • Based on this search query, it seems like there are just as many feature requests as actual issues https://github.com/golang/go/issues?utf8=%E2%9C%93&q=is%3Aissue%20%20x%2Fexp%2Fshiny%20

as avatar Nov 24 '17 11:11 as