Since replay is a system-wide property, the user should be able to see the system's replay status when it is relevant to the inspected web content. For example, the replay dashboard should be automatically shown when capturing or replaying starts.
Eventually I want to get some sort of mini-timeline ported to the new replay infrastructure (the one in trunk). There is also some more plumbing needed in the replay protocol domain so that recordings can be ejected and imported/exported from file.
My current WIP patch adds record/play/pause buttons that are correctly synced to events from the WebInspector.ReplayManager. Since this UI isn't visible by default, I could submit just this functionality and incrementally add the other pieces.
In any case, the UI will not be terribly useful until major replay blockers are landed in the next few months. Landing incrementally just reduces bitrot and branch drift.
Missing patch? Looks like bug 135225 builds on this.
Created attachment 236043 [details]
Comment on attachment 236043 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=236043&action=review
> + * UserInterface/Images/ReplayPauseButton.svg: Added.
> + * UserInterface/Images/ReplayPlayButton.svg: Added.
> + * UserInterface/Images/ReplayRecordingButton.svg: Added.
Once this lands I will take a look at making new icons for these to match 10.10.
> + if (WebInspector.replayManager.sessionState === WebInspector.ReplayManager.SessionState.Capturing)
> + this._captureStarted();
> + else if (WebInspector.replayManager.sessionState === WebInspector.ReplayManager.SessionState.Inactive)
> + this._captureStopped();
> + // ReplayManager.sessionState must be Replaying.
> + else if (WebInspector.replayManager.segmentState === WebInspector.ReplayManager.SegmentState.Dispatching)
> + this._playbackStarted();
> + // ReplayManager.sessionState must be Unloaded or Loaded, so execution is paused.
> + else
> + this._playbackPaused();
Committed r172420: <http://trac.webkit.org/changeset/172420>