Commit 762630e4 authored by wutao's avatar wutao Committed by Commit Bot

app_list: Handle empty url title

Continue reading suggestion chip is using the tab's navigation title as
its title. However navigation title could be empty. This patch handles
the empty case to use the navigation url as a fall back title, similar
to what does in the recent_tabs_sub_menu_model.

Bug: 956268
Test: manual
Change-Id: Iae4054bcdbbb5040829283554d3d5ff085811f18
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1594207Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
Commit-Queue: Tao Wu <wutao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#656496}
parent 4e636d5e
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
#include "base/no_destructor.h" #include "base/no_destructor.h"
#include "base/strings/string16.h" #include "base/strings/string16.h"
#include "base/strings/string_util.h" #include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "base/time/time.h" #include "base/time/time.h"
#include "chrome/browser/chromeos/arc/arc_util.h" #include "chrome/browser/chromeos/arc/arc_util.h"
#include "chrome/browser/chromeos/plugin_vm/plugin_vm_util.h" #include "chrome/browser/chromeos/plugin_vm/plugin_vm_util.h"
...@@ -379,8 +380,11 @@ bool HasRecommendableForeignTab( ...@@ -379,8 +380,11 @@ bool HasRecommendableForeignTab(
if (latest_timestamp < tab->timestamp) { if (latest_timestamp < tab->timestamp) {
has_recommendation = true; has_recommendation = true;
latest_timestamp = tab->timestamp; latest_timestamp = tab->timestamp;
if (title) if (title) {
*title = navigation.title(); *title = navigation.title().empty()
? base::UTF8ToUTF16(virtual_url.spec())
: navigation.title();
}
if (url) if (url)
*url = virtual_url; *url = virtual_url;
......
...@@ -756,9 +756,14 @@ void AppSearchProvider::UpdateRecommendedResults( ...@@ -756,9 +756,14 @@ void AppSearchProvider::UpdateRecommendedResults(
base::string16 title = app->name(); base::string16 title = app->name();
if (app->id() == kInternalAppIdContinueReading) { if (app->id() == kInternalAppIdContinueReading) {
if (HasRecommendableForeignTab(profile_, &title, /*url=*/nullptr, base::string16 navigation_title;
if (HasRecommendableForeignTab(profile_, &navigation_title,
/*url=*/nullptr,
open_tabs_ui_delegate_for_testing())) { open_tabs_ui_delegate_for_testing())) {
app->AddSearchableText(title); if (!navigation_title.empty()) {
title = navigation_title;
app->AddSearchableText(title);
}
} else { } else {
continue; continue;
} }
......
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