Changeset 64110 in webkit


Ignore:
Timestamp:
Jul 27, 2010 12:31:39 AM (14 years ago)
Author:
tkent@chromium.org
Message:

Add a runtime setting for interactive form validation.
https://bugs.webkit.org/show_bug.cgi?id=40520

Reviewed by Ojan Vafai.

WebCore:

The interactive validation feature was disabled for non-strict
modes by r61059 to avoid a compatibility issue. This removes the
mode checking and introduce a runtime setting to enable/disable
the feature instead.
The default value is 'disable' and we'll remove the setting when
the compatibility issue is resolved and interactive validation
implementation is completed.

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::validateInteractively):

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setInteractiveFormValidationEnabled):
(WebCore::Settings::interactiveFormValidationEnabled):

LayoutTests:

Remove the mode-specific tests and skip tests which don't work
without the interactive validation feature.

  • fast/forms/interactive-validation-compat-mode-expected.txt: Removed.
  • fast/forms/interactive-validation-compat-mode.html: Removed.
  • fast/forms/interactive-validation-html4-expected.txt: Removed.
  • fast/forms/interactive-validation-html4.html: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
Location:
trunk
Files:
4 deleted
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r64103 r64110  
     12010-07-27  Kent Tamura  <tkent@chromium.org>
     2
     3        Reviewed by Ojan Vafai.
     4
     5        Add a runtime setting for interactive form validation.
     6        https://bugs.webkit.org/show_bug.cgi?id=40520
     7
     8        Remove the mode-specific tests and skip tests which don't work
     9        without the interactive validation feature.
     10
     11        * fast/forms/interactive-validation-compat-mode-expected.txt: Removed.
     12        * fast/forms/interactive-validation-compat-mode.html: Removed.
     13        * fast/forms/interactive-validation-html4-expected.txt: Removed.
     14        * fast/forms/interactive-validation-html4.html: Removed.
     15        * platform/chromium/test_expectations.txt:
     16        * platform/gtk/Skipped:
     17        * platform/mac/Skipped:
     18        * platform/qt/Skipped:
     19        * platform/win/Skipped:
     20
    1212010-07-26  Cosmin Truta  <ctruta@chromium.org>
    222
  • trunk/LayoutTests/platform/chromium/test_expectations.txt

    r64103 r64110  
    718718BUGWK38570 : fast/forms/input-appearance-spinbutton-disabled-readonly.html = FAIL
    719719BUGWK38570 : fast/forms/input-number-events.html = FAIL
     720
     721// The feature was disabled due to a compatibility issue.
     722BUGWK40520 DEFER : fast/forms/interactive-validation-lost-focusable.html = TEXT
     723BUGWK40520 DEFER : fast/forms/interactive-validation-prevented.html = TEXT
    720724
    721725// Add support for inspector layout tests.
  • trunk/LayoutTests/platform/gtk/Skipped

    r64082 r64110  
    58585858fast/events/content-changed-during-drop.html
    58595859
     5860# The feature was disabled due to a compatibility issue.
     5861# https://bugs.webkit.org/show_bug.cgi?id=40520
     5862fast/forms/interactive-validation-lost-focusable.html
     5863fast/forms/interactive-validation-prevented.html
     5864
    58605865# Tests that seem to be Mac only, assume that smart drag-and-drop
    58615866# is enabled or assume platform-dependent sizing.
  • trunk/LayoutTests/platform/mac/Skipped

    r63752 r64110  
    274274fast/forms/input-file-directory-upload.html
    275275
     276# The feature was disabled due to a compatibility issue.
     277# https://bugs.webkit.org/show_bug.cgi?id=40520
     278fast/forms/interactive-validation-lost-focusable.html
     279fast/forms/interactive-validation-prevented.html
     280
    276281# Web Timing is not enabled.
    277282# https://bugs.webkit.org/show_bug.cgi?id=42434
  • trunk/LayoutTests/platform/qt/Skipped

    r64038 r64110  
    54545454html5lib/runner.html
    54555455
     5456# The feature was disabled due to a compatibility issue.
     5457# https://bugs.webkit.org/show_bug.cgi?id=40520
     5458fast/forms/interactive-validation-lost-focusable.html
     5459fast/forms/interactive-validation-prevented.html
     5460
    54565461# [Qt] REGRESSION(63862): animations/play-state.html fails intermittently
    54575462# https://bugs.webkit.org/show_bug.cgi?id=42821
  • trunk/LayoutTests/platform/win/Skipped

    r63950 r64110  
    945945printing/setPrinting.html
    946946
     947# The feature was disabled due to a compatibility issue.
     948# https://bugs.webkit.org/show_bug.cgi?id=40520
     949fast/forms/interactive-validation-lost-focusable.html
     950fast/forms/interactive-validation-prevented.html
     951
    947952# Web Timing is not enabled.
    948953# https://bugs.webkit.org/show_bug.cgi?id=42435
  • trunk/WebCore/ChangeLog

    r64105 r64110  
     12010-07-27  Kent Tamura  <tkent@chromium.org>
     2
     3        Reviewed by Ojan Vafai.
     4
     5        Add a runtime setting for interactive form validation.
     6        https://bugs.webkit.org/show_bug.cgi?id=40520
     7
     8        The interactive validation feature was disabled for non-strict
     9        modes by r61059 to avoid a compatibility issue. This removes the
     10        mode checking and introduce a runtime setting to enable/disable
     11        the feature instead.
     12        The default value is 'disable' and we'll remove the setting when
     13        the compatibility issue is resolved and interactive validation
     14        implementation is completed.
     15
     16        * html/HTMLFormElement.cpp:
     17        (WebCore::HTMLFormElement::validateInteractively):
     18        * page/Settings.cpp:
     19        (WebCore::Settings::Settings):
     20        * page/Settings.h:
     21        (WebCore::Settings::setInteractiveFormValidationEnabled):
     22        (WebCore::Settings::interactiveFormValidationEnabled):
     23
    1242010-07-26  Gavin Barraclough  <barraclough@apple.com>
    225
  • trunk/WebCore/html/HTMLFormElement.cpp

    r63999 r64110  
    4646#include "HTMLNames.h"
    4747#include "MIMETypeRegistry.h"
     48#include "Page.h"
    4849#include "RenderTextControl.h"
    4950#include "ScriptEventListener.h"
     51#include "Settings.h"
    5052#include "ValidityState.h"
    5153#include <limits>
     
    197199{
    198200    ASSERT(event);
    199     if (!document()->inStrictMode() || noValidate())
     201    if (!document()->page() || !document()->page()->settings()->interactiveFormValidationEnabled() || noValidate())
    200202        return true;
    201203
  • trunk/WebCore/page/Settings.cpp

    r63537 r64110  
    138138    , m_dnsPrefetchingEnabled(true)
    139139    , m_memoryInfoEnabled(false)
     140    , m_interactiveFormValidation(false)
    140141{
    141142    // A Frame may not have been created yet, so we initialize the AtomicString
  • trunk/WebCore/page/Settings.h

    r63537 r64110  
    313313        void setMemoryInfoEnabled(bool flag) { m_memoryInfoEnabled = flag; }
    314314        bool memoryInfoEnabled() const { return m_memoryInfoEnabled; }
     315
     316        // This setting will be removed when an HTML5 compatibility issue is
     317        // resolved and WebKit implementation of interactive validation is
     318        // completed. See http://webkit.org/b/40520, http://webkit.org/b/40747,
     319        // and http://webkit.org/b/40908
     320        void setInteractiveFormValidationEnabled(bool flag) { m_interactiveFormValidation = flag; }
     321        bool interactiveFormValidationEnabled() const { return m_interactiveFormValidation; }
    315322
    316323    private:
     
    398405        bool m_dnsPrefetchingEnabled : 1;
    399406        bool m_memoryInfoEnabled: 1;
     407        bool m_interactiveFormValidation: 1;
    400408   
    401409#if USE(SAFARI_THEME)
Note: See TracChangeset for help on using the changeset viewer.