[BlackBerry] Suppress keyboard requests while processing spell checking suggestions unless focus change is occurring..
https://bugs.webkit.org/show_bug.cgi?id=98903

Reviewed by Rob Buis.

PR 221143.

Suppress keyboard state changes when they are not triggered by
focus changes.

Reviewed Internally by Nima Ghanavatian.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::setElementFocused):
(BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):
* WebKitSupport/InputHandler.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make all of the WebContext sub objects MessageReceivers
https://bugs.webkit.org/show_bug.cgi?id=98661

Patch by Sam Weinig <sam@webkit.org> on 2012-10-10
Reviewed by Anders Carlsson.

Start work towards simplified message dispatch.

* Platform/CoreIPC/MessageReceiverMap.cpp:
(CoreIPC::MessageReceiverMap::clearAllMessageReceivers):
(CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
(CoreIPC::MessageReceiverMap::dispatchSyncMessage):
* Platform/CoreIPC/MessageReceiverMap.h:
Add additional helper methods.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::~WebContext):
(WebKit::WebContext::addMessageReceiver):
(WebKit::WebContext::knowsHowToHandleMessage):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):
* UIProcess/WebContext.h:
Add a MessageReceiverMap that chains to the main on in WebProcessProxy. Simplifies
didReceiveMessage and didReceiveSyncMessage.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
Use the new WebContext methods to simplify dispatch.

* UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
* UIProcess/Notifications/WebNotificationManagerProxy.h:
(WebNotificationManagerProxy):
* UIProcess/WebApplicationCacheManagerProxy.cpp:
(WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
* UIProcess/WebApplicationCacheManagerProxy.h:
(WebApplicationCacheManagerProxy):
* UIProcess/WebBatteryManagerProxy.cpp:
(WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
* UIProcess/WebBatteryManagerProxy.h:
(WebBatteryManagerProxy):
* UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
* UIProcess/WebCookieManagerProxy.h:
(WebCookieManagerProxy):
* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
(WebKit::WebDatabaseManagerProxy::didReceiveMessage):
(WebKit):
* UIProcess/WebDatabaseManagerProxy.h:
(WebDatabaseManagerProxy):
* UIProcess/WebGeolocationManagerProxy.cpp:
(WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
* UIProcess/WebGeolocationManagerProxy.h:
(WebGeolocationManagerProxy):
* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::WebIconDatabase):
* UIProcess/WebIconDatabase.h:
(WebIconDatabase):
(WebKit::WebIconDatabase::type):
* UIProcess/WebKeyValueStorageManagerProxy.cpp:
(WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
* UIProcess/WebKeyValueStorageManagerProxy.h:
(WebKeyValueStorageManagerProxy):
* UIProcess/WebMediaCacheManagerProxy.cpp:
(WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
* UIProcess/WebMediaCacheManagerProxy.h:
(WebMediaCacheManagerProxy):
* UIProcess/WebNetworkInfoManagerProxy.cpp:
(WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
(WebKit::WebNetworkInfoManagerProxy::didReceiveSyncMessage):
* UIProcess/WebNetworkInfoManagerProxy.h:
(WebNetworkInfoManagerProxy):
* UIProcess/WebResourceCacheManagerProxy.cpp:
(WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
(WebKit::WebResourceCacheManagerProxy::didReceiveMessage):
(WebKit):
* UIProcess/WebResourceCacheManagerProxy.h:
(WebResourceCacheManagerProxy):
* UIProcess/WebVibrationProxy.cpp:
(WebKit::WebVibrationProxy::WebVibrationProxy):
* UIProcess/WebVibrationProxy.h:
(WebVibrationProxy):
* UIProcess/soup/WebSoupRequestManagerProxy.cpp:
(WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
(WebKit::WebSoupRequestManagerProxy::didReceiveMessage):
(WebKit):
* UIProcess/soup/WebSoupRequestManagerProxy.h:
(WebSoupRequestManagerProxy):
* WebProcess/Authentication/AuthenticationManager.h:
(AuthenticationManager):
* WebProcess/Geolocation/WebGeolocationManager.h:
(WebGeolocationManager):
Make all the WebContext sub-objects MessageReceivers to simplify dispatch.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Spelling and grammar markers are pixelated in hidpi.
https://bugs.webkit.org/show_bug.cgi?id=98339

Patch by Varun Jain <varunjain@chromium.org> on 2012-10-10
Reviewed by Stephen White.

We create separate bitmaps for markers in normal and hidpi mode as per
specification from UX and choose the right bitmap based on the current
device scale factor.

Source/WebCore:

Tests: editing/spelling/grammar-markers-hidpi.html
       editing/spelling/inline-spelling-markers-hidpi.html

* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::draw2xMarker):
(WebCore):
(WebCore::draw1xMarker):
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::PlatformContextSkia):
* platform/graphics/skia/PlatformContextSkia.h:
(WebCore::PlatformContextSkia::deviceScaleFactor):
(WebCore::PlatformContextSkia::setDeviceScaleFactor):
(PlatformContextSkia):

Source/WebKit/chromium:

* src/PageWidgetDelegate.cpp:
(WebKit::PageWidgetDelegate::paint):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::paintRootLayer):

LayoutTests:

* editing/spelling/grammar-markers-hidpi-expected.txt: Added.
* editing/spelling/grammar-markers-hidpi.html: Added.
* editing/spelling/inline-spelling-markers-hidpi-expected.txt: Added.
* editing/spelling/inline-spelling-markers-hidpi.html: Added.
* platform/chromium-linux/editing/spelling/grammar-markers-hidpi-expected.png: Added.
* platform/chromium-linux/editing/spelling/inline-spelling-markers-hidpi-expected.png: Added.
* platform/chromium-mac/editing/spelling/grammar-markers-hidpi-expected.png: Added.
* platform/chromium-mac/editing/spelling/inline-spelling-markers-hidpi-expected.png: Added.
* platform/chromium-win/editing/spelling/grammar-markers-hidpi-expected.png: Added.
* platform/chromium-win/editing/spelling/inline-spelling-markers-hidpi-actual.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130940 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: add support for %c (style) in console API
https://bugs.webkit.org/show_bug.cgi?id=69401

Reviewed by Pavel Feldman.

Source/WebCore:

This patch mimics Firebug's '%c' option when calling 'console.log'
messages. 'console.log("%cBlue!", "color: blue;");' will write blue
text to the console, and so on.

To match Firebug's behavior, multiple '%c' entries will overwrite each
other: only one style will be applied. Sorry, folks.

Test: inspector/console/console-format-style.html

* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString.styleFormatter):
(WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString.append):
(WebInspector.ConsoleMessageImpl.prototype._formatWithSubstitutionString):

LayoutTests:

* http/tests/inspector/console-test.js:
(initialize_ConsoleTest.InspectorTest.dumpConsoleMessagesWithStyles):
    Helper to dump the style associated with a console message.
* inspector/console/console-format-style-expected.txt: Added.
* inspector/console/console-format-style.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium gardening.

* platform/chromium/TestExpectations:
Removed 10 entries that have not failed in last 100 runs according to the flakiness dashboard.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@130942 268f45cc-cd09-0410-ab3c-d52691b4dbfc