From aee8a16e66205f2e41dd638b0f3072acccee2a1d Mon Sep 17 00:00:00 2001 From: Manuel Martin Date: Mon, 9 Dec 2019 14:04:31 +0100 Subject: [PATCH] Close Library panels when clicking on an anchor (#2403) --- .../vrbrowser/ui/callbacks/BookmarksCallback.java | 1 + .../vrbrowser/ui/callbacks/HistoryCallback.java | 1 + .../org/mozilla/vrbrowser/ui/views/BookmarksView.java | 2 ++ .../org/mozilla/vrbrowser/ui/views/HistoryView.java | 2 ++ .../org/mozilla/vrbrowser/ui/widgets/WindowWidget.java | 10 ++++++++++ 5 files changed, 16 insertions(+) diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/BookmarksCallback.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/BookmarksCallback.java index 0d23a7d06..26f0002ae 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/BookmarksCallback.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/BookmarksCallback.java @@ -13,4 +13,5 @@ default void onFxALogin(@NonNull View view) {} default void onFxASynSettings(@NonNull View view) {} default void onShowContextMenu(@NonNull View view, Bookmark item, boolean isLastVisibleItem) {} default void onHideContextMenu(@NonNull View view) {} + default void onClickItem(@NonNull View view, Bookmark item) {} } diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/HistoryCallback.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/HistoryCallback.java index 5070d582a..6125ba8b1 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/HistoryCallback.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/callbacks/HistoryCallback.java @@ -13,4 +13,5 @@ default void onFxALogin(@NonNull View view) {} default void onFxASynSettings(@NonNull View view) {} default void onShowContextMenu(@NonNull View view, @NonNull VisitInfo item, boolean isLastVisibleItem) {} default void onHideContextMenu(@NonNull View view) {} + default void onClickItem(@NonNull View view, @NonNull VisitInfo item) {} } diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/views/BookmarksView.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/views/BookmarksView.java index 6f9537a0e..4512d1d56 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/views/BookmarksView.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/views/BookmarksView.java @@ -159,6 +159,8 @@ public void onClick(@NonNull View view, @NonNull Bookmark item) { Session session = SessionStore.get().getActiveSession(); session.loadUri(item.getUrl()); + + mBookmarksViewListeners.forEach((listener) -> listener.onClickItem(view, item)); } @Override diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/views/HistoryView.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/views/HistoryView.java index ed0969ec3..1cdd1edae 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/views/HistoryView.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/views/HistoryView.java @@ -160,6 +160,8 @@ public void onClick(View view, VisitInfo item) { Session session = SessionStore.get().getActiveSession(); session.loadUri(item.getUrl()); + + mHistoryViewListeners.forEach((listener) -> listener.onClickItem(view, item)); } @Override diff --git a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java index d880e41c6..94ce3e85d 100644 --- a/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java +++ b/app/src/common/shared/org/mozilla/vrbrowser/ui/widgets/WindowWidget.java @@ -1439,6 +1439,11 @@ public void onHideContextMenu(@NonNull View view) { public void onFxALogin(@NonNull View view) { hideBookmarks(); } + + @Override + public void onClickItem(@NonNull View view, Bookmark item) { + hideBookmarks(); + } }; private HistoryCallback mHistoryListener = new HistoryCallback() { @@ -1473,6 +1478,11 @@ public void onHideContextMenu(@NonNull View view) { public void onFxALogin(@NonNull View view) { hideHistory(); } + + @Override + public void onClickItem(@NonNull View view, @NonNull VisitInfo item) { + hideHistory(); + } }; private void hideContextMenus() {