Commit 6ce83ed8 authored by Kevin McNee's avatar Kevin McNee Committed by Commit Bot

Remove hack to disable double-tap to zoom gesture for PDF viewer

This effectively reverts
https://chromium-review.googlesource.com/c/chromium/src/+/614084
which added this hack.

This is no longer necessary as wheel listeners can now prevent the
double-tap to zoom gesture (see issue 802369) and the PDF viewer has
the necessary behaviour already (see testPreventNativeZoomFromWheel in
gesture_detector_test.js).

Bug: 676668, 802369
Change-Id: I4cb840d9f383c0f8aa4a47851d749de41004816b
Reviewed-on: https://chromium-review.googlesource.com/c/1281172Reviewed-by: default avatarScott Violet <sky@chromium.org>
Reviewed-by: default avatardsinclair <dsinclair@chromium.org>
Commit-Queue: Kevin McNee <mcnee@chromium.org>
Cr-Commit-Position: refs/heads/master@{#599975}
parent c1a602ff
......@@ -1774,24 +1774,6 @@ void EnsureCustomPinchZoomInvoked(WebContents* guest_contents,
#if defined(OS_MACOSX)
// Test that "smart zoom" (double-tap with two fingers on Mac trackpad)
// is disabled for the PDF viewer. This prevents the viewer's controls from
// being scaled off screen (see crbug.com/676668).
IN_PROC_BROWSER_TEST_F(PDFExtensionTest, SmartZoomDisabled) {
GURL test_pdf_url(embedded_test_server()->GetURL("/pdf/test.pdf"));
ASSERT_TRUE(LoadPdf(test_pdf_url));
blink::WebGestureEvent smart_zoom_event(
blink::WebInputEvent::kGestureDoubleTap,
blink::WebInputEvent::kNoModifiers,
blink::WebInputEvent::GetStaticTimeStampForTests(),
blink::kWebGestureDeviceTouchpad);
smart_zoom_event.data.tap.tap_count = 1;
EXPECT_TRUE(browser()->PreHandleGestureEvent(GetActiveWebContents(),
smart_zoom_event));
}
// Ensure that Mac trackpad pinch events are handled by the PDF viewer.
IN_PROC_BROWSER_TEST_F(PDFExtensionTest, TrackpadPinchInvokesCustomZoom) {
GURL test_pdf_url(embedded_test_server()->GetURL("/pdf/test.pdf"));
......
......@@ -218,11 +218,6 @@
#include "ui/gfx/geometry/point.h"
#include "ui/shell_dialogs/selected_file_info.h"
#if defined(OS_MACOSX)
#include "content/public/browser/browser_plugin_guest_manager.h"
#include "extensions/browser/process_manager.h"
#endif
#if defined(OS_WIN)
#include <windows.h>
#include <shellapi.h>
......@@ -1321,29 +1316,6 @@ bool Browser::TabsNeedBeforeUnloadFired() {
bool Browser::PreHandleGestureEvent(content::WebContents* source,
const blink::WebGestureEvent& event) {
#if defined(OS_MACOSX)
// Disable "smart zoom" (double-tap with two fingers on Mac trackpad)
// for the PDF viewer, otherwise the viewer's controls will be scaled off
// screen.
// TODO(mcnee): Investigate having the PDF viewer handle the gesture
// once it is a service. crbug.com/757541
if (event.GetType() == blink::WebInputEvent::kGestureDoubleTap) {
content::BrowserPluginGuestManager* guest_manager =
source->GetBrowserContext()->GetGuestManager();
if (guest_manager) {
const content::WebContents* guest_contents =
guest_manager->GetFullPageGuest(source);
if (guest_contents) {
const extensions::Extension* extension =
extensions::ProcessManager::Get(guest_contents->GetBrowserContext())
->GetExtensionForWebContents(guest_contents);
if (extension && extension->id() == extension_misc::kPdfExtensionId)
return true;
}
}
}
#endif // defined(OS_MACOSX)
// Disable pinch zooming in undocked dev tools window due to poor UX.
if (app_name() == DevToolsWindow::kDevToolsApp)
return blink::WebInputEvent::IsPinchGestureEventType(event.GetType());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment