AcademySoftwareFoundation / AcademySoftwareFoundation/OpenTimelineIO

otioview's CompositionWidget assumes all stacks have tracks

Open
#376 2 comments 0 reactions 0 assignees View on GitHub
help wanted
Dominant language
C++
Stars
2k
Forks
351
Avg merge
1d 12h
Merged PRs (30d)
1

Description

otioview CompositionWidget can run into issues when coming across nested stacks that contain direct clip (Item) children. You'll notice this if you have a:

Timeline -> Stack -> Track -> Stack -> Clip

And you try and "Open" (double click for example) the internal Stack you'll see:
```
File "...OpenTimelineIO/opentimelineview/timeline_widget.py", line 375, in _adjust_scene_size
for t in self.composition
File "...OpenTimelineIO/opentimelineview/timeline_widget.py", line 375, in
for t in self.composition
AttributeError: 'Clip' object has no attribute 'kind'
```
This assumption shows up in both `_adjust_scene_size()` and `_add_tracks()`

Contributor guide

Open the contributing guide

Research direction

Start in opentimelineview/timeline_widget.py, focusing on _adjust_scene_size() and _add_tracks(), and reproduce the nested Timeline → Stack → Track → Stack → Clip case by opening the internal Stack. Done means CompositionWidget handles direct Clip children without the reported AttributeError in either function.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
desktop
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.