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

NV14 - Fullscreen lua widgets and input #1014

Closed
pfeerick opened this issue Nov 8, 2021 · 2 comments
Closed

NV14 - Fullscreen lua widgets and input #1014

pfeerick opened this issue Nov 8, 2021 · 2 comments
Labels
enhancement ✨ New feature or request touch 👆 Related to touch interface UX-UI Related to user experience (UX) or user interface (UI) behaviour widget
Milestone

Comments

@pfeerick
Copy link
Member

pfeerick commented Nov 8, 2021

Fullscreen (lua) widgets don't get the emulated trim hat input benefits that #985 brings, so need some consideration as to how they will be interacted with on the NV14 (and also future potential targets like the PL18, since that has normally position trims, so isn't as... practical to emulate inputs via trims). It is possible to have it so that the widgets toggle the trims/key state as part of this function, but therein lies the problem of what if you want to use trims when a widget is fullscreen. Ideally, the real solution moving forward is getting all the lua widgets to adopt touch support since it is available to them. So this is mostly a discussion and reminder issue.

void Widget::setFullscreen(bool fullscreen)
{
if (fullscreen == this->fullscreen) return;
// Leave Fullscreen Mode
if (!fullscreen) {
// Reset all zones in container
update();
setWindowFlags(getWindowFlags() & ~OPAQUE);
// and give up focus
ViewMain::instance()->setFocus();
this->fullscreen = false;
}
// Enter Fullscreen Mode
else {
// Set window opaque (inhibits redraw from windows bellow)
setWindowFlags(getWindowFlags() | OPAQUE);
setRect(parent->getRect());
setLeft(parent->getScrollPositionX());
this->fullscreen = true;
bringToTop();
}
}

@pfeerick pfeerick added the enhancement ✨ New feature or request label Nov 8, 2021
@pfeerick pfeerick added this to the 2.7 milestone Nov 8, 2021
@eshifri
Copy link
Contributor

eshifri commented Nov 8, 2021

Can we use pushEvent() for HW key, when touch is detected?

@JimB40 JimB40 added the UX-UI Related to user experience (UX) or user interface (UI) behaviour label Nov 21, 2021
@pfeerick pfeerick added touch 👆 Related to touch interface widget labels Nov 28, 2021
@pfeerick pfeerick modified the milestones: 2.7, 2.8 Mar 9, 2022
@pfeerick pfeerick modified the milestones: 2.8, 2.9 Aug 3, 2022
@pfeerick pfeerick modified the milestones: 2.9, 2.10 Apr 14, 2023
@pfeerick
Copy link
Member Author

pfeerick commented Dec 7, 2023

Lua scripts to support touch events to some extent now, and with the trims as keys emulation #3894, it should also be possible to navigate scripts using trims, so this issue should no longer be relevant.

@pfeerick pfeerick closed this as completed Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement ✨ New feature or request touch 👆 Related to touch interface UX-UI Related to user experience (UX) or user interface (UI) behaviour widget
Projects
None yet
Development

No branches or pull requests

3 participants