Merge pull request #21118 from brave/ksmith-android-not-connected

Save a default Rewards external wallet on Android
This commit is contained in:
Deep Pandya
2023-11-28 16:10:13 -05:00
committed by GitHub
2 changed files with 13 additions and 2 deletions
@@ -1220,7 +1220,7 @@ public class BraveRewardsPanel
mExternalWallet = null;
}
}
if (mExternalWallet != null) {
if (mExternalWallet != null && BraveRewardsHelper.isRewardsEnabled()) {
mBraveRewardsNativeWorker.GetRewardsParameters();
} else {
showOnBoarding();
@@ -937,7 +937,18 @@ void BraveRewardsNativeWorker::OnGetExternalWallet(
brave_rewards::mojom::ExternalWalletPtr wallet) {
std::string json_wallet;
if (!wallet) {
json_wallet = "";
// If the user does not have an external wallet, expose a default/empty
// wallet for backward compatibility with Android code that expects an
// external wallet structure with a NOT_CONNECTED status.
base::Value::Dict dict;
dict.Set("token", "");
dict.Set("address", "");
dict.Set("status", static_cast<int32_t>(
brave_rewards::mojom::WalletStatus::kNotConnected));
dict.Set("type", brave_rewards_service_->GetExternalWalletType());
dict.Set("user_name", "");
dict.Set("account_url", "");
base::JSONWriter::Write(dict, &json_wallet);
} else {
base::Value::Dict dict;
dict.Set("token", wallet->token);