Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(360)

Side by Side Diff: third_party/WebKit/Source/web/WebViewImpl.cpp

Issue 1888773003: Merge DragClientImpl into core. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: missing file. Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 383 matching lines...) Expand 10 before | Expand all | Expand 10 after
394 { 394 {
395 DEFINE_STATIC_LOCAL(HashSet<WebViewImpl*>, allInstances, ()); 395 DEFINE_STATIC_LOCAL(HashSet<WebViewImpl*>, allInstances, ());
396 return allInstances; 396 return allInstances;
397 } 397 }
398 398
399 WebViewImpl::WebViewImpl(WebViewClient* client) 399 WebViewImpl::WebViewImpl(WebViewClient* client)
400 : m_client(client) 400 : m_client(client)
401 , m_spellCheckClient(nullptr) 401 , m_spellCheckClient(nullptr)
402 , m_chromeClientImpl(ChromeClientImpl::create(this)) 402 , m_chromeClientImpl(ChromeClientImpl::create(this))
403 , m_contextMenuClientImpl(this) 403 , m_contextMenuClientImpl(this)
404 , m_dragClientImpl(this)
405 , m_editorClientImpl(this) 404 , m_editorClientImpl(this)
406 , m_spellCheckerClientImpl(this) 405 , m_spellCheckerClientImpl(this)
407 , m_storageClientImpl(this) 406 , m_storageClientImpl(this)
408 , m_shouldAutoResize(false) 407 , m_shouldAutoResize(false)
409 , m_zoomLevel(0) 408 , m_zoomLevel(0)
410 , m_minimumZoomLevel(zoomFactorToZoomLevel(minTextSizeMultiplier)) 409 , m_minimumZoomLevel(zoomFactorToZoomLevel(minTextSizeMultiplier))
411 , m_maximumZoomLevel(zoomFactorToZoomLevel(maxTextSizeMultiplier)) 410 , m_maximumZoomLevel(zoomFactorToZoomLevel(maxTextSizeMultiplier))
412 , m_zoomFactorForDeviceScaleFactor(0.f) 411 , m_zoomFactorForDeviceScaleFactor(0.f)
413 , m_maximumLegibleScale(1) 412 , m_maximumLegibleScale(1)
414 , m_doubleTapZoomPageScaleFactor(0) 413 , m_doubleTapZoomPageScaleFactor(0)
(...skipping 28 matching lines...) Expand all
443 , m_shouldDispatchFirstLayoutAfterFinishedParsing(false) 442 , m_shouldDispatchFirstLayoutAfterFinishedParsing(false)
444 , m_shouldDispatchFirstLayoutAfterFinishedLoading(false) 443 , m_shouldDispatchFirstLayoutAfterFinishedLoading(false)
445 , m_displayMode(WebDisplayModeBrowser) 444 , m_displayMode(WebDisplayModeBrowser)
446 , m_elasticOverscroll(FloatSize()) 445 , m_elasticOverscroll(FloatSize())
447 , m_scheduler(adoptPtr(Platform::current()->currentThread()->scheduler()->cr eateWebViewScheduler(this).release())) 446 , m_scheduler(adoptPtr(Platform::current()->currentThread()->scheduler()->cr eateWebViewScheduler(this).release()))
448 { 447 {
449 Page::PageClients pageClients; 448 Page::PageClients pageClients;
450 pageClients.chromeClient = m_chromeClientImpl.get(); 449 pageClients.chromeClient = m_chromeClientImpl.get();
451 pageClients.contextMenuClient = &m_contextMenuClientImpl; 450 pageClients.contextMenuClient = &m_contextMenuClientImpl;
452 pageClients.editorClient = &m_editorClientImpl; 451 pageClients.editorClient = &m_editorClientImpl;
453 pageClients.dragClient = &m_dragClientImpl;
454 pageClients.spellCheckerClient = &m_spellCheckerClientImpl; 452 pageClients.spellCheckerClient = &m_spellCheckerClientImpl;
455 453
456 m_page = Page::createOrdinary(pageClients); 454 m_page = Page::createOrdinary(pageClients);
457 MediaKeysController::provideMediaKeysTo(*m_page, &m_mediaKeysClientImpl); 455 MediaKeysController::provideMediaKeysTo(*m_page, &m_mediaKeysClientImpl);
458 provideSpeechRecognitionTo(*m_page, SpeechRecognitionClientProxy::create(cli ent ? client->speechRecognizer() : nullptr)); 456 provideSpeechRecognitionTo(*m_page, SpeechRecognitionClientProxy::create(cli ent ? client->speechRecognizer() : nullptr));
459 provideContextFeaturesTo(*m_page, ContextFeaturesClientImpl::create()); 457 provideContextFeaturesTo(*m_page, ContextFeaturesClientImpl::create());
460 provideDatabaseClientTo(*m_page, DatabaseClientImpl::create()); 458 provideDatabaseClientTo(*m_page, DatabaseClientImpl::create());
461 459
462 provideStorageQuotaClientTo(*m_page, StorageQuotaClientImpl::create()); 460 provideStorageQuotaClientTo(*m_page, StorageQuotaClientImpl::create());
463 m_page->setValidationMessageClient(ValidationMessageClientImpl::create(*this )); 461 m_page->setValidationMessageClient(ValidationMessageClientImpl::create(*this ));
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
529 // If there is a popup open, close it as the user is clicking on the page 527 // If there is a popup open, close it as the user is clicking on the page
530 // (outside of the popup). We also save it so we can prevent a click on an 528 // (outside of the popup). We also save it so we can prevent a click on an
531 // element from immediately reopening the same popup. 529 // element from immediately reopening the same popup.
532 RefPtr<WebPagePopupImpl> pagePopup; 530 RefPtr<WebPagePopupImpl> pagePopup;
533 if (event.button == WebMouseEvent::ButtonLeft) { 531 if (event.button == WebMouseEvent::ButtonLeft) {
534 pagePopup = m_pagePopup; 532 pagePopup = m_pagePopup;
535 hidePopups(); 533 hidePopups();
536 DCHECK(!m_pagePopup); 534 DCHECK(!m_pagePopup);
537 } 535 }
538 536
539 m_lastMouseDownPoint = WebPoint(event.x, event.y);
540
541 // Take capture on a mouse down on a plugin so we can send it mouse events. 537 // Take capture on a mouse down on a plugin so we can send it mouse events.
542 // If the hit node is a plugin but a scrollbar is over it don't start mouse 538 // If the hit node is a plugin but a scrollbar is over it don't start mouse
543 // capture because it will interfere with the scrollbar receiving events. 539 // capture because it will interfere with the scrollbar receiving events.
544 IntPoint point(event.x, event.y); 540 IntPoint point(event.x, event.y);
545 if (event.button == WebMouseEvent::ButtonLeft && m_page->mainFrame()->isLoca lFrame()) { 541 if (event.button == WebMouseEvent::ButtonLeft && m_page->mainFrame()->isLoca lFrame()) {
546 point = m_page->deprecatedLocalMainFrame()->view()->rootFrameToContents( point); 542 point = m_page->deprecatedLocalMainFrame()->view()->rootFrameToContents( point);
547 HitTestResult result(m_page->deprecatedLocalMainFrame()->eventHandler(). hitTestResultAtPoint(point)); 543 HitTestResult result(m_page->deprecatedLocalMainFrame()->eventHandler(). hitTestResultAtPoint(point));
548 result.setToShadowHostIfInUserAgentShadowRoot(); 544 result.setToShadowHostIfInUserAgentShadowRoot();
549 Node* hitNode = result.innerNodeOrImageMapImage(); 545 Node* hitNode = result.innerNodeOrImageMapImage();
550 546
(...skipping 4044 matching lines...) Expand 10 before | Expand all | Expand 10 after
4595 { 4591 {
4596 // TODO(oshima): Investigate if this should return the ScreenInfo's scale fa ctor rather than 4592 // TODO(oshima): Investigate if this should return the ScreenInfo's scale fa ctor rather than
4597 // page's scale factor, which can be 1 in use-zoom-for-dsf mode. 4593 // page's scale factor, which can be 1 in use-zoom-for-dsf mode.
4598 if (!page()) 4594 if (!page())
4599 return 1; 4595 return 1;
4600 4596
4601 return page()->deviceScaleFactor(); 4597 return page()->deviceScaleFactor();
4602 } 4598 }
4603 4599
4604 } // namespace blink 4600 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698