Skip to content

Conversation

@naglepuff
Copy link
Collaborator

@naglepuff naglepuff commented Aug 19, 2025

Fix #1504

Changes

  1. Ctrl+Click can now be used to select multiple tracks on the media viewer, event viewer, or track list
  2. If in multi-select mode, users now two new options in the track details sidebar: delete and change type
  3. Clicking the "Delete selected tracks" button will delete all selected tracks
  4. A user can type in the type picker and click "Update type for selected tracks" to change the type of all tracks

Demo

Multi-select tracks: This video demonstrates ctrl+clicking on annotations, the event viewer, and the track list. It also contains examples of clicking outside of tracks to deselect them all, and ctrl+click on a selected track will deselect that track.

ctrl_click_demo.mp4

Changing types and deleting tracks:

multi_edit_delete.mp4

To-do

  • Support ctrl+click on the event view
  • Support ctrl+click on the track list (clicking the track number selects the item)
  • Should a ctrl+click on an already selected track make it so it deselects it from the multiSelected list?
  • Clicking the 'X' next to a track in the multiselect track list will remove all tracks from the list
  • Implement bulk type change for selected tracks
  • record video of new features

@naglepuff naglepuff marked this pull request as ready for review August 29, 2025 15:47
@naglepuff naglepuff requested a review from BryonLewis August 29, 2025 15:47
Comment on lines 540 to 549
</v-label>
<TypePicker
:value="multiTrackType"
:all-types="allGroupTypesRef"
:read-only-mode="readOnlyMode"
selected
update-on-input
data-list-source="allGroupTypesOptions"
@input="updateMultiTrackType"
/>
Copy link
Collaborator

Choose a reason for hiding this comment

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

I think we should add the lock-types prop to this component from clientSettings. This is a functionaltiy that if in the Type List settings you can prevent users from entering in their own custom types. It changes the behavior of the TypePicker slightly so it is dropdown instead of a combo box and limits what types can be used.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

d5d4e3a imports clientSettings and uses it for this component.

Copy link
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

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

It functions exactly as intended.
Just a few minor things where it may interface with other features in DIVE (like lock-types) and some suggestions to replace event emitting with internal calls to useHandler()

naglepuff and others added 2 commits September 2, 2025 14:11
Co-authored-by: Bryon Lewis <61746913+BryonLewis@users.noreply.github.com>
@naglepuff naglepuff requested a review from BryonLewis September 2, 2025 18:17
Copy link
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

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

Minor change related to the TypePicker and locking types.

Co-authored-by: Bryon Lewis <61746913+BryonLewis@users.noreply.github.com>
@naglepuff naglepuff requested a review from BryonLewis September 2, 2025 20:31
Copy link
Collaborator

@BryonLewis BryonLewis left a comment

Choose a reason for hiding this comment

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

👍

@naglepuff naglepuff merged commit be24d8b into main Sep 2, 2025
4 checks passed
@naglepuff naglepuff deleted the track-multi-delete branch September 2, 2025 21:19
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.

Multi Select Tracks for Deletion / Type Modification

2 participants