void VTTRegion::setRegionSettings(const String& inputString) { m_settings = inputString; VTTScanner input(inputString); while (!input.isAtEnd()) { input.skipWhile<VTTParser::isValidSettingDelimiter>(); if (input.isAtEnd()) break; // Scan the name part. RegionSetting name = scanSettingName(input); // Verify that we're looking at a '='. if (name == None || !input.scan('=')) { input.skipUntil<VTTParser::isASpace>(); continue; } // Scan the value part. parseSettingValue(name, input); } }
void TextTrackRegion::parseSetting(const String& input, unsigned* position) { String setting = WebVTTParser::collectWord(input, position); size_t equalOffset = setting.find('=', 1); if (equalOffset == notFound || !equalOffset || equalOffset == setting.length() - 1) return; RegionSetting name = getSettingFromString(setting.substring(0, equalOffset)); String value = setting.substring(equalOffset + 1, setting.length() - 1); parseSettingValue(name, value); }