doc: Update the frame scheduling diagram to include SCHEDULED_LATER
Although since all SCHEDULED* states basically have the same transitions it's easier to show them as a single state. The mermaid diagram also won't render correctly if there is a mix of combined and singular states. We must use either always combined states or always singular states. Fixes: 5b214dc2b7 ("clutter/frame-clock: Allow scheduling an update in the future") Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441>
This commit is contained in:
parent
9dec39d92e
commit
6fae16302b
@ -4,11 +4,11 @@
|
||||
|
||||
```mermaid
|
||||
stateDiagram
|
||||
Init --> Scheduled/ScheduledNow : schedule update() -> now
|
||||
Idle --> Scheduled/ScheduledNow : schedule update() -> given presentation time
|
||||
Scheduled/ScheduledNow --> Dispatching : target time hit
|
||||
Dispatching --> PendingPresented : queued page flip
|
||||
Dispatching --> Idle : no queued page flip
|
||||
PendingPresented --> Scheduled/ScheduledNow : page flipped, if recent schedule update
|
||||
PendingPresented --> Idle : page flipped
|
||||
INIT --> SCHEDULED* : first frame scheduled
|
||||
IDLE --> SCHEDULED* : next frame scheduled
|
||||
SCHEDULED* --> IDLE : frame clock inhibited or mode changed
|
||||
SCHEDULED* --> SCHEDULED* : schedule upgraded to SCHEDULED_NOW
|
||||
SCHEDULED* --> DISPATCHING : the update time has arrived
|
||||
DISPATCHING --> PENDING_PRESENTED : the update has been handed to the backend
|
||||
PENDING_PRESENTED --> IDLE : frame was either presented or aborted with nothing to draw
|
||||
```
|
||||
|
Loading…
x
Reference in New Issue
Block a user