Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In their current form the tags can be a bit volatile, so consider them alpha-level and don't get too attached. 😊
Note: For this reason, you need to enable them explicitly first in the
tags
section of the configuration.However, they have some cool features in their current form. The intention here is to form a foundation on top of which many other features can be built. See H_Q_'s comment thread from a while ago for details and ideas.
Selection. You can select photos now via Ctrl + Click or Ctrl + (Shift) + Drag. Selections are handled as "system tags" (tags with
sys:
prefix) and persist across refreshes, restarts, and across browsers (as long as you keep the link and don't delete the database). You cannot do anything else with the selection right now, so functionally they're more of a tech demo (i.e. useless). This will make it easier to implement Delete / Remove photos #4 however.Tag picker. You can click the # button to show a photo's tags (excluding "system tags"). You can add and remove tags as you please using the multiselect with auto-complete. The ♥ button toggles a
![image](https://user-images.githubusercontent.com/1451391/235796320-1f8d6392-c54b-4bcf-b790-89b4dbe7dd52.png)
fav
tag as a simple "liking" functionality.Range tree tagging. This is an interesting implementation detail that makes it so that in some cases tags can be stored in a compressed "id range tree" manner, so that you can theoretically select/tag thousands of photos all at once. This should make it a lot more efficient to also add e.g. location tags to large subsets of photos for example as part of Add location information to timeline #59
PhotofieldSelection.mp4
I'm not 100% happy with the way tag IDs/revisions/etc. work right now, so that's something to look at in the future, but it's alright as a first draft.
Clearly the biggest missing part is search and/or filtering, which will actually make them a bit more useful than what is there. But let's see :)
Also bonus: fixes #21 in a hacky way (show the hand cursor for all canvas interaction regardless of photo or background)