Skip to content

Conversation

@sowjanyakch
Copy link
Contributor

@sowjanyakch sowjanyakch commented Jan 12, 2026

Resolve #5634

  • Schedule messages with a long click on the send button.
  • Able to edit, reschedule, delete, send now scheduled messages from long press menu of the scheduled message.
  • Complete composable scheduled messages view and use native emoji picker.
Screenshot 2026-01-19 at 18 10 36 Screenshot 2026-01-19 at 18 11 03 Screenshot 2026-01-21 at 19 18 59 Screenshot 2026-01-19 at 18 38 48 Screenshot 2026-01-19 at 19 35 59

🚧 TODO

  • ...

🏁 Checklist

  • ⛑️ Tests (unit and/or integration) are included or not needed
  • 🔖 Capability is checked or not needed
  • 🔙 Backport requests are created or not needed: /backport to stable-xx.x
  • 📅 Milestone is set
  • 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)

@sowjanyakch sowjanyakch marked this pull request as draft January 12, 2026 08:25
@sowjanyakch sowjanyakch force-pushed the feat/5634/scheduledMessages branch 5 times, most recently from 8a6b5c5 to 59b45c3 Compare January 20, 2026 11:17
@sowjanyakch sowjanyakch marked this pull request as ready for review January 20, 2026 11:18
@sowjanyakch sowjanyakch force-pushed the feat/5634/scheduledMessages branch 2 times, most recently from ff39280 to 568c89b Compare January 20, 2026 11:43
@sowjanyakch sowjanyakch changed the title Feat/5634/scheduled messages Feat: Schedule messages Jan 20, 2026
@sowjanyakch sowjanyakch self-assigned this Jan 20, 2026
@sowjanyakch sowjanyakch added the 3. to review Waiting for reviews label Jan 20, 2026
Copy link
Collaborator

@mahibi mahibi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

open a chat
see that there is an endless loop:

2026-01-21 10:33:45.652 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  <-- 200 https://xxxxxxxx.com/ocs/v2.php/apps/spreed/api/v1/chat/5845852403/schedule (175ms)
2026-01-21 10:33:45.653 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  server: nginx
2026-01-21 10:33:45.654 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  date: Wed, 21 Jan 2026 09:33:44 GMT
2026-01-21 10:33:45.654 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  content-type: application/json; charset=utf-8
2026-01-21 10:33:45.654 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-request-id: FJhH4va9pyZQNmF5fBhT
2026-01-21 10:33:45.654 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  cache-control: no-cache, no-store, must-revalidate
2026-01-21 10:33:45.654 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  content-security-policy: default-src 'none';base-uri 'none';manifest-src 'self';frame-ancestors 'none'
2026-01-21 10:33:45.655 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  feature-policy: autoplay 'none';camera 'none';fullscreen 'none';geolocation 'none';microphone 'none';payment 'none'
2026-01-21 10:33:45.655 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-robots-tag: noindex, nofollow
2026-01-21 10:33:45.655 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-user-id: marcel2
2026-01-21 10:33:45.655 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  strict-transport-security: max-age=15768000; includeSubDomains; preload
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  referrer-policy: no-referrer
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-content-type-options: nosniff
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-frame-options: SAMEORIGIN
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-permitted-cross-domain-policies: none
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-robots-tag: noindex, nofollow
2026-01-21 10:33:45.656 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  x-xss-protection: 1; mode=block
2026-01-21 10:33:45.658 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  {"ocs":{"meta":{"status":"ok","statuscode":200,"message":"OK"},"data":[]}}
2026-01-21 10:33:45.659 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  <-- END HTTP (74-byte body)
2026-01-21 10:33:45.699 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  --> GET https://xxxxxxxx.com/ocs/v2.php/apps/spreed/api/v1/chat/5845852403/schedule
2026-01-21 10:33:45.699 32164-4051  okhttp.OkHttpClient     com.nextcloud.talk2                  I  Authorization: ██
Image

This screen definitely needs a description in the header. At least "Scheduled messages" as first header and "In [conversationame]" as seconds header.

Image

please align the icon with web (use the clock icon, not calendar):

Image

the component for the ripple effect should be extended, it's quite small?
Also it would be better to keep it marked. This would make it more clear that the usr has to click on "Schedule message" afterwards. At first i was confused that clicking a time did not close the dialog and apply the selection.

Image Image

The scheduled messages should be ordered by date and time. And also show the date, not only the time.

Image Image

@sowjanyakch sowjanyakch added 1. to develop Accepted and waiting to be taken care of (should be only set by nextcloud employees) and removed 3. to review Waiting for reviews labels Jan 21, 2026
@sowjanyakch sowjanyakch marked this pull request as draft January 21, 2026 18:33
@sowjanyakch sowjanyakch force-pushed the feat/5634/scheduledMessages branch 2 times, most recently from 4147442 to a55877d Compare January 21, 2026 18:46
@github-actions
Copy link
Contributor

APK file: https://www.kaminsky.me/nc-dev/android-artifacts/5690.apk

qrcode

To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.

@sowjanyakch sowjanyakch force-pushed the feat/5634/scheduledMessages branch 2 times, most recently from f8cc00a to 175f242 Compare January 22, 2026 12:19
@sowjanyakch sowjanyakch marked this pull request as ready for review January 22, 2026 12:19
@sowjanyakch sowjanyakch requested a review from mahibi January 22, 2026 12:20
chatgpt-codex-connector[bot]

This comment was marked as off-topic.

@sowjanyakch sowjanyakch marked this pull request as draft January 22, 2026 12:33
Signed-off-by: sowjanyakch <[email protected]>
Signed-off-by: sowjanyakch <[email protected]>
Signed-off-by: sowjanyakch <[email protected]>
Signed-off-by: sowjanyakch <[email protected]>
Signed-off-by: sowjanyakch <[email protected]>
Signed-off-by: sowjanyakch <[email protected]>
@sowjanyakch sowjanyakch force-pushed the feat/5634/scheduledMessages branch from 175f242 to fdcbeb7 Compare January 22, 2026 12:54
@sowjanyakch sowjanyakch marked this pull request as ready for review January 22, 2026 13:06
@sowjanyakch sowjanyakch added 3. to review Waiting for reviews and removed 1. to develop Accepted and waiting to be taken care of (should be only set by nextcloud employees) labels Jan 22, 2026
@github-actions
Copy link
Contributor

Codacy

Lint

TypemasterPR
Warnings99103
Errors00

SpotBugs

CategoryBaseNew
Bad practice66
Correctness1010
Dodgy code5454
Internationalization33
Malicious code vulnerability33
Performance44
Security11
Total8181

Lint increased!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review Waiting for reviews

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement UI for scheduled messages

3 participants