Commit e1c103bb authored by Friedrich Horschig's avatar Friedrich Horschig Committed by Commit Bot

[Mfill Android] Pass strings to AccessorySheetData by value

Instead of copying the string by using const base::string16& while
constructing AccessorySheetData, pass base::string16 by value and move.

Bug: None
Change-Id: I012eb266cf5bed77df40c276b0eb49b3ac21c6e7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1624912Reviewed-by: default avatarVadym Doroshenko <dvadym@chromium.org>
Commit-Queue: Friedrich [CET] <fhorschig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#663011}
parent 0a937c2c
...@@ -8,12 +8,12 @@ ...@@ -8,12 +8,12 @@
namespace autofill { namespace autofill {
UserInfo::Field::Field(const base::string16& display_text, UserInfo::Field::Field(base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable) bool selectable)
: display_text_(display_text), : display_text_(std::move(display_text)),
a11y_description_(a11y_description), a11y_description_(std::move(a11y_description)),
is_obfuscated_(is_obfuscated), is_obfuscated_(is_obfuscated),
selectable_(selectable) {} selectable_(selectable) {}
...@@ -66,8 +66,8 @@ std::ostream& operator<<(std::ostream& os, const UserInfo& user_info) { ...@@ -66,8 +66,8 @@ std::ostream& operator<<(std::ostream& os, const UserInfo& user_info) {
return os << "]"; return os << "]";
} }
FooterCommand::FooterCommand(const base::string16& display_text) FooterCommand::FooterCommand(base::string16 display_text)
: display_text_(display_text) {} : display_text_(std::move(display_text)) {}
FooterCommand::FooterCommand(const FooterCommand& footer_command) = default; FooterCommand::FooterCommand(const FooterCommand& footer_command) = default;
...@@ -102,8 +102,8 @@ std::ostream& operator<<(std::ostream& os, const FallbackSheetType& type) { ...@@ -102,8 +102,8 @@ std::ostream& operator<<(std::ostream& os, const FallbackSheetType& type) {
} }
AccessorySheetData::AccessorySheetData(FallbackSheetType sheet_type, AccessorySheetData::AccessorySheetData(FallbackSheetType sheet_type,
const base::string16& title) base::string16 title)
: sheet_type_(sheet_type), title_(title) {} : sheet_type_(sheet_type), title_(std::move(title)) {}
AccessorySheetData::AccessorySheetData(const AccessorySheetData& data) = AccessorySheetData::AccessorySheetData(const AccessorySheetData& data) =
default; default;
...@@ -138,8 +138,8 @@ std::ostream& operator<<(std::ostream& os, const AccessorySheetData& data) { ...@@ -138,8 +138,8 @@ std::ostream& operator<<(std::ostream& os, const AccessorySheetData& data) {
} }
AccessorySheetData::Builder::Builder(FallbackSheetType type, AccessorySheetData::Builder::Builder(FallbackSheetType type,
const base::string16& title) base::string16 title)
: accessory_sheet_data_(type, title) {} : accessory_sheet_data_(type, std::move(title)) {}
AccessorySheetData::Builder::~Builder() = default; AccessorySheetData::Builder::~Builder() = default;
...@@ -154,46 +154,50 @@ AccessorySheetData::Builder& AccessorySheetData::Builder::AddUserInfo() & { ...@@ -154,46 +154,50 @@ AccessorySheetData::Builder& AccessorySheetData::Builder::AddUserInfo() & {
} }
AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendSimpleField( AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendSimpleField(
const base::string16& text) && { base::string16 text) && {
// Calls AppendSimpleField(...)& since |this| is an lvalue. // Calls AppendSimpleField(...)& since |this| is an lvalue.
return std::move(AppendSimpleField(text)); return std::move(AppendSimpleField(std::move(text)));
} }
AccessorySheetData::Builder& AccessorySheetData::Builder::AppendSimpleField( AccessorySheetData::Builder& AccessorySheetData::Builder::AppendSimpleField(
const base::string16& text) & { base::string16 text) & {
return AppendField(text, text, false, true); base::string16 display_text = text;
base::string16 a11y_description = std::move(text);
return AppendField(display_text, a11y_description, false, true);
} }
AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendField( AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendField(
const base::string16& display_text, base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable) && { bool selectable) && {
// Calls AppendField(...)& since |this| is an lvalue. // Calls AppendField(...)& since |this| is an lvalue.
return std::move( return std::move(AppendField(std::move(display_text),
AppendField(display_text, a11y_description, is_obfuscated, selectable)); std::move(a11y_description), is_obfuscated,
selectable));
} }
AccessorySheetData::Builder& AccessorySheetData::Builder::AppendField( AccessorySheetData::Builder& AccessorySheetData::Builder::AppendField(
const base::string16& display_text, base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable) & { bool selectable) & {
accessory_sheet_data_.mutable_user_info_list().back().add_field( accessory_sheet_data_.mutable_user_info_list().back().add_field(
UserInfo::Field(display_text, a11y_description, is_obfuscated, UserInfo::Field(std::move(display_text), std::move(a11y_description),
selectable)); is_obfuscated, selectable));
return *this; return *this;
} }
AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendFooterCommand( AccessorySheetData::Builder&& AccessorySheetData::Builder::AppendFooterCommand(
const base::string16& display_text) && { base::string16 display_text) && {
// Calls AppendFooterCommand(...)& since |this| is an lvalue. // Calls AppendFooterCommand(...)& since |this| is an lvalue.
return std::move(AppendFooterCommand(display_text)); return std::move(AppendFooterCommand(std::move(display_text)));
} }
AccessorySheetData::Builder& AccessorySheetData::Builder::AppendFooterCommand( AccessorySheetData::Builder& AccessorySheetData::Builder::AppendFooterCommand(
const base::string16& display_text) & { base::string16 display_text) & {
accessory_sheet_data_.add_footer_command(FooterCommand(display_text)); accessory_sheet_data_.add_footer_command(
FooterCommand(std::move(display_text)));
return *this; return *this;
} }
......
...@@ -20,8 +20,8 @@ class UserInfo { ...@@ -20,8 +20,8 @@ class UserInfo {
// number. // number.
class Field { class Field {
public: public:
Field(const base::string16& display_text, Field(base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable); bool selectable);
Field(const Field& field); Field(const Field& field);
...@@ -74,7 +74,7 @@ std::ostream& operator<<(std::ostream& out, const UserInfo& user_info); ...@@ -74,7 +74,7 @@ std::ostream& operator<<(std::ostream& out, const UserInfo& user_info);
// Represents a command below the suggestions, such as "Manage password...". // Represents a command below the suggestions, such as "Manage password...".
class FooterCommand { class FooterCommand {
public: public:
explicit FooterCommand(const base::string16& display_text); explicit FooterCommand(base::string16 display_text);
FooterCommand(const FooterCommand& footer_command); FooterCommand(const FooterCommand& footer_command);
FooterCommand(FooterCommand&& footer_command); FooterCommand(FooterCommand&& footer_command);
...@@ -110,7 +110,7 @@ class AccessorySheetData { ...@@ -110,7 +110,7 @@ class AccessorySheetData {
class Builder; class Builder;
explicit AccessorySheetData(FallbackSheetType sheet_type, explicit AccessorySheetData(FallbackSheetType sheet_type,
const base::string16& title); base::string16 title);
AccessorySheetData(const AccessorySheetData& data); AccessorySheetData(const AccessorySheetData& data);
AccessorySheetData(AccessorySheetData&& data); AccessorySheetData(AccessorySheetData&& data);
...@@ -166,7 +166,7 @@ std::ostream& operator<<(std::ostream& out, const AccessorySheetData& data); ...@@ -166,7 +166,7 @@ std::ostream& operator<<(std::ostream& out, const AccessorySheetData& data);
// .Build(); // .Build();
class AccessorySheetData::Builder { class AccessorySheetData::Builder {
public: public:
Builder(FallbackSheetType type, const base::string16& title); Builder(FallbackSheetType type, base::string16 title);
~Builder(); ~Builder();
// Adds a new UserInfo object to |accessory_sheet_data_|. // Adds a new UserInfo object to |accessory_sheet_data_|.
...@@ -174,22 +174,22 @@ class AccessorySheetData::Builder { ...@@ -174,22 +174,22 @@ class AccessorySheetData::Builder {
Builder& AddUserInfo() &; Builder& AddUserInfo() &;
// Appends a selectable, non-obfuscated field to the last UserInfo object. // Appends a selectable, non-obfuscated field to the last UserInfo object.
Builder&& AppendSimpleField(const base::string16& text) &&; Builder&& AppendSimpleField(base::string16 text) &&;
Builder& AppendSimpleField(const base::string16& text) &; Builder& AppendSimpleField(base::string16 text) &;
// Appends a field to the last UserInfo object. // Appends a field to the last UserInfo object.
Builder&& AppendField(const base::string16& display_text, Builder&& AppendField(base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable) &&; bool selectable) &&;
Builder& AppendField(const base::string16& display_text, Builder& AppendField(base::string16 display_text,
const base::string16& a11y_description, base::string16 a11y_description,
bool is_obfuscated, bool is_obfuscated,
bool selectable) &; bool selectable) &;
// Appends a new footer command to |accessory_sheet_data_|. // Appends a new footer command to |accessory_sheet_data_|.
Builder&& AppendFooterCommand(const base::string16& display_text) &&; Builder&& AppendFooterCommand(base::string16 display_text) &&;
Builder& AppendFooterCommand(const base::string16& display_text) &; Builder& AppendFooterCommand(base::string16 display_text) &;
// This class returns the constructed AccessorySheetData object. Since this // This class returns the constructed AccessorySheetData object. Since this
// would render the builder unusable, it's required to destroy the object // would render the builder unusable, it's required to destroy the object
......
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