Skip to content

Tag autocomplete in save popup #310

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

Open
dstillman opened this issue Apr 20, 2020 · 3 comments · May be fixed by #529
Open

Tag autocomplete in save popup #310

dstillman opened this issue Apr 20, 2020 · 3 comments · May be fixed by #529

Comments

@dstillman
Copy link
Member

dstillman commented Apr 20, 2020

https://forums.zotero.org/discussion/82644/display-existing-tags-when-saving-from-the-web
https://forums.zotero.org/discussion/97362/tag-suggestion-and-selection-from-extension

@zotero zotero deleted a comment from ashwinvis Mar 12, 2022
@dstillman
Copy link
Member Author

@dstillman
Copy link
Member Author

@manbackintown
Copy link

This feature is also requested here zotero/zotero#1706

abaevbog added a commit to abaevbog/zotero-connectors that referenced this issue Feb 11, 2025
- if the desktop zotero app passes a list of tags,
render them as datalist options for the tags input
- the user adds a newly typed tag (matching one from
autocomplete or not) via Enter. Those tags will be
displayed above the input as bubbles with an X button
to remove them
- if tags input contains text matching exactly one
tag, it will be added automatically as well. Due to
browser handling the actual autocompletion, we
cannot add a listener to add the tag when autocomplete
popup entry is selected. But when there are no other
canditates, this can save the user an extra Enter click
- if the target collection is switched to one from
another library, selected tags are cleared, since the
new library may have completely different tags
- one can navigate between tags' "remove" buttons with
left/right arrows
- when the update is sent to the zotero desktop app,
join selected tags with a "," to preserve current format
ignoring else left in the input
- if the desktop app does not send a list of tag,
and there are no selected tags, fallback to sending
text in the input as tags. This is just for backwards
compatibility if one has an older version of the desktop
app.

Fixes: zotero#310
abaevbog added a commit to abaevbog/zotero-connectors that referenced this issue Feb 11, 2025
- if the desktop zotero app passes a list of tags,
render them as datalist options for the tags input
- the user adds a newly typed tag (matching one from
autocomplete or not) via Enter. Those tags will be
displayed above the input as bubbles with an X button
to remove them
- if tags input contains text matching exactly one
tag, it will be added automatically as well. Due to
browser handling the actual autocompletion, we
cannot add a listener to add the tag when autocomplete
popup entry is selected. But when there are no other
canditates, this can save the user an extra Enter click
- if the target collection is switched to one from
another library, selected tags are cleared, since the
new library may have completely different tags
- one can navigate between tags' "remove" buttons with
left/right arrows
- when the update is sent to the zotero desktop app,
join selected tags with a "," to preserve current format
ignoring else left in the input
- if the desktop app does not send a list of tag,
and there are no selected tags, fallback to sending
text in the input as tags. This is just for backwards
compatibility if one has an older version of the desktop
app.

Fixes: zotero#310
@abaevbog abaevbog linked a pull request Feb 11, 2025 that will close this issue
abaevbog added a commit to abaevbog/zotero-connectors that referenced this issue Feb 13, 2025
- add a new <TagsInput> component that handles the
tags input as well as renders selected tags above it
- if the Zotero desktop app passes a list of tags,
they will be used to popupulate an autocomplete popup
appearing below the tags input that will refresh as
the user types
- arrow up/down from the input will navigate the
selected option from the popup. Enter will add the selected tag
- Enter keypress on an input that does not match any
autocomplete suggestions will add the input value as
a tag
- selected tags can be removed by clicking on the X
button or navigated with right/left arrow and removed
on space keypress
- if the desktop app does not pass any tags (e.g. older
version of Zotero), on blur, tags input will be split
by comma and added as tags for backwards compatibility
- if the target collection is switched to one from
another library, selected tags are cleared, since the
new library may have completely different tags
- when autocomplete popup appears, some extra padding
is added at the bottom of <TagsInput> component
which forces the iframe to resize ensuring there is
enought space for the popup.

Fixes: zotero#310
abaevbog added a commit to abaevbog/zotero-connectors that referenced this issue Apr 7, 2025
- add a new <TagsInput> component that handles the
tags input as well as renders selected tags above it
- if the Zotero desktop app passes a list of tags,
they will be used to popupulate an autocomplete popup
appearing below the tags input that will refresh as
the user types
- arrow up/down from the input will navigate the
selected option from the popup. Enter will add the selected tag
- Enter keypress on an input that does not match any
autocomplete suggestions will add the input value as
a tag
- selected tags can be removed by clicking on the X
button or navigated with right/left arrow and removed
on space keypress
- if the desktop app does not pass any tags (e.g. older
version of Zotero), on blur, tags input will be split
by comma and added as tags for backwards compatibility
- if the target collection is switched to one from
another library, selected tags are cleared, since the
new library may have completely different tags
- when autocomplete popup appears, some extra padding
is added at the bottom of <TagsInput> component
which forces the iframe to resize ensuring there is
enought space for the popup.

Fixes: zotero#310
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants