Skip to content

Feature: configurable default schedule time setting for messages#30718

Open
dazewell wants to merge 1 commit into
telegramdesktop:devfrom
dazewell:dev
Open

Feature: configurable default schedule time setting for messages#30718
dazewell wants to merge 1 commit into
telegramdesktop:devfrom
dazewell:dev

Conversation

@dazewell
Copy link
Copy Markdown

Add configurable default schedule time setting

Motivation

Currently when user wants to schedule message, default time offset is always 10 minutes. This is not convenient when you need send multiple scheduled messages - for example, if you preparing story from vacation photos or making series of announcements for your channel.

Every time you need click through date picker and adjust time manually. If you want schedule 10 messages with 1 hour between each, you will do 10 times same clicks. This is very annoying and makes scheduled messages feature less useful for such scenarios.

What this PR does

This PR adds new setting in Settings → Chat Settings → Messages section that allows configure default time offset for scheduled messages.

Now user can:

  • Choose preferred default time from dropdown (5 min, 10 min, 15 min, 30 min, 1h, 2h, 4h, 8h, 1 day, 2 days, 3 days, 7 days)
  • Setting saves globally and applied for all chats
  • When opening schedule dialog, time picker will automatically show current time + configured offset
  • No need anymore adjust time manually each time

Use cases

This feature will be useful for:

  • Content creators who need schedule multiple posts in channel with regular intervals (for example, every 2 hours)
  • Users sending story-mode messages - when you want tell long story in several messages with time between them
  • Announcements - when you need prepare several announcement messages scheduled for different times
  • Vacation photos - when you want share photos gradually over several days instead sending all at once

With this feature, if you set default to 2 hours, you can quickly schedule 10 messages - just open schedule dialog, click "Send", open next chat, schedule again, etc. Time will increment automatically by 2 hours each time. Much more faster workflow!

Testing

Tested scenarios:

  • Change default time and schedule message - works correct
  • Restart application - setting persists
  • Schedule multiple messages with different default times
  • Settings UI updates immediately when changing value

- Add defaultScheduleTime setting to Core::Settings (default: 600s/10min)
- Add getter/setter methods with serialization support
- Modify DefaultScheduleTime() to use user's configured setting
- Add UI dropdown in Settings > Chat Settings > Messages section
  with calendar icon (menuIconSchedule)
- Time options: 5min, 10min (default), 15min, 30min, 1h, 2h, 4h, 8h,
  1day, 2days, 3days, 7days
- Label shows '(default)' suffix for 10 minutes option in dropdown
- Reactive UI updates immediately when value changes
- Add lng_settings_default_schedule_time language key
- Fix existing syntax error in BuildSupportSection (missing brace)
@CLAassistant
Copy link
Copy Markdown

CLAassistant commented May 22, 2026

CLA assistant check
All committers have signed the CLA.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants