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

Taskbar Widget NetworkManager Applet: Stays open #3998

Open
RefinedSoftwareLLC opened this Issue Jun 14, 2018 · 2 comments

Comments

Projects
None yet
3 participants
@RefinedSoftwareLLC

Qubes OS version:

R4.0

Affected component(s):

dom0's Taskbar Widget "NetworkManager Applet"


Steps to reproduce the behavior:

Click open dom0's Taskbar Widget "NetworkManager Applet", now click on any other widget or VM.
"NetworkManager Applet" doesn't automatically close.

Expected behavior:

"NetworkManager Applet" close like the other widgets when another widget or VM is clicked on.

@marmarek

This comment has been minimized.

Show comment
Hide comment
@marmarek

marmarek Jun 14, 2018

Member

This is result of GUI isolation - "NetworkManager Applet", running in sys-net doesn't see clicks outside of its window, so it doesn't close when you click anything which doesn't belong to sys-net.
But regardless of this, it is a valid UX issue.

Member

marmarek commented Jun 14, 2018

This is result of GUI isolation - "NetworkManager Applet", running in sys-net doesn't see clicks outside of its window, so it doesn't close when you click anything which doesn't belong to sys-net.
But regardless of this, it is a valid UX issue.

@RefinedSoftwareLLC

This comment has been minimized.

Show comment
Hide comment
@RefinedSoftwareLLC

RefinedSoftwareLLC Jun 15, 2018

I solved the issue you describe in a GUI manager I designed once.
When the GUI manager (in your case dom0) detects the window losing focus, normally by any mouse clicks or keyboard key presses outside the window, it runs a clear-all-input function for that window. This function can't be called again until the window has regained focus. This function would move the mouse offscreen to a location no window is under, then release any held mouse or keyboard buttons.

Ideally, the NetworkManger Applet menu should close itself if it detects its window has lost focus. Does it have access to such an event? Can dom0 trigger that event?

You many need to use your Salt Devops to tag this window (sys-net's NetworkManger Applet menu). This tag would mean that when the "clear-all-input" function is triggered (tagged window loses focus), after moving the mouse offscreen to a location no window is under, dom0 then sends an emulated mouse click & release (or an "Esc" keypress & keyrelease).

Once again, for security purposes, these emulated inputs can only happen once per the VM window losing focus, so they can't eavesdrop on inputs from other VMs, beyond knowing when they lost focus.

RefinedSoftwareLLC commented Jun 15, 2018

I solved the issue you describe in a GUI manager I designed once.
When the GUI manager (in your case dom0) detects the window losing focus, normally by any mouse clicks or keyboard key presses outside the window, it runs a clear-all-input function for that window. This function can't be called again until the window has regained focus. This function would move the mouse offscreen to a location no window is under, then release any held mouse or keyboard buttons.

Ideally, the NetworkManger Applet menu should close itself if it detects its window has lost focus. Does it have access to such an event? Can dom0 trigger that event?

You many need to use your Salt Devops to tag this window (sys-net's NetworkManger Applet menu). This tag would mean that when the "clear-all-input" function is triggered (tagged window loses focus), after moving the mouse offscreen to a location no window is under, dom0 then sends an emulated mouse click & release (or an "Esc" keypress & keyrelease).

Once again, for security purposes, these emulated inputs can only happen once per the VM window losing focus, so they can't eavesdrop on inputs from other VMs, beyond knowing when they lost focus.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment