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
[Super Editor] - Allow for non-bound stable tag references #1988
Comments
@BazinC - can you offer your thoughts on the open questions in this ticket? |
@matthew-carroll on app like Slack, it looks like the user search is ran against characters between the trigger @ and cursor position. exsearch.mp4 |
FYI, it looks like the behavior works differently on desktop. There seems to be a composing mode (or maybe that's the permanent mode). Then there's what I'll call the abandoned mode. On desktop, when composing a tag, if you leave it behind by moving the caret, and then you move the caret back, the search results don't re-appear. However, if you start typing near the tag again, the search results do re-appear. Screen.Recording.2024-05-13.at.11.58.37.PM.movIf you take whatever action is necessary to abandon the tag, then we get a box around it with a question mark. This time, if you put the caret back in the box, the search results do re-appear. However, you'll notice that typing more characters immediately moves outside the box. Once in the abandoned state, it looks like all you can do is position the caret in the box and then select an option from the popover. Screen.Recording.2024-05-14.at.12.02.05.AM.mov@BazinC given the variability within even this one example product, would you like to provide a full spec for the behavior that you'd like, so that we don't spend time building behaviors that you don't really need? |
@matthew-carroll oh yes I remember noticing different behavior on desktop but didn't mention it since I'm focused on mobile first. Good catch, you nailed it. On Slack desktop app, as soon as an inserted characters lead to an empty search result, all the previous character up to the trigger are tagged with an "unresolved state": dotted line rectangle with question mark and a tooltip "Several matches for Let me talk with my team for more precise specs and I'll come back to you asap. |
@matthew-carroll
|
Can you please define what it means to "go back". In the example provided from Slack we can see that there's some amount of consideration of multiple words. Therefore, it's unclear to me exactly where and when we should be trying to run a search for a tag. What's the region that's "in play" at any given moment? |
Good question. I tried to answer your question in this video here with multiple examples: |
Up to this point, either a stable tag is committed, or not. In other words, when using stable tags to search for a user, the tag is either bound to a user, or not. There's no middleground.
As discussed in #1962 - some apps would like to have a kind of tag which represents a non-committed or a non-bound reference. For example, a user might tag
"@John Smuth"
, which references a non-existent user. The display of that tag may then customized by an app to demonstrate that its unbounded. The user can then place the caret back into the tag and edit it, perhaps changing it to"@John Smith"
, which then commits.Questions:
If non-bound tag is permitted, along with spaces, then how do we know when to stop adding characters to the tag? For example, when typing the following, how do we know when to stop adding characters to the tag:
If the user can edit an un-bound tag value, when do we commit it? When the user moves the caret outside? When the user presses ENTER? When the user presses ESCAPE? All of the above?
The text was updated successfully, but these errors were encountered: