Skip to content

Split tool on clip header - #11467

Merged
grliszas14 merged 2 commits into
audacity:masterfrom
grliszas14:split_tool_on_header
Jul 17, 2026
Merged

grliszas14 merged 2 commits into
audacity:masterfrom
grliszas14:split_tool_on_header

Conversation

@grliszas14

@grliszas14 grliszas14 commented Jul 17, 2026 •

Copy link
Copy Markdown
Contributor

Resolves: #10740

  • I signed CLA
  • The title of the pull request describes an issue it addresses
  • If changes are extensive, then there is a sequence of easily reviewable commits
  • Each commit's message describes its purpose and effects
  • There are no behavior changes unnecessary for the stated purpose of the PR

Recommended:

  • Each commit compiles and runs on my machine without known undesirable changes of behavior

QA:

  • Testflow test cases have been run
  • Test possibility of using split tool on clip header
  • Split tool nor Cmd+I shortcut shouldn't work on label track at all (previously it crashed entire app)
  • Check this scenario: have a clip on a track, have a range label covering same range below, put a playcursor in the middle of a clip, cmd+click on label track header (so both tracks are selected), split tracks using Cmd+I -> only audio track should be splitted
  • You should be able to drag labels and make range selections on labels track when split tool is enabled

@grliszas14
grliszas14 requested a review from kryksyh July 17, 2026 11:40
@coderabbitai

coderabbitai Bot commented Jul 17, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: cb0ff29e-0509-424a-8458-8f856a6ec8ce

📥 Commits

Reviewing files that changed from the base of the PR and between 7ec4dea519226321f222e2646c091813d2db0461 and ac1241f.

📒 Files selected for processing (5)
  • src/projectscene/qml/Audacity/ProjectScene/tracksitemsview/ClipItem.qml
  • src/projectscene/qml/Audacity/ProjectScene/tracksitemsview/TracksItemsView.qml
  • src/projectscene/view/tracksitemsview/splittoolcontroller.cpp
  • src/projectscene/view/tracksitemsview/splittoolcontroller.h
  • src/trackedit/internal/trackeditactionscontroller.cpp

📝 Walkthrough

Walkthrough

The split tool now recognizes whether a hovered or targeted track is an existing non-Label track. Split execution, cursor and guideline state, and QML pointer handling use this eligibility check. Header presses can pass through to the split tool, while selection release handling remains active. Split-at actions also validate the current project and remove invalid or Label track IDs.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant TracksItemsView
  participant SplitToolController
  participant TrackeditActionsController

  User->>TracksItemsView: Hover track and press
  TracksItemsView->>SplitToolController: Check trackSplittable(trackId)
  SplitToolController-->>TracksItemsView: Return eligibility and update pointer state
  TracksItemsView->>SplitToolController: Forward eligible split interaction
  SplitToolController->>TrackeditActionsController: Split eligible track
  TrackeditActionsController->>TrackeditActionsController: Filter invalid and Label tracks
Loading
🚥 Pre-merge checks | ✅ 3 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning The PR also changes label-track and Cmd+I behavior, which are not required by #10740 and go beyond the linked issue. Move the label-track, Cmd+I, and track-filtering behavior into a separate PR or expand the linked issue scope to cover it.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and clearly points to the split-tool behavior change on clip headers.
Description check ✅ Passed The description includes the linked issue, checklist items, and QA notes, matching the template closely enough.
Linked Issues check ✅ Passed The changes address #10740 by letting split-tool interactions pass through clip headers so clicking a clip header no longer disables the tool.

Warning

Review ran into problems

🔥 Problems

Linked repositories: Public OSS repositories can only analyze public repositories installed in this organization. No linked repositories were analyzed; skipped musescore/musescore.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: 9b130f5e-437f-432a-846f-7af2c094672c

📥 Commits

Reviewing files that changed from the base of the PR and between 8d757b2 and d0760a67d5d82b5d5cd2484bc97bfc9a7767f156.

📒 Files selected for processing (5)
  • src/projectscene/qml/Audacity/ProjectScene/tracksitemsview/ClipItem.qml
  • src/projectscene/qml/Audacity/ProjectScene/tracksitemsview/TracksItemsView.qml
  • src/projectscene/view/tracksitemsview/splittoolcontroller.cpp
  • src/projectscene/view/tracksitemsview/splittoolcontroller.h
  • src/trackedit/internal/trackeditactionscontroller.cpp

Comment thread src/projectscene/qml/Audacity/ProjectScene/tracksitemsview/TracksItemsView.qml Outdated
@grliszas14
grliszas14 force-pushed the split_tool_on_header branch from d0760a6 to 7ec4dea Compare July 17, 2026 11:45
@grliszas14
grliszas14 force-pushed the split_tool_on_header branch from 7ec4dea to ac1241f Compare July 17, 2026 14:43
@grliszas14
grliszas14 merged commit 97eb0f2 into audacity:master Jul 17, 2026
9 of 10 checks passed
@grliszas14
grliszas14 deleted the split_tool_on_header branch July 17, 2026 14:44
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.

Clicking the clip header disables the split tool

2 participants