Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: Source/core/html/track/vtt/VTTParser.h

Issue 143983002: Rework end-of-value field handling in VTTRegion::parseSettingValue (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | Source/core/html/track/vtt/VTTParser.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011 Google Inc. All rights reserved. 2 * Copyright (C) 2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 { 84 {
85 // WebVTT space characters are U+0020 SPACE, U+0009 CHARACTER TABULATION (tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), and U+000D CARRIAGE RETURN (CR). 85 // WebVTT space characters are U+0020 SPACE, U+0009 CHARACTER TABULATION (tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), and U+000D CARRIAGE RETURN (CR).
86 return c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r'; 86 return c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r';
87 } 87 }
88 static inline bool isValidSettingDelimiter(UChar c) 88 static inline bool isValidSettingDelimiter(UChar c)
89 { 89 {
90 // ... a WebVTT cue consists of zero or more of the following components , in any order, separated from each other by one or more 90 // ... a WebVTT cue consists of zero or more of the following components , in any order, separated from each other by one or more
91 // U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characte rs. 91 // U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characte rs.
92 return c == ' ' || c == '\t'; 92 return c == ' ' || c == '\t';
93 } 93 }
94 static unsigned collectDigitsToInt(const String& input, unsigned* position, int& number);
95 static bool collectTimeStamp(const String&, double& timeStamp); 94 static bool collectTimeStamp(const String&, double& timeStamp);
96 95
97 // Useful functions for parsing percentage settings. 96 // Useful functions for parsing percentage settings.
98 static bool parseFloatPercentageValue(VTTScanner& valueScanner, float& perce ntage); 97 static bool parseFloatPercentageValue(VTTScanner& valueScanner, float& perce ntage);
99 static bool parseFloatPercentageValuePair(const String&, char, FloatPoint&); 98 static bool parseFloatPercentageValuePair(VTTScanner&, char, FloatPoint&);
100 99
101 // Create the DocumentFragment representation of the WebVTT cue text. 100 // Create the DocumentFragment representation of the WebVTT cue text.
102 static PassRefPtr<DocumentFragment> createDocumentFragmentFromCueText(Docume nt&, const String&); 101 static PassRefPtr<DocumentFragment> createDocumentFragmentFromCueText(Docume nt&, const String&);
103 102
104 // Input data to the parser to parse. 103 // Input data to the parser to parse.
105 void parseBytes(const char* data, unsigned length); 104 void parseBytes(const char* data, unsigned length);
106 void flush(); 105 void flush();
107 106
108 // Transfers ownership of last parsed cues to caller. 107 // Transfers ownership of last parsed cues to caller.
109 void getNewCues(Vector<RefPtr<VTTCue> >&); 108 void getNewCues(Vector<RefPtr<VTTCue> >&);
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 VTTParserClient* m_client; 142 VTTParserClient* m_client;
144 143
145 Vector<RefPtr<VTTCue> > m_cuelist; 144 Vector<RefPtr<VTTCue> > m_cuelist;
146 145
147 Vector<RefPtr<VTTRegion> > m_regionList; 146 Vector<RefPtr<VTTRegion> > m_regionList;
148 }; 147 };
149 148
150 } // namespace WebCore 149 } // namespace WebCore
151 150
152 #endif 151 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/core/html/track/vtt/VTTParser.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698