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

Side by Side Diff: sdk/lib/html/dart2js/html_dart2js.dart

Issue 11659031: Filling in supported platforms for InputElement types. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 12 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 | Annotate | Revision Log
OLDNEW
1 library html; 1 library html;
2 2
3 import 'dart:collection'; 3 import 'dart:collection';
4 import 'dart:html_common'; 4 import 'dart:html_common';
5 import 'dart:indexed_db'; 5 import 'dart:indexed_db';
6 import 'dart:isolate'; 6 import 'dart:isolate';
7 import 'dart:json'; 7 import 'dart:json';
8 import 'dart:svg' as svg; 8 import 'dart:svg' as svg;
9 import 'dart:web_audio' as web_audio; 9 import 'dart:web_audio' as web_audio;
10 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 10 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
(...skipping 11169 matching lines...) Expand 10 before | Expand all | Expand 10 after
11180 /// @domName HTMLInputElement.stepDown 11180 /// @domName HTMLInputElement.stepDown
11181 void stepDown([int n]); 11181 void stepDown([int n]);
11182 11182
11183 /// @domName HTMLInputElement.stepUp 11183 /// @domName HTMLInputElement.stepUp
11184 void stepUp([int n]); 11184 void stepUp([int n]);
11185 } 11185 }
11186 11186
11187 /** 11187 /**
11188 * A date and time (year, month, day, hour, minute, second, fraction of a 11188 * A date and time (year, month, day, hour, minute, second, fraction of a
11189 * second) with the time zone set to UTC. 11189 * second) with the time zone set to UTC.
11190 *
11191 * Use [supported] to check if this is supported on the current platform.
11190 */ 11192 */
11193 @SupportedBrowser(SupportedBrowser.CHROME, '25')
11194 @Experimental()
11191 abstract class DateTimeInputElement implements RangeInputElementBase { 11195 abstract class DateTimeInputElement implements RangeInputElementBase {
11192 factory DateTimeInputElement() => new InputElement(type: 'datetime'); 11196 factory DateTimeInputElement() => new InputElement(type: 'datetime');
11193 11197
11194 /// @domName HTMLInputElement.valueAsDate 11198 /// @domName HTMLInputElement.valueAsDate
11195 Date valueAsDate; 11199 Date valueAsDate;
11196 11200
11197 /// @domName HTMLInputElement.readOnly 11201 /// @domName HTMLInputElement.readOnly
11198 bool readOnly; 11202 bool readOnly;
11199 11203
11200 /// @domName HTMLInputElement.required 11204 /// @domName HTMLInputElement.required
11201 bool required; 11205 bool required;
11206
11207 /// Returns true if this input type is supported on the current platform.
11208 static bool get supported() {
11209 return (new InputElement(type: 'datetime')).type == 'datetime';
11210 }
11202 } 11211 }
11203 11212
11204 /** 11213 /**
11205 * A date (year, month, day) with no time zone. 11214 * A date (year, month, day) with no time zone.
11215 *
11216 * Use [supported] to check if this is supported on the current platform.
11206 */ 11217 */
11218 @SupportedBrowser(SupportedBrowser.CHROME, '25')
11219 @Experimental()
11207 abstract class DateInputElement implements RangeInputElementBase { 11220 abstract class DateInputElement implements RangeInputElementBase {
11208 factory DateInputElement() => new InputElement(type: 'date'); 11221 factory DateInputElement() => new InputElement(type: 'date');
11209 11222
11210 /// @domName HTMLInputElement.valueAsDate 11223 /// @domName HTMLInputElement.valueAsDate
11211 Date valueAsDate; 11224 Date valueAsDate;
11212 11225
11213 /// @domName HTMLInputElement.readOnly 11226 /// @domName HTMLInputElement.readOnly
11214 bool readOnly; 11227 bool readOnly;
11215 11228
11216 /// @domName HTMLInputElement.required 11229 /// @domName HTMLInputElement.required
11217 bool required; 11230 bool required;
11231
11232 /// Returns true if this input type is supported on the current platform.
11233 static bool get supported() {
11234 return (new InputElement(type: 'date')).type == 'date';
11235 }
11218 } 11236 }
11219 11237
11220 /** 11238 /**
11221 * A date consisting of a year and a month with no time zone. 11239 * A date consisting of a year and a month with no time zone.
11240 *
11241 * Use [supported] to check if this is supported on the current platform.
11222 */ 11242 */
11243 @SupportedBrowser(SupportedBrowser.CHROME, '25')
11244 @Experimental()
11223 abstract class MonthInputElement implements RangeInputElementBase { 11245 abstract class MonthInputElement implements RangeInputElementBase {
11224 factory MonthInputElement() => new InputElement(type: 'month'); 11246 factory MonthInputElement() => new InputElement(type: 'month');
11225 11247
11226 /// @domName HTMLInputElement.valueAsDate 11248 /// @domName HTMLInputElement.valueAsDate
11227 Date valueAsDate; 11249 Date valueAsDate;
11228 11250
11229 /// @domName HTMLInputElement.readOnly 11251 /// @domName HTMLInputElement.readOnly
11230 bool readOnly; 11252 bool readOnly;
11231 11253
11232 /// @domName HTMLInputElement.required 11254 /// @domName HTMLInputElement.required
11233 bool required; 11255 bool required;
11256
11257 /// Returns true if this input type is supported on the current platform.
11258 static bool get supported() {
11259 return (new InputElement(type: 'month')).type == 'month';
11260 }
11234 } 11261 }
11235 11262
11236 /** 11263 /**
11237 * A date consisting of a week-year number and a week number with no time zone. 11264 * A date consisting of a week-year number and a week number with no time zone.
11265 *
11266 * Use [supported] to check if this is supported on the current platform.
11238 */ 11267 */
11268 @SupportedBrowser(SupportedBrowser.CHROME, '25')
11269 @Experimental()
11239 abstract class WeekInputElement implements RangeInputElementBase { 11270 abstract class WeekInputElement implements RangeInputElementBase {
11240 factory WeekInputElement() => new InputElement(type: 'week'); 11271 factory WeekInputElement() => new InputElement(type: 'week');
11241 11272
11242 /// @domName HTMLInputElement.valueAsDate 11273 /// @domName HTMLInputElement.valueAsDate
11243 Date valueAsDate; 11274 Date valueAsDate;
11244 11275
11245 /// @domName HTMLInputElement.readOnly 11276 /// @domName HTMLInputElement.readOnly
11246 bool readOnly; 11277 bool readOnly;
11247 11278
11248 /// @domName HTMLInputElement.required 11279 /// @domName HTMLInputElement.required
11249 bool required; 11280 bool required;
11281
11282 /// Returns true if this input type is supported on the current platform.
11283 static bool get supported() {
11284 return (new InputElement(type: 'week')).type == 'week';
11285 }
11250 } 11286 }
11251 11287
11252 /** 11288 /**
11253 * A time (hour, minute, seconds, fractional seconds) with no time zone. 11289 * A time (hour, minute, seconds, fractional seconds) with no time zone.
11290 *
11291 * Use [supported] to check if this is supported on the current platform.
11254 */ 11292 */
11293 @SupportedBrowser(SupportedBrowser.CHROME)
11294 @Experimental()
11255 abstract class TimeInputElement implements RangeInputElementBase { 11295 abstract class TimeInputElement implements RangeInputElementBase {
11256 factory TimeInputElement() => new InputElement(type: 'time'); 11296 factory TimeInputElement() => new InputElement(type: 'time');
11257 11297
11258 /// @domName HTMLInputElement.valueAsDate 11298 /// @domName HTMLInputElement.valueAsDate
11259 Date valueAsDate; 11299 Date valueAsDate;
11260 11300
11261 /// @domName HTMLInputElement.readOnly 11301 /// @domName HTMLInputElement.readOnly
11262 bool readOnly; 11302 bool readOnly;
11263 11303
11264 /// @domName HTMLInputElement.required 11304 /// @domName HTMLInputElement.required
11265 bool required; 11305 bool required;
11306
11307 /// Returns true if this input type is supported on the current platform.
11308 static bool get supported() {
11309 return (new InputElement(type: 'time')).type == 'time';
11310 }
11266 } 11311 }
11267 11312
11268 /** 11313 /**
11269 * A date and time (year, month, day, hour, minute, second, fraction of a 11314 * A date and time (year, month, day, hour, minute, second, fraction of a
11270 * second) with no time zone. 11315 * second) with no time zone.
11316 *
11317 * Use [supported] to check if this is supported on the current platform.
11271 */ 11318 */
11319 @SupportedBrowser(SupportedBrowser.CHROME, '25')
11320 @Experimental()
11272 abstract class LocalDateTimeInputElement implements RangeInputElementBase { 11321 abstract class LocalDateTimeInputElement implements RangeInputElementBase {
11273 factory LocalDateTimeInputElement() => 11322 factory LocalDateTimeInputElement() =>
11274 new InputElement(type: 'datetime-local'); 11323 new InputElement(type: 'datetime-local');
11275 11324
11276 /// @domName HTMLInputElement.readOnly 11325 /// @domName HTMLInputElement.readOnly
11277 bool readOnly; 11326 bool readOnly;
11278 11327
11279 /// @domName HTMLInputElement.required 11328 /// @domName HTMLInputElement.required
11280 bool required; 11329 bool required;
11330
11331 /// Returns true if this input type is supported on the current platform.
11332 static bool get supported() {
11333 return (new InputElement(type: 'datetime-local')).type == 'datetime-local';
11334 }
11281 } 11335 }
11282 11336
11283 /** 11337 /**
11284 * A numeric editor control. 11338 * A numeric editor control.
11285 */ 11339 */
11286 abstract class NumberInputElement implements RangeInputElementBase { 11340 abstract class NumberInputElement implements RangeInputElementBase {
11287 factory NumberInputElement() => new InputElement(type: 'number'); 11341 factory NumberInputElement() => new InputElement(type: 'number');
11288 11342
11289 /// @domName HTMLInputElement.placeholder 11343 /// @domName HTMLInputElement.placeholder
11290 String placeholder; 11344 String placeholder;
11291 11345
11292 /// @domName HTMLInputElement.readOnly 11346 /// @domName HTMLInputElement.readOnly
11293 bool readOnly; 11347 bool readOnly;
11294 11348
11295 /// @domName HTMLInputElement.required 11349 /// @domName HTMLInputElement.required
11296 bool required; 11350 bool required;
11297 } 11351 }
11298 11352
11299 /** 11353 /**
11300 * Similar to [NumberInputElement] but the browser may provide more optimal 11354 * Similar to [NumberInputElement] but the browser may provide more optimal
11301 * styling (such as a slider control). 11355 * styling (such as a slider control).
11356 *
11357 * Use [supported] to check if this is supported on the current platform.
11302 */ 11358 */
11359 @SupportedBrowser(SupportedBrowser.CHROME)
11360 @SupportedBrowser(SupportedBrowser.IE, '10')
11361 @Experimental()
11303 abstract class RangeInputElement implements RangeInputElementBase { 11362 abstract class RangeInputElement implements RangeInputElementBase {
11304 factory RangeInputElement() => new InputElement(type: 'range'); 11363 factory RangeInputElement() => new InputElement(type: 'range');
11364
11365 /// Returns true if this input type is supported on the current platform.
11366 static bool get supported() {
11367 return (new InputElement(type: 'range')).type == 'range';
11368 }
11305 } 11369 }
11306 11370
11307 /** 11371 /**
11308 * A boolean editor control. 11372 * A boolean editor control.
11309 * 11373 *
11310 * Note that if [indeterminate] is set then this control is in a third 11374 * Note that if [indeterminate] is set then this control is in a third
11311 * indeterminate state. 11375 * indeterminate state.
11312 */ 11376 */
11313 abstract class CheckboxInputElement implements InputElementBase { 11377 abstract class CheckboxInputElement implements InputElementBase {
11314 factory CheckboxInputElement() => new InputElement(type: 'checkbox'); 11378 factory CheckboxInputElement() => new InputElement(type: 'checkbox');
(...skipping 13960 matching lines...) Expand 10 before | Expand all | Expand 10 after
25275 T next() { 25339 T next() {
25276 if (!hasNext) { 25340 if (!hasNext) {
25277 throw new StateError("No more elements"); 25341 throw new StateError("No more elements");
25278 } 25342 }
25279 return _array[_pos++]; 25343 return _array[_pos++];
25280 } 25344 }
25281 25345
25282 final List<T> _array; 25346 final List<T> _array;
25283 int _pos; 25347 int _pos;
25284 } 25348 }
OLDNEW
« no previous file with comments | « no previous file | sdk/lib/html/dartium/html_dartium.dart » ('j') | tests/html/input_element_test.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698