Separate VTTCue from VTTCueBox and LayoutVTTCue

Both VTTCueBox and LayoutVTTCue had a VTTCue member, which made for
tricky lifetime considerations, in particular the VTTCue destructor
was removing the VTTCueBox from the DOM, so that the stale VTTCue*
pointers would never be accessed.

Instead, let VTTCue provide VTTCueBox with the information it needs,
which will in turn provide it to LayoutVTTCue. Stale information
should not be a problem, as all relevant changes to VTTCue will call
cueDidChange(), whichs ends up removing and re-inserting the cue.

Refactoring only, no web-observable changes are intended.

BUG=511174, 509911
R=fs@opera.com

Review URL: https://codereview.chromium.org/1240433007

git-svn-id: svn://svn.chromium.org/blink/trunk@199160 bbb929c8-8fbe-4397-9dbb-9b2b20218538
4 files changed
tree: 607f282b488cf8c9f3857972862a8a8091781a4d
  1. third_party/