-
Notifications
You must be signed in to change notification settings - Fork 398
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
allow editing calendar on existing events #1421
allow editing calendar on existing events #1421
Conversation
Thank you for the pull request. I think many have been waiting for this ;). @ALL It would help us if many test these changes. The more test it in advance the faster we can create a new version. |
Hi |
After a quick test: Everything looks fine. :) |
4d3e7c5
to
257635f
Compare
Is this transactional? I.e. using two-phase commit (i.e. first creating a copy in the destination calendar, and if successful, then removing the original). |
no, currently, the existing event is deleted and then the new event is inserted. should the deletion fail, the event is lost. i agree that this is suboptimal, and first inserting and only deleting on success would already provide a safety net. i don't know how easy (or not) this would be to implement. sadly, we can't just slap @transactional on here :-( on another note: changing the calendar on a recurring event seems to be broken right now. this will require some more work... |
Thank you for implementing this! Looking forward to seeing it pushed to the final version. |
Tested on Android 11, Nokia TA-1157: it works too! |
257635f
to
a7ecbaf
Compare
Happy to test but would need a link. |
@mgw2013 All you have to do is look under Actions where you will find the workflows and the appropriate apk. But here is the link https://github.com/Etar-Group/Etar-Calendar/actions/runs/6519434058 |
f1f64e3
to
b1931c0
Compare
Is this really the only way to do this? |
Ready for testing or is something still missing? |
recurring events should currently work okay-ish (i think there were some problems with recurrence exceptions when moving them to local/synced calendars) and the whole thing is now transactional, so all or nothing, which is nice. i currently don't know how to proceed with the todo here, as this method is not available before api level 30 and there seems to be no easy workaround for that. maybe the moving of recurring events should just be disabled for now (or for users of api level <30) to get this merged? |
I think moving recurring events for users of api level 30 would be a good solution. If there are problems for users >api 30 with recurring events, we can still deactivate it for everyone. Would that be feasible? @jspricke What do you think? |
Enabling it for API 30 only would be fine with me. |
cbd2a5b
to
211eca1
Compare
Tested on Android 14, Samsung Galaxy. works great! |
Ready to review? |
211eca1
to
ef9b1fd
Compare
ef9b1fd
to
797ab20
Compare
sorry for the late reply. yes, this is ready for review and testing. if possible, I would appreciate if you could test moving events between calendars (of different providers if possible, and local/synced calendars) and check whether all event properties stay as expected. thank you! |
What I also noticed is that if you change the privacy setting and the calendar at the same time, for example, this setting is not applied. |
Apart from the two things mentioned above, I haven't noticed anything else so far. Can you have a look? It would be cool if we could complete the PR before it's one year old ;) |
Would love but can't locate the .apk for testing purposes. Might be me or this mobile client... |
ec608be
to
1b4100b
Compare
1b4100b
to
be82fe7
Compare
@Gitsaibot these issues should now be fixed (amongst a few others). if you find the time, please retest and let me know whether it is working for you. i hope that recurrences are mostly working now. they were a lot harder to get right than i expected.
@mgw2013 see https://github.com/Etar-Group/Etar-Calendar/actions/runs/9357933167. |
Thank you very much, I will test it as soon as possible. |
Just tried to move a single instance of a recurring event to another calendar - doesn't work. The drop down menu is greyed out. However, moving the entire series to another calendar works, which is much appreciated! -mgw |
Uhhh....it looks like the changes are not replicated via WebDav to the host...waited for several minutes and issued several sync requests on all devices. -mgw |
app/src/main/java/com/android/calendar/event/EditEventFragment.java
Outdated
Show resolved
Hide resolved
yeah, I disabled moving single instances out of recurrences, as this would be a lot more work. its currently either all or nothing.
can you please tell me how your setup looks like? which sync provider do you use on android and which caldav server software are you running? |
Anyhow - I did a new test - it just takes a longer time to replicate the changes to the host and vice versa. So things r working as designed but slow. |
Tested with google and nextcloud calendar so far I could not find any obvious errors.
The change of the calendar is executed directly in Etar how fast the changes are synchronized with online calendars etc. is not in the hands of Etar. |
@jspricke Any objections? Otherwise I would merge it later and create a new version. |
🎉🎉🎉🎉🎉 |
Good job! Txs for ur effort - much appreciated |
Awesome, thank you @jonas-haeusler! |
these changes have been lying around for some time, finally found the time to finalize them and create this merge request.
in essence, this will just delete the old event and recreate it with a new id in the new calendar.
please test thoroughly and let me know if something is unclear.
fixes a bunch of open (duplicated) issues, here a few i found while quickly scanning the backlog:
fixes #62
fixes #101
fixes #812
fixes #1266
fixes #1400
fixes #1410
and also fixes #1351 and fixes #1134: the color picker is now hidden if the calendar does not provide any colors.