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

[Question] Complex input? #161

Open
mildred opened this issue Jun 29, 2021 · 5 comments
Open

[Question] Complex input? #161

mildred opened this issue Jun 29, 2021 · 5 comments

Comments

@mildred
Copy link

mildred commented Jun 29, 2021

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?

  • complex input methods, foreign languages
  • touch devices and touch events
    • open up the virtual keyboard when necessary
    • touch selection and clipboard management
  • common clipboard management (primary/selection, shortcuts, context menu to copy/paste)
  • accessibility
  • edit: form navigation (tab to select next element, Alt+letter to focus specific field)
  • scroll and touch gestures

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
Copy link
Owner

These are all tough questions and they all require work:

  • complex input methods, foreign languages - I have an experiment were I can pop the IME box open on windows to type in Chinese. It would have to be done for every OS custom.
  • I don't support touch methods right now I don't feel they will be that hard. I don't have a windows touch device to check though.
  • That already works, see the textpad example.
  • There is nothing about accessibility right now, OS APIs would have to be used for every os.
  • Tab navigation is not implemented right now.
  • Gestures not implement right now.

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
Copy link
Author

mildred commented Jul 1, 2021

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
Copy link
Owner

treeform commented Jul 1, 2021

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
Copy link

bob-u commented Jul 1, 2021

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

@treeform
Copy link
Owner

treeform commented Jul 1, 2021

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants