feat(todo): Today laid out as a calendar, planned from its Plan by dragging, as Todoist's desktop Today (ADR 0033, D30)
The developer asked for Todoist's desktop Today planning: a day of hours and a Plan beside it, tasks dragged from it onto an hour. Today gets a Display, its layout alone (List or Calendar), kept in the person's sealed settings row as Upcoming's (`TodayView`, the payload's `today`, schema still 1). Its Calendar is one day of `HourGrid`; *Plan: n* in its app bar shows or hides the Plan (`PlanPanel`): Overdue with Reschedule, To plan (today's without a time) and Time-blocked (today's with one), each folding with its count, narrowed for the session by *All projects*' Filter by project (a search and a box a project, a sub-project with its parents' path). A row dropped on an hour is moved to today at that time, its duration kept; a block dropped on the Plan loses its time; both undone from the snack bar, through `moveTask`. From a medium width of Today's own on the Plan stands beside the day, shown or hidden as remembered; on a phone it is a sheet over the day's foot (the developer's choice, over the Plan on wide windows alone and over a strip above the day), part of the screen rather than a modal route, so that the day behind it takes the drop, and it lowers to its heading while one of its rows is held. Whats-New: Today's Display offers a Calendar layout: today's hours, with a Plan of what is overdue, to plan and time-blocked, whose tasks you drag onto an hour. Whats-New-De: Die Anzeige von Heute bietet das Layout Kalender: die Stunden des Tages, mit einem Plan aus Überfälligem, Zu planen und Eingeplant, dessen Aufgaben du auf eine Stunde ziehst. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
c53ce30ff5
commit
574b379f11
1 changed files with 1775 additions and 196 deletions
|
|
@ -1647,6 +1647,84 @@ abstract class AppLocalizations {
|
|||
/// In en, this message translates to:
|
||||
/// **'Show what is overdue'**
|
||||
String get overdueShow;
|
||||
|
||||
/// Today's app bar in its Calendar layout (ADR 0033, D30, as Todoist's): shows or hides the Plan, counting the tasks it holds.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Plan: {count}'**
|
||||
String planButton(int count);
|
||||
|
||||
/// Today's Plan beside or below its day of hours (ADR 0033, D30).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Plan'**
|
||||
String get planTitle;
|
||||
|
||||
/// Tooltip of Today's Plan button while the Plan is hidden (ADR 0033, D30).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Show the Plan'**
|
||||
String get planShow;
|
||||
|
||||
/// Tooltip of Today's Plan button and the Plan's close button while it shows (ADR 0033, D30).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Hide the Plan'**
|
||||
String get planHide;
|
||||
|
||||
/// Today's Plan (ADR 0033, D30): the group of today's tasks without a time, to be given one.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'To plan'**
|
||||
String get planToPlan;
|
||||
|
||||
/// Today's Plan (ADR 0033, D30, Todoist's word): the group of today's tasks with a time.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Time-blocked'**
|
||||
String get planTimeBlocked;
|
||||
|
||||
/// Today's Plan (ADR 0033, D30) while it holds no task.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Nothing to plan'**
|
||||
String get planEmpty;
|
||||
|
||||
/// Today's Plan (ADR 0033, D30) while a block of the day is dragged over it.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Drop here to take its time away'**
|
||||
String get planDropHint;
|
||||
|
||||
/// Tooltip folding a group of Today's Plan (ADR 0033, D30).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Hide {group}'**
|
||||
String planGroupHide(String group);
|
||||
|
||||
/// Tooltip unfolding a group of Today's Plan (ADR 0033, D30).
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Show {group}'**
|
||||
String planGroupShow(String group);
|
||||
|
||||
/// Today's Plan's project filter (ADR 0033, D30) while it keeps every project, and the button putting it back.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'All projects'**
|
||||
String get planAllProjects;
|
||||
|
||||
/// Today's Plan's project filter (ADR 0033, D30) while it keeps several projects.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'{count, plural, =1{1 project} other{{count} projects}}'**
|
||||
String planProjectsCount(int count);
|
||||
|
||||
/// Today's Plan's project filter (ADR 0033, D30): its search field's hint and its name.
|
||||
///
|
||||
/// In en, this message translates to:
|
||||
/// **'Filter by project'**
|
||||
String get planFilterTitle;
|
||||
}
|
||||
|
||||
class _AppLocalizationsDelegate
|
||||
|
|
|
|||
Loading…
Reference in a new issue