Open CodingTurtle2 opened 4 days ago
Hi @CodingTurtle2. Thank you for your suggestion. Editing photos or videos isn't a feature I'm currently looking at, but it isn't something against. However, having said that photo editing is something I'm hesitant about. There are bunch of points to consider for such a feature.
Responsibility: Right now all of Fotema's data (its database, thumbnails, and transcoded videos) are "temporary", meaning they can all be deleted and, given some time and CPU power, Fotema can regenerate everything for the user. This gives me, as the developer, a small comfort as I know that I'm not in the position to delete or corrupt anything the user has created. However, as soon as Fotema stores data that the user has authored, then the burden of responsibility in Fotema becomes much greater, and greater care has to be taken to ensure irreplaceable data isn't destroyed.
Mobile: I don't have a Linux phone, but I'm keen for all of Fotema's features to be 100% inclusive of small form-factor touch devices. Any photo editing will have to be finger friendly.
Permissions: Fotema has read-only access to the user's pictures directory, which I don't want to change to write access (actually, I'd like to get rid of the read-only permission entirely... but that is another problem). Maybe Fotema would do non-destructive edits or maybe after editing the user has to export photos to a new file (with Flatpak giving temporary write access to the new file via a portal)? However, I'm not sure that having to export the edited photo to save the changes would be a good user experience.
File-ownership: Regarding non-destructive edits, Fotema doesn't take ownership of a user's pictures or videos, leaving the user free to move or rename photos as they see fit. Fotema can't tell that a moved/renamed file is a move/rename. Instead, it looks like one file is deleted and a new file has been added which causes Fotema to clean-up its database and any temporary files (like thumbnails) for the deleted file, and generate new database entries and thumbnails for the "new" file (even though it is really just an existing file moving). If edits are non-destructive and saved to Fotema's private work space (under ~/.var/app/app.fotema.Fotema/data), then how are deletions/moves handled? They couldn't be part of the normal clean-up process because I wouldn't want a user to move a photo in their file system, and then start up Fotema and watch in despair as their photo edits get automatically deleted. I could imagine having a "Edited" album in the navigation bar where a user can see all the photos they have edited, regardless of whether the original photo had been moved or not, but then you have a problem of an edited photo being disassociated from the original and choosing how to Fotema should deal with that.
Trapping data: if edits are non-destructive and saved to Fotema's private work space, then I would not want those photos to remain "trapped" in Fotema. Instead, I'd want it to be easy for users to get that data out so they can easily have fully control of their data. Maybe that would be a "Export all edited files" option.
It would be great if I could edit my pictures, like paint on the picture or resize it, like it is implemented in the ios photo app.
Since editing photos are unfortunately only present in very few apps on linux, this would be a great addition.
If help is wanted and this suggestion itself would be accepted, I would work on a possible implementation and then provide this as a pull request