OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). | 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
7 * met: | 7 * met: |
8 * | 8 * |
9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 29 matching lines...) Expand all Loading... |
40 #include "HTMLNames.h" | 40 #include "HTMLNames.h" |
41 #include "PopupMenuChromium.h" | 41 #include "PopupMenuChromium.h" |
42 #include "RuntimeEnabledFeatures.h" | 42 #include "RuntimeEnabledFeatures.h" |
43 #include "WebAXObject.h" | 43 #include "WebAXObject.h" |
44 #include "WebAutofillClient.h" | 44 #include "WebAutofillClient.h" |
45 #include "WebColorChooser.h" | 45 #include "WebColorChooser.h" |
46 #include "WebColorSuggestion.h" | 46 #include "WebColorSuggestion.h" |
47 #include "WebConsoleMessage.h" | 47 #include "WebConsoleMessage.h" |
48 #include "WebFileChooserCompletionImpl.h" | 48 #include "WebFileChooserCompletionImpl.h" |
49 #include "WebFrameClient.h" | 49 #include "WebFrameClient.h" |
50 #include "WebFrameImpl.h" | |
51 #include "WebInputElement.h" | 50 #include "WebInputElement.h" |
52 #include "WebInputEvent.h" | 51 #include "WebInputEvent.h" |
53 #include "WebInputEventConversion.h" | 52 #include "WebInputEventConversion.h" |
54 #include "WebKit.h" | 53 #include "WebKit.h" |
| 54 #include "WebLocalFrameImpl.h" |
55 #include "WebNode.h" | 55 #include "WebNode.h" |
56 #include "WebPasswordGeneratorClient.h" | 56 #include "WebPasswordGeneratorClient.h" |
57 #include "WebPlugin.h" | 57 #include "WebPlugin.h" |
58 #include "WebPluginContainerImpl.h" | 58 #include "WebPluginContainerImpl.h" |
59 #include "WebPopupMenuImpl.h" | 59 #include "WebPopupMenuImpl.h" |
60 #include "WebPopupMenuInfo.h" | 60 #include "WebPopupMenuInfo.h" |
61 #include "WebSettings.h" | 61 #include "WebSettings.h" |
62 #include "WebSettingsImpl.h" | 62 #include "WebSettingsImpl.h" |
63 #include "WebTextDirection.h" | 63 #include "WebTextDirection.h" |
64 #include "WebUserGestureIndicator.h" | 64 #include "WebUserGestureIndicator.h" |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
208 // This cast must be valid because of the isLink() check. | 208 // This cast must be valid because of the isLink() check. |
209 hitTest.setURLElement(toElement(node)); | 209 hitTest.setURLElement(toElement(node)); |
210 if (hitTest.isLiveLink()) | 210 if (hitTest.isLiveLink()) |
211 focusURL = hitTest.absoluteLinkURL(); | 211 focusURL = hitTest.absoluteLinkURL(); |
212 } | 212 } |
213 m_webView->client()->setKeyboardFocusURL(focusURL); | 213 m_webView->client()->setKeyboardFocusURL(focusURL); |
214 } | 214 } |
215 | 215 |
216 void ChromeClientImpl::focusedFrameChanged(WebCore::LocalFrame* frame) | 216 void ChromeClientImpl::focusedFrameChanged(WebCore::LocalFrame* frame) |
217 { | 217 { |
218 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 218 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
219 if (webframe && webframe->client()) | 219 if (webframe && webframe->client()) |
220 webframe->client()->frameFocused(); | 220 webframe->client()->frameFocused(); |
221 } | 221 } |
222 | 222 |
223 Page* ChromeClientImpl::createWindow(LocalFrame* frame, const FrameLoadRequest&
r, const WindowFeatures& features, | 223 Page* ChromeClientImpl::createWindow(LocalFrame* frame, const FrameLoadRequest&
r, const WindowFeatures& features, |
224 NavigationPolicy navigationPolicy, ShouldSendReferrer shouldSendReferrer) | 224 NavigationPolicy navigationPolicy, ShouldSendReferrer shouldSendReferrer) |
225 { | 225 { |
226 if (!m_webView->client()) | 226 if (!m_webView->client()) |
227 return 0; | 227 return 0; |
228 | 228 |
229 WebNavigationPolicy policy = static_cast<WebNavigationPolicy>(navigationPoli
cy); | 229 WebNavigationPolicy policy = static_cast<WebNavigationPolicy>(navigationPoli
cy); |
230 if (policy == WebNavigationPolicyIgnore) | 230 if (policy == WebNavigationPolicyIgnore) |
231 policy = getNavigationPolicy(); | 231 policy = getNavigationPolicy(); |
232 | 232 |
233 ASSERT(frame->document()); | 233 ASSERT(frame->document()); |
234 DocumentFullscreen::webkitCancelFullScreen(*frame->document()); | 234 DocumentFullscreen::webkitCancelFullScreen(*frame->document()); |
235 | 235 |
236 WebViewImpl* newView = toWebViewImpl( | 236 WebViewImpl* newView = toWebViewImpl( |
237 m_webView->client()->createView(WebFrameImpl::fromFrame(frame), WrappedR
esourceRequest(r.resourceRequest()), features, r.frameName(), policy, shouldSend
Referrer == NeverSendReferrer)); | 237 m_webView->client()->createView(WebLocalFrameImpl::fromFrame(frame), Wra
ppedResourceRequest(r.resourceRequest()), features, r.frameName(), policy, shoul
dSendReferrer == NeverSendReferrer)); |
238 if (!newView) | 238 if (!newView) |
239 return 0; | 239 return 0; |
240 return newView->page(); | 240 return newView->page(); |
241 } | 241 } |
242 | 242 |
243 static inline void updatePolicyForEvent(const WebInputEvent* inputEvent, Navigat
ionPolicy* policy) | 243 static inline void updatePolicyForEvent(const WebInputEvent* inputEvent, Navigat
ionPolicy* policy) |
244 { | 244 { |
245 if (!inputEvent || inputEvent->type != WebInputEvent::MouseUp) | 245 if (!inputEvent || inputEvent->type != WebInputEvent::MouseUp) |
246 return; | 246 return; |
247 | 247 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
331 } | 331 } |
332 | 332 |
333 bool ChromeClientImpl::statusbarVisible() | 333 bool ChromeClientImpl::statusbarVisible() |
334 { | 334 { |
335 return m_statusbarVisible; | 335 return m_statusbarVisible; |
336 } | 336 } |
337 | 337 |
338 void ChromeClientImpl::setScrollbarsVisible(bool value) | 338 void ChromeClientImpl::setScrollbarsVisible(bool value) |
339 { | 339 { |
340 m_scrollbarsVisible = value; | 340 m_scrollbarsVisible = value; |
341 WebFrameImpl* webFrame = toWebFrameImpl(m_webView->mainFrame()); | 341 WebLocalFrameImpl* webFrame = toWebLocalFrameImpl(m_webView->mainFrame()); |
342 if (webFrame) | 342 if (webFrame) |
343 webFrame->setCanHaveScrollbars(value); | 343 webFrame->setCanHaveScrollbars(value); |
344 } | 344 } |
345 | 345 |
346 bool ChromeClientImpl::scrollbarsVisible() | 346 bool ChromeClientImpl::scrollbarsVisible() |
347 { | 347 { |
348 return m_scrollbarsVisible; | 348 return m_scrollbarsVisible; |
349 } | 349 } |
350 | 350 |
351 void ChromeClientImpl::setMenubarVisible(bool value) | 351 void ChromeClientImpl::setMenubarVisible(bool value) |
352 { | 352 { |
353 m_menubarVisible = value; | 353 m_menubarVisible = value; |
354 } | 354 } |
355 | 355 |
356 bool ChromeClientImpl::menubarVisible() | 356 bool ChromeClientImpl::menubarVisible() |
357 { | 357 { |
358 return m_menubarVisible; | 358 return m_menubarVisible; |
359 } | 359 } |
360 | 360 |
361 void ChromeClientImpl::setResizable(bool value) | 361 void ChromeClientImpl::setResizable(bool value) |
362 { | 362 { |
363 m_resizable = value; | 363 m_resizable = value; |
364 } | 364 } |
365 | 365 |
366 bool ChromeClientImpl::shouldReportDetailedMessageForSource(const String& url) | 366 bool ChromeClientImpl::shouldReportDetailedMessageForSource(const String& url) |
367 { | 367 { |
368 WebFrameImpl* webframe = m_webView->mainFrameImpl(); | 368 WebLocalFrameImpl* webframe = m_webView->mainFrameImpl(); |
369 return webframe->client() && webframe->client()->shouldReportDetailedMessage
ForSource(url); | 369 return webframe->client() && webframe->client()->shouldReportDetailedMessage
ForSource(url); |
370 } | 370 } |
371 | 371 |
372 void ChromeClientImpl::addMessageToConsole(LocalFrame* localFrame, MessageSource
source, MessageLevel level, const String& message, unsigned lineNumber, const S
tring& sourceID, const String& stackTrace) | 372 void ChromeClientImpl::addMessageToConsole(LocalFrame* localFrame, MessageSource
source, MessageLevel level, const String& message, unsigned lineNumber, const S
tring& sourceID, const String& stackTrace) |
373 { | 373 { |
374 WebFrameImpl* frame = WebFrameImpl::fromFrame(localFrame); | 374 WebLocalFrameImpl* frame = WebLocalFrameImpl::fromFrame(localFrame); |
375 if (frame && frame->client()) { | 375 if (frame && frame->client()) { |
376 frame->client()->didAddMessageToConsole( | 376 frame->client()->didAddMessageToConsole( |
377 WebConsoleMessage(static_cast<WebConsoleMessage::Level>(level), mess
age), | 377 WebConsoleMessage(static_cast<WebConsoleMessage::Level>(level), mess
age), |
378 sourceID, | 378 sourceID, |
379 lineNumber, | 379 lineNumber, |
380 stackTrace); | 380 stackTrace); |
381 } | 381 } |
382 } | 382 } |
383 | 383 |
384 bool ChromeClientImpl::canRunBeforeUnloadConfirmPanel() | 384 bool ChromeClientImpl::canRunBeforeUnloadConfirmPanel() |
385 { | 385 { |
386 return !!m_webView->client(); | 386 return !!m_webView->client(); |
387 } | 387 } |
388 | 388 |
389 bool ChromeClientImpl::runBeforeUnloadConfirmPanel(const String& message, LocalF
rame* frame) | 389 bool ChromeClientImpl::runBeforeUnloadConfirmPanel(const String& message, LocalF
rame* frame) |
390 { | 390 { |
391 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 391 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
392 | 392 |
393 bool isReload = false; | 393 bool isReload = false; |
394 WebDataSource* ds = webframe->provisionalDataSource(); | 394 WebDataSource* ds = webframe->provisionalDataSource(); |
395 if (ds) | 395 if (ds) |
396 isReload = (ds->navigationType() == blink::WebNavigationTypeReload); | 396 isReload = (ds->navigationType() == blink::WebNavigationTypeReload); |
397 | 397 |
398 if (webframe->client()) | 398 if (webframe->client()) |
399 return webframe->client()->runModalBeforeUnloadDialog(isReload, message)
; | 399 return webframe->client()->runModalBeforeUnloadDialog(isReload, message)
; |
400 return false; | 400 return false; |
401 } | 401 } |
402 | 402 |
403 void ChromeClientImpl::closeWindowSoon() | 403 void ChromeClientImpl::closeWindowSoon() |
404 { | 404 { |
405 // Make sure this Page can no longer be found by JS. | 405 // Make sure this Page can no longer be found by JS. |
406 Page::ordinaryPages().remove(m_webView->page()); | 406 Page::ordinaryPages().remove(m_webView->page()); |
407 | 407 |
408 // Make sure that all loading is stopped. Ensures that JS stops executing! | 408 // Make sure that all loading is stopped. Ensures that JS stops executing! |
409 m_webView->mainFrame()->stopLoading(); | 409 m_webView->mainFrame()->stopLoading(); |
410 | 410 |
411 if (m_webView->client()) | 411 if (m_webView->client()) |
412 m_webView->client()->closeWidgetSoon(); | 412 m_webView->client()->closeWidgetSoon(); |
413 } | 413 } |
414 | 414 |
415 // Although a LocalFrame is passed in, we don't actually use it, since we | 415 // Although a LocalFrame is passed in, we don't actually use it, since we |
416 // already know our own m_webView. | 416 // already know our own m_webView. |
417 void ChromeClientImpl::runJavaScriptAlert(LocalFrame* frame, const String& messa
ge) | 417 void ChromeClientImpl::runJavaScriptAlert(LocalFrame* frame, const String& messa
ge) |
418 { | 418 { |
419 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 419 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
420 if (webframe->client()) { | 420 if (webframe->client()) { |
421 if (WebUserGestureIndicator::isProcessingUserGesture()) | 421 if (WebUserGestureIndicator::isProcessingUserGesture()) |
422 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); | 422 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); |
423 webframe->client()->runModalAlertDialog(message); | 423 webframe->client()->runModalAlertDialog(message); |
424 } | 424 } |
425 } | 425 } |
426 | 426 |
427 // See comments for runJavaScriptAlert(). | 427 // See comments for runJavaScriptAlert(). |
428 bool ChromeClientImpl::runJavaScriptConfirm(LocalFrame* frame, const String& mes
sage) | 428 bool ChromeClientImpl::runJavaScriptConfirm(LocalFrame* frame, const String& mes
sage) |
429 { | 429 { |
430 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 430 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
431 if (webframe->client()) { | 431 if (webframe->client()) { |
432 if (WebUserGestureIndicator::isProcessingUserGesture()) | 432 if (WebUserGestureIndicator::isProcessingUserGesture()) |
433 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); | 433 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); |
434 return webframe->client()->runModalConfirmDialog(message); | 434 return webframe->client()->runModalConfirmDialog(message); |
435 } | 435 } |
436 return false; | 436 return false; |
437 } | 437 } |
438 | 438 |
439 // See comments for runJavaScriptAlert(). | 439 // See comments for runJavaScriptAlert(). |
440 bool ChromeClientImpl::runJavaScriptPrompt(LocalFrame* frame, | 440 bool ChromeClientImpl::runJavaScriptPrompt(LocalFrame* frame, |
441 const String& message, | 441 const String& message, |
442 const String& defaultValue, | 442 const String& defaultValue, |
443 String& result) | 443 String& result) |
444 { | 444 { |
445 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 445 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
446 if (webframe->client()) { | 446 if (webframe->client()) { |
447 if (WebUserGestureIndicator::isProcessingUserGesture()) | 447 if (WebUserGestureIndicator::isProcessingUserGesture()) |
448 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); | 448 WebUserGestureIndicator::currentUserGestureToken().setJavascriptProm
pt(); |
449 WebString actualValue; | 449 WebString actualValue; |
450 bool ok = webframe->client()->runModalPromptDialog( | 450 bool ok = webframe->client()->runModalPromptDialog( |
451 message, | 451 message, |
452 defaultValue, | 452 defaultValue, |
453 &actualValue); | 453 &actualValue); |
454 if (ok) | 454 if (ok) |
455 result = actualValue; | 455 result = actualValue; |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
528 | 528 |
529 WebScreenInfo ChromeClientImpl::screenInfo() const | 529 WebScreenInfo ChromeClientImpl::screenInfo() const |
530 { | 530 { |
531 return m_webView->client() ? m_webView->client()->screenInfo() : WebScreenIn
fo(); | 531 return m_webView->client() ? m_webView->client()->screenInfo() : WebScreenIn
fo(); |
532 } | 532 } |
533 | 533 |
534 void ChromeClientImpl::contentsSizeChanged(LocalFrame* frame, const IntSize& siz
e) const | 534 void ChromeClientImpl::contentsSizeChanged(LocalFrame* frame, const IntSize& siz
e) const |
535 { | 535 { |
536 m_webView->didChangeContentsSize(); | 536 m_webView->didChangeContentsSize(); |
537 | 537 |
538 WebFrameImpl* webframe = WebFrameImpl::fromFrame(frame); | 538 WebLocalFrameImpl* webframe = WebLocalFrameImpl::fromFrame(frame); |
539 webframe->didChangeContentsSize(size); | 539 webframe->didChangeContentsSize(size); |
540 if (webframe->client()) | 540 if (webframe->client()) |
541 webframe->client()->didChangeContentsSize(webframe, size); | 541 webframe->client()->didChangeContentsSize(webframe, size); |
542 | 542 |
543 frame->loader().restoreScrollPositionAndViewState(); | 543 frame->loader().restoreScrollPositionAndViewState(); |
544 } | 544 } |
545 | 545 |
546 void ChromeClientImpl::deviceOrPageScaleFactorChanged() const | 546 void ChromeClientImpl::deviceOrPageScaleFactorChanged() const |
547 { | 547 { |
548 m_webView->deviceOrPageScaleFactorChanged(); | 548 m_webView->deviceOrPageScaleFactorChanged(); |
549 } | 549 } |
550 | 550 |
551 void ChromeClientImpl::layoutUpdated(LocalFrame* frame) const | 551 void ChromeClientImpl::layoutUpdated(LocalFrame* frame) const |
552 { | 552 { |
553 m_webView->layoutUpdated(WebFrameImpl::fromFrame(frame)); | 553 m_webView->layoutUpdated(WebLocalFrameImpl::fromFrame(frame)); |
554 } | 554 } |
555 | 555 |
556 void ChromeClientImpl::mouseDidMoveOverElement( | 556 void ChromeClientImpl::mouseDidMoveOverElement( |
557 const HitTestResult& result, unsigned modifierFlags) | 557 const HitTestResult& result, unsigned modifierFlags) |
558 { | 558 { |
559 if (!m_webView->client()) | 559 if (!m_webView->client()) |
560 return; | 560 return; |
561 | 561 |
562 WebURL url; | 562 WebURL url; |
563 // Find out if the mouse is over a link, and if so, let our UI know... | 563 // Find out if the mouse is over a link, and if so, let our UI know... |
(...skipping 27 matching lines...) Expand all Loading... |
591 } | 591 } |
592 | 592 |
593 void ChromeClientImpl::dispatchViewportPropertiesDidChange(const ViewportDescrip
tion& description) const | 593 void ChromeClientImpl::dispatchViewportPropertiesDidChange(const ViewportDescrip
tion& description) const |
594 { | 594 { |
595 m_webView->updatePageDefinedViewportConstraints(description); | 595 m_webView->updatePageDefinedViewportConstraints(description); |
596 } | 596 } |
597 | 597 |
598 void ChromeClientImpl::print(LocalFrame* frame) | 598 void ChromeClientImpl::print(LocalFrame* frame) |
599 { | 599 { |
600 if (m_webView->client()) | 600 if (m_webView->client()) |
601 m_webView->client()->printPage(WebFrameImpl::fromFrame(frame)); | 601 m_webView->client()->printPage(WebLocalFrameImpl::fromFrame(frame)); |
602 } | 602 } |
603 | 603 |
604 PassOwnPtr<ColorChooser> ChromeClientImpl::createColorChooser(LocalFrame* frame,
ColorChooserClient* chooserClient, const Color&) | 604 PassOwnPtr<ColorChooser> ChromeClientImpl::createColorChooser(LocalFrame* frame,
ColorChooserClient* chooserClient, const Color&) |
605 { | 605 { |
606 OwnPtr<ColorChooserUIController> controller; | 606 OwnPtr<ColorChooserUIController> controller; |
607 if (RuntimeEnabledFeatures::pagePopupEnabled()) | 607 if (RuntimeEnabledFeatures::pagePopupEnabled()) |
608 controller = adoptPtr(new ColorChooserPopupUIController(frame, this, cho
oserClient)); | 608 controller = adoptPtr(new ColorChooserPopupUIController(frame, this, cho
oserClient)); |
609 else | 609 else |
610 controller = adoptPtr(new ColorChooserUIController(frame, chooserClient)
); | 610 controller = adoptPtr(new ColorChooserUIController(frame, chooserClient)
); |
611 controller->openUI(); | 611 controller->openUI(); |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
695 } | 695 } |
696 | 696 |
697 String ChromeClientImpl::acceptLanguages() | 697 String ChromeClientImpl::acceptLanguages() |
698 { | 698 { |
699 return m_webView->client()->acceptLanguages(); | 699 return m_webView->client()->acceptLanguages(); |
700 } | 700 } |
701 | 701 |
702 bool ChromeClientImpl::paintCustomOverhangArea(GraphicsContext* context, const I
ntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRe
ct& dirtyRect) | 702 bool ChromeClientImpl::paintCustomOverhangArea(GraphicsContext* context, const I
ntRect& horizontalOverhangArea, const IntRect& verticalOverhangArea, const IntRe
ct& dirtyRect) |
703 { | 703 { |
704 LocalFrame* frame = m_webView->mainFrameImpl()->frame(); | 704 LocalFrame* frame = m_webView->mainFrameImpl()->frame(); |
705 WebPluginContainerImpl* pluginContainer = WebFrameImpl::pluginContainerFromF
rame(frame); | 705 WebPluginContainerImpl* pluginContainer = WebLocalFrameImpl::pluginContainer
FromFrame(frame); |
706 if (pluginContainer) | 706 if (pluginContainer) |
707 return pluginContainer->paintCustomOverhangArea(context, horizontalOverh
angArea, verticalOverhangArea, dirtyRect); | 707 return pluginContainer->paintCustomOverhangArea(context, horizontalOverh
angArea, verticalOverhangArea, dirtyRect); |
708 return false; | 708 return false; |
709 } | 709 } |
710 | 710 |
711 GraphicsLayerFactory* ChromeClientImpl::graphicsLayerFactory() const | 711 GraphicsLayerFactory* ChromeClientImpl::graphicsLayerFactory() const |
712 { | 712 { |
713 return m_webView->graphicsLayerFactory(); | 713 return m_webView->graphicsLayerFactory(); |
714 } | 714 } |
715 | 715 |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
863 if (!m_webView->autofillClient()) | 863 if (!m_webView->autofillClient()) |
864 return; | 864 return; |
865 m_webView->autofillClient()->textFieldDidReceiveKeyDown(WebInputElement(&inp
utElement), WebKeyboardEventBuilder(event)); | 865 m_webView->autofillClient()->textFieldDidReceiveKeyDown(WebInputElement(&inp
utElement), WebKeyboardEventBuilder(event)); |
866 } | 866 } |
867 | 867 |
868 // FIXME: Remove this code once we have input routing in the browser | 868 // FIXME: Remove this code once we have input routing in the browser |
869 // process. See http://crbug.com/339659. | 869 // process. See http://crbug.com/339659. |
870 void ChromeClientImpl::forwardInputEvent( | 870 void ChromeClientImpl::forwardInputEvent( |
871 WebCore::Frame* frame, WebCore::Event* event) | 871 WebCore::Frame* frame, WebCore::Event* event) |
872 { | 872 { |
873 WebFrameImpl* webFrame = WebFrameImpl::fromFrame(toLocalFrameTemporary(frame
)); | 873 WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(toLocalFrameTempo
rary(frame)); |
874 | 874 |
875 // This is only called when we have out-of-process iframes, which | 875 // This is only called when we have out-of-process iframes, which |
876 // need to forward input events across processes. | 876 // need to forward input events across processes. |
877 // FIXME: Add a check for out-of-process iframes enabled. | 877 // FIXME: Add a check for out-of-process iframes enabled. |
878 if (event->isKeyboardEvent()) { | 878 if (event->isKeyboardEvent()) { |
879 WebKeyboardEventBuilder webEvent(*static_cast<WebCore::KeyboardEvent*>(e
vent)); | 879 WebKeyboardEventBuilder webEvent(*static_cast<WebCore::KeyboardEvent*>(e
vent)); |
880 webFrame->client()->forwardInputEvent(&webEvent); | 880 webFrame->client()->forwardInputEvent(&webEvent); |
881 } else if (event->isMouseEvent()) { | 881 } else if (event->isMouseEvent()) { |
882 WebMouseEventBuilder webEvent(webFrame->frameView(), frame->ownerRendere
r(), *static_cast<WebCore::MouseEvent*>(event)); | 882 WebMouseEventBuilder webEvent(webFrame->frameView(), frame->ownerRendere
r(), *static_cast<WebCore::MouseEvent*>(event)); |
883 // Internal Blink events should not be forwarded. | 883 // Internal Blink events should not be forwarded. |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
931 { | 931 { |
932 return static_cast<NavigatorContentUtilsClient::CustomHandlersState>(m_webVi
ew->client()->isProtocolHandlerRegistered(scheme, baseURL, url)); | 932 return static_cast<NavigatorContentUtilsClient::CustomHandlersState>(m_webVi
ew->client()->isProtocolHandlerRegistered(scheme, baseURL, url)); |
933 } | 933 } |
934 | 934 |
935 void NavigatorContentUtilsClientImpl::unregisterProtocolHandler(const String& sc
heme, const WebCore::KURL& baseURL, const WebCore::KURL& url) | 935 void NavigatorContentUtilsClientImpl::unregisterProtocolHandler(const String& sc
heme, const WebCore::KURL& baseURL, const WebCore::KURL& url) |
936 { | 936 { |
937 m_webView->client()->unregisterProtocolHandler(scheme, baseURL, url); | 937 m_webView->client()->unregisterProtocolHandler(scheme, baseURL, url); |
938 } | 938 } |
939 | 939 |
940 } // namespace blink | 940 } // namespace blink |
OLD | NEW |