Handle buffer boundaries in the WebVTT parser

Replace the somewhat ad-hoc collectNextLine method with a new helper
class - BufferedLineReader - that takes care of buffering the input
data across buffer boundaries.

While redoing the line collection, also fix the handling of NULs in the
input stream to match the spec (transform to U+FFFD).

TEST=unittest:BufferedLineReader.*
TEST=http/tests/media/track/track-webvtt-slow-loading-2.html
BUG=231460

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161624 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move WebInbandTextTrack/WebInbandTextTrackClient to public/platform/

This is to allow InbandTextTrackPrivate/InbandTextTrackPrivateClient
to be removed, by using the Web* variants directly, and for that to
be allowed they must reside in public/platform/.

Some style changes were required to please presubmit.

BUG=316172

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161626 bbb929c8-8fbe-4397-9dbb-9b2b20218538
FlameChart: extract FlameChartDataProvider interface

No business logic changes.

I renamed FlameChartDataProvider into CPUFlameChartDataProvider.
Extracted the FlameChartDataProvider interface.
Moved CPUFlameChartDataProvider into CPUProfileView.js

BUG=316167
R=alph@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161627 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove Scrollbar dependency on Frame, FrameView and EventHandler

There is no need to set m_mousePressed from Scrollbar::mouseUp as
EventHandler::handleMouseReleaseEvent did that before calling mouseUp.
The other two callers of mouseUp involve scrollbars that are not in FrameViews.

BUG=297477

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

git-svn-id: svn://svn.chromium.org/blink/trunk@161628 bbb929c8-8fbe-4397-9dbb-9b2b20218538