1. 27 Jun, 2013 1 commit
    • commit-queue@webkit.org's avatar
      Polish context menus for media elements · fe125904
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=118078
      <rdar://problem/14278960>
      
      Patch by Ruth Fong <ruth_fong@apple.com> on 2013-06-27
      Reviewed by Eric Carlson.
      
      No new tests: media/context-menu-action.html,
      which has been disabled by bug 116651, is used to test context menus.
      
      * English.lproj/Localizable.strings: Changed "Fullscreen" to "Full Screen"
      and added strings "Show Controls" and "Hide Controls".
      
      * page/ContextMenuController.cpp: Updated to include a new context menu item
      that toggles betweeen "Show Controls" and "Hide Controls".
      
      * platform/ContextMenuItem.h:
      
      * platform/LocalizedStrings.cpp:
      * platform/LocalizedStrings.h:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      Added equivalents of localized strings "Show Controls" and "Hide Controls".
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152117 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe125904
  2. 17 Jun, 2013 3 commits
    • commit-queue@webkit.org's avatar
      REGRESSION: Important controls are missing from <video> element UI, when compared to QuickTime · bfadee5c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=20599
      
      Add a "Download Video"/"Download Audio" context menu item to download media
      elements.
      
      Patch by Ruth Fong <ruth_fong@apple.com> on 2013-06-17
      Reviewed by Beth Dakin.
      
      Source/WebCore:
      
      No new tests. media/context-menu-action.html,
      which has been disabled by bug 116651, is used to test context menus.
      
      * English.lproj/Localizable.strings: Updated to
      include localizable strings for "Download Video" and "Download Audio".
      
      * page/ContextMenuController.cpp: Updated to
      include and handle a "Download Video/Audio" context menu item.
      
      * platform/ContextMenuItem.h:
      
      * platform/LocalizedStrings.cpp:
      * platform/LocalizedStrings.h:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      Updated to include localizable strings for "Download Video" and "Download Audio".
      
      Source/WebKit/efl:
      
      * WebCoreSupport/AssertMatchingEnums.cpp:
      * ewk/ewk_contextmenu.h:
      Updated to include new EWK enum type for "Download Video/Audio" context menu item.
      
      Source/WebKit2:
      
      * Shared/API/c/WKContextMenuItemTypes.h: Updated to include
      an enum type for the "Download Video/Audio" context menu item.
      
      * Shared/API/c/WKSharedAPICast.h: Updated to associate
      the enums in WebKit and WebCore that handle the "Download Video/Audio"
      context menu item.
      
      * UIProcess/API/efl/ewk_context_menu.cpp:
      * UIProcess/API/efl/ewk_context_menu_item.cpp:
      * UIProcess/API/efl/ewk_context_menu_item.h:
      Updated to include new EWK enum type for "Download Video/Audio" context menu item.
      
      * UIProcess/WebPageProxy.cpp: Updated to
      handle the "Download Video/Audio" context menu item mouse click
      and download the media item in the UI process.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151656 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bfadee5c
    • g.czajkowski@samsung.com's avatar
      Unreviewed, rolling out r151632. · 7e0d38d7
      g.czajkowski@samsung.com authored
      http://trac.webkit.org/changeset/151632
      https://bugs.webkit.org/show_bug.cgi?id=117585
      
      Debug build error ASSERT(WTF_USE_GRAMMAR_CHECKING) for non MAC
      platforms
      
      Source/WebCore:
      
      * page/ContextMenuController.cpp:
      (WebCore::ContextMenuController::contextMenuItemSelected):
      (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
      (WebCore::ContextMenuController::populate):
      (WebCore::ContextMenuController::checkOrEnableIfNeeded):
      * platform/LocalizedStrings.cpp:
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      * platform/LocalizedStrings.h:
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      
      Source/WebKit/gtk:
      
      * webkit/webkitglobals.cpp:
      (webkit_context_menu_item_get_action):
      
      Source/WebKit/mac:
      
      * WebCoreSupport/WebContextMenuClient.mm:
      (fixMenusReceivedFromOldClients):
      
      Source/WebKit2:
      
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toAPI):
      (WebKit::toImpl):
      * UIProcess/API/efl/ewk_context_menu_item.cpp:
      (getEwkActionFromWKTag):
      * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
      (onContextMenuShow):
      (TEST_F):
      * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
      (webkitContextMenuActionGetActionTag):
      (webkitContextMenuActionGetForContextMenuItem):
      (webkitContextMenuActionGetLabel):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::contextMenuItemSelected):
      
      Source/WTF:
      
      * wtf/Platform.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7e0d38d7
    • g.czajkowski@samsung.com's avatar
      Context menu grammar checking items are available when GRAMMAR_CHECKING macro is off · 9facbdb9
      g.czajkowski@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=117585
      
      Reviewed by Anders Carlsson.
      
      Source/WebCore:
      
      Do not add "Check Grammar With Spelling" and "Ignore Grammar" to the context menu
      when GRAMMAR_CHECKING is off.
      Replace "Spelling and Grammar" with "Spelling" as the sub menu title and "Show/Hide Spelling
      and Grammar" with "Show/Hide Spelling" when GRAMMAR_CHECKING is off.
      
      Additionally, guard grammar checking in context menu code to not necessarily
      compile it.
      
      No new layout tests because every port has a different way of showing
      spelling/grammar context menu items.
      
      * page/ContextMenuController.cpp:
      (WebCore::ContextMenuController::contextMenuItemSelected):
      (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
      (WebCore::ContextMenuController::populate):
      (WebCore::ContextMenuController::checkOrEnableIfNeeded):
      * platform/LocalizedStrings.cpp:
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      * platform/LocalizedStrings.h:
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
      (WebCore::contextMenuItemTagSpellingMenu):
      (WebCore::contextMenuItemTagShowSpellingPanel):
      
      Source/WebKit/gtk:
      
      Add GRAMMAR_CHECKING guard to the context menu grammar items.
      
      * webkit/webkitglobals.cpp:
      (webkit_context_menu_item_get_action):
      
      Source/WebKit/mac:
      
      Add GRAMMAR_CHECKING guard to the context menu grammar items.
      
      * WebCoreSupport/WebContextMenuClient.mm:
      (fixMenusReceivedFromOldClients):
      
      Source/WebKit2:
      
      Add GRAMMAR_CHECKING guard to the context menu grammar items.
      
      * Shared/API/c/WKSharedAPICast.h:
      (WebKit::toAPI):
      (WebKit::toImpl):
      * UIProcess/API/efl/ewk_context_menu_item.cpp:
      (getEwkActionFromWKTag):
      * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
      (checkSpellingItemsAvailability):
      Change callback name, to be consistent with a newly added.
      
      (checkSpellingAndGrammarSubmenuAvailability):
      (checkGrammarWithSpellingItemAvailability):
      Add two unit tests for EFL to check whether context menu grammar items are
      available only when GRAMMAR_CHECKING macro is enabled.
      
      * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
      (webkitContextMenuActionGetActionTag):
      (webkitContextMenuActionGetForContextMenuItem):
      (webkitContextMenuActionGetLabel):
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::contextMenuItemSelected):
      
      Source/WTF:
      
      Enable GRAMMAR_CHECKING for WebKit ports that use/implement it.
      
      * wtf/Platform.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9facbdb9
  3. 08 Apr, 2013 1 commit
  4. 03 Apr, 2013 1 commit
    • commit-queue@webkit.org's avatar
      AXRoleDescripton for DL is "list"; should be "description list" · 93ff7379
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=111665
      
      Patch by James Craig <james@cookiecrook.com> on 2013-04-02
      Reviewed by Chris Fleizach.
      
      Source/WebCore:
      
      Defining the role and description strings, and accessors for DL.
      This previously relied on getting the role and description from the platform API.
      
      Updated existing test coverage.
      
      * English.lproj/Localizable.strings:
      * accessibility/AccessibilityObject.h:
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
      * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
      (createAccessibilityRoleMap):
      (-[WebAccessibilityObjectWrapper subrole]):
      (-[WebAccessibilityObjectWrapper roleDescription]):
      * platform/LocalizedStrings.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      * platform/LocalizedStrings.h:
      (WebCore):
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      * platform/chromium/LocalizedStringsChromium.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::AXDescriptionListText):
      (WebCore):
      
      Source/WebKit/chromium:
      
      Defining the role and description strings.
      
      * public/WebAccessibilityRole.h:
      * src/AssertMatchingEnums.cpp:
      
      Tools:
      
      Defining the role and description strings.
      
      * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
      
      LayoutTests:
      
      Updating expectation strings for DL role description.
      
      * platform/mac/accessibility/lists-expected.txt:
      * platform/mac/accessibility/role-subrole-roledescription-expected.txt:
      * platform/mac/accessibility/role-subrole-roledescription.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      93ff7379
  5. 18 Feb, 2013 1 commit
    • zandobersek@gmail.com's avatar
      Stop placing std::isfinite and std::signbit inside the global scope · 8c24b7a5
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=109817
      
      Reviewed by Darin Adler.
      
      Prefix calls to the isfinite and signbit methods with std:: as the two
      methods are no longer being imported into the global scope.
      
      Source/JavaScriptCore: 
      
      * assembler/MacroAssembler.h:
      (JSC::MacroAssembler::shouldBlindDouble):
      * offlineasm/cloop.rb:
      * runtime/BigInteger.h:
      (JSC::BigInteger::BigInteger):
      * runtime/DateConstructor.cpp:
      (JSC::constructDate):
      * runtime/DatePrototype.cpp:
      (JSC::fillStructuresUsingTimeArgs):
      (JSC::fillStructuresUsingDateArgs):
      (JSC::dateProtoFuncToISOString):
      (JSC::dateProtoFuncSetYear):
      * runtime/JSCJSValueInlines.h:
      (JSC::JSValue::JSValue):
      * runtime/JSGlobalObjectFunctions.cpp:
      (JSC::globalFuncIsFinite):
      * runtime/JSONObject.cpp:
      (JSC::Stringifier::appendStringifiedValue):
      * runtime/MathObject.cpp:
      (JSC::mathProtoFuncMax): Also include an opportunistic style fix.
      (JSC::mathProtoFuncMin): Ditto.
      * runtime/NumberPrototype.cpp:
      (JSC::toStringWithRadix):
      (JSC::numberProtoFuncToExponential):
      (JSC::numberProtoFuncToFixed):
      (JSC::numberProtoFuncToPrecision):
      (JSC::numberProtoFuncToString):
      * runtime/Uint16WithFraction.h:
      (JSC::Uint16WithFraction::Uint16WithFraction):
      
      Source/WebCore: 
      
      No new tests as there's no change in functionality.
      
      * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
      (WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):
      * bindings/js/JSDOMBinding.cpp:
      (WebCore::jsDateOrNull):
      * bindings/js/JSDOMBinding.h:
      (WebCore::finiteInt32Value):
      * bindings/v8/V8Binding.h:
      (WebCore::v8DateOrNull):
      * css/CSSPrimitiveValue.cpp:
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
      * html/BaseDateAndTimeInputType.cpp:
      (WebCore::BaseDateAndTimeInputType::parseToNumber):
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::setValueAsNumber):
      * html/HTMLMeterElement.cpp:
      (WebCore::HTMLMeterElement::setMin):
      (WebCore::HTMLMeterElement::setMax):
      (WebCore::HTMLMeterElement::setValue):
      (WebCore::HTMLMeterElement::setLow):
      (WebCore::HTMLMeterElement::setHigh):
      (WebCore::HTMLMeterElement::setOptimum):
      * html/HTMLProgressElement.cpp:
      (WebCore::HTMLProgressElement::value):
      (WebCore::HTMLProgressElement::setValue):
      (WebCore::HTMLProgressElement::max):
      (WebCore::HTMLProgressElement::setMax):
      * html/MonthInputType.cpp:
      (WebCore::MonthInputType::valueAsDate):
      (WebCore::MonthInputType::defaultValueForStepUp):
      (WebCore::MonthInputType::parseToNumber):
      * html/NumberInputType.cpp:
      (WebCore::NumberInputType::typeMismatchFor):
      (WebCore::NumberInputType::sanitizeValue):
      (WebCore::NumberInputType::hasBadInput):
      * html/RangeInputType.cpp:
      (WebCore::RangeInputType::typeMismatchFor):
      * html/TimeInputType.cpp:
      (WebCore::TimeInputType::defaultValueForStepUp):
      * html/canvas/CanvasPathMethods.cpp:
      (WebCore::CanvasPathMethods::moveTo):
      (WebCore::CanvasPathMethods::lineTo):
      (WebCore::CanvasPathMethods::quadraticCurveTo):
      (WebCore::CanvasPathMethods::bezierCurveTo):
      (WebCore::CanvasPathMethods::arcTo):
      (WebCore::CanvasPathMethods::arc):
      (WebCore::CanvasPathMethods::rect):
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore::CanvasRenderingContext2D::setLineWidth):
      (WebCore::CanvasRenderingContext2D::setMiterLimit):
      (WebCore::CanvasRenderingContext2D::setShadowOffsetX):
      (WebCore::CanvasRenderingContext2D::setShadowOffsetY):
      (WebCore::CanvasRenderingContext2D::setShadowBlur):
      (WebCore::lineDashSequenceIsValid):
      (WebCore::CanvasRenderingContext2D::setLineDashOffset):
      (WebCore::CanvasRenderingContext2D::scale):
      (WebCore::CanvasRenderingContext2D::rotate):
      (WebCore::CanvasRenderingContext2D::translate):
      (WebCore::CanvasRenderingContext2D::transform):
      (WebCore::CanvasRenderingContext2D::setTransform):
      (WebCore::validateRectForCanvas):
      (WebCore::CanvasRenderingContext2D::isPointInPath):
      (WebCore::CanvasRenderingContext2D::isPointInStroke):
      (WebCore::CanvasRenderingContext2D::drawImage):
      (WebCore::CanvasRenderingContext2D::createLinearGradient):
      (WebCore::CanvasRenderingContext2D::createRadialGradient):
      (WebCore::CanvasRenderingContext2D::createImageData):
      (WebCore::CanvasRenderingContext2D::getImageData):
      (WebCore::CanvasRenderingContext2D::putImageData):
      (WebCore::CanvasRenderingContext2D::drawTextInternal):
      * html/parser/HTMLParserIdioms.cpp:
      (WebCore::parseToDoubleForNumberType):
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlTimelineElement::setDuration):
      * html/shadow/MediaControls.cpp:
      (WebCore::MediaControls::reset):
      * html/shadow/MediaControlsApple.cpp:
      (WebCore::MediaControlsApple::reset):
      * html/shadow/MediaControlsBlackBerry.cpp:
      (WebCore::MediaControlFullscreenTimelineElement::setDuration):
      (WebCore::MediaControlsBlackBerry::reset):
      * inspector/InspectorValues.cpp:
      (WebCore::InspectorBasicValue::writeJSON):
      * loader/cache/CachedResource.cpp:
      (WebCore::CachedResource::currentAge):
      (WebCore::CachedResource::freshnessLifetime):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::adjustWindowRect):
      * platform/DateComponents.cpp:
      (WebCore::DateComponents::setMillisecondsSinceEpochForDate):
      (WebCore::DateComponents::setMillisecondsSinceEpochForDateTime):
      (WebCore::DateComponents::setMillisecondsSinceEpochForMonth):
      (WebCore::DateComponents::setMillisecondsSinceMidnight):
      (WebCore::DateComponents::setMonthsSinceEpoch):
      (WebCore::DateComponents::setMillisecondsSinceEpochForWeek):
      * platform/Decimal.cpp:
      (WebCore::Decimal::fromDouble):
      * platform/FileSystem.h:
      (WebCore::isValidFileTime):
      * platform/LocalizedStrings.cpp:
      (WebCore::localizedMediaTimeDescription):
      * platform/graphics/cairo/CairoUtilities.cpp:
      (WebCore::drawPatternToCairoContext):
      * platform/graphics/cairo/PathCairo.cpp:
      (WebCore::Path::addArc):
      (WebCore::Path::contains):
      * platform/graphics/cg/PathCG.cpp:
      (WebCore::Path::addArc):
      * platform/graphics/gstreamer/FullscreenVideoControllerGStreamer.cpp:
      (WebCore::FullscreenVideoControllerGStreamer::timeToString):
      * platform/graphics/openvg/PathOpenVG.cpp:
      (WebCore::Path::addArc):
      * platform/graphics/skia/SkiaUtils.h:
      (WebCore::WebCoreFloatToSkScalar):
      (WebCore::WebCoreDoubleToSkScalar):
      * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
      (WebCore::MediaPlayerPrivateQuickTimeVisualContext::maxTimeSeekable):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::localizedMediaTimeDescription):
      * platform/mac/WebVideoFullscreenHUDWindowController.mm:
      (timeToString):
      * platform/network/ResourceResponseBase.cpp:
      (WebCore::parseDateValueInHeader):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::localizedMediaTimeDescription):
      * rendering/RenderFlexibleBox.cpp:
      (WebCore::RenderFlexibleBox::resolveFlexibleLengths):
      * rendering/RenderMediaControlsChromium.cpp:
      (WebCore::formatChromiumMediaControlsTime):
      * rendering/RenderTheme.cpp:
      (WebCore::RenderTheme::formatMediaControlsTime):
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::setFontSize):
      * svg/SVGPathParser.cpp:
      (WebCore::SVGPathParser::decomposeArcToCubic):
      * xml/XPathFunctions.cpp:
      (WebCore::XPath::FunRound::round):
      * xml/XPathValue.cpp:
      (WebCore::XPath::Value::toString):
      
      Source/WebKit/win: 
      
      * FullscreenVideoController.cpp:
      (timeToString):
      
      Source/WTF: 
      
      On Solaris and OpenBSD platforms or when using Visual C++ the two methods
      are now defined (as incompatibility workarounds) inside the std namespace.
      
      * wtf/DateMath.cpp:
      (WTF::timeClip):
      * wtf/DecimalNumber.h:
      (WTF::DecimalNumber::DecimalNumber):
      * wtf/MathExtras.h:
      (std):
      (std::isfinite):
      (std::signbit):
      (lrint):
      (wtf_pow):
      (decomposeDouble):
      * wtf/MediaTime.cpp:
      (WTF::MediaTime::createWithFloat):
      (WTF::MediaTime::createWithDouble):
      * wtf/dtoa.cpp:
      (WTF::dtoa):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143232 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c24b7a5
  6. 11 Feb, 2013 1 commit
    • dino@apple.com's avatar
      Source/WebCore: Source/WebCore: Snapshotted plug-in should use shadow root · 018d5e42
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=108284
      
      Reviewed by Simon Fraser.
      
      Take three - relanding after rollout in r142400 that was caused by a global
      selector interfering with CSS Instrumentation in the Inspector.
      
      A snapshotted plugin needs to indicate to the user that it can be clicked
      to be restarted. Previously this was done with an image that had embedded
      text. Instead, we now use an internal shadow root to embed some markup that
      will display instructions that can be localised.
      
      The UA stylesheet for plug-ins provides a default styling for the label, which
      can be overridden by ports.
      
      In the process, RenderSnapshottedPlugIn no longer inherits from RenderEmbeddedObject,
      since it is only responsible for drawing a paused plug-in. The snapshot creation
      can work with the default renderer, but a shadow root requires something like
      RenderBlock in order to draw its children. We swap from one renderer to another when
      necessary either by creating the shadow root or by explicitly detaching and attaching
      the plugin element.
      
      Unfortunately this is difficult to test, because the snapshotting requires
      time to execute, and also a PluginView to be instantiated.
      
      * css/plugIns.css:
      (object::-webkit-snapshotted-plugin-content): New rules for a default label style.
      
      * platform/LocalizedStrings.cpp: Make sure all ports have plugin strings, now it is called.
      * platform/LocalizedStrings.h:
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      * platform/chromium/LocalizedStringsChromium.cpp:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      
      * html/HTMLPlugInElement.cpp:
      (WebCore::HTMLPlugInElement::defaultEventHandler): Take into account the fact
      that RenderSnapshottedPlugIn no longer is an embedded object.
      
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): New default values in constructor.
      (WebCore::HTMLPlugInElement::defaultEventHandler): Make sure to call base class.
      (WebCore::HTMLPlugInElement::willRecalcStyle): No need to reattach if we're a snapshot.
      (WebCore::HTMLPlugInImageElement::createRenderer): If we're showing a snapshot, create such
          a renderer, otherwise use the typical plug-in path.
      (WebCore::HTMLPlugInImageElement::updateSnapshot): Keep a record of the snapshot, since we'll
          need to give it to the renderer.
      (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Build a subtree that will display a label.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): New member variable to record the snapshot image and whether the label
          should show immediately.
      (WebCore::HTMLPlugInImageElement::swapRendererTimerFired): The callback function triggered when we need
          to swap to the Shadow Root.
      (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): The user has tapped on the snapshot so the plugin
          in being recreated. Make sure we reattach so that a plugin renderer will be created.
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Make sure we set the right
          displayState for snapshots.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): The new methods listed above.
      (WebCore::HTMLPlugInImageElement::setShouldShowSnapshotLabelAutomatically): Indicates whether or not
          a snapshot should be immediately labeled.
      
      * page/ChromeClient.h: No need for plugInStartLabelImage any more.
      
      * rendering/RenderSnapshottedPlugIn.cpp:
      (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn): New inheritance.
      (WebCore::RenderSnapshottedPlugIn::paint): If we're in the background paint phase, render the snapshot image.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotImage): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshot): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotWithLabel): Rename. No need for label sizes.
      (WebCore::RenderSnapshottedPlugIn::getCursor):
      (WebCore::RenderSnapshottedPlugIn::handleEvent): The renderer doesn't restart the plug-in any more. Tell the element and it will do it.
      * rendering/RenderSnapshottedPlugIn.h:
      (RenderSnapshottedPlugIn): New inheritance. Some method renaming.
      
      Source/WebKit2: Snapshotted plug-in should use shadow root
      https://bugs.webkit.org/show_bug.cgi?id=108284
      
      Reviewed by Simon Fraser.
      
      Take three of this commit - after rollout in r142400 and r142405.
      We no longer have any need for plugInStartLabelImage.
      
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Remove plugInStartLabelImage.
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Ditto.
      * WebProcess/WebCoreSupport/WebChromeClient.cpp: Ditto.
      * WebProcess/WebCoreSupport/WebChromeClient.h: Ditto.
      
      Tools: Remove use of plugInStartLabelImage
      https://bugs.webkit.org/show_bug.cgi?id=108273
      
      Reviewed by Simon Fraser.
      
      Take two - after rollout in r142405.
      Removed plugInStartLabelImage entry from client structure.
      
      * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
      (WTR::InjectedBundlePage::InjectedBundlePage):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      018d5e42
  7. 10 Feb, 2013 1 commit
    • tkent@chromium.org's avatar
      Unreviewed, rolling out r142343. · b8305ae6
      tkent@chromium.org authored
      http://trac.webkit.org/changeset/142343
      https://bugs.webkit.org/show_bug.cgi?id=108284
      
      It might make inspector/profiler/selector-profiler-url.html
      crashy.
      
      Source/WebCore:
      
      * WebCore.exp.in:
      * css/plugIns.css:
      (p):
      * html/HTMLPlugInElement.cpp:
      (WebCore::HTMLPlugInElement::defaultEventHandler):
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
      (WebCore::HTMLPlugInImageElement::createRenderer):
      (WebCore::HTMLPlugInImageElement::willRecalcStyle):
      (WebCore::HTMLPlugInImageElement::updateSnapshot):
      (WebCore::HTMLPlugInImageElement::userDidClickSnapshot):
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
      * html/HTMLPlugInImageElement.h:
      (WebCore):
      (HTMLPlugInImageElement):
      * page/ChromeClient.h:
      (WebCore::ChromeClient::plugInStartLabelImage):
      * platform/LocalizedStrings.cpp:
      * platform/LocalizedStrings.h:
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      * platform/chromium/LocalizedStringsChromium.cpp:
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore):
      * platform/qt/LocalizedStringsQt.cpp:
      * rendering/RenderSnapshottedPlugIn.cpp:
      (WebCore):
      (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
      (WebCore::RenderSnapshottedPlugIn::paint):
      (WebCore::RenderSnapshottedPlugIn::paintReplaced):
      (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
      (WebCore::RenderSnapshottedPlugIn::paintReplacedSnapshot):
      (WebCore::RenderSnapshottedPlugIn::startLabelImage):
      (WebCore::RenderSnapshottedPlugIn::paintReplacedSnapshotWithLabel):
      (WebCore::RenderSnapshottedPlugIn::getCursor):
      (WebCore::RenderSnapshottedPlugIn::handleEvent):
      (WebCore::RenderSnapshottedPlugIn::tryToFitStartLabel):
      * rendering/RenderSnapshottedPlugIn.h:
      
      Source/WebKit2:
      
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
      (WebKit::InjectedBundlePageUIClient::plugInStartLabelImage):
      (WebKit):
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
      (InjectedBundlePageUIClient):
      * WebProcess/WebCoreSupport/WebChromeClient.cpp:
      (WebKit::WebChromeClient::plugInStartLabelImage):
      (WebKit):
      * WebProcess/WebCoreSupport/WebChromeClient.h:
      (WebChromeClient):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142400 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8305ae6
  8. 08 Feb, 2013 3 commits
    • dino@apple.com's avatar
      Source/WebCore: Snapshotted plug-in should use shadow root · 3871b6c3
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=108284
      
      Reviewed by Simon Fraser.
      
      Take two! This time with updated exports file.
      
      A snapshotted plugin needs to indicate to the user that it can be clicked
      to be restarted. Previously this was done with an image that had embedded
      text. Instead, we now use an internal shadow root to embed some markup that
      will display instructions that can be localised.
      
      The UA stylesheet for plug-ins provides a default styling for the label, which
      can be overridden by ports.
      
      In the process, RenderSnapshottedPlugIn no longer inherits from RenderEmbeddedObject,
      since it is only responsible for drawing a paused plug-in. The snapshot creation
      can work with the default renderer, but a shadow root requires something like
      RenderBlock in order to draw its children. We swap from one renderer to another when
      necessary either by creating the shadow root or by explicitly detaching and attaching
      the plugin element.
      
      Unfortunately this is difficult to test, because the snapshotting requires
      time to execute, and also a PluginView to be instantiated.
      
      * WebCore.exp.in: Export the InlineBox interface.
      
      * css/plugIns.css:
      (object::-webkit-snapshotted-plugin-content): New rules for a default label style.
      
      * platform/LocalizedStrings.cpp: Make sure all ports have plugin strings, now it is called.
      * platform/LocalizedStrings.h:
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      * platform/chromium/LocalizedStringsChromium.cpp:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      
      * html/HTMLPlugInElement.cpp:
      (WebCore::HTMLPlugInElement::defaultEventHandler): Take into account the fact
      that RenderSnapshottedPlugIn no longer is an embedded object.
      
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): New default values in constructor.
      (WebCore::HTMLPlugInElement::defaultEventHandler): Make sure to call base class.
      (WebCore::HTMLPlugInElement::willRecalcStyle): No need to reattach if we're a snapshot.
      (WebCore::HTMLPlugInImageElement::createRenderer): If we're showing a snapshot, create such
          a renderer, otherwise use the typical plug-in path.
      (WebCore::HTMLPlugInImageElement::updateSnapshot): Keep a record of the snapshot, since we'll
          need to give it to the renderer.
      (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Build a subtree that will display a label.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): New member variable to record the snapshot image and whether the label
          should show immediately.
      (WebCore::HTMLPlugInImageElement::swapRendererTimerFired): The callback function triggered when we need
          to swap to the Shadow Root.
      (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): The user has tapped on the snapshot so the plugin
          in being recreated. Make sure we reattach so that a plugin renderer will be created.
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Make sure we set the right
          displayState for snapshots.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): The new methods listed above.
      (WebCore::HTMLPlugInImageElement::setShouldShowSnapshotLabelAutomatically): Indicates whether or not
          a snapshot should be immediately labeled.
      
      * page/ChromeClient.h: No need for plugInStartLabelImage any more.
      
      * rendering/RenderSnapshottedPlugIn.cpp:
      (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn): New inheritance.
      (WebCore::RenderSnapshottedPlugIn::paint): If we're in the background paint phase, render the snapshot image.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotImage): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshot): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotWithLabel): Rename. No need for label sizes.
      (WebCore::RenderSnapshottedPlugIn::getCursor):
      (WebCore::RenderSnapshottedPlugIn::handleEvent): The renderer doesn't restart the plug-in any more. Tell the element and it will do it.
      * rendering/RenderSnapshottedPlugIn.h:
      (RenderSnapshottedPlugIn): New inheritance. Some method renaming.
      
      Source/WebKit2:
      
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
      (InjectedBundlePageUIClient):
      * WebProcess/WebCoreSupport/WebChromeClient.cpp:
      * WebProcess/WebCoreSupport/WebChromeClient.h:
      (WebChromeClient):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3871b6c3
    • dino@apple.com's avatar
      Rolling out r142333 and r142337 which broke Mac Release builds. · 2f5cd4df
      dino@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142341 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2f5cd4df
    • dino@apple.com's avatar
      Snapshotted plug-in should use shadow root · 606baae1
      dino@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=108284
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      A snapshotted plugin needs to indicate to the user that it can be clicked
      to be restarted. Previously this was done with an image that had embedded
      text. Instead, we now use an internal shadow root to embed some markup that
      will display instructions that can be localised.
      
      The UA stylesheet for plug-ins provides a default styling for the label, which
      can be overridden by ports.
      
      In the process, RenderSnapshottedPlugIn no longer inherits from RenderEmbeddedObject,
      since it is only responsible for drawing a paused plug-in. The snapshot creation
      can work with the default renderer, but a shadow root requires something like
      RenderBlock in order to draw its children. We swap from one renderer to another when
      necessary either by creating the shadow root or by explicitly detaching and attaching
      the plugin element.
      
      Unfortunately this is difficult to test, because the snapshotting requires
      time to execute, and also a PluginView to be instantiated.
      
      * css/plugIns.css:
      (object::-webkit-snapshotted-plugin-content): New rules for a default label style.
      
      * platform/LocalizedStrings.cpp: Make sure all ports have plugin strings, now it is called.
      * platform/LocalizedStrings.h:
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      * platform/chromium/LocalizedStringsChromium.cpp:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      
      * html/HTMLPlugInElement.cpp:
      (WebCore::HTMLPlugInElement::defaultEventHandler): Take into account the fact
      that RenderSnapshottedPlugIn no longer is an embedded object.
      
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): New default values in constructor.
      (WebCore::HTMLPlugInElement::defaultEventHandler): Make sure to call base class.
      (WebCore::HTMLPlugInElement::willRecalcStyle): No need to reattach if we're a snapshot.
      (WebCore::HTMLPlugInImageElement::createRenderer): If we're showing a snapshot, create such
          a renderer, otherwise use the typical plug-in path.
      (WebCore::HTMLPlugInImageElement::updateSnapshot): Keep a record of the snapshot, since we'll
          need to give it to the renderer.
      (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Build a subtree that will display a label.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): New member variable to record the snapshot image and whether the label
          should show immediately.
      (WebCore::HTMLPlugInImageElement::swapRendererTimerFired): The callback function triggered when we need
          to swap to the Shadow Root.
      (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): The user has tapped on the snapshot so the plugin
          in being recreated. Make sure we reattach so that a plugin renderer will be created.
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Make sure we set the right
          displayState for snapshots.
      * html/HTMLPlugInImageElement.h:
      (HTMLPlugInImageElement): The new methods listed above.
      (WebCore::HTMLPlugInImageElement::setShouldShowSnapshotLabelAutomatically): Indicates whether or not
          a snapshot should be immediately labeled.
      
      * page/ChromeClient.h: No need for plugInStartLabelImage any more.
      
      * rendering/RenderSnapshottedPlugIn.cpp:
      (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn): New inheritance.
      (WebCore::RenderSnapshottedPlugIn::paint): If we're in the background paint phase, render the snapshot image.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotImage): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshot): Rename.
      (WebCore::RenderSnapshottedPlugIn::paintSnapshotWithLabel): Rename. No need for label sizes.
      (WebCore::RenderSnapshottedPlugIn::getCursor):
      (WebCore::RenderSnapshottedPlugIn::handleEvent): The renderer doesn't restart the plug-in any more. Tell the element and it will do it.
      * rendering/RenderSnapshottedPlugIn.h:
      (RenderSnapshottedPlugIn): New inheritance. Some method renaming.
      
      Source/WebKit2:
      
      We no longer have any need for plugInStartLabelImage.
      
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Remove plugInStartLabelImage.
      * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Ditto.
      * WebProcess/WebCoreSupport/WebChromeClient.cpp: Ditto.
      * WebProcess/WebCoreSupport/WebChromeClient.h: Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      606baae1
  9. 28 Jan, 2013 1 commit
    • commit-queue@webkit.org's avatar
      HTML5 promotes DL from specific 'definition list' to superset 'description... · fe847770
      commit-queue@webkit.org authored
      HTML5 promotes DL from specific 'definition list' to superset 'description list'; accessibility strings and accessors should be updated to match.
      https://bugs.webkit.org/show_bug.cgi?id=107650
      
      Source/WebCore:
      
      Patch by James Craig <james@cookiecrook.com> on 2013-01-28
      Reviewed by Chris Fleizach.
      
      Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).
      
      Test: platform/mac/accessibility/definition-list-term.html:
      Test: accessibility/lists.html
      
      * English.lproj/Localizable.strings:
      * accessibility/AccessibilityList.cpp:
      (WebCore::AccessibilityList::isDescriptionList):
      * accessibility/AccessibilityList.h:
      (AccessibilityList):
      * accessibility/AccessibilityObject.cpp:
      (WebCore::createARIARoleMap):
      * accessibility/AccessibilityObject.h:
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
      * accessibility/mac/WebAccessibilityObjectWrapper.mm:
      (createAccessibilityRoleMap):
      (-[WebAccessibilityObjectWrapper subrole]):
      (-[WebAccessibilityObjectWrapper roleDescription]):
      * platform/LocalizedStrings.cpp:
      (WebCore::AXDefinitionText):
      (WebCore::AXDescriptionListTermText):
      (WebCore):
      (WebCore::AXDescriptionListDetailText):
      * platform/LocalizedStrings.h:
      (WebCore):
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::AXDefinitionText):
      (WebCore::AXDescriptionListDetailText):
      (WebCore):
      (WebCore::AXDescriptionListTermText):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::AXDefinitionText):
      (WebCore):
      (WebCore::AXDescriptionListTermText):
      (WebCore::AXDescriptionListDetailText):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::AXDefinitionText):
      (WebCore):
      (WebCore::AXDescriptionListTermText):
      (WebCore::AXDescriptionListDetailText):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::AXDefinitionText):
      (WebCore::AXDescriptionListTermText):
      (WebCore):
      (WebCore::AXDescriptionListDetailText):
      
      Source/WebKit/chromium:
      
      Patch by James Craig <james@cookiecrook.com> on 2013-01-28
      Reviewed by Chris Fleizach.
      
      Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).
      
      * public/WebAccessibilityRole.h:
      * src/AssertMatchingEnums.cpp:
      * src/LocalizedStrings.cpp:
      (WebCore::AXDefinitionText):
      (WebCore):
      (WebCore::AXDescriptionListTermText):
      (WebCore::AXDescriptionListDetailText):
      
      Tools:
      
      Patch by James Craig <james@cookiecrook.com> on 2013-01-28
      Reviewed by Chris Fleizach.
      
      Updating accessibility strings and accessors for DL/DT/DD.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/Utilities.js:
      (createDescriptionList):
      * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ViewController.js:
      * DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
      
      LayoutTests:
      
      Patch by James Craig <james@cookiecrook.com> on 2013-01-28
      Reviewed by Chris Fleizach.
      
      Updating accessibility strings and accessors for DL/DT/DD; new one for [role="definition"] (previously it reused the role/desc for DD).
      Removed gtk expectation as the expectation has changed: platform/gtk/accessibility/lists-expected.txt
      
      * accessibility/lists.html:
      * platform/gtk/accessibility/lists-expected.txt: Removed.
      * platform/mac/accessibility/definition-list-term-expected.txt:
      * platform/mac/accessibility/definition-list-term.html:
      * platform/mac/accessibility/lists-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe847770
  10. 27 Nov, 2012 1 commit
    • tkent@chromium.org's avatar
      Implement ValidityState::badInput · 1b0a1ce8
      tkent@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102861
      
      Reviewed by Hajime Morita.
      
      Source/WebCore:
      
      Add ValidityState::badInput, add hasBadInput, which always returns
      false, to FormAssociatedElement, HTMLInputElement, and InputType.
      
      For NumberInputType, we had hasUnacceptableValue, which was a hack to
      make an input element match to :invalid if the element had non-number
      strings. We don't need the hack any more because badInput affects :invalid
      style. hasUnacceptableValue is re-used for hasBadInput implementation.
      We cleared invalid numbers when elements lost focus to tell users that
      the element had invalid numbers. We don't need this behavior because the
      interactive validation tells it.
      
      For date/time input types, we should make an input badInput when the
      input has empty value but its sub-fields have values. It covers both of
      partial input cases such as 12/--/2012 and invalid dates such as
      02/31/2012.
      
      For other types, ValidityState::badInput always returns false.
      
      This patch doesn't contain tests for badInput validation messages. They
      will be added later.
      
      Tests: fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html
             fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html
             fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html
             fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html
             fast/forms/number/number-validity-badinput.html
             fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html
             fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html
      
      * html/ValidityState.idl: Add badInput IDL attribute.
      * html/ValidityState.h:
      (ValidityState): Add badInput.
      * html/ValidityState.cpp:
      (WebCore::ValidityState::badInput):
      Added. Calls FormAssociatedElement::hasBadInput.
      
      * html/FormAssociatedElement.h:
      (FormAssociatedElement): Add hasBadInput.
      * html/FormAssociatedElement.cpp:
      (WebCore::FormAssociatedElement::hasBadInput):
      Added. It always returns false.
      (WebCore::FormAssociatedElement::valid): Takes account of hasBadInput().
      
      * html/HTMLInputElement.h:
      (HTMLInputElement):
      Remove hasUnacceptableValue, and add hasBadInput override.
      * html/HTMLInputElement.cpp:
      (WebCore::HTMLInputElement::hasBadInput):
      Added. Delegate to InputType::hasBadInput.
      (WebCore): Remove hasUnacceptableValue.
      
      * html/InputType.h:
      (InputType): Add hasBadInput and badInputText, and remove
      hasUnacceptableValue.
      * html/InputType.cpp:
      (WebCore::InputType::hasBadInput): Added. Returns false.
      (WebCore::InputType::badInputText):
      Added. This function should not be called because hasBadInput always
      returns false.
      (WebCore::InputType::validationMessage):
      Supports badInput. This returns badInputText if hasBadInput is true.
      
      * html/NumberInputType.h:
      (NumberInputType): Add hasBadInput and badInputTest. Remove
      handleBlurEvent and hasUnacceptableValue.
      * html/NumberInputType.cpp:
      Remove handleBlurEvent, which cleared invalid number strings.
      (WebCore::NumberInputType::hasBadInput):
      Added. We don't need to check existence of a renderer. The standard form
      validation feature doesn't care of it.
      (WebCore::NumberInputType::badInputText): Returns
      validationMessageBadInputForNumberText defined in LocalizedStrings.h.
      * css/SelectorChecker.cpp:
      (WebCore::SelectorChecker::checkOneSelector):
      Remove a hack for hasUnacceptableValue. isValidFormControlElement takes
      account of badInput.
      * dom/Element.h: Remove hasUnacceptableValue.
      
      * html/BaseMultipleFieldsDateAndTimeInputType.h:
      (BaseMultipleFieldsDateAndTimeInputType): Add hasBadInput and badInputText.
      * html/BaseMultipleFieldsDateAndTimeInputType.cpp:
      (WebCore::BaseMultipleFieldsDateAndTimeInputType::badInputText):
      Returns validationMessageBadInputForDateTimeText defined in LocalizedStrings.h.
      (WebCore::BaseMultipleFieldsDateAndTimeInputType::hasBadInput):
      Added.
      (WebCore::BaseMultipleFieldsDateAndTimeInputType::setValue):
      Add setNeedsValidityCheck call. It is needed because
      updateInnerTextValue can modify subfields empty state.
      
      * html/TextFieldInputType.cpp:
      (WebCore::TextFieldInputType::subtreeHasChanged): Update a comment.
      * platform/LocalizedStrings.h:
      (WebCore): Add validationMessageBadInputForNumberText and
      validationMessageBadInputForDateTimeText.
      * platform/LocalizedStrings.cpp:
      (WebCore::validationMessageBadInputForNumberText):
      Added a placeholder implementation. This should be fixed later.
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::validationMessageBadInputForNumberText): Ditto.
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::validationMessageBadInputForNumberText): Ditto.
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::validationMessageBadInputForNumberText): Ditto.
      
      Source/WebKit/chromium:
      
      * src/LocalizedStrings.cpp:
      Add placeholder implementations for new localized string functions.
      We'll update them in another patch.
      (WebCore::validationMessageBadInputForNumberText):
      (WebCore::validationMessageBadInputForDateTimeText):
      
      LayoutTests:
      
      * fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html: Added.
      * fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html: Added.
      * fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html: Added.
      * fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html: Added.
      * fast/forms/number/number-unacceptable-style-expected.txt: Removed.
      * fast/forms/number/number-validity-badinput-expected.txt: Added.
      * fast/forms/number/number-validity-badinput.html: Renamed from LayoutTests/fast/forms/number/number-unacceptable-style.html.
      * fast/forms/resources/multiple-fields-validity-badinput.js: Added.
      * fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html: Added.
      * fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput-expected.txt: Added.
      * fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1b0a1ce8
  11. 07 Nov, 2012 1 commit
    • allan.jensen@digia.com's avatar
      [Qt] Open link in this window action · 04837df7
      allan.jensen@digia.com authored
      https://bugs.webkit.org/show_bug.cgi?id=101226
      
      Reviewed by Simon Hausmann.
      
      Source/WebCore:
      
      Adds the action to the WebCore context-menu controller.
      
      * page/ContextMenuController.cpp:
      (WebCore::ContextMenuController::contextMenuItemSelected):
      (WebCore::ContextMenuController::checkOrEnableIfNeeded):
      * platform/ContextMenuItem.h:
      * platform/LocalizedStrings.h:
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::contextMenuItemTagOpenLinkInThisWindow):
      
      Source/WebKit/qt:
      
      Adds the action to QtWebKit.
      
      * Api/qwebpage.cpp:
      (webActionForContextMenuAction):
      (QWebPage::triggerAction):
      (QWebPage::action):
      * Api/qwebpage.h:
      
      Tools:
      
      Populates the context-menu with the new action when the default action is to open in a new window.
      
      * QtTestBrowser/webview.cpp:
      (createContextMenu):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133763 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04837df7
  12. 02 Nov, 2012 1 commit
    • andersca@apple.com's avatar
      Add a PluginInactive plug-in unavailability reason · c6ca2a74
      andersca@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=101089
      
      Reviewed by Sam Weinig.
      
      Source/WebCore:
      
      This is to be used by Mac WebKit and WebKit2 shortly.
      
      * English.lproj/Localizable.strings:
      * platform/LocalizedStrings.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      * platform/LocalizedStrings.h:
      (WebCore):
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::unavailablePluginReplacementText):
      * rendering/RenderEmbeddedObject.h:
      
      Source/WebKit/chromium:
      
      * src/LocalizedStrings.cpp:
      (WebCore::inactivePluginText):
      (WebCore):
      
      Source/WebKit2:
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::unavailablePluginButtonClicked):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6ca2a74
  13. 06 Sep, 2012 1 commit
    • weinig@apple.com's avatar
      Part 2 of removing PlatformString.h, remove PlatformString.h · 3f5ab024
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95931
      
      Reviewed by Adam Barth.
      
      Remove PlatformString.h
      
      Source/WebCore:
      
      * GNUmakefile.list.am:
      * Modules/filesystem/AsyncFileWriter.h:
      * Modules/filesystem/DOMFilePath.h:
      * Modules/filesystem/DOMFileSystemBase.h:
      * Modules/filesystem/DirectoryEntry.h:
      * Modules/filesystem/DirectoryEntrySync.h:
      * Modules/filesystem/DirectoryReader.h:
      * Modules/filesystem/DirectoryReaderBase.h:
      * Modules/filesystem/DirectoryReaderSync.h:
      * Modules/filesystem/EntryBase.cpp:
      * Modules/filesystem/EntrySync.h:
      * Modules/filesystem/FileEntrySync.h:
      * Modules/filesystem/FileSystemCallbacks.h:
      * Modules/filesystem/LocalFileSystem.h:
      * Modules/geolocation/GeolocationError.h:
      * Modules/geolocation/Geoposition.h:
      * Modules/geolocation/PositionError.h:
      * Modules/indexeddb/IDBAny.h:
      * Modules/indexeddb/IDBDatabaseBackendInterface.h:
      * Modules/indexeddb/IDBDatabaseCallbacks.h:
      * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
      * Modules/indexeddb/IDBDatabaseError.h:
      * Modules/indexeddb/IDBFactory.h:
      * Modules/indexeddb/IDBFactoryBackendInterface.h:
      * Modules/indexeddb/IDBIndex.h:
      * Modules/indexeddb/IDBIndexBackendInterface.h:
      * Modules/indexeddb/IDBKey.h:
      * Modules/indexeddb/IDBKeyPath.h:
      * Modules/indexeddb/IDBMetadata.h:
      * Modules/indexeddb/IDBObjectStore.h:
      * Modules/indexeddb/IDBObjectStoreBackendInterface.h:
      * Modules/indexeddb/IDBTransactionBackendInterface.h:
      * Modules/indexeddb/IDBUpgradeNeededEvent.h:
      * Modules/indexeddb/IDBVersionChangeEvent.h:
      * Modules/mediastream/MediaStreamTrack.h:
      * Modules/networkinfo/NetworkInfoConnection.h:
      * Modules/notifications/DOMWindowNotifications.h:
      * Modules/speech/SpeechGrammar.h:
      * Modules/speech/SpeechRecognition.h:
      * Modules/speech/SpeechRecognitionAlternative.h:
      * Modules/speech/SpeechRecognitionClient.h:
      * Modules/speech/SpeechRecognitionError.h:
      * Modules/webaudio/AudioContext.cpp:
      * Modules/webaudio/AudioParam.h:
      * Modules/webdatabase/AbstractDatabase.h:
      * Modules/webdatabase/ChangeVersionWrapper.h:
      * Modules/webdatabase/DOMWindowWebDatabase.h:
      * Modules/webdatabase/Database.h:
      * Modules/webdatabase/DatabaseAuthorizer.cpp:
      * Modules/webdatabase/DatabaseAuthorizer.h:
      * Modules/webdatabase/DatabaseDetails.h:
      * Modules/webdatabase/DatabaseSync.h:
      * Modules/webdatabase/DatabaseTask.h:
      * Modules/webdatabase/DatabaseTracker.h:
      * Modules/webdatabase/OriginUsageRecord.h:
      * Modules/webdatabase/SQLError.h:
      * Modules/webdatabase/SQLStatement.h:
      * Modules/webdatabase/SQLStatementSync.h:
      * Modules/webdatabase/SQLTransaction.cpp:
      * Modules/webdatabase/SQLTransactionSync.cpp:
      * Modules/webdatabase/SQLTransactionSync.h:
      * Modules/webdatabase/WorkerContextWebDatabase.h:
      * Modules/webdatabase/chromium/DatabaseTrackerChromium.cpp:
      * Modules/webdatabase/chromium/QuotaTracker.h:
      * Modules/websockets/ThreadableWebSocketChannel.cpp:
      * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
      * Modules/websockets/WebSocketHandshake.h:
      * Modules/websockets/WebSocketHandshakeResponse.h:
      * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
      * Modules/websockets/WorkerThreadableWebSocketChannel.h:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/gobject/ConvertToUTF8String.cpp:
      * bindings/js/JSCSSStyleDeclarationCustom.cpp:
      * bindings/js/JSClipboardCustom.cpp:
      * bindings/js/JSImageDataCustom.cpp:
      * bindings/js/JSInspectorFrontendHostCustom.cpp:
      * bindings/js/JSLazyEventListener.h:
      * bindings/js/JSStorageCustom.cpp:
      * bindings/js/JSXSLTProcessorCustom.cpp:
      * bindings/js/JavaScriptCallFrame.cpp:
      * bindings/js/ScheduledAction.h:
      * bindings/js/ScriptDebugServer.h:
      * bindings/js/ScriptHeapSnapshot.h:
      * bindings/js/ScriptValue.h:
      * bindings/js/SerializedScriptValue.h:
      * bindings/objc/DOMCustomXPathNSResolver.mm:
      * bindings/objc/DOMXPath.mm:
      * bindings/objc/WebScriptObject.mm:
      * bindings/scripts/CodeGeneratorJS.pm:
      (AddIncludesForTypeInImpl):
      (AddIncludesForSVGAnimatedType):
      * bindings/scripts/CodeGeneratorV8.pm:
      (AddIncludesForType):
      * bindings/v8/Dictionary.h:
      * bindings/v8/JavaScriptCallFrame.h:
      * bindings/v8/NPV8Object.cpp:
      * bindings/v8/ScriptDebugServer.h:
      * bindings/v8/ScriptFunctionCall.h:
      * bindings/v8/ScriptHeapSnapshot.h:
      * bindings/v8/ScriptProfile.h:
      * bindings/v8/ScriptProfileNode.h:
      * bindings/v8/ScriptProfiler.h:
      * bindings/v8/ScriptSourceCode.h:
      * bindings/v8/V8Binding.cpp:
      * bindings/v8/V8DOMWrapper.h:
      * bindings/v8/V8LazyEventListener.h:
      * bindings/v8/V8NPUtils.cpp:
      * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
      * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
      * bindings/v8/custom/V8LocationCustom.cpp:
      * bridge/IdentifierRep.cpp:
      * bridge/NP_jsobject.cpp:
      * bridge/c/c_utility.cpp:
      * css/CSSBasicShapes.h:
      * css/CSSBorderImageSliceValue.cpp:
      * css/CSSCharsetRule.h:
      * css/CSSCursorImageValue.cpp:
      * css/CSSFontFaceSrcValue.h:
      * css/CSSGradientValue.cpp:
      * css/CSSInheritedValue.cpp:
      * css/CSSInitialValue.cpp:
      * css/CSSLineBoxContainValue.cpp:
      * css/CSSMediaRule.h:
      * css/CSSProperty.cpp:
      * css/CSSPropertySourceData.cpp:
      * css/CSSPropertySourceData.h:
      * css/CSSReflectValue.cpp:
      * css/CSSTimingFunctionValue.cpp:
      * css/CSSUnicodeRangeValue.cpp:
      * css/CSSValueList.cpp:
      * css/Counter.h:
      * css/FontFeatureValue.h:
      * css/FontValue.cpp:
      * css/MediaQuery.h:
      * css/MediaQueryEvaluator.h:
      * css/MediaQueryListListener.h:
      * css/ShadowValue.cpp:
      * css/StyleMedia.h:
      * css/StyleSheet.h:
      * css/StyleSheetList.cpp:
      * css/WebKitCSSMatrix.h:
      * css/WebKitCSSTransformValue.cpp:
      * dom/DOMStringList.h:
      * dom/DOMStringMap.h:
      * dom/DocumentMarker.h:
      * dom/ErrorEvent.h:
      * dom/ExceptionBase.h:
      * dom/MessagePortChannel.h:
      * dom/MutationRecord.h:
      * dom/TransformSource.h:
      * dom/ViewportArguments.cpp:
      * editing/DOMTransactionStep.h:
      * editing/EditingStyle.h:
      * editing/MarkupAccumulator.h:
      * editing/SmartReplaceICU.cpp:
      * editing/SpellChecker.h:
      * editing/SurroundingText.h:
      * fileapi/AsyncFileStream.cpp:
      * fileapi/Blob.h:
      * fileapi/BlobURL.cpp:
      * fileapi/File.h:
      * history/HistoryItem.h:
      * history/blackberry/HistoryItemViewState.h:
      * history/cf/HistoryPropertyList.h:
      * html/DOMFormData.cpp:
      * html/DOMURL.h:
      * html/MicroDataItemValue.h:
      * html/PublicURLManager.h:
      * html/canvas/CanvasPattern.cpp:
      * html/canvas/CanvasRenderingContext2D.h:
      * html/canvas/CanvasStyle.h:
      * html/canvas/WebGLActiveInfo.h:
      * html/canvas/WebGLGetInfo.h:
      * html/canvas/WebGLRenderingContext.h:
      * html/parser/CSSPreloadScanner.h:
      * html/parser/HTMLEntitySearch.h:
      * html/parser/HTMLEntityTable.h:
      * html/parser/HTMLMetaCharsetParser.cpp:
      * inspector/CodeGeneratorInspector.py:
      (InspectorFrontend_h):
      * inspector/ContentSearchUtils.h:
      * inspector/InjectedScript.cpp:
      * inspector/InjectedScriptBase.cpp:
      * inspector/InjectedScriptManager.h:
      * inspector/InjectedScriptModule.h:
      * inspector/InjectedScriptWebGLModule.h:
      * inspector/InspectorAgent.h:
      * inspector/InspectorCSSAgent.h:
      * inspector/InspectorController.h:
      * inspector/InspectorDOMDebuggerAgent.h:
      * inspector/InspectorDOMStorageAgent.h:
      * inspector/InspectorDatabaseAgent.h:
      * inspector/InspectorDatabaseResource.h:
      * inspector/InspectorFrontendClientLocal.cpp:
      * inspector/InspectorFrontendClientLocal.h:
      * inspector/InspectorFrontendHost.h:
      * inspector/InspectorIndexedDBAgent.h:
      * inspector/InspectorPageAgent.h:
      * inspector/InspectorProfilerAgent.h:
      * inspector/InspectorResourceAgent.h:
      * inspector/InspectorState.h:
      * inspector/InspectorStyleSheet.h:
      * inspector/InspectorStyleTextEditor.h:
      * inspector/InspectorValues.h:
      * inspector/InspectorWebGLAgent.h:
      * inspector/InspectorWorkerResource.h:
      * inspector/ScriptArguments.h:
      * inspector/ScriptBreakpoint.h:
      * inspector/ScriptCallFrame.h:
      * inspector/ScriptDebugListener.h:
      * inspector/TimelineRecordFactory.h:
      * inspector/generate-inspector-protocol-version:
      (main):
      * loader/DocumentLoader.cpp:
      * loader/DocumentWriter.h:
      * loader/FTPDirectoryParser.h:
      * loader/FormState.h:
      * loader/HistoryController.h:
      * loader/PolicyChecker.h:
      * loader/ResourceLoadScheduler.h:
      * loader/SubframeLoader.h:
      * loader/SubstituteData.h:
      * loader/WorkerThreadableLoader.h:
      * loader/appcache/ApplicationCache.h:
      * loader/appcache/ApplicationCacheGroup.h:
      * loader/archive/ArchiveFactory.cpp:
      * loader/archive/ArchiveResourceCollection.h:
      * loader/cache/CachedResource.h:
      * loader/cache/MemoryCache.h:
      * loader/icon/IconRecord.h:
      * loader/icon/PageURLRecord.h:
      * loader/mac/LoaderNSURLExtras.mm:
      * loader/win/DocumentLoaderWin.cpp:
      * page/Console.cpp:
      * page/Coordinates.h:
      * page/DOMSelection.cpp:
      * page/EventSource.cpp:
      * page/GroupSettings.h:
      * page/NavigatorBase.cpp:
      * page/OriginAccessEntry.h:
      * page/Page.h:
      * page/SecurityOrigin.h:
      * page/SpeechInputResult.h:
      * page/UserContentURLPattern.h:
      * page/WindowFeatures.cpp:
      * page/WindowFeatures.h:
      * page/WorkerNavigator.h:
      * page/animation/AnimationControllerPrivate.h:
      * platform/AsyncFileSystem.h:
      * platform/AsyncFileSystemCallbacks.h:
      * platform/ContentType.h:
      * platform/ContextMenu.h:
      * platform/ContextMenuItem.h:
      * platform/Cookie.h:
      * platform/CrossThreadCopier.cpp:
      * platform/DateComponents.cpp:
      * platform/FileChooser.h:
      * platform/FileStream.cpp:
      * platform/FileSystem.h:
      * platform/KURL.cpp:
      (WebCore):
      * platform/KURL.h:
      * platform/KURLHash.h:
      * platform/KillRing.h:
      * platform/Language.cpp:
      * platform/Length.cpp:
      * platform/LinkHash.cpp:
      * platform/Logging.cpp:
      * platform/MIMETypeRegistry.h:
      * platform/SSLKeyGenerator.h:
      * platform/SchemeRegistry.h:
      * platform/SharedBuffer.h:
      * platform/Theme.h:
      * platform/UUID.h:
      * platform/animation/Animation.h:
      * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
      * platform/blackberry/CookieManager.h:
      * platform/blackberry/CookieMap.h:
      * platform/blackberry/DragDataBlackBerry.cpp:
      * platform/blackberry/KURLBlackBerry.cpp:
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      * platform/blackberry/SSLKeyGeneratorBlackBerry.cpp:
      * platform/blackberry/TemporaryLinkStubs.cpp:
      * platform/cf/FileSystemCF.cpp:
      * platform/cf/SchedulePair.h:
      * platform/chromium/ChromiumDataObject.h:
      * platform/chromium/ClipboardUtilitiesChromium.cpp:
      * platform/chromium/DragDataChromium.cpp:
      * platform/chromium/FileSystemChromium.cpp:
      * platform/chromium/FileSystemChromiumMac.mm:
      * platform/chromium/LanguageChromium.cpp:
      * platform/chromium/SSLKeyGeneratorChromium.cpp:
      * platform/cocoa/KeyEventCocoa.mm:
      * platform/efl/ErrorsEfl.h:
      * platform/efl/LanguageEfl.cpp:
      * platform/efl/LocalizedStringsEfl.cpp:
      * platform/efl/LoggingEfl.cpp:
      * platform/efl/PasteboardEfl.cpp:
      * platform/efl/PlatformScreenEfl.cpp:
      * platform/graphics/ANGLEWebKitBridge.h:
      * platform/graphics/BitmapImage.cpp:
      * platform/graphics/FontPlatformData.cpp:
      * platform/graphics/GlyphPageTreeNode.cpp:
      * platform/graphics/GraphicsContext3D.h:
      * platform/graphics/GraphicsTypes.cpp:
      * platform/graphics/SegmentedFontData.cpp:
      * platform/graphics/blackberry/IconBlackBerry.cpp:
      * platform/graphics/blackberry/LayerData.h:
      * platform/graphics/blackberry/LayerFilterRenderer.cpp:
      * platform/graphics/blackberry/LayerRenderer.cpp:
      * platform/graphics/blackberry/skia/PlatformSupport.h:
      * platform/graphics/ca/PlatformCALayer.h:
      * platform/graphics/ca/PlatformCALayerClient.h:
      * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
      * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
      * platform/graphics/cairo/ImageBufferCairo.cpp:
      * platform/graphics/cairo/PathCairo.cpp:
      * platform/graphics/cg/ImageSourceCGMac.mm:
      * platform/graphics/cg/PathCG.cpp:
      * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      * platform/graphics/chromium/IconChromium.cpp:
      * platform/graphics/chromium/IconChromiumAndroid.cpp:
      * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
      * platform/graphics/efl/IconEfl.cpp:
      * platform/graphics/filters/FEComposite.h:
      * platform/graphics/filters/FEDisplacementMap.h:
      * platform/graphics/filters/SourceAlpha.cpp:
      * platform/graphics/filters/SourceAlpha.h:
      * platform/graphics/filters/SourceGraphic.cpp:
      * platform/graphics/filters/SourceGraphic.h:
      * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
      * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
      * platform/graphics/mac/IconMac.mm:
      * platform/graphics/mac/ImageMac.mm:
      * platform/graphics/opentype/OpenTypeUtilities.h:
      * platform/graphics/openvg/PathOpenVG.cpp:
      * platform/graphics/pango/FontPlatformDataPango.cpp:
      * platform/graphics/qt/FontCacheQt.cpp:
      * platform/graphics/qt/FontPlatformDataQt.cpp:
      * platform/graphics/qt/IconQt.cpp:
      * platform/graphics/qt/ImageQt.cpp:
      * platform/graphics/qt/PathQt.cpp:
      * platform/graphics/skia/FontCustomPlatformData.h:
      * platform/graphics/skia/ImageSkia.cpp:
      * platform/graphics/win/FontCustomPlatformData.h:
      * platform/graphics/win/FontPlatformDataCGWin.cpp:
      * platform/graphics/win/FontPlatformDataCairoWin.cpp:
      * platform/graphics/win/FontPlatformDataWin.cpp:
      * platform/graphics/win/IconWin.cpp:
      * platform/graphics/win/ImageCGWin.cpp:
      * platform/graphics/win/ImageCairoWin.cpp:
      * platform/graphics/win/SimpleFontDataCGWin.cpp:
      * platform/graphics/wince/FontCustomPlatformData.h:
      * platform/graphics/wince/FontPlatformData.cpp:
      * platform/graphics/wince/ImageWinCE.cpp:
      * platform/graphics/wince/MediaPlayerProxy.cpp:
      * platform/graphics/wince/PathWinCE.cpp:
      * platform/graphics/wince/PlatformPathWinCE.cpp:
      * platform/graphics/wx/FontCacheWx.cpp:
      * platform/graphics/wx/FontPlatformDataWx.cpp:
      * platform/graphics/wx/IconWx.cpp:
      * platform/graphics/wx/PathWx.cpp:
      * platform/gtk/ErrorsGtk.h:
      * platform/gtk/FileSystemGtk.cpp:
      * platform/gtk/GtkPopupMenu.h:
      * platform/gtk/KeyBindingTranslator.h:
      * platform/gtk/LanguageGtk.cpp:
      * platform/gtk/LocalizedStringsGtk.cpp:
      * platform/gtk/LoggingGtk.cpp:
      * platform/gtk/PasteboardGtk.cpp:
      * platform/image-decoders/ImageDecoder.h:
      * platform/leveldb/LevelDBSlice.h:
      * platform/mac/FileSystemMac.mm:
      * platform/mediastream/MediaStreamSource.h:
      * platform/mock/GeolocationClientMock.h:
      * platform/network/BlobData.h:
      * platform/network/BlobRegistryImpl.h:
      * platform/network/BlobResourceHandle.h:
      * platform/network/Credential.h:
      * platform/network/FormData.h:
      * platform/network/FormDataBuilder.h:
      * platform/network/HTTPParsers.cpp:
      * platform/network/HTTPRequest.h:
      * platform/network/HTTPValidation.cpp:
      * platform/network/ProtectionSpace.h:
      * platform/network/ResourceErrorBase.h:
      * platform/network/SocketStreamErrorBase.h:
      * platform/network/blackberry/DNSBlackBerry.cpp:
      * platform/network/blackberry/DeferredData.h:
      * platform/network/blackberry/NetworkJob.h:
      * platform/network/cf/CookieJarCFNet.cpp:
      * platform/network/curl/CookieJarCurl.cpp:
      * platform/network/curl/ResourceHandleManager.h:
      * platform/network/qt/DnsPrefetchHelper.cpp:
      * platform/network/soup/ResourceRequestSoup.cpp:
      * platform/network/soup/ResourceResponseSoup.cpp:
      * platform/network/win/CookieJarWin.cpp:
      * platform/posix/FileSystemPOSIX.cpp:
      * platform/qt/ClipboardQt.cpp:
      * platform/qt/CookieJarQt.cpp:
      * platform/qt/FileSystemQt.cpp:
      * platform/qt/LanguageQt.cpp:
      * platform/qt/LocalizedStringsQt.cpp:
      * platform/qt/LoggingQt.cpp:
      * platform/qt/PlatformSupport.h:
      * platform/sql/SQLValue.h:
      * platform/sql/SQLiteDatabase.h:
      * platform/sql/SQLiteFileSystem.h:
      * platform/text/DecodeEscapeSequences.h:
      * platform/text/LineEnding.cpp:
      * platform/text/ParserUtilities.h:
      * platform/text/PlatformString.h: Removed.
      * platform/text/RegularExpression.h:
      * platform/text/SegmentedString.h:
      * platform/text/StringWithDirection.h:
      * platform/text/SuffixTree.h:
      * platform/text/TextBreakIteratorICU.cpp:
      * platform/text/TextCodec.cpp:
      * platform/text/TextCodec.h:
      * platform/text/TextCodecLatin1.cpp:
      * platform/text/TextCodecUTF16.cpp:
      * platform/text/TextCodecUserDefined.cpp:
      * platform/text/TextEncoding.cpp:
      * platform/text/blackberry/StringBlackBerry.cpp:
      * platform/text/cf/StringCF.cpp:
      * platform/text/chromium/TextBreakIteratorInternalICUChromium.cpp:
      * platform/text/gtk/TextCodecGtk.cpp:
      * platform/text/mac/StringMac.mm:
      * platform/text/mac/TextCodecMac.cpp:
      * platform/text/qt/TextCodecQt.cpp:
      * platform/text/win/TextCodecWin.h:
      * platform/text/wince/TextBreakIteratorWinCE.cpp:
      * platform/win/BString.cpp:
      * platform/win/DragDataWin.cpp:
      * platform/win/GDIObjectCounter.h:
      * platform/win/LoggingWin.cpp:
      * platform/win/WCDataObject.cpp:
      * platform/wince/DragDataWinCE.cpp:
      * platform/wx/ClipboardWx.cpp:
      * platform/wx/FileSystemWx.cpp:
      * platform/wx/LanguageWx.cpp:
      * platform/wx/LocalizedStringsWx.cpp:
      * platform/wx/LoggingWx.cpp:
      * platform/wx/PasteboardWx.cpp:
      * platform/wx/PopupMenuWx.cpp:
      * plugins/PluginData.h:
      * plugins/PluginDatabase.h:
      * plugins/PluginDebug.cpp:
      * plugins/PluginPackage.h:
      * plugins/PluginStream.h:
      * rendering/style/StyleDashboardRegion.h:
      * storage/Storage.cpp:
      * storage/StorageArea.h:
      * storage/StorageEvent.h:
      * storage/StorageEventDispatcher.h:
      * storage/StorageMap.h:
      * storage/StorageNamespace.h:
      * storage/StorageNamespaceImpl.h:
      * storage/StorageSyncManager.h:
      * storage/StorageTask.h:
      * storage/StorageTracker.h:
      * svg/SVGPathByteStreamBuilder.h:
      * svg/SVGPathParser.h:
      * svg/SVGPathStringSource.h:
      * svg/SVGStyledElement.cpp:
      * svg/animation/SMILTimeContainer.h:
      * svg/graphics/filters/SVGFilterBuilder.cpp:
      * svg/graphics/filters/SVGFilterBuilder.h:
      * testing/Internals.h:
      * workers/DefaultSharedWorkerRepository.cpp:
      * workers/WorkerLocation.cpp:
      * workers/WorkerThread.cpp:
      * xml/DOMParser.cpp:
      * xml/NativeXPathNSResolver.cpp:
      * xml/XMLSerializer.cpp:
      * xml/XMLSerializer.h:
      * xml/XPathExpression.cpp:
      * xml/XPathValue.h:
      * xml/XSLTUnicodeSort.cpp:
      
      Source/WebKit/blackberry:
      
      * Api/DumpRenderTreeClient.h:
      * WebCoreSupport/ChromeClientBlackBerry.cpp:
      * WebCoreSupport/InspectorClientBlackBerry.h:
      * WebCoreSupport/JavaScriptDebuggerBlackBerry.cpp:
      * WebKitSupport/AboutData.h:
      
      Source/WebKit/cf:
      
      * WebCoreSupport/WebInspectorClientCF.cpp:
      (WebInspectorClient::createFrontendSettings):
      
      Source/WebKit/chromium:
      
      * src/ContextMenuClientImpl.cpp:
      * src/EditorClientImpl.cpp:
      * src/InspectorFrontendClientImpl.cpp:
      * src/LocalFileSystemChromium.cpp:
      * src/SpeechInputClientImpl.cpp:
      * src/SpeechRecognitionClientProxy.h:
      * src/WebDevToolsAgentImpl.cpp:
      * src/WebDevToolsFrontendImpl.cpp:
      * src/WebDevToolsFrontendImpl.h:
      * src/WebEntities.h:
      * src/WebFrameImpl.h:
      * src/WorkerFileSystemCallbacksBridge.h:
      * tests/UniscribeHelperTest.cpp:
      
      Source/WebKit/efl:
      
      * WebCoreSupport/ChromeClientEfl.cpp:
      * WebCoreSupport/InspectorClientEfl.cpp:
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/ChromeClientGtk.cpp:
      * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
      * WebCoreSupport/InspectorClientGtk.cpp:
      * gdom/ConvertToGCharPrivate.h:
      * webkit/webkitsecurityorigin.cpp:
      * webkit/webkitwebdatasource.cpp:
      * webkit/webkitwebhistoryitem.cpp:
      * webkit/webkitwebresource.cpp:
      
      Source/WebKit/mac:
      
      * History/WebHistoryItem.mm:
      * Misc/WebStringTruncator.mm:
      * Plugins/Hosted/NetscapePluginHostManager.h:
      (NetscapePluginHostManager):
      * Plugins/WebPluginController.mm:
      * Storage/WebStorageTrackerClient.mm:
      * WebCoreSupport/WebChromeClient.mm:
      * WebCoreSupport/WebEditorClient.mm:
      * WebCoreSupport/WebFrameLoaderClient.mm:
      * WebCoreSupport/WebIconDatabaseClient.mm:
      * WebCoreSupport/WebInspectorClient.h:
      (WebInspectorClient):
      (WebInspectorFrontendClient):
      * WebView/WebRenderLayer.mm:
      * WebView/WebViewData.h:
      
      Source/WebKit/qt:
      
      * Api/qwebdatabase_p.h:
      * Api/qwebframe_p.h:
      * Api/qwebhistory.cpp:
      * Api/qwebhistoryinterface.cpp:
      * Api/qwebpage_p.h:
      * Api/qwebsettings.cpp:
      * WebCoreSupport/ChromeClientQt.h:
      * WebCoreSupport/InspectorClientQt.cpp:
      
      Source/WebKit/win:
      
      * DOMCSSClasses.cpp:
      * DefaultPolicyDelegate.cpp:
      * MarshallingHelpers.cpp:
      * WebCoreSupport/WebInspectorClient.h:
      * WebDownload.h:
      * WebFrame.h:
      * WebHistoryItem.h:
      * WebIconDatabase.cpp:
      * WebKitDLL.h:
      * WebKitGraphics.cpp:
      * WebKitSystemBits.cpp:
      * WebLocalizableStrings.cpp:
      * WebNotificationCenter.cpp:
      * WebResource.h:
      
      Source/WebKit/wx:
      
      * WebFrame.cpp:
      * WebKitSupport/ChromeClientWx.cpp:
      * WebKitSupport/EditorClientWx.cpp:
      * WebKitSupport/FrameLoaderClientWx.cpp:
      * WebKitSupport/InspectorClientWx.cpp:
      * WebSettings.cpp:
      * WebView.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127757 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3f5ab024
  14. 03 Aug, 2012 1 commit
    • commit-queue@webkit.org's avatar
      Blocking a plugin via CSP should result in one (and only one) console message. · e9414c57
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92649
      
      Patch by Mike West <mkwst@chromium.org> on 2012-08-03
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Currently, blocking a plugin via Content Security Policy results in some
      leakage of console log messages between tests. I'm unclear as to the
      root cause, but the symptoms exhibited include
      `SubframeLoader::requestPlugin` being called multiple times for a single
      element, which in turn causes multiple console logs to be sent. These
      messages tend to appear in the subsequent test, making the
      `http/test/security/contentSecurityPolicy/object-src-*` set of tests
      flakey indeed.
      
      This patch addresses the issue by marking elements' plugins as
      unavailable when they're blocked by CSP. No new tests have been added:
      this patch should simply make the current tests actually pass.
      
      * loader/SubframeLoader.cpp:
      (WebCore::SubframeLoader::requestPlugin):
          We check the CSP status in `SubframeLoader::loadPlugin`, which is
          called at the end of this function. Checking CSP status in both
          locations is redundant.
      (WebCore::SubframeLoader::loadPlugin):
          If the plugin is blocked by CSP, tell the element's embedded object
          renderer that the plugin is unavailable.
      * platform/LocalizedStrings.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
      * platform/LocalizedStrings.h:
      (WebCore):
      * platform/blackberry/LocalizedStringsBlackBerry.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
      * rendering/RenderEmbeddedObject.cpp:
      (WebCore::unavailablePluginReplacementText):
      * rendering/RenderEmbeddedObject.h:
          Return appropriate text when the plugin is blocked by CSP.
      
      Source/WebKit/chromium:
      
      * src/LocalizedStrings.cpp:
      (WebCore::blockedPluginByContentSecurityPolicyText):
      (WebCore):
          Adding a stub for the newly added string.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124636 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e9414c57
  15. 10 May, 2012 1 commit
  16. 16 Mar, 2012 1 commit
    • jer.noble@apple.com's avatar
      Wrong icon to restore to windowed mode in full screen video panel · f2c23256
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=70437
      
      Reviewed by Eric Carlson.
      
      Source/WebCore:
      
      No new tests. Updated platform/mac/accessibility/media-element-expected.txt.
      
      Renamed MediaFullscreenButton to MediaEnterFullscreenButton and added MediaExitFullscreenButton:
      * accessibility/AccessibilityMediaControls.cpp:
      (WebCore::AccessibilityMediaControl::controlTypeName):
      (WebCore::AccessibilityMediaControl::roleValue):
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
      * css/CSSPrimitiveValueMappings.h:
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
      * css/CSSValueKeywords.in:
      * platform/ThemeTypes.h:
      
      Added setIsFullscreen which controls the display of the enter/exit fullscreen button:
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlFullscreenButtonElement::setIsFullscreen): Added.
      * html/shadow/MediaControlElements.h:
      * html/shadow/MediaControlRootElement.cpp:
      (WebCore::MediaControlRootElement::enteredFullscreen):
      (WebCore::MediaControlRootElement::exitedFullscreen):
      
      Paint the enter/exit fullscreen button accordingly:
      * rendering/RenderMediaControlsChromium.cpp:
      (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
      * rendering/RenderTheme.cpp:
      (WebCore::RenderTheme::paint):
      * rendering/RenderThemeChromiumAndroid.cpp:
      (WebCore::RenderThemeChromiumAndroid::paintMediaFullscreenButton):
      * rendering/RenderThemeMac.mm:
      (WebCore::RenderThemeMac::paintMediaFullscreenButton):
      * rendering/RenderMediaControls.cpp:
      (WebCore::RenderMediaControls::paintMediaControlsPart):
      * rendering/RenderThemeSafari.cpp:
      (WebCore::RenderThemeSafari::paintMediaFullscreenButton):
      
      Update the localized strings for the exit and enter fullscreen buttons:
      * English.lproj/Localizable.strings:
      * platform/LocalizedStrings.cpp:
      (WebCore::localizedMediaControlElementString):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::localizedMediaControlElementString):
      (WebCore::localizedMediaControlElementHelpText):
      * platform/qt/LocalizedStringsQt.cpp:
      (WebCore::localizedMediaControlElementString):
      (WebCore::localizedMediaControlElementHelpText):
      
      WebKitLibraries:
      
      * WebKitSystemInterface.h: Added WKMediaUIPartExitFullscreenButton.
      * libWebKitSystemInterfaceLeopard.a:
      * libWebKitSystemInterfaceLion.a:
      * libWebKitSystemInterfaceSnowLeopard.a:
      * win/include/WebKitSystemInterface/WebKitSystemInterface.h:
      * win/lib/WebKitSystemInterface.lib:
      
      LayoutTests:
      
      * platform/mac/accessibility/media-element-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111041 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2c23256
  17. 20 Feb, 2012 1 commit
    • benjamin@webkit.org's avatar
      Get rid of the LocalizationStrategy · 89abb540
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=78324
      
      Reviewed by Sam Weinig.
      
      Source/WebCore:
      
      Remove LocalizationStrategy and unify the localization behind
      LocalizedStrings.h and LocalizedStrings.cpp.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.exp.in:
      * WebCore.gypi:
      * WebCore.order:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * platform/DefaultLocalizationStrategy.cpp: Removed.
      * platform/DefaultLocalizationStrategy.h: Removed.
      * platform/LocalizationStrategy.h: Removed.
      * platform/LocalizedStrings.cpp:
      * platform/LocalizedStrings.h:
      (WebCore):
      * platform/PlatformStrategies.cpp:
      * platform/PlatformStrategies.h:
      (WebCore):
      (WebCore::PlatformStrategies::PlatformStrategies):
      (PlatformStrategies):
      * platform/qt/LocalizedStringsQt.cpp: Copied from Source/WebKit/qt/WebCoreSupport/PlatformStrategiesQt.cpp.
      
      Source/WebKit/qt:
      
      Move the localization code from PlatformStrategiesQt.cpp
      to LocalizedStringsQt.cpp.
      
      Get rid of LocalizationStrategy from PlatformStrategiesQt
      
      * WebCoreSupport/PlatformStrategiesQt.cpp:
      * WebCoreSupport/PlatformStrategiesQt.h:
      (PlatformStrategiesQt):
      
      Source/WebKit/wince:
      
      Remove a useless #include of LocalizationStrategy.h.
      
      * WebCoreSupport/PlatformStrategiesWinCE.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@108308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      89abb540
  18. 13 Feb, 2012 2 commits
    • enrica@apple.com's avatar
      Build fix. Unreviewed. · c6b172d4
      enrica@apple.com authored
      Source/WebCore: 
      
      * WebCore.xcodeproj/project.pbxproj:
      
      Source/WebKit/qt: 
      
      * WebCoreSupport/PlatformStrategiesQt.cpp:
      (PlatformStrategiesQt::createPasteboardStrategy):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6b172d4
    • enrica@apple.com's avatar
      Source/WebCore: Refactor Mac platform implementation of the Pasteboard class... · 58eb2d47
      enrica@apple.com authored
      Source/WebCore: Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
      https://bugs.webkit.org/show_bug.cgi?id=78282
      
      This patch removes any accesss to the NSPasteboard object from the Pasteboard class which
      now makes use of a new pasteboardStrategy object that is implemented both in WebKit and
      WebKit2. The actual access to NSPasteboard is now performed inside the PlatformPasteboard
      class. Currently both WebKit and WebKit2 use the same implementation of the PasteboardStrategy
      interface but this one more step in the direction of removing access to NSPasteboard from
      the WebProcess.
      As part of the refactoring the I've reduced to a minimum the use of OBJ-C classes.
      
      Reviewed by Anders Carlsson.
      
      No new tests. No change in behavior, just code refactoring.
      
      * WebCore.exp.in: Added exported class PlatformPasteboard.
      * WebCore.xcodeproj/project.pbxproj: Added new files to the build.
      * editing/mac/EditorMac.mm:
      (WebCore::Editor::writeSelectionToPasteboard): New method signature that doesn't use OBJ-C types.
      * platform/Pasteboard.h:
      
      * platform/PasteboardStrategy.h: Added PasteboardStrategy abstract class.
      * platform/PlatformPasteboard.h: Added. This class implements access to NSPasteboard.
      * platform/PlatformStrategies.h:
      (WebCore::PlatformStrategies::pasteboardStrategy): Added.
      * platform/mac/DragDataMac.mm:
      (WebCore::DragData::canSmartReplace):
      (WebCore::insertablePasteboardTypes): 
      (WebCore::DragData::asURL):
      * platform/mac/PasteboardMac.mm:
      (WebCore::selectionPasteboardTypes): Changed to use Vector<String> instead of NSArray.
      (WebCore::writableTypesForURL): Ditto.
      (WebCore::createWritableTypesForImage): Ditto.
      (WebCore::writableTypesForImage): Ditto.
      (WebCore::Pasteboard::Pasteboard): Removed access to NSPasteboard.
      (WebCore::Pasteboard::clear): Modified to use platformStrategies()->pasteboardStrategy().
      (WebCore::Pasteboard::writeSelectionForTypes): Ditto.
      (WebCore::Pasteboard::writePlainText): Ditto.
      (WebCore::Pasteboard::writeSelection): Ditto.
      (WebCore::writeURLForTypes): Ditto.
      (WebCore::Pasteboard::writeURL): Ditto.
      (WebCore::writeFileWrapperAsRTFDAttachment): Ditto.
      (WebCore::Pasteboard::writeImage): Ditto.
      (WebCore::Pasteboard::writeClipboard): Ditto.
      (WebCore::Pasteboard::canSmartReplace): Ditto.
      (WebCore::Pasteboard::plainText): Ditto.
      (WebCore::documentFragmentWithRTF): Ditto.
      (WebCore::Pasteboard::documentFragment): Ditto.
      * platform/mac/PlatformPasteboardMac.mm: Added.
      (WebCore::PlatformPasteboard::PlatformPasteboard):
      (WebCore::PlatformPasteboard::getTypes):
      (WebCore::PlatformPasteboard::bufferForType):
      (WebCore::PlatformPasteboard::getPathnamesForType):
      (WebCore::PlatformPasteboard::stringForType):
      (WebCore::PlatformPasteboard::copy):
      (WebCore::PlatformPasteboard::setTypes):
      (WebCore::PlatformPasteboard::setBufferForType):
      (WebCore::PlatformPasteboard::setPathnamesForType):
      (WebCore::PlatformPasteboard::setStringForType):
      
      Source/WebKit/mac:  Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
       https://bugs.webkit.org/show_bug.cgi?id=78282
       
       This patch removes any accesss to the NSPasteboard object from the Pasteboard class which
       now makes use of a new pasteboardStrategy object that is implemented both in WebKit and
       WebKit2. The actual access to NSPasteboard is now performed inside the PlatformPasteboard
       class. Currently both WebKit and WebKit2 use the same implementation of the PasteboardStrategy
       interface but this one more step in the direction of removing access to NSPasteboard from
       the WebProcess.
       As part of the refactoring the I've reduced to a minimum the use of OBJ-C classes.
               
       Reviewed by Anders Carlsson.
       
       * WebCoreSupport/WebPlatformStrategies.h: Added PasteboardStrategy.
       * WebCoreSupport/WebPlatformStrategies.mm: Added implementation of PasteboardStrategy interface.
       (WebPlatformStrategies::createPasteboardStrategy):
       (WebPlatformStrategies::getTypes):
       (WebPlatformStrategies::bufferForType):
       (WebPlatformStrategies::getPathnamesForType):
       (WebPlatformStrategies::stringForType):
       (WebPlatformStrategies::copy):
       (WebPlatformStrategies::setTypes):
       (WebPlatformStrategies::setBufferForType):
       (WebPlatformStrategies::setPathnamesForType):
       (WebPlatformStrategies::setStringForType):
      
      Source/WebKit/qt: Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
      https://bugs.webkit.org/show_bug.cgi?id=78282
      
      Build fix. Unreviewed.
      
      * WebCoreSupport/PlatformStrategiesQt.cpp:
      (WebPlatformStrategies::createPasteboardStrategy):
      * WebCoreSupport/PlatformStrategiesQt.h:
      (PlatformStrategiesQt):
      
      Source/WebKit2: Refactor Mac platform implementation of the Pasteboard class to use Platform Strategies.
      https://bugs.webkit.org/show_bug.cgi?id=78282
      
      This patch removes any accesss to the NSPasteboard object from the Pasteboard class which
      now makes use of a new pasteboardStrategy object that is implemented both in WebKit and
      WebKit2. The actual access to NSPasteboard is now performed inside the PlatformPasteboard
      class. Currently both WebKit and WebKit2 use the same implementation of the PasteboardStrategy
      interface but this one more step in the direction of removing access to NSPasteboard from
      the WebProcess.
      As part of the refactoring the I've reduced to a minimum the use of OBJ-C classes.
      
      Reviewed by Anders Carlsson.
      
      * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Added implementation of PasteboardStrategy
      interface.
      (WebKit::WebPlatformStrategies::createPasteboardStrategy):
      (WebKit::WebPlatformStrategies::getTypes):
      (WebKit::WebPlatformStrategies::bufferForType):
      (WebKit::WebPlatformStrategies::getPathnamesForType):
      (WebKit::WebPlatformStrategies::stringForType):
      (WebKit::WebPlatformStrategies::copy):
      (WebKit::WebPlatformStrategies::setTypes):
      (WebKit::WebPlatformStrategies::setBufferForType):
      (WebKit::WebPlatformStrategies::setPathnamesForType):
      (WebKit::WebPlatformStrategies::setStringForType):
      * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Added PasteboardStrategy.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@107606 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      58eb2d47
  19. 04 Nov, 2011 1 commit
    • vestbo@webkit.org's avatar
      [Qt] Refactor and clean up the qmake build system · 4ab62382
      vestbo@webkit.org authored
      The qmake build system has accumulated a bit of cruft and redundancy
      over time. There's also a fairly tight coupling between how to build
      the various targets, and _what_ to build, making it harder to add new
      rules or sources. This patch aims to elevate these issues somewhat.
      
      This is a short-list of the changes:
      
        * The rules for how to build targets are now mostly contained as
          prf-files in Tools/qmake/mkspecs/features. Using mkspecs also
          allows us to do pre- and post-processing of each project file,
          which helps to clean up the actual project files.
      
        * Derived sources are no longer generated as a separate make-step
          but is part of each target's project file as a subdir. Makefile
          rules are used to ensure that we run make on the derived sources
          before running qmake on the actual target makefile. This makes
          it easier to keep a proper dependency between derived sources
          and the target.
      
        * We use GNU make and the compiler to generate dependencies on
          UNIX-based systems running Qt 5. This allows us to lessen the
          need to run qmake, which should reduce compile time.
      
        * WebKit2 is now build by default if building with Qt 5. It can
          be disabled by passing --no-webkit2 to build-webkit.
      
      The result of these changes are hopefully a cleaner and easier
      build system to modify, and faster build times due to no longer
      running qmake on every single build. It's also a first step
      towards possibly generating the list of sources using another
      build system.
      
      https://bugs.webkit.org/show_bug.cgi?id=71222
      
      Reviewed by Simon Hausmann.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ab62382
  20. 02 Nov, 2011 1 commit
    • jonlee@apple.com's avatar
      <input=file multiple> default text uses singular instead of plural · 6790e929
      jonlee@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=71319
      <rdar://problem/10379021>
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      Added a new method to return the label text for a file upload control that
      allows multiple files. Needed to extend the RenderTheme function to pass down
      a boolean representing whether multiple files are allowed in the file list.
      
      * English.lproj/Localizable.strings:
      * html/FileInputType.cpp:
      (WebCore::FileInputType::defaultToolTip):
      * platform/DefaultLocalizationStrategy.cpp:
      (WebCore::DefaultLocalizationStrategy::fileButtonNoFilesSelectedLabel):
      * platform/DefaultLocalizationStrategy.h:
      * platform/LocalizationStrategy.h:
      * platform/LocalizedStrings.cpp:
      (WebCore::fileButtonNoFilesSelectedLabel):
      * platform/LocalizedStrings.h:
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::fileButtonNoFilesSelectedLabel):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::fileButtonNoFilesSelectedLabel):
      * platform/gtk/RenderThemeGtk.cpp:
      (WebCore::RenderThemeGtk::fileListNameForWidth):
      * platform/gtk/RenderThemeGtk.h:
      * platform/qt/RenderThemeQt.cpp:
      (WebCore::RenderThemeQt::fileListNameForWidth):
      * platform/qt/RenderThemeQt.h:
      * platform/wx/LocalizedStringsWx.cpp:
      (WebCore::fileButtonNoFilesSelectedLabel):
      * rendering/RenderFileUploadControl.cpp:
      (WebCore::RenderFileUploadControl::fileTextValue):
      * rendering/RenderTheme.cpp:
      (WebCore::RenderTheme::fileListNameForWidth):
      * rendering/RenderTheme.h:
      * rendering/RenderThemeMac.h:
      * rendering/RenderThemeMac.mm:
      (WebCore::RenderThemeMac::fileListNameForWidth):
      
      Source/WebKit/chromium:
      
      * src/LocalizedStrings.cpp:
      (WebCore::fileButtonNoFilesSelectedLabel):
      
      Source/WebKit/qt:
      
      * WebCoreSupport/WebPlatformStrategies.cpp:
      (WebPlatformStrategies::fileButtonNoFilesSelectedLabel):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit/wince:
      
      * WebCoreSupport/PlatformStrategiesWinCE.cpp:
      (PlatformStrategiesWinCE::fileButtonNoFilesSelectedLabel):
      * WebCoreSupport/PlatformStrategiesWinCE.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@99083 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6790e929
  21. 21 Sep, 2011 1 commit
    • abecsi@webkit.org's avatar
      [Qt] Remove Qt specific code from css/SelectorChecker.cpp · 6e1f6ccd
      abecsi@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=67702
      
      Reviewed by Csaba Osztrogonác.
      
      Source/WebCore:
      
      No new tests needed.
      
      * css/SelectorChecker.cpp: Move Qt-specific code to the Qt-specific WebPlatformStrategies.
      (WebCore::SelectorChecker::determineLinkStateSlowCase):
      * platform/VisitedLinkStrategy.h:
      
      Source/WebKit/mac:
      
      * WebCoreSupport/WebPlatformStrategies.h:
      * WebCoreSupport/WebPlatformStrategies.mm:
      (WebPlatformStrategies::isLinkVisited):
      
      Source/WebKit/qt:
      
      * WebCoreSupport/WebPlatformStrategies.cpp: Check the Qt global history here, instead of a platform independent file.
      (WebPlatformStrategies::isLinkVisited):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit/win:
      
      * WebCoreSupport/WebPlatformStrategies.cpp: Modify to match new prototype.
      (WebPlatformStrategies::isLinkVisited):
      * WebCoreSupport/WebPlatformStrategies.h: Ditto.
      
      Source/WebKit/wince:
      
      * WebCoreSupport/PlatformStrategiesWinCE.cpp:
      (PlatformStrategiesWinCE::addVisitedLink):
      * WebCoreSupport/PlatformStrategiesWinCE.h:
      
      Source/WebKit2:
      
      * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Modify to match new prototype.
      (WebKit::WebPlatformStrategies::isLinkVisited):
      (WebKit::WebPlatformStrategies::addVisitedLink):
      * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@95604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e1f6ccd
  22. 30 Jun, 2011 1 commit
    • commit-queue@webkit.org's avatar
      2011-06-30 Kentaro Hara <haraken@google.com> · bba4d99e
      commit-queue@webkit.org authored
              Reviewed by Kent Tamura.
      
              Change the label of an HTML5 file chooser button to "Choose Files"
              https://bugs.webkit.org/show_bug.cgi?id=49245
      
              We should notify capability of multiple files to users.
              input-file-label.html is a test that checks a label of the file chooser
              with/without 'multiple' attribute. input-file-label.html will fail in Chromium
              until a planned Chromium patch is landed. input-file-re-render.html will
              also fail in Chromium, gtk and MacLeopard until we update the expected images
              for the test.
      
              * fast/forms/input-file-label-expected.txt: Added.
              * fast/forms/input-file-label.html: Added.
              * platform/chromium/test_expectations.txt:
              * platform/mac/fast/forms/input-file-re-render-expected.png:
              * platform/mac/fast/forms/input-file-re-render-expected.txt:
      2011-06-30  Kentaro Hara  <haraken@google.com>
      
              Reviewed by Kent Tamura.
      
              Change the label of an HTML5 file chooser button to "Choose Files"
              https://bugs.webkit.org/show_bug.cgi?id=49245
      
              We should notify capability of multiple files to users.
      
              Test: fast/forms/input-file-label.html
      
              * English.lproj/Localizable.strings:
              * html/FileInputType.cpp:
              (WebCore::UploadButtonElement::createForMultiple): Constructs a multiple file chooser button.
              (WebCore::FileInputType::createShadowSubtree): Constructs a single/multiple file chooser button depending on 'multiple' attribute.
              (WebCore::FileInputType::multipleAttributeChanged): Updates the label of the file chooser button.
              * html/FileInputType.h:
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::parseMappedAttribute): Updates the shadow tree of the file chooser button when 'multiple' attribute is set or unset.
              * html/InputType.cpp:
              (WebCore::InputType::multipleAttributeChanged): Virtual method to be overridden by FileInputType.
              * html/InputType.h:
              * platform/DefaultLocalizationStrategy.cpp:
              (WebCore::DefaultLocalizationStrategy::fileButtonChooseFileLabel): Updated the description for "Choose File".
              (WebCore::DefaultLocalizationStrategy::fileButtonChooseMultipleFilesLabel): Returns a string "Choose Files".
              * platform/DefaultLocalizationStrategy.h:
              * platform/LocalizationStrategy.h:
              * platform/LocalizedStrings.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Wrapper method for getting the "Choose Files" label.
              * platform/LocalizedStrings.h:
              * platform/brew/LocalizedStringsBrew.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
              * platform/efl/LocalizedStringsEfl.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
              * platform/gtk/LocalizedStringsGtk.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
              * platform/haiku/LocalizedStringsHaiku.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
              * platform/wx/LocalizedStringsWx.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
      2011-06-30  Kentaro Hara  <haraken@google.com>
      
              Reviewed by Kent Tamura.
      
              Change the label of an HTML5 file chooser button to "Choose Files"
              https://bugs.webkit.org/show_bug.cgi?id=49245
      
              We should notify capability of multiple files to users.
      
              Test: fast/forms/input-file-label.html
      
              * DEPS:
              * public/WebLocalizedString.h: Depends on chromium_rev>=91051.
              * src/LocalizedStrings.cpp:
              (WebCore::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
      2011-06-30  Kentaro Hara  <haraken@google.com>
      
              Reviewed by Kent Tamura.
      
              Change the label of an HTML5 file chooser button to "Choose Files"
              https://bugs.webkit.org/show_bug.cgi?id=49245
      
              We should notify capability of multiple files to users.
      
              Test: fast/forms/input-file-label.html
      
              * WebCoreSupport/WebPlatformStrategies.cpp:
              (WebPlatformStrategies::fileButtonChooseFileLabel): Updated the description for "Choose File".
              (WebPlatformStrategies::fileButtonChooseMultipleFilesLabel):  Returns a "Choose Files" label.
              * WebCoreSupport/WebPlatformStrategies.h:
      2011-06-30  Kentaro Hara  <haraken@google.com>
      
              Reviewed by Kent Tamura.
      
              Change the label of an HTML5 file chooser button to "Choose Files"
              https://bugs.webkit.org/show_bug.cgi?id=49245
      
              We should notify capability of multiple files to users.
      
              Test: fast/forms/input-file-label.html
      
              * WebCoreSupport/PlatformStrategiesWinCE.cpp:
              (PlatformStrategiesWinCE::fileButtonChooseFileLabel): Updated the description for "Choose File".
              (PlatformStrategiesWinCE::fileButtonChooseMultipleFilesLabel): Returns a "Choose Files" label.
              * WebCoreSupport/PlatformStrategiesWinCE.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@90101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bba4d99e
  23. 29 Mar, 2011 1 commit
  24. 02 Mar, 2011 1 commit
    • bweinstein@apple.com's avatar
      Source/WebCore: Part of WebKit2: Need a way to send notifications to client when cookies change · a95f4c4d
      bweinstein@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=55427
      <rdar://problem/9056027>
              
      Reviewed by Adam Roben.
      
      Add functions on CookieStorage that allow listening for changes in cookies. When
      the cookies are changed, they call through to CookiesStrategy::notifyCookiesChanged.
      
      No change in behavior requiring tests.
      
      * platform/CookiesStrategy.h: Added.
      (WebCore::CookiesStrategy::~CookiesStrategy):
      
      * platform/PlatformStrategies.h:
      (WebCore::PlatformStrategies::cookiesStrategy):
      (WebCore::PlatformStrategies::PlatformStrategies):
      
      * platform/network/CookieStorage.h: Add new function declarations.
      
      * platform/network/cf/CookieStorageCFNet.cpp:
      (WebCore::notifyCookiesChangedOnMainThread): Call through to CookiesStrategy::notifyCookiesChanged.
      (WebCore::notifyCookiesChanged): Call notifyCookiesChangedOnMainThread on the main thread.
      (WebCore::beginObservingCookieChanges): Set up cookie observers on the loader run loop.
      (WebCore::finishObservingCookieChanges): Remove our cookie observers from the loader run loop.
      
      * platform/network/mac/CookieStorageMac.mm:
      (-[CookieStorageObjCAdapter notifyCookiesChangedOnMainThread]): Call through to CookiesStrategy::notifyCookiesChanged.
      (-[CookieStorageObjCAdapter cookiesChangedNotificationHandler:]): Call notifyCookiesChangedOnMainThread on 
          the main thread.
      (-[CookieStorageObjCAdapter registerForCookieChangeNotifications]): Set up the observer for cookie change notifications.
      (-[CookieStorageObjCAdapter unregisterForCookieChangeNotifications]): Remove the observer for cookie change notifications.
      (WebCore::beginObservingCookieChanges): Create our CookieStorageObjCAdapter, and call registerForCookieChangeNotifications.
      (WebCore::finishObservingCookieChanges): Call unregisterForCookieChangeNotifications.
              
      Add new file.
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj: Set role on files we need to include in WebKit to private.
      
      Source/WebKit/mac: Part of WebKit2: Need a way to send notifications to client when cookies change
      https://bugs.webkit.org/show_bug.cgi?id=55427
      <rdar://problem/9056027>
              
      Reviewed by Adam Roben.
      
      Add stubs for CookiesStrategy on Mac WebKit1.
      
      * WebCoreSupport/WebPlatformStrategies.h:
      * WebCoreSupport/WebPlatformStrategies.mm:
      (WebPlatformStrategies::createCookiesStrategy):
      (WebPlatformStrategies::notifyCookiesChanged):
      
      Source/WebKit/qt: Part of WebKit2: Need a way to send notifications to client when cookies change
      https://bugs.webkit.org/show_bug.cgi?id=55427
      <rdar://problem/9056027>
              
      Reviewed by Adam Roben.
      
      Add stubs for CookiesStrategy on Qt WebKit1.
      
      * WebCoreSupport/WebPlatformStrategies.cpp:
      (WebPlatformStrategies::createCookiesStrategy):
      (WebPlatformStrategies::notifyCookiesChanged):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit/win: Part of WebKit2: Need a way to send notifications to client when cookies change
      https://bugs.webkit.org/show_bug.cgi?id=55427
      <rdar://problem/9056027>
              
      Reviewed by Adam Roben.
      
      Add stubs for CookiesStrategy on Windows WebKit1.
      
      * WebCoreSupport/WebPlatformStrategies.cpp:
      (WebPlatformStrategies::createCookiesStrategy):
      (WebPlatformStrategies::notifyCookiesChanged):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit2: Part of WebKit2: Need a way to send notifications to client when cookies change
      https://bugs.webkit.org/show_bug.cgi?id=55427
      <rdar://problem/9056027>
      
      Reviewed by Adam Roben.
      
      * WebProcess/Cookies/WebCookieManager.cpp:
      (WebKit::WebCookieManager::dispatchDidModifyCookies): Add a stub with a FIXME to send a 
          message to the UI process.
      
      * WebProcess/Cookies/WebCookieManager.h:
      * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
      (WebKit::WebPlatformStrategies::createCookiesStrategy):
      (WebKit::WebPlatformStrategies::notifyCookiesChanged): Call WebCookieManager::dispatchDidModifyCookies.
      * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@80145 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a95f4c4d
  25. 17 Feb, 2011 1 commit
    • luiz@webkit.org's avatar
      HTML5 <details> and <summary>: localized text · 74fbcc4b
      luiz@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=54260
      
      Reviewed by Adam Roben.
      
      Source/WebCore:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class and to
      platform/LocalizedStrings. It is used to provide the default label to be used by a
      <details> tag that has no <summary> child.
      
      * platform/LocalizationStrategy.h:
      * platform/LocalizedStrings.cpp:
      (WebCore::fileButtonNoFileSelectedLabel):
      (WebCore::defaultDetailsSummaryText):
      * platform/LocalizedStrings.h:
      * platform/android/LocalizedStringsAndroid.cpp:
      (WebCore::defaultDetailsSummaryText):
      * platform/brew/LocalizedStringsBrew.cpp:
      (WebCore::defaultDetailsSummaryText):
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::defaultDetailsSummaryText):
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::defaultDetailsSummaryText):
      * platform/haiku/LocalizedStringsHaiku.cpp:
      (WebCore::defaultDetailsSummaryText):
      * platform/wx/LocalizedStringsWx.cpp:
      (WebCore::defaultDetailsSummaryText):
      
      Source/WebKit:
      
      Default details summary text must be localizable.
      
      * English.lproj/Localizable.strings:
      
      Source/WebKit/chromium:
      
      The method defaultDetailsSummaryText was added to LocalizedStrings. It is used to provide
      the default label to be used by a <details> tag that has no <summary> child.
      
      * src/LocalizedStrings.cpp:
      (WebCore::defaultDetailsSummaryText):
      
      Source/WebKit/mac:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
      provide the default label to be used by a <details> tag that has no <summary> child.
      
      * WebCoreSupport/WebPlatformStrategies.h:
      * WebCoreSupport/WebPlatformStrategies.mm:
      (WebPlatformStrategies::defaultDetailsSummaryText):
      
      Source/WebKit/qt:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
      provide the default label to be used by a <details> tag that has no <summary> child.
      
      * WebCoreSupport/WebPlatformStrategies.cpp:
      (WebPlatformStrategies::defaultDetailsSummaryText):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit/win:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
      provide the default label to be used by a <details> tag that has no <summary> child.
      
      * WebCoreSupport/WebPlatformStrategies.cpp:
      (WebPlatformStrategies::defaultDetailsSummaryText):
      * WebCoreSupport/WebPlatformStrategies.h:
      
      Source/WebKit/wince:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
      provide the default label to be used by a <details> tag that has no <summary> child.
      
      * WebCoreSupport/PlatformStrategiesWinCE.cpp:
      (PlatformStrategiesWinCE::defaultDetailsSummaryText):
      * WebCoreSupport/PlatformStrategiesWinCE.h:
      
      Source/WebKit2:
      
      The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to
      provide the default label to be used by a <details> tag that has no <summary> child.
      
      * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
      (WebKit::WebPlatformStrategies::defaultDetailsSummaryText):
      * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@78842 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      74fbcc4b
  26. 07 Feb, 2011 1 commit
    • commit-queue@webkit.org's avatar
      2011-02-07 Qi Zhang <qi.2.zhang@nokia.com> · d10a96e7
      commit-queue@webkit.org authored
              Reviewed by Andreas Kling.
      
              [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
              https://bugs.webkit.org/show_bug.cgi?id=52974
      
              Add ContextMenuItemTagCopyImageUrlToClipboard into standard action but Qt platform specific.
      
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected):
              (WebCore::ContextMenuController::populate):
              (WebCore::ContextMenuController::checkOrEnableIfNeeded):
              * platform/ContextMenuItem.h:
              * platform/LocalizationStrategy.h:
              * platform/LocalizedStrings.cpp:
              (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
              * platform/LocalizedStrings.h:
      2011-02-07  Qi Zhang  <qi.2.zhang@nokia.com>
      
              Reviewed by Andreas Kling.
      
              [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
              https://bugs.webkit.org/show_bug.cgi?id=52974
      
              Add QWebPage::CopyImageUrlToClipboard into QWebPage::WebAction.
      
              * Api/qwebpage.cpp:
              (webActionForContextMenuAction):
              (QWebPage::triggerAction):
              (QWebPage::action):
              * Api/qwebpage.h:
              * WebCoreSupport/WebPlatformStrategies.cpp:
              (WebPlatformStrategies::contextMenuItemTagCopyImageUrlToClipboard):
              * WebCoreSupport/WebPlatformStrategies.h:
      2011-02-07  Qi Zhang  <qi.2.zhang@nokia.com>
      
              Reviewed by Andreas Kling.
      
              [Qt] enum QWebPage::WebAction doesn't have value QWebPage::CopyImageUrl
              https://bugs.webkit.org/show_bug.cgi?id=52974
      
              Add ContextMenuItemTagCopyImageUrlToClipboard into standard action but Qt platform specific.
      
              * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
              (WebKit::WebPlatformStrategies::contextMenuItemTagCopyImageUrlToClipboard):
              * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77892 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d10a96e7
  27. 16 Jan, 2011 1 commit
  28. 03 Jan, 2011 1 commit
    • commit-queue@webkit.org's avatar
      2011-01-03 Yi Shen <yi.4.shen@nokia.com> · 84ffa4ae
      commit-queue@webkit.org authored
              Reviewed by Adam Barth.
      
              [Qt] Add SelectAll option to the context menu for the editor
              https://bugs.webkit.org/show_bug.cgi?id=50049
      
              Set shortcut for the SelectAll action.
      
              * QtTestBrowser/mainwindow.cpp:
              (MainWindow::buildUI):
      2011-01-03  Yi Shen  <yi.4.shen@nokia.com>
      
              Reviewed by Adam Barth.
      
              [Qt] Add SelectAll option to the context menu for the editor
              https://bugs.webkit.org/show_bug.cgi?id=50049
      
              Enable SelectAll for the Qt context menu.
      
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::populate):
              * platform/ContextMenuItem.h:
              * platform/LocalizationStrategy.h:
              * platform/LocalizedStrings.cpp:
              (WebCore::contextMenuItemTagSelectAll):
              * platform/LocalizedStrings.h:
      2011-01-03  Yi Shen  <yi.4.shen@nokia.com>
      
              Reviewed by Adam Barth.
      
              [Qt] Add SelectAll option to the context menu for the editor
              https://bugs.webkit.org/show_bug.cgi?id=50049
      
              Enable SelectAll for the Qt context menu.
      
              * Api/qwebpage.cpp:
              (webActionForContextMenuAction):
              (QWebPage::action):
              * WebCoreSupport/WebPlatformStrategies.cpp:
              (WebPlatformStrategies::contextMenuItemTagSelectAll):
              * WebCoreSupport/WebPlatformStrategies.h:
      2011-01-03  Yi Shen  <yi.4.shen@nokia.com>
      
              Reviewed by Adam Barth.
      
              [Qt] Add SelectAll option to the context menu for the editor
              https://bugs.webkit.org/show_bug.cgi?id=50049
      
              Add WebPlatformStrategies::contextMenuItemTagSelectAll for Qt.
      
              * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
              (WebKit::WebPlatformStrategies::contextMenuItemTagSelectAll):
              * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      84ffa4ae
  29. 22 Sep, 2010 1 commit
    • andreas.kling@nokia.com's avatar
      2010-09-22 Balazs Kelemen <kb@inf.u-szeged.hu> · 4495a408
      andreas.kling@nokia.com authored
              Reviewed by Kenneth Rohde Christiansen.
      
              [Qt] PluginStrategy implementation is broken
              https://bugs.webkit.org/show_bug.cgi?id=46078
      
              Remove the QWebPage* member from WebPlatformStrategies.
              Get the originator QWebPage of the getPluginInfo call via
              the Page* argument.
              * Api/qwebpage.cpp:
              (QWebPagePrivate::QWebPagePrivate):
              * WebCoreSupport/WebPlatformStrategies.cpp:
              (WebPlatformStrategies::initialize): 
              (WebPlatformStrategies::WebPlatformStrategies):
              (WebPlatformStrategies::getPluginInfo):
              Use the ChromeClient for accessing the originator QWebPage.
              * WebCoreSupport/WebPlatformStrategies.h:
      2010-09-22  Balazs Kelemen  <kb@inf.u-szeged.hu>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              [Qt] PluginStrategy implementation is broken
              https://bugs.webkit.org/show_bug.cgi?id=46078
      
              * UIProcess/API/qt/qwkpage.cpp:
              (QWKPagePrivate::QWKPagePrivate):
              Initialize the WebPlatformStrategies at the UI side as well because
              we are using the LocalizationStrategy in the UI process.
              Added a FIXME since this should be fixed in the future.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68039 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4495a408
  30. 21 Sep, 2010 1 commit
    • philn@webkit.org's avatar
      2010-09-20 Philippe Normand <pnormand@igalia.com> · fd50428d
      philn@webkit.org authored
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New items in the media Element context menu:
              - play/pause
              - mute/unmute
              - controls display control
              - switch to fullscreen (for video only)
              - loop playback control
              - copy media url to clipboard
              - open in new window
      
              Test: media/context-menu-actions.html
      
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected):
              * platform/ContextMenu.cpp:
              (WebCore::ContextMenu::populate):
              (WebCore::ContextMenu::checkOrEnableIfNeeded):
              * platform/ContextMenuItem.h:
              * platform/LocalizationStrategy.h:
              * platform/LocalizedStrings.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/LocalizedStrings.h:
              * platform/android/LocalizedStringsAndroid.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/brew/LocalizedStringsBrew.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/efl/LocalizedStringsEfl.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/gtk/ContextMenuItemGtk.cpp:
              (WebCore::gtkStockIDFromContextMenuAction):
              * platform/gtk/LocalizedStringsGtk.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/haiku/LocalizedStringsHaiku.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * platform/wx/LocalizedStringsWx.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::absoluteMediaURL):
              (WebCore::HitTestResult::mediaSupportsFullscreen):
              (WebCore::HitTestResult::mediaElement):
              (WebCore::HitTestResult::toggleMediaControlsDisplay):
              (WebCore::HitTestResult::toggleMediaLoopPlayback):
              (WebCore::HitTestResult::enterFullscreenForVideo):
              (WebCore::HitTestResult::mediaControlsEnabled):
              (WebCore::HitTestResult::mediaLoopEnabled):
              (WebCore::HitTestResult::mediaPlaying):
              (WebCore::HitTestResult::toggleMediaPlayState):
              (WebCore::HitTestResult::mediaHasAudio):
              (WebCore::HitTestResult::mediaMuted):
              (WebCore::HitTestResult::toggleMediaMuteState):
              * rendering/HitTestResult.h:
      
      LayoutTests:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New test checking the actions that can be triggered by activating
              the contex-menu of the media element. Skipped on mac, qt and win
              because of lack of DRT support.
      
              * media/context-menu-actions-expected.txt: Added.
              * media/context-menu-actions.html: Added.
              * platform/mac/Skipped:
              * platform/qt/Skipped:
              * platform/win/Skipped:
      
      WebKit:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              Updated localizable strings.
      
              * English.lproj/Localizable.strings:
      
      WebKit/chromium:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New localized strings for the media element context-menu.
      
              * src/LocalizedStrings.cpp:
              (WebCore::contextMenuItemTagOpenVideoInNewWindow):
              (WebCore::contextMenuItemTagOpenAudioInNewWindow):
              (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebCore::contextMenuItemTagToggleMediaControls):
              (WebCore::contextMenuItemTagToggleMediaLoop):
              (WebCore::contextMenuItemTagEnterVideoFullscreen):
              (WebCore::contextMenuItemTagMediaPlay):
              (WebCore::contextMenuItemTagMediaPause):
              (WebCore::contextMenuItemTagMediaMute):
      
      WebKit/mac:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New localized strings for the media element context-menu.
      
              * WebCoreSupport/WebPlatformStrategies.h:
              * WebCoreSupport/WebPlatformStrategies.mm:
              (WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
              (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
              (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
              (WebPlatformStrategies::contextMenuItemTagMediaPlay):
              (WebPlatformStrategies::contextMenuItemTagMediaPause):
              (WebPlatformStrategies::contextMenuItemTagMediaMute):
      
      Webkit/qt:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              * WebCoreSupport/WebPlatformStrategies.cpp:
              * WebCoreSupport/WebPlatformStrategies.h:
              (WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagToggleMediaControls)
              (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop)
              (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen)
              (WebPlatformStrategies::contextMenuItemTagMediaPlay)
              (WebPlatformStrategies::contextMenuItemTagMediaPause)
              (WebPlatformStrategies::contextMenuItemTagMediaMute)
      
      WebKit/win:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New localized strings for the media element context-menu.
      
              * WebCoreSupport/WebPlatformStrategies.cpp:
              (WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
              (WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
              (WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
              (WebPlatformStrategies::contextMenuItemTagMediaPlay):
              (WebPlatformStrategies::contextMenuItemTagMediaPause):
              (WebPlatformStrategies::contextMenuItemTagMediaMute):
              * WebCoreSupport/WebPlatformStrategies.h:
      
      WebKit2:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              New localized strings for the media element context-menu.
      
              * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
              (WebKit::WebPlatformStrategies::contextMenuItemTagOpenVideoInNewWindow):
              (WebKit::WebPlatformStrategies::contextMenuItemTagOpenAudioInNewWindow):
              (WebKit::WebPlatformStrategies::contextMenuItemTagCopyVideoLinkToClipboard):
              (WebKit::WebPlatformStrategies::contextMenuItemTagCopyAudioLinkToClipboard):
              (WebKit::WebPlatformStrategies::contextMenuItemTagToggleMediaControls):
              (WebKit::WebPlatformStrategies::contextMenuItemTagToggleMediaLoop):
              (WebKit::WebPlatformStrategies::contextMenuItemTagEnterVideoFullscreen):
              (WebKit::WebPlatformStrategies::contextMenuItemTagMediaPlay):
              (WebKit::WebPlatformStrategies::contextMenuItemTagMediaPause):
              (WebKit::WebPlatformStrategies::contextMenuItemTagMediaMute):
              (WebKit::WebPlatformStrategies::contextMenuItemTagMediaUnMute):
              * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
      
      WebKitTools:
      
              Reviewed by Eric Carlson.
      
              [GTK] enhanced context menu for media elements
              https://bugs.webkit.org/show_bug.cgi?id=45021
      
              EventSender::contextClick() now returns an array of js
              objects. Each object has a title property and a click() method.
      
              * DumpRenderTree/gtk/EventSender.cpp:
              (getMenuItemTitleCallback):
              (setMenuItemTitleCallback):
              (menuItemClickCallback):
              (getMenuItemClass):
              (contextClickCallback):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67928 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd50428d
  31. 18 Sep, 2010 1 commit
    • commit-queue@webkit.org's avatar
      2010-09-18 Ademar de Souza Reis Jr <ademar.reis@openbossa.org> · 6dad616a
      commit-queue@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen.
      
              Enable Platform Strategies on Qt
      
              [Qt] Turn on PLATFORM_STRATEGIES
              https://bugs.webkit.org/show_bug.cgi?id=45831
      
              * wtf/Platform.h: Enable Platform Strategies when building QtWebkit
      2010-09-18  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              Enable Platform Strategies on Qt
      
              [Qt] Turn on PLATFORM_STRATEGIES
              https://bugs.webkit.org/show_bug.cgi?id=45831
      
              * WebCore.pro: Adding/removing implementation files
              * platform/qt/Language.cpp: Added, WebCore::defaultLanguage() was
              moved from platform/qt/Localizations.cpp
              (WebCore::defaultLanguage): Moved from Localizations.cpp
              * platform/qt/Localizations.cpp: Removed (code is now inside
              WebCoreSupport/WebPlatformStrategies.cpp)
              * plugins/qt/PluginDataQt.cpp: Removed (idem)
      2010-09-18  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              Enable Platform Strategies on Qt
      
              [Qt] Turn on PLATFORM_STRATEGIES
              https://bugs.webkit.org/show_bug.cgi?id=45831
      
              * Api/qwebpage.cpp:
              (QWebPagePrivate::QWebPagePrivate): Initialize the PlatformStrategy
              singleton.
              * WebCoreSupport/WebPlatformStrategies.cpp: Added, code was moved
              from platform/qt/Localizations.cpp and plugins/qt/PluginDataQt.cpp
              (WebPlatformStrategies::initialize): create the singleton,
              following the same "pattern" used by Mac and Win ports.
              (WebPlatformStrategies::WebPlatformStrategies):
              (WebPlatformStrategies::createPluginStrategy):
              (WebPlatformStrategies::createLocalizationStrategy):
              (WebPlatformStrategies::createVisitedLinkStrategy):
              (WebPlatformStrategies::refreshPlugins):
              (WebPlatformStrategies::getPluginInfo):
              (WebPlatformStrategies::inputElementAltText):
              (WebPlatformStrategies::resetButtonDefaultLabel):
              (WebPlatformStrategies::searchableIndexIntroduction):
              (WebPlatformStrategies::submitButtonDefaultLabel):
              (WebPlatformStrategies::fileButtonChooseFileLabel):
              (WebPlatformStrategies::fileButtonNoFileSelectedLabel):
              (WebPlatformStrategies::contextMenuItemTagOpenLinkInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagDownloadLinkToDisk):
              (WebPlatformStrategies::contextMenuItemTagCopyLinkToClipboard):
              (WebPlatformStrategies::contextMenuItemTagOpenImageInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagDownloadImageToDisk):
              (WebPlatformStrategies::contextMenuItemTagCopyImageToClipboard):
              (WebPlatformStrategies::contextMenuItemTagOpenFrameInNewWindow):
              (WebPlatformStrategies::contextMenuItemTagCopy):
              (WebPlatformStrategies::contextMenuItemTagGoBack):
              (WebPlatformStrategies::contextMenuItemTagGoForward):
              (WebPlatformStrategies::contextMenuItemTagStop):
              (WebPlatformStrategies::contextMenuItemTagReload):
              (WebPlatformStrategies::contextMenuItemTagCut):
              (WebPlatformStrategies::contextMenuItemTagPaste):
              (WebPlatformStrategies::contextMenuItemTagNoGuessesFound):
              (WebPlatformStrategies::contextMenuItemTagIgnoreSpelling):
              (WebPlatformStrategies::contextMenuItemTagLearnSpelling):
              (WebPlatformStrategies::contextMenuItemTagSearchWeb):
              (WebPlatformStrategies::contextMenuItemTagLookUpInDictionary):
              (WebPlatformStrategies::contextMenuItemTagOpenLink):
              (WebPlatformStrategies::contextMenuItemTagIgnoreGrammar):
              (WebPlatformStrategies::contextMenuItemTagSpellingMenu):
              (WebPlatformStrategies::contextMenuItemTagShowSpellingPanel):
              (WebPlatformStrategies::contextMenuItemTagCheckSpelling):
              (WebPlatformStrategies::contextMenuItemTagCheckSpellingWhileTyping):
              (WebPlatformStrategies::contextMenuItemTagCheckGrammarWithSpelling):
              (WebPlatformStrategies::contextMenuItemTagFontMenu):
              (WebPlatformStrategies::contextMenuItemTagBold):
              (WebPlatformStrategies::contextMenuItemTagItalic):
              (WebPlatformStrategies::contextMenuItemTagUnderline):
              (WebPlatformStrategies::contextMenuItemTagOutline):
              (WebPlatformStrategies::contextMenuItemTagWritingDirectionMenu):
              (WebPlatformStrategies::contextMenuItemTagTextDirectionMenu):
              (WebPlatformStrategies::contextMenuItemTagDefaultDirection):
              (WebPlatformStrategies::contextMenuItemTagLeftToRight):
              (WebPlatformStrategies::contextMenuItemTagRightToLeft):
              (WebPlatformStrategies::contextMenuItemTagInspectElement):
              (WebPlatformStrategies::searchMenuNoRecentSearchesText):
              (WebPlatformStrategies::searchMenuRecentSearchesText):
              (WebPlatformStrategies::searchMenuClearRecentSearchesText):
              (WebPlatformStrategies::AXWebAreaText):
              (WebPlatformStrategies::AXLinkText):
              (WebPlatformStrategies::AXListMarkerText):
              (WebPlatformStrategies::AXImageMapText):
              (WebPlatformStrategies::AXHeadingText):
              (WebPlatformStrategies::AXDefinitionListTermText):
              (WebPlatformStrategies::AXDefinitionListDefinitionText):
              (WebPlatformStrategies::AXButtonActionVerb):
              (WebPlatformStrategies::AXRadioButtonActionVerb):
              (WebPlatformStrategies::AXTextFieldActionVerb):
              (WebPlatformStrategies::AXCheckedCheckBoxActionVerb):
              (WebPlatformStrategies::AXUncheckedCheckBoxActionVerb):
              (WebPlatformStrategies::AXMenuListActionVerb):
              (WebPlatformStrategies::AXMenuListPopupActionVerb):
              (WebPlatformStrategies::AXLinkActionVerb):
              (WebPlatformStrategies::missingPluginText):
              (WebPlatformStrategies::crashedPluginText):
              (WebPlatformStrategies::multipleFileUploadText):
              (WebPlatformStrategies::unknownFileSizeText):
              (WebPlatformStrategies::imageTitle):
              (WebPlatformStrategies::mediaElementLoadingStateText):
              (WebPlatformStrategies::mediaElementLiveBroadcastStateText):
              (WebPlatformStrategies::localizedMediaControlElementString):
              (WebPlatformStrategies::localizedMediaControlElementHelpText):
              (WebPlatformStrategies::localizedMediaTimeDescription):
              (WebPlatformStrategies::validationMessageValueMissingText):
              (WebPlatformStrategies::validationMessageTypeMismatchText):
              (WebPlatformStrategies::validationMessagePatternMismatchText):
              (WebPlatformStrategies::validationMessageTooLongText):
              (WebPlatformStrategies::validationMessageRangeUnderflowText):
              (WebPlatformStrategies::validationMessageRangeOverflowText):
              (WebPlatformStrategies::validationMessageStepMismatchText):
              (WebPlatformStrategies::isLinkVisited):
              (WebPlatformStrategies::addVisitedLink):
              * WebCoreSupport/WebPlatformStrategies.h: Added, based on Mac and Win
              versions.
      2010-09-18  Ademar de Souza Reis Jr  <ademar.reis@openbossa.org>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              Enable Platform Strategies on Qt
      
              [Qt] Turn on PLATFORM_STRATEGIES
              https://bugs.webkit.org/show_bug.cgi?id=45831
      
              * WebKit2.pro: Added Added WebPlatformStrategies.{cpp,h}
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67787 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6dad616a
  32. 04 Jun, 2010 1 commit
  33. 05 Apr, 2010 1 commit
  34. 22 Mar, 2010 1 commit
    • kdecker@apple.com's avatar
      Reviewed by John Sullivan. · 34a480cc
      kdecker@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=36328
      
              * page/mac/WebCoreViewFactory.h: Added -missingPluginText method
              * platform/LocalizedStrings.h: Added missingPluginText()
              * platform/gtk/LocalizedStringsGtk.cpp: Likewise.
              * platform/mac/LocalizedStringsMac.mm: Same here.
              * platform/qt/Localizations.cpp: Ditto.
              * English.lproj/Localizable.strings: Added "Missing Plug-in" string.
              * src/LocalizedStrings.cpp:
              (WebCore::missingPluginText): Added
              * WebCoreSupport/WebViewFactory.mm:
              (-[WebViewFactory missingPluginText]): Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@56337 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      34a480cc
  35. 19 Jan, 2010 1 commit
    • jhoneycutt@apple.com's avatar
      MSAA: The child <option> elements of a non-multiple <select> are not · c344ece4
      jhoneycutt@apple.com authored
      exposed
      
      https://bugs.webkit.org/show_bug.cgi?id=33773
      <rdar://problem/7550556>
      
      WebCore:
      
      Reviewed by Alice Liu.
      
      This exposes the child <option> elements in a format similar to
      Firefox's: the <select> element has one child, a hidden list object,
      and this list has as its children the <option> elements.
      
      * GNUmakefile.am:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      Add new files to project.
      
      * accessibility/AXObjectCache.cpp:
      (WebCore::AXObjectCache::getOrCreate):
      If the element is a RenderMenuList, create an AccessibilityMenuList.
      (WebCore::AXObjectCache::getOrCreate):
      Add new types to create by role value.
      
      * accessibility/AccessibilityMenuList.cpp: Added.
      (WebCore::AccessibilityMenuList::AccessibilityMenuList):
      Call the base class constructor. Assert that the RenderObject passed
      is a RenderMenuList.
      (WebCore::AccessibilityMenuList::press):
      Show or hide the popup menu.
      (WebCore::AccessibilityMenuList::addChildren):
      Create an AccessibilityMenuListPopup. If the platform ignores its
      accessibility, remove it from the object cache and return early.
      Otherwise, set its parent object to this object, add it to our list of
      children, and tell it to add its children.
      (WebCore::AccessibilityMenuList::childrenChanged):
      Tell our child hidden list that its children changed.
      (WebCore::AccessibilityMenuList::isCollapsed):
      Return whether the popup menu is visible.
      
      * accessibility/AccessibilityMenuList.h: Added.
      (WebCore::AccessibilityMenuList::create):
      Adopt and return a new RenderMenuList.
      (WebCore::AccessibilityMenuList::isMenuList):
      (WebCore::AccessibilityMenuList::roleValue):
      (WebCore::AccessibilityMenuList::accessibilityIsIgnored):
      (WebCore::AccessibilityMenuList::canSetFocusAttribute):
      
      * accessibility/AccessibilityMenuListOption.cpp: Added.
      (WebCore::AccessibilityMenuListOption::AccessibilityMenuListOption):
      Initialize the pointer to our parent popup menu.
      (WebCore::AccessibilityMenuListOption::setElement):
      Assert that the element is an <option> element.
      (WebCore::AccessibilityMenuListOption::actionElement):
      Return our element.
      (WebCore::AccessibilityMenuListOption::parentObject):
      Return our parent popup menu.
      (WebCore::AccessibilityMenuListOption::isEnabled):
      Return true if the element itself is enabled.
      (WebCore::AccessibilityMenuListOption::isVisible):
      Return true if the popup is visible, or return true if the popup is
      collapsed but the element is selected.
      (WebCore::AccessibilityMenuListOption::isOffScreen):
      Return true if the object is invisible.
      (WebCore::AccessibilityMenuListOption::isSelected):
      (WebCore::AccessibilityMenuListOption::setSelected):
      (WebCore::AccessibilityMenuListOption::nameForMSAA):
      Return the <option> element's text.
      (WebCore::AccessibilityMenuListOption::canSetSelectedAttribute):
      Return true if enabled.
      (WebCore::AccessibilityMenuListOption::elementRect):
      Return the AccessibilityMenuList's rect.
      
      * accessibility/AccessibilityMenuListOption.h: Added.
      (WebCore::AccessibilityMenuListOption::create):
      Adopt and return a new AccessibilityMenuListOption.
      (WebCore::AccessibilityMenuListOption::setParent):
      (WebCore::AccessibilityMenuListOption::isMenuListOption):
      (WebCore::AccessibilityMenuListOption::roleValue):
      (WebCore::AccessibilityMenuListOption::canHaveChildren):
      (WebCore::AccessibilityMenuListOption::size):
      
      * accessibility/AccessibilityMenuListPopup.cpp: Added.
      (WebCore::AccessibilityMenuListPopup::AccessibilityMenuListPopup):
      Initialize the pointer to our parent list.
      (WebCore::AccessibilityMenuListPopup::isVisible):
      Return false; we're never considered visible.
      (WebCore::AccessibilityMenuListPopup::isOffScreen):
      Return true if the popup is collapsed.
      (WebCore::AccessibilityMenuListPopup::parentObject):
      Return our parent AccessibilityMenuList.
      (WebCore::AccessibilityMenuListPopup::isEnabled):
      Return true if our parent is enabled.
      (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
      If the element is an <option> element, create a list item for it, and
      set the object's element to this element.
      (WebCore::AccessibilityMenuListPopup::press):
      Call our parent's press() function to show or hide the popup menu.
      (WebCore::AccessibilityMenuListPopup::addChildren):
      Walk the select element's children, and create list items for them. Add
      them to our list of children.
      (WebCore::AccessibilityMenuListPopup::childrenChanged):
      If any of our children have been detached from the document, remove
      them from the AXObjectCache and from our child list.
      (WebCore::AccessibilityMenuListPopup::setMenuList):
      
      * accessibility/AccessibilityMenuListPopup.h: Added.
      (WebCore::AccessibilityMenuListPopup::create):
      Adopt and return an AccessibilityMenuListPopup.
      (WebCore::AccessibilityMenuListPopup::isMenuListPopup):
      (WebCore::AccessibilityMenuListPopup::elementRect):
      (WebCore::AccessibilityMenuListPopup::size):
      (WebCore::AccessibilityMenuListPopup::roleValue):
      
      * accessibility/AccessibilityObject.cpp:
      (WebCore::AccessibilityObject::actionVerb):
      Add the menuListAction and menuListPopupAction verbs.
      
      * accessibility/AccessibilityObject.h:
      (WebCore::):
      Add new roles.
      (WebCore::AccessibilityObject::isMenuList):
      Stubbed.
      (WebCore::AccessibilityObject::isMenuListHiddenList):
      Stubbed.
      (WebCore::AccessibilityObject::isMenuListOption):
      Stubbed.
      (WebCore::AccessibilityObject::isVisible):
      Stubbed.
      
      * accessibility/chromium/AccessibilityObjectChromium.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Ignore the new object type.
      
      * accessibility/gtk/AccessibilityObjectAtk.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Ditto.
      
      * accessibility/mac/AccessibilityObjectMac.mm:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Ditto.
      
      * accessibility/qt/AccessibilityObjectQt.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Ditto.
      
      * accessibility/win/AccessibilityObjectWin.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Allow the new object types.
      
      * accessibility/wx/AccessibilityObjectWx.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Ignore the new object type.
      
      * accessibility/win/AccessibilityObjectWin.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      If the object is an AccessibilityMenuListHiddenList or
      AccessibilityMenuListOption, include it.
      
      * html/HTMLOptionElement.cpp:
      (WebCore::HTMLOptionElement::disabled):
      Call ownElementDisabled().
      
      * html/HTMLOptionElement.h:
      (WebCore::HTMLOptionElement::ownElementDisabled):
      Return the base class implementation of disabled, which returns
      whether this <option> itself is disabled.
      
      * platform/LocalizedStrings.h:
      Declare new localized string functions.
      
      * platform/gtk/LocalizedStringsGtk.cpp:
      (WebCore::AXMenuListPopupActionVerb):
      Stubbed.
      (WebCore::AXMenuListActionVerb):
      Stubbed.
      
      * platform/haiku/LocalizedStringsHaiku.cpp:
      (WebCore::AXMenuListPopupActionVerb):
      Stubbed.
      (WebCore::AXMenuListActionVerb):
      Stubbed.
      
      * platform/mac/LocalizedStringsMac.mm:
      (WebCore::AXMenuListPopupActionVerb):
      Call the view factory's method.
      (WebCore::AXMenuListActionVerb):
      Ditto.
      
      * platform/qt/Localizations.cpp:
      (WebCore::AXMenuListPopupActionVerb):
      Stubbed.
      (WebCore::AXMenuListActionVerb):
      Stubbed.
      
      * platform/wx/LocalizedStringsWx.cpp:
      (WebCore::AXMenuListPopupActionVerb):
      Stubbed.
      (WebCore::AXMenuListActionVerb):
      Stubbed.
      
      WebKit:
      
      Reviewed by Alice Liu.
      
      * English.lproj/Localizable.strings:
      Add new localized strings.
      
      WebKit/mac:
      
      * WebCoreSupport/WebViewFactory.mm:
      (-[WebViewFactory AXMenuListPopupActionVerb]):
      Stubbed.
      (-[WebViewFactory AXMenuListActionVerb]):
      Stubbed.
      
      WebKit/win:
      
      Reviewed by Alice Liu.
      
      * AccessibleBase.cpp:
      (AccessibleBase::get_accState):
      If the object is invisible, set the invisible state flag. If the object
      is collapsed, set the collapsed state. If the object is a combo box,
      set the has popup flag, and if it's not collapsed, set the expanded
      flag.
      (MSAARole):
      Add new WebCore to MSAA role mappings.
      
      * WebCoreLocalizedStrings.cpp:
      (WebCore::AXMenuListActionVerb):
      Return the action verb that Firefox uses for <select> elements with
      popups.
      (WebCore::AXMenuListPopupActionVerb):
      Return the verb that Firefox uses for a popup list.
      
      WebKitTools:
      
      Reviewed by Alice Liu.
      
      * DumpRenderTree/AccessibilityUIElement.cpp:
      (getIsVisibleCallback):
      Call the object's isVisible() function.
      (getIsOffScreenCallback):
      Ditto, for isOffScreen().
      (getIsCollapsedCallback):
      Ditto, for isCollapsed().
      (getHasPopupCallback):
      Ditto, for hasPopup().
      (AccessibilityUIElement::getJSClass):
      Add isVisible and isOffScreen attributes.
      
      * DumpRenderTree/AccessibilityUIElement.h:
      Declare new functions.
      
      * DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
      (AccessibilityUIElement::isVisible):
      Stubbed.
      (AccessibilityUIElement::isOffScreen):
      Stubbed.
      (AccessibilityUIElement::isCollapsed):
      Stubbed.
      (AccessibilityUIElement::hasPopup):
      Stubbed.
      
      * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
      (AccessibilityUIElement::isVisible):
      Stubbed.
      (AccessibilityUIElement::isOffScreen):
      Stubbed.
      (AccessibilityUIElement::isCollapsed):
      Stubbed.
      (AccessibilityUIElement::hasPopup):
      Stubbed.
      
      * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
      (AccessibilityUIElement::showMenu):
      Call the object's accDoDefaultAction() to show its popup menu.
      (AccessibilityUIElement::isEnabled):
      Check that the object does not have the "unavailable" state.
      (AccessibilityUIElement::isVisible):
      Check that the object does not have the "invisible" state.
      (AccessibilityUIElement::isOffScreen):
      Check whether the object has the "offscreen" state.
      (AccessibilityUIElement::isCollapsed):
      Check whether the object has the "collapsed" state.
      (AccessibilityUIElement::hasPopup):
      Check whether the object has the "has popup" state.
      
      LayoutTests:
      
      Reviewed by Alice Liu.
      
      * platform/win/accessibility/single-select-children-expected.txt: Added.
      * platform/win/accessibility/single-select-children.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53512 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c344ece4