Skip to content

Scheduler - Refactor Appointments Collection - Update tooltip on appointment deletion#34228

Open
bit-byte0 wants to merge 4 commits into
DevExpress:26_1from
bit-byte0:refactor/scheduler-appointments-tooltip-update
Open

Scheduler - Refactor Appointments Collection - Update tooltip on appointment deletion#34228
bit-byte0 wants to merge 4 commits into
DevExpress:26_1from
bit-byte0:refactor/scheduler-appointments-tooltip-update

Conversation

@bit-byte0

@bit-byte0 bit-byte0 commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@bit-byte0 bit-byte0 self-assigned this Jul 8, 2026
@bit-byte0 bit-byte0 added the 26_1 label Jul 8, 2026
Copilot AI review requested due to automatic review settings July 8, 2026 07:37
@bit-byte0 bit-byte0 requested a review from a team as a code owner July 8, 2026 07:37

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the new Scheduler appointments collection (behind the _newAppointments flag) to keep the appointment tooltip in sync when appointments are deleted from within the tooltip: the tooltip list updates in-place while items remain, and it closes when its target appointment/collector is removed or when the last item is deleted.

Changes:

  • Extends the view-model diff to emit a dedicated needToUpdateItems operation for collectors whose item count changes at the same position.
  • Updates the new appointments collection rendering pipeline to rerender collectors in-place on needToUpdateItems, retargeting the tooltip to the new DOM element and refreshing tooltip items; hides the tooltip when the target element is removed or on full rerender.
  • Adds/extends unit and integration tests covering collector rerendering and tooltip behavior on deletion.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/devextreme/js/__internal/scheduler/scheduler.ts Wires the new appointments collection to existing tooltip strategy behavior via narrow callbacks (shown/retarget/hide).
packages/devextreme/js/__internal/scheduler/appointments_new/utils/get_view_model_diff.ts Adds needToUpdateItems diff operation and collector matching logic needed for in-place collector updates.
packages/devextreme/js/__internal/scheduler/appointments_new/utils/get_view_model_diff.test.ts Adds unit tests validating the new collector diff behavior (needToUpdateItems, move vs resize vs no-op).
packages/devextreme/js/__internal/scheduler/appointments_new/appointments.ts Implements in-place collector rerendering and tooltip retarget/update/hide logic during diff rendering and full rerender.
packages/devextreme/js/__internal/scheduler/appointments_new/appointments.test.ts Adds component-level tests for collector rerendering and tooltip update/hide behavior during rerenders/removals.
packages/devextreme/js/__internal/scheduler/tests/appointments_new.test.ts Adds integration tests verifying tooltip behavior when deleting appointments from the tooltip UI.

@EugeniyKiyashko EugeniyKiyashko force-pushed the refactor/scheduler-appointments-tooltip-update branch from 5267fb8 to 7f80753 Compare July 8, 2026 10:24
Copilot AI review requested due to automatic review settings July 8, 2026 10:24

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.

@bit-byte0 bit-byte0 force-pushed the refactor/scheduler-appointments-tooltip-update branch from 7f80753 to 95cd5bb Compare July 9, 2026 19:11
@bit-byte0 bit-byte0 force-pushed the refactor/scheduler-appointments-tooltip-update branch from 95cd5bb to a424b98 Compare July 9, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants