treeform / fidget

Figma based UI library for nim, with HTML and OpenGL backends.
MIT License
763 stars 32 forks source link

[Question] Complex input? #161

Open mildred opened 3 years ago

mildred commented 3 years ago

Fidget seems to take a novel approach to UI design, which is nice as it allows to get away with complex existing codebases. However, I worry about support for complex features around user interaction. Do you know how you plan to implement those things?

Is it planned to implement it all in fidget and implement correct behaviour for all platforms, or should a platform dependant lib be used for the specific features?

I ask this because I plan to create a touch-based app soon, and I worry about usability.

treeform commented 2 years ago

These are all tough questions and they all require work:

I would like to get to these features in Fidget 2 (which will be a very different API).

Touch based app, do you mean for mobile? Mobile support in Fidget is very experimental.

mildred commented 2 years ago

Thank you for your answer, so the work will have to be done in fidget itself for all of this. I was thinking that perhaps a toolkit could be used for this, and only this, so it's not required to re-implement it.

For touch apps, I was thinking of mobile (KDE Plasma Mobile for instance) with a standard linux stack. There is the PinePhone test device currently that can run this. It can help with touch enabled laptops too.

treeform commented 2 years ago

If you want to develop for PinePhone and touch enabled you would have to work on Fidget itself to get it that support in. My current priority is not mobile linux.

bob-u commented 2 years ago

Couldn't one use GTK for input (GtkGesture, etc) and open fidget GUI in GtkGLArea widget window, for example?

treeform commented 2 years ago

Its likely you can do that. I am not a linux expert. GTK is very high level though. Its probably better to bind to X11 or Wayland like GLFW does.