Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

There is no UI #1

Open
seeruk opened this issue Aug 11, 2017 · 0 comments
Open

There is no UI #1

seeruk opened this issue Aug 11, 2017 · 0 comments
Assignees

Comments

@seeruk
Copy link
Owner

seeruk commented Aug 11, 2017

Right now there is no visual representation of which workspace you're on, and which workspace you're moving to. It would be a good idea to offer something that could provide this functionality.

From some initial investigations, there are a few GUI libraries out there for Go that could be explored, but they may not be as stable as writing something in a language more suited to this (e.g. Python with GTK at least).

The UI could reside in a separate application, something that is running all of the time that accepts messages to show the UI. It can be pretty basic (think TotalSpaces style, with less animation...) just to show you which workspace you've moved to (maybe investigate the animations though, that would be nice).

Current UI library candidates for Go are:

All of the above seem to be a little bit risky, but there are other languages that may support GTK a little better. For instance, the official implementations are written in:

  • C++
  • JavaScript (via Seed)
  • Python
  • Vala

The two choices there that stand out are JavaScript, and Python. Python seems to be very widely used for this, but it is also the choice that I have the least experience with, and am more likely to mess up. JavaScript on the other hand seems to be more dynamic too. Both languages will support having a long-running process though which is good.

Realistically, I would prefer to stick with something official, and well maintained. Python seems like the "best" choice for that, but JavaScript may be easier for me to actually work with. The downsides of course to both are that you need either Python or Node installed.

Vala does actually compile down, like Go / C, but again, is another new language to learn. It can be used to produce a server though, that will respond to network requests... It may be worth experimenting with it to see if it's easy enough to learn. Ideally though, given Go is going to have to communicate with this thing, it'd be better if I could use something like ProtoBuf for messaging.

@seeruk seeruk self-assigned this Aug 11, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant