Bug 409400 - The list of networks gets updated while the cursor is over it
Summary: The list of networks gets updated while the cursor is over it
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Networks widget (show other bugs)
Version: master
Platform: Other Linux
: NOR wishlist
Target Milestone: 1.0
Assignee: Jan Grulich
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-07-02 08:55 UTC by Raphaël Jakse
Modified: 2024-12-23 18:25 UTC (History)
5 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.26
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Raphaël Jakse 2019-07-02 08:55:45 UTC
SUMMARY

Often, when trying to connect to a network, the list / order of networks is updated just when I am about to click. This is annoying because it makes me try to join the wrong network.

This annoyance probably affects many products outside of KDE. Just yesterday, I noticed this issue on two Android phones twice. But KDE probably can do better here (and Android phones usually don't have mice, which a regular Plasma desktop has).

STEPS TO REPRODUCE
1. Go with your computer to an area with a lot of wireless networks
2. Place your cursor on the list of network

OBSERVED RESULT

The list gets updated at some point.
The network under your cursor is probably not the same as before

EXPECTED RESULT

The list does not move while the cursor is over it. A message warns the user that the list is not updated while the cursor is over it. Networks that becomes unavailable should be grayed out or shown in red, and if clicked, a message should be shown: "This network became unavailable in the meantime", or something. If new networks appeared, maybe some GUI element / a message ("new networks available, please refresh if you want to see them") can suggest the user to refresh the list themself (as long as this element does not move the list, of course).
Comment 1 Jan Grulich 2019-07-22 14:31:09 UTC
I'm not sure we should stop updating the UI while there is cursor over a connection. Showing updates about the connections in a popup instead wouldn't be a good experience in my opinion and forcing users to reload the list manually as well. 

What we should do and there was another bug about it, is that we should stop updating the UI when password dialog is shown in the applet, because it might happen that while you are typing the password, you can get the dialog to disappear, which is pretty annoying.

Maybe just disabling "dynamicFilter" property in the proxy model would be enough in this case. I will try to check.
Comment 2 Raphaël Jakse 2019-07-22 14:53:30 UTC
> Showing updates about the connections in a popup instead wouldn't be a good experience in my opinion and forcing users to reload the list manually as well. 

Right.

> What we should do and there was another bug about it, is that we should stop updating the UI when password dialog is shown in the applet, because it might happen that while you are typing the password, you can get the dialog to disappear, which is pretty annoying.

Definitely. But that would not cover the case where the user has their cursor on a network, is about to click on it and the network has been replaced by another because of a list update.

What about updating the list, but ensuring that the specific network under the cursor does not move e.g. by playing with the scroll position?
This does not fix the issue when the user is moving toward the network and the network moves when the network is close but not under the cursor…
Comment 3 Dmytro Kostiuchenko 2022-10-07 19:32:43 UTC
I wanted to elaborate on this, which hopefully will make the issue more critical.

The list of networks will update even after a user started typing the password.

This is a mild *security risk*, as the password, this way, can be revealed to a malicious party.

Steps to reproduce:

- open the applet, click on a network X, start typing the password
- force the list order update
  - either by introducing a new network with a stronger signal; or
  - by reducing the signal of the network X

Actual result
- the password input form stays on the same index in the list as before the update, although a new network is placed at that index now.
Confirming the password will attempt a connection to the incorrect network

Expected result
- the password input form is bound to the network name rather than index in the list
Comment 4 Nate Graham 2022-10-09 21:07:20 UTC
This should have been effectively fixed with the fix for Bug 389052!
Comment 5 Ben Cooksley 2024-12-23 18:25:48 UTC
Bulk transfer as requested in T17796