Chromium Code Reviews| Index: chrome/browser/android/recently_closed_tabs_bridge.cc |
| diff --git a/chrome/browser/android/recently_closed_tabs_bridge.cc b/chrome/browser/android/recently_closed_tabs_bridge.cc |
| index 771c815e70b9b7e507f46b5ea43618d09bc9e015..72ec7687d8e175a44273c03e0ea29c1bcc805773 100644 |
| --- a/chrome/browser/android/recently_closed_tabs_bridge.cc |
| +++ b/chrome/browser/android/recently_closed_tabs_bridge.cc |
| @@ -10,6 +10,8 @@ |
| #include "chrome/browser/profiles/profile_android.h" |
| #include "chrome/browser/sessions/session_restore.h" |
| #include "chrome/browser/sessions/tab_restore_service_factory.h" |
| +#include "chrome/browser/ui/android/tab_model/tab_model_list.h" |
| +#include "components/sessions/core/live_tab.h" |
| #include "components/sessions/core/tab_restore_service.h" |
| #include "content/public/browser/web_contents.h" |
| #include "jni/RecentlyClosedBridge_jni.h" |
| @@ -126,6 +128,22 @@ jboolean RecentlyClosedTabsBridge::OpenRecentlyClosedTab( |
| return true; |
| } |
| +jboolean RecentlyClosedTabsBridge::OpenMostRecentlyClosedTab( |
| + JNIEnv* env, |
| + const base::android::JavaParamRef<jobject>& obj) { |
| + EnsureTabRestoreService(); |
| + if (!tab_restore_service_ || TabModelList::empty() || |
| + tab_restore_service_->entries().empty()) |
| + return false; |
| + |
| + // Passing nullptr here because LiveTabContext will be determined later by |
| + // a call to AndroidLiveTabContext. |
|
Theresa
2016/07/12 17:25:17
s/AndroidLiveTabContext/AndroidLiveTabContext::Fin
|
| + std::vector<sessions::LiveTab*> restored_tab = |
| + tab_restore_service_->RestoreMostRecentEntry(nullptr); |
| + |
| + return restored_tab.empty() ? false : true; |
| +} |
| + |
| void RecentlyClosedTabsBridge::ClearRecentlyClosedTabs( |
| JNIEnv* env, |
| const JavaParamRef<jobject>& obj) { |