Changeset 54271 in webkit
- Timestamp:
- Feb 2, 2010 8:21:55 PM (14 years ago)
- Location:
- trunk
- Files:
-
- 4 added
- 16 deleted
- 3 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r54267 r54271 1 2010-02-02 Kent Tamura <tkent@chromium.org> 2 3 Reviewed by Darin Adler. 4 5 rangeOverflow/rangeUnderflow support for type=datetime, datetime-local, 6 month, time and week 7 https://bugs.webkit.org/show_bug.cgi?id=34483 8 9 Add tests for datetime, datetime-local, month, time and week, and 10 merge existing tests into one test file. 11 12 * fast/forms/ValidityState-rangeOverflow-date-expected.txt: Removed. 13 * fast/forms/ValidityState-rangeOverflow-date.html: Removed. 14 * fast/forms/ValidityState-rangeOverflow-expected.txt: Added. 15 * fast/forms/ValidityState-rangeOverflow-number-expected.txt: Removed. 16 * fast/forms/ValidityState-rangeOverflow-number.html: Removed. 17 * fast/forms/ValidityState-rangeOverflow-range-expected.txt: Removed. 18 * fast/forms/ValidityState-rangeOverflow-range.html: Removed. 19 * fast/forms/ValidityState-rangeOverflow.html: Added. 20 * fast/forms/ValidityState-rangeUnderflow-date-expected.txt: Removed. 21 * fast/forms/ValidityState-rangeUnderflow-date.html: Removed. 22 * fast/forms/ValidityState-rangeUnderflow-expected.txt: Added. 23 * fast/forms/ValidityState-rangeUnderflow-number-expected.txt: Removed. 24 * fast/forms/ValidityState-rangeUnderflow-number.html: Removed. 25 * fast/forms/ValidityState-rangeUnderflow-range-expected.txt: Removed. 26 * fast/forms/ValidityState-rangeUnderflow-range.html: Removed. 27 * fast/forms/ValidityState-rangeUnderflow.html: Added. 28 * fast/forms/script-tests/ValidityState-rangeOverflow-date.js: Removed. 29 * fast/forms/script-tests/ValidityState-rangeOverflow-number.js: Removed. 30 * fast/forms/script-tests/ValidityState-rangeOverflow-range.js: Removed. 31 * fast/forms/script-tests/ValidityState-rangeOverflow.js: Added. 32 * fast/forms/script-tests/ValidityState-rangeUnderflow-date.js: Removed. 33 * fast/forms/script-tests/ValidityState-rangeUnderflow-number.js: Removed. 34 * fast/forms/script-tests/ValidityState-rangeUnderflow-range.js: Removed. 35 * fast/forms/script-tests/ValidityState-rangeUnderflow.js: Added. 36 1 37 2010-02-02 Fumitoshi Ukai <ukai@chromium.org> 2 38 -
trunk/LayoutTests/fast/forms/ValidityState-rangeOverflow.html
r54270 r54271 8 8 <p id="description"></p> 9 9 <div id="console"></div> 10 <script src="script-tests/ValidityState-range Underflow-date.js"></script>10 <script src="script-tests/ValidityState-rangeOverflow.js"></script> 11 11 <script src="../../fast/js/resources/js-test-post.js"></script> 12 12 </body> -
trunk/LayoutTests/fast/forms/ValidityState-rangeUnderflow.html
r54270 r54271 8 8 <p id="description"></p> 9 9 <div id="console"></div> 10 <script src="script-tests/ValidityState-range Overflow-date.js"></script>10 <script src="script-tests/ValidityState-rangeUnderflow.js"></script> 11 11 <script src="../../fast/js/resources/js-test-post.js"></script> 12 12 </body> -
trunk/WebCore/ChangeLog
r54267 r54271 1 2010-02-02 Kent Tamura <tkent@chromium.org> 2 3 Reviewed by Darin Adler. 4 5 rangeOverflow/rangeUnderflow support for type=datetime, datetime-local, 6 month, time and week 7 https://bugs.webkit.org/show_bug.cgi?id=34483 8 9 Tests: fast/forms/ValidityState-rangeOverflow.html 10 fast/forms/ValidityState-rangeUnderflow.html 11 12 * html/HTMLInputElement.cpp: 13 Defines the hard limits for the types as double values. 14 (WebCore::HTMLInputElement::rangeUnderflow): Supports the types. 15 (WebCore::HTMLInputElement::rangeOverflow): Supports the types. 16 (WebCore::HTMLInputElement::minimum): Supports the types. 17 (WebCore::HTMLInputElement::maximum): Supports the types. 18 1 19 2010-02-02 Fumitoshi Ukai <ukai@chromium.org> 2 20 -
trunk/WebCore/html/HTMLInputElement.cpp
r54120 r54271 81 81 // Constant values for minimum(). 82 82 static const double dateDefaultMinimum = -12219292800000.0; // This means 1582-10-15T00:00Z. 83 static const double dateTimeDefaultMinimum = -12219292800000.0; // ditto. 84 static const double monthDefaultMinimum = (1582.0 - 1970) * 12 + 10 - 1; // 1582-10 83 85 static const double numberDefaultMinimum = -DBL_MAX; 84 86 static const double rangeDefaultMinimum = 0.0; 87 static const double timeDefaultMinimum = 0.0; // 00:00:00.000 88 static const double weekDefaultMinimum = -12212380800000.0; // 1583-01-03, the first Monday of 1583. 85 89 // Constant values for maximum(). 86 90 static const double dateDefaultMaximum = DBL_MAX; 91 static const double dateTimeDefaultMaximum = DBL_MAX; 92 static const double monthDefaultMaximum = DBL_MAX; 87 93 static const double numberDefaultMaximum = DBL_MAX; 88 94 static const double rangeDefaultMaximum = 100.0; 95 static const double timeDefaultMaximum = 86399999.0; // 23:59:59.999 96 static const double weekDefaultMaximum = DBL_MAX; 89 97 90 98 HTMLInputElement::HTMLInputElement(const QualifiedName& tagName, Document* doc, HTMLFormElement* f) … … 272 280 switch (inputType()) { 273 281 case DATE: 282 case DATETIME: 283 case DATETIMELOCAL: 284 case MONTH: 274 285 case NUMBER: 275 case RANGE: { 286 case RANGE: 287 case TIME: 288 case WEEK: { 276 289 double doubleValue = parseToDouble(value(), nan); 277 290 return isfinite(doubleValue) && doubleValue < minimum(); … … 280 293 case CHECKBOX: 281 294 case COLOR: 282 case DATETIME:283 case DATETIMELOCAL:284 295 case EMAIL: 285 296 case FILE: … … 287 298 case IMAGE: 288 299 case ISINDEX: 289 case MONTH:290 300 case PASSWORD: 291 301 case RADIO: … … 295 305 case TELEPHONE: 296 306 case TEXT: 297 case TIME:298 307 case URL: 299 case WEEK:300 308 break; 301 309 } … … 308 316 switch (inputType()) { 309 317 case DATE: 318 case DATETIME: 319 case DATETIMELOCAL: 320 case MONTH: 310 321 case NUMBER: 311 case RANGE: { 322 case RANGE: 323 case TIME: 324 case WEEK: { 312 325 double doubleValue = parseToDouble(value(), nan); 313 326 return isfinite(doubleValue) && doubleValue > maximum(); … … 316 329 case CHECKBOX: 317 330 case COLOR: 318 case DATETIME:319 case DATETIMELOCAL:320 331 case EMAIL: 321 332 case FILE: … … 323 334 case IMAGE: 324 335 case ISINDEX: 325 case MONTH:326 336 case PASSWORD: 327 337 case RADIO: … … 331 341 case TELEPHONE: 332 342 case TEXT: 333 case TIME:334 343 case URL: 335 case WEEK:336 344 break; 337 345 } … … 344 352 case DATE: 345 353 return parseToDouble(getAttribute(minAttr), dateDefaultMinimum); 354 case DATETIME: 355 case DATETIMELOCAL: 356 return parseToDouble(getAttribute(minAttr), dateTimeDefaultMinimum); 357 case MONTH: 358 return parseToDouble(getAttribute(minAttr), monthDefaultMinimum); 346 359 case NUMBER: 347 360 return parseToDouble(getAttribute(minAttr), numberDefaultMinimum); 348 361 case RANGE: 349 362 return parseToDouble(getAttribute(minAttr), rangeDefaultMinimum); 363 case TIME: 364 return parseToDouble(getAttribute(minAttr), timeDefaultMinimum); 365 case WEEK: 366 return parseToDouble(getAttribute(minAttr), weekDefaultMinimum); 350 367 case BUTTON: 351 368 case CHECKBOX: 352 369 case COLOR: 353 case DATETIME:354 case DATETIMELOCAL:355 370 case EMAIL: 356 371 case FILE: … … 358 373 case IMAGE: 359 374 case ISINDEX: 360 case MONTH:361 375 case PASSWORD: 362 376 case RADIO: … … 366 380 case TELEPHONE: 367 381 case TEXT: 368 case TIME:369 382 case URL: 370 case WEEK:371 383 break; 372 384 } … … 380 392 case DATE: 381 393 return parseToDouble(getAttribute(maxAttr), dateDefaultMaximum); 394 case DATETIME: 395 case DATETIMELOCAL: 396 return parseToDouble(getAttribute(maxAttr), dateTimeDefaultMaximum); 397 case MONTH: 398 return parseToDouble(getAttribute(maxAttr), monthDefaultMaximum); 382 399 case NUMBER: 383 400 return parseToDouble(getAttribute(maxAttr), numberDefaultMaximum); … … 391 408 return max; 392 409 } 410 case TIME: 411 return parseToDouble(getAttribute(maxAttr), timeDefaultMaximum); 412 case WEEK: 413 return parseToDouble(getAttribute(maxAttr), weekDefaultMaximum); 393 414 case BUTTON: 394 415 case CHECKBOX: 395 416 case COLOR: 396 case DATETIME:397 case DATETIMELOCAL:398 417 case EMAIL: 399 418 case FILE: … … 401 420 case IMAGE: 402 421 case ISINDEX: 403 case MONTH:404 422 case PASSWORD: 405 423 case RADIO: … … 409 427 case TELEPHONE: 410 428 case TEXT: 411 case TIME:412 429 case URL: 413 case WEEK:414 430 break; 415 431 }
Note: See TracChangeset
for help on using the changeset viewer.