https://bugs.kde.org/show_bug.cgi?id=500223
--- Comment #9 from cwo <cwo....@posteo.net> --- (In reply to John from comment #8) > Oh, I see, I haven't thought about the problem of pressing Enter while the > selection is on another item. > As is indeed confusing about what the user wants in that case. > But maybe we could infer what it want based on the status of the first > password input field opened. Yes, such a thing would be possible. But I think it's probably better to avoid complicated logic here; it might mean the user sometimes has to press an additional arrow key if they moved away from the entry for a network, but things work in a transparent way rather than the user having to guess what we're guessing what they think. It's likely an edge case anyway. We can also revisit this later when the other things are done and it turns out to be a real problem. > I understand and I feel sad to hear that providing the ease of use features > (mouse hover) visual cues (higlighting items or buttons on them) and > accessibility features (both mouse and keyboard navigation) are like a > burden, hard to implement and maintain. I think once everything is conceptually sorted out it shouldn't be hard to maintain. The problem is lots of things using the components differently and ending up with subtle (and sometimes not so subtle) differences in behavior. Sometimes this may even be a good idea. > It's strange that I cannot replicate with the keyboard the same behavior > that I can do with the mouse. FWIW, our default key for "do the same thing as clicking" is Space, which we largely inherit from Qt - Enter/Return we usually have to add explicit handlers for, and if we do it doesn't always do the same thing as clicking/space. For example, in a Dialog, Enter often means "use the Accept-equivalent dialog button, like OK, Save, Open etc.". If there's also something that can be clicked in the dialog, you activate it by pressing Space. And that works in the Network list to show the connection information. (Except in menus where space doesn't work, only Enter... no idea why this is the case, but it seems to be rather consistent in our apps across both Kirigami and QWidgets). I did think a bit about the issue you're raising as well. Sometimes having minor differences between the mouse and keyboard interaction patterns are justiied, and I think this is one of them. First, it's convenient (as you point out) in the default case. It's also something that I think makes the interacton clearer for screen reader users who can't see the extra button. Using enter to confirm (in this case to begin connecting) is rather natural, and we can even have the screen reader read out "Press Return to Connect" or similar. "The connect button is to the right" feels like an awkward announcement. > Let's say I did a mistake, I don't want to connect to this password. > My expectation is that even with the wrong behavior of showing the password > input field instead of the network properties, if I press Enter again the > password input field should close, so Enter should be like a toggle to open > close the password input field or if the network properties were shown, then > those. Maybe, but you can also just not close it and move away again and that always works. If the user notices they're on the wrong network and they've already started typing, we can't have enter close the field as it would conflict with confirming the password and attempting to connect. We could do it if the entry field is empty, but I'd wait and see if this is actually an issue in practice. > I understand that whoever made "Press Enter" to show password input field > (same as highlighting the Connect button and then press Enter) was probably > thinking to make it as easy as possible and it is pretty easy, but it breaks > the consistency with the mouse click on network's name (that shows the > properties) and maybe it's why this got so complicated and hard to fix. No, all the technical and consistency problems are still there without it I think. -- You are receiving this mail because: You are watching all bug changes.