From e87c3096e6521aa2d52f255bf1e51a5e3b5ce7a8 Mon Sep 17 00:00:00 2001 From: Jim Chen Date: Mon, 17 Sep 2018 17:47:21 -0400 Subject: [PATCH] Bug 1442176 - 1. Remove current pin-on-caret-drag code; r=snorp Remove the current code that pins the toolbar on caret drag, which only works for Fennec. Differential Revision: https://phabricator.services.mozilla.com/D5189 --- layout/base/AccessibleCaretManager.cpp | 14 -------------- .../org/mozilla/gecko/gfx/LayerSession.java | 17 ----------------- widget/android/nsWindow.cpp | 18 ------------------ widget/android/nsWindow.h | 1 - 4 files changed, 50 deletions(-) diff --git a/layout/base/AccessibleCaretManager.cpp b/layout/base/AccessibleCaretManager.cpp index b8b6fc60289d..30a736cc2943 100644 --- a/layout/base/AccessibleCaretManager.cpp +++ b/layout/base/AccessibleCaretManager.cpp @@ -27,9 +27,6 @@ #include "nsFrameSelection.h" #include "nsGenericHTMLElement.h" #include "nsIHapticFeedback.h" -#ifdef MOZ_WIDGET_ANDROID -#include "nsWindow.h" -#endif namespace mozilla { @@ -894,17 +891,6 @@ AccessibleCaretManager::SetSelectionDragState(bool aState) const if (fs) { fs->SetDragState(aState); } - - // Pin Fennecs DynamicToolbarAnimator in place before/after dragging, - // to avoid co-incident screen scrolling. -#ifdef MOZ_WIDGET_ANDROID - if (XRE_IsParentProcess()) { - nsIDocument* doc = mPresShell->GetDocument(); - MOZ_ASSERT(doc); - nsIWidget* widget = nsContentUtils::WidgetForDocument(doc); - static_cast(widget)->SetSelectionDragState(aState); - } -#endif } bool diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerSession.java b/mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerSession.java index 12237ec3269a..974222776de1 100644 --- a/mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerSession.java +++ b/mobile/android/geckoview/src/main/java/org/mozilla/gecko/gfx/LayerSession.java @@ -140,13 +140,6 @@ public class LayerSession { private void updateOverscrollOffset(final float x, final float y) { LayerSession.this.updateOverscrollOffset(x, y); } - - @WrapForJNI(calledFrom = "ui") - private void onSelectionCaretDrag(final boolean dragging) { - // Active SelectionCaretDrag requires DynamicToolbarAnimator to be pinned to - // avoid unwanted scroll interactions. - LayerSession.this.onSelectionCaretDrag(dragging); - } } protected final Compositor mCompositor = new Compositor(); @@ -482,16 +475,6 @@ public class LayerSession { mOverscroll.setDistance(y, OverscrollEdgeEffect.AXIS_Y); } - /* package */ void onSelectionCaretDrag(final boolean dragging) { - if (DEBUG) { - ThreadUtils.assertOnUiThread(); - } - - if (mToolbar != null) { - mToolbar.setPinned(dragging, DynamicToolbarAnimator.PinReason.CARET_DRAG); - } - } - /* package */ void onMetricsChanged(final float scrollX, final float scrollY, final float zoom) { if (DEBUG) { diff --git a/widget/android/nsWindow.cpp b/widget/android/nsWindow.cpp index cd8d590b2dd1..a0ddbca2e5e6 100644 --- a/widget/android/nsWindow.cpp +++ b/widget/android/nsWindow.cpp @@ -1945,24 +1945,6 @@ nsWindow::UpdateOverscrollOffset(const float aX, const float aY) } } -void -nsWindow::SetSelectionDragState(bool aState) -{ - MOZ_ASSERT(NS_IsMainThread()); - - if (!mLayerViewSupport) { - return; - } - - const auto& compositor = mLayerViewSupport->GetJavaCompositor(); - DispatchToUiThread( - "nsWindow::SetSelectionDragState", - [compositor = LayerSession::Compositor::GlobalRef(compositor), - aState] { - compositor->OnSelectionCaretDrag(aState); - }); -} - void * nsWindow::GetNativeData(uint32_t aDataType) { diff --git a/widget/android/nsWindow.h b/widget/android/nsWindow.h index 9b4e9d86faf8..a9e3f8bff55c 100644 --- a/widget/android/nsWindow.h +++ b/widget/android/nsWindow.h @@ -268,7 +268,6 @@ public: const InputContextAction& aAction) override; virtual InputContext GetInputContext() override; - void SetSelectionDragState(bool aState); LayerManager* GetLayerManager(PLayerTransactionChild* aShadowManager = nullptr, LayersBackend aBackendHint = mozilla::layers::LayersBackend::LAYERS_NONE, LayerManagerPersistence aPersistence = LAYER_MANAGER_CURRENT) override;