Language switching order
Currently, switching the language selects the next language in a fixed order in one direction, not matter if the language key is tapped or if the space bar is swiped to the left or to the right.
This could be improved especially for users with many languages enabled:
✅ a) Language order
Let the user reorder their language in an order that makes sense to them. This order should be used in the popup when long pressing the language key and when languages are cycled through by tapping the language key or swiping the spacebar.
✅ b) Spacebar swipe direction
For the swipe over the spacebar we should differentiate between a swipe to the left and a swipe to the right to select the next or previous language. Currently, both select the next language.
c) Ordering by recently used
A common usecase is probably to type a sentence in one language, throw in a word or phrase in a second language, and then continue the sentence in the first language.
For this, I wouldn't want to cycle through up to five languages to get back to the first language. Instead, tapping the language key once should give me the most recently used language, tapping it again the second most recently used,... Similar to how Alt+Tab works for bringing windows to the front.
The iOS globe key does something similiar with keyboard selection.
But it gets tricky:
Compared to Alt+Tab, there's no release of the Alt key to commit the new most-recent-order for the next Alt+Tab action. We'd probably commit and reorder, when the user starts typing in the currently active language instead?
The globe key also does not just cycle by most recent. At some point it seems to fall back to the predefined order of the keyboards to cycle through. Can't figure out, what exactly the algorithm is.
But it makes sense, if I can't find my desired language the first time around cycling through the most recently used ones, I can more easily get to the desired language the second time around, when I encounter the languages in a more predictable order, that I have set myself.
Also, the globe key only goes in one direction. We'd have to figure out, how swiping left and right ties into this logic.
Discussion
Sign in to comment or vote.
When the order can be defined by yourself, it might make sense to liste the languages in the language key popup in reverse, so the top and presumably most important language appears at the bottom, closer to your finger.
@muleluku two of these are in build 427, and in 2.1.3 on the App Store.
The custom order mostly existed already, it was just easy to miss. With Multilingual off, the Languages screen has an "Order in the switcher" row under your list where you can drag them around, and tapping the language key and swiping the spacebar already followed it. The popup you get by holding the key didn't: it always put the active language on top, so the list reshuffled after every switch. Now it keeps your order and only highlights the active one.
Swiping the spacebar now depends on direction. Right goes to the next language, left to the previous one. With Multilingual on, left runs the same cycle backwards: both, then the second language alone, then the primary alone, then both again.
I'm leaving recently used and the reversed popup out for now. Recently used would change what a single tap does for everyone, and I want to get the rule right first. My current idea: if you typed something in the current language, the next tap jumps back to the one before it, and if you're only tapping through without typing, it keeps going in your order.
Point a and b from the original post can be considered done then.
Just one note on the swipe direction.
Swiping left, i.e. starting right moving to the left, would probably be more intuitive (for ltr users) to go forward to the next language. Right now it goes backwards to the previous language. Logic being, like on the iPhone home screen, swiping left swipes in the element to the right, i.e. the next element.
@muleluku flipped it in build 428, and it'll be in 2.1.3 on the App Store. Swiping left on the spacebar now goes to the next language and swiping right goes back, same as paging through home screens. With Multilingual on, swiping left walks the cycle forward (both, primary alone, second alone, then both again) and swiping right walks it backwards. The footer under "Order in the switcher" says the same now.
Point a and b from the original post done.
Setting status back to new, for whenever you want to consider point c again.
@muleluku point c is in build 431 and will be in 2.1.3 on the App Store, as a switch under your languages called "Tap goes back to the previous language". It's off by default and only shows up with 3+ languages and Multilingual off. Once you've typed something, tapping the language key or the globe jumps back to the language you had before; tap again without typing and it continues in your order, while swiping the spacebar always follows your order.
I think that's good, probably better not to overcomplicate things.
I just think it might be worth considering to have the toggle for multi lang as well, since with primary, secondary and both, you have three "languages" as well.
But either way, I'll just close this now.