diff --git a/android/brave_java_resources.gni b/android/brave_java_resources.gni index 3451c432fa7..195fe7fa50b 100644 --- a/android/brave_java_resources.gni +++ b/android/brave_java_resources.gni @@ -626,6 +626,8 @@ brave_java_resources = [ "java/res/drawable/ic_icon_bat_eta.xml", "java/res/drawable/ic_info.xml", "java/res/drawable/ic_languages.xml", + "java/res/drawable/ic_logo_bitflyer.xml", + "java/res/drawable/ic_logo_bitflyer_colored.xml", "java/res/drawable/ic_mask.xml", "java/res/drawable/ic_money_bag_coins.xml", "java/res/drawable/ic_more_horiz.xml", diff --git a/android/java/org/chromium/chrome/browser/BraveRewardsNativeWorker.java b/android/java/org/chromium/chrome/browser/BraveRewardsNativeWorker.java index f7131bd3bb8..cacb786d76c 100644 --- a/android/java/org/chromium/chrome/browser/BraveRewardsNativeWorker.java +++ b/android/java/org/chromium/chrome/browser/BraveRewardsNativeWorker.java @@ -655,6 +655,20 @@ public class BraveRewardsNativeWorker { } } + @CalledByNative + public void onUnblindedTokensReady() { + for (BraveRewardsObserver observer : mObservers) { + observer.onUnblindedTokensReady(); + } + } + + @CalledByNative + public void onReconcileComplete(int resultCode, int rewardsType, double amount) { + for (BraveRewardsObserver observer : mObservers) { + observer.onReconcileComplete(resultCode, rewardsType, amount); + } + } + @NativeMethods interface Natives { void init(BraveRewardsNativeWorker caller); diff --git a/android/java/org/chromium/chrome/browser/BraveRewardsObserver.java b/android/java/org/chromium/chrome/browser/BraveRewardsObserver.java index 270510f3a79..1c13f7a6248 100644 --- a/android/java/org/chromium/chrome/browser/BraveRewardsObserver.java +++ b/android/java/org/chromium/chrome/browser/BraveRewardsObserver.java @@ -28,6 +28,8 @@ public interface BraveRewardsObserver { default public void OnProcessRewardsPageUrl(int error_code, String wallet_type, String action, String json_args ) {}; default public void OnClaimPromotion(int error_code) {}; + default public void onUnblindedTokensReady() {} + default public void onReconcileComplete(int resultCode, int rewardsType, double amount) {} default public void OnRecoverWallet(int errorCode) {}; default public void OnRefreshPublisher(int status, String publisherKey){}; default public void OnOneTimeTip(){}; diff --git a/android/java/org/chromium/chrome/browser/BraveRewardsUserWalletActivity.java b/android/java/org/chromium/chrome/browser/BraveRewardsUserWalletActivity.java index 94e201f3e9c..a6c6060c244 100644 --- a/android/java/org/chromium/chrome/browser/BraveRewardsUserWalletActivity.java +++ b/android/java/org/chromium/chrome/browser/BraveRewardsUserWalletActivity.java @@ -100,6 +100,10 @@ public class BraveRewardsUserWalletActivity extends AsyncInitializationActivity String userId = intent.getStringExtra(BraveRewardsExternalWallet.USER_NAME); txtUserId.setText(userId); + txtUserId.setCompoundDrawablesWithIntrinsicBounds( + walletType.equals(BraveWalletProvider.UPHOLD) ? R.drawable.uphold_green + : R.drawable.ic_logo_bitflyer_colored, + 0, 0, 0); SetDisconnectBtnClickHandler(); } diff --git a/android/java/org/chromium/chrome/browser/rewards/BraveRewardsPanel.java b/android/java/org/chromium/chrome/browser/rewards/BraveRewardsPanel.java index 1530838f293..06f7b03adb6 100644 --- a/android/java/org/chromium/chrome/browser/rewards/BraveRewardsPanel.java +++ b/android/java/org/chromium/chrome/browser/rewards/BraveRewardsPanel.java @@ -333,6 +333,15 @@ public class BraveRewardsPanel TextView monthYearText = mPopupView.findViewById(R.id.month_year_text); monthYearText.setText(monthYear); + if (mBraveRewardsNativeWorker != null) { + String walletType = mBraveRewardsNativeWorker.getExternalWalletType(); + TextView mywalletText = mPopupView.findViewById(R.id.my_wallet_text); + mywalletText.setCompoundDrawablesWithIntrinsicBounds(0, 0, + walletType.equals(BraveWalletProvider.UPHOLD) ? R.drawable.uphold_white + : R.drawable.ic_logo_bitflyer, + 0); + } + mPopupWindow.setContentView(mPopupView); } @@ -781,6 +790,28 @@ public class BraveRewardsPanel @Override public void OnGrantFinish(int result) { Log.e(TAG, "OnGrantFinish"); + // mBraveRewardsNativeWorker.GetAllNotifications(); + // mBraveRewardsNativeWorker.GetRewardsParameters(); + // mBraveRewardsNativeWorker.GetExternalWallet(); + // mBraveRewardsNativeWorker.getAdsAccountStatement(); + // mBraveRewardsNativeWorker.GetCurrentBalanceReport(); + } + + @Override + public void onUnblindedTokensReady() { + Log.e("NTP", "onUnblindedTokensReady"); + mBraveRewardsNativeWorker.GetAllNotifications(); + mBraveRewardsNativeWorker.GetRewardsParameters(); + mBraveRewardsNativeWorker.GetExternalWallet(); + mBraveRewardsNativeWorker.getAdsAccountStatement(); + mBraveRewardsNativeWorker.GetCurrentBalanceReport(); + } + + @Override + public void onReconcileComplete(int resultCode, int rewardsType, double amount) { + Log.e("NTP", + "onReconcileComplete : resultCode : " + resultCode + + " : rewardsType : " + rewardsType + " : amouont : " + amount); mBraveRewardsNativeWorker.GetAllNotifications(); mBraveRewardsNativeWorker.GetRewardsParameters(); mBraveRewardsNativeWorker.GetExternalWallet(); @@ -1128,6 +1159,15 @@ public class BraveRewardsPanel Spanned toInsert = BraveRewardsHelper.spannedFromHtmlString(text); tv.setText(toInsert); tvUSD.setText(textUSD); + if (mBraveRewardsNativeWorker != null) { + String walletType = mBraveRewardsNativeWorker.getExternalWalletType(); + mPopupView.findViewById(R.id.auto_contribute_summary_seperator) + .setVisibility(walletType.equals(BraveWalletProvider.UPHOLD) ? View.VISIBLE + : View.GONE); + mPopupView.findViewById(R.id.auto_contribute_summary_layout) + .setVisibility(walletType.equals(BraveWalletProvider.UPHOLD) ? View.VISIBLE + : View.GONE); + } // if (tv != null && tvUSD != null && // !text.isEmpty() && !textUSD.isEmpty()) { // // tvTitle.setVisibility(hideControls ? View.GONE : View.VISIBLE); @@ -1288,6 +1328,7 @@ public class BraveRewardsPanel int rightDrawable = 0; int leftDrawable = 0; int text = 0; + String walletType = mBraveRewardsNativeWorker.getExternalWalletType(); switch (status) { case BraveRewardsExternalWallet.NOT_CONNECTED: @@ -1313,7 +1354,9 @@ public class BraveRewardsPanel editor.putBoolean(PREF_VERIFY_WALLET_ENABLE, true); editor.apply(); - leftDrawable = R.drawable.uphold_white; + leftDrawable = walletType.equals(BraveWalletProvider.UPHOLD) + ? R.drawable.uphold_white + : R.drawable.ic_logo_bitflyer; rightDrawable = R.drawable.verified_disclosure; text = R.string.brave_ui_wallet_button_verified; btnVerifyWallet.setCompoundDrawablesWithIntrinsicBounds( @@ -1327,7 +1370,9 @@ public class BraveRewardsPanel break; case BraveRewardsExternalWallet.DISCONNECTED_NOT_VERIFIED: case BraveRewardsExternalWallet.DISCONNECTED_VERIFIED: - leftDrawable = R.drawable.uphold_white; + leftDrawable = walletType.equals(BraveWalletProvider.UPHOLD) + ? R.drawable.uphold_white + : R.drawable.ic_logo_bitflyer; text = R.string.brave_ui_wallet_button_disconnected; btnVerifyWallet.setCompoundDrawablesWithIntrinsicBounds(leftDrawable, 0, 0, 0); btnVerifyWallet.setBackgroundDrawable(ResourcesCompat.getDrawable( @@ -1409,6 +1454,7 @@ public class BraveRewardsPanel if (currentActiveTab != null && !currentActiveTab.isIncognito()) { String url = currentActiveTab.getUrl().getSpec(); if (URLUtil.isValidUrl(url)) { + Log.e("NTP", "publisher : " + url); mBraveRewardsNativeWorker.GetPublisherInfo(currentActiveTab.getId(), url); mPublisherFetcher = new Timer(); mPublisherFetcher.schedule(new PublisherFetchTimer(currentActiveTab.getId(), url), @@ -1427,6 +1473,7 @@ public class BraveRewardsPanel @Override public void OnPublisherInfo(int tabId) { + Log.e("NTP", "OnPublisherInfo"); mPublisherExist = true; mCurrentTabId = tabId; // RemoveRewardsSummaryMonthYear(); diff --git a/android/java/res/drawable/ic_logo_bitflyer.xml b/android/java/res/drawable/ic_logo_bitflyer.xml new file mode 100644 index 00000000000..2b22c039170 --- /dev/null +++ b/android/java/res/drawable/ic_logo_bitflyer.xml @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/android/java/res/drawable/ic_logo_bitflyer_colored.xml b/android/java/res/drawable/ic_logo_bitflyer_colored.xml new file mode 100644 index 00000000000..145d234ef5a --- /dev/null +++ b/android/java/res/drawable/ic_logo_bitflyer_colored.xml @@ -0,0 +1,9 @@ + + + + + + + + diff --git a/android/java/res/layout/brave_rewards_panel_layout.xml b/android/java/res/layout/brave_rewards_panel_layout.xml index 602c36305cd..b7a9cb600a6 100644 --- a/android/java/res/layout/brave_rewards_panel_layout.xml +++ b/android/java/res/layout/brave_rewards_panel_layout.xml @@ -50,6 +50,7 @@ tools:ignore="UseCompoundDrawables"> (result), static_cast(type), amount); +} + base::android::ScopedJavaLocalRef BraveRewardsNativeWorker::GetPublisherURL(JNIEnv* env, uint64_t tabId) { base::android::ScopedJavaLocalRef res = diff --git a/browser/brave_rewards/android/brave_rewards_native_worker.h b/browser/brave_rewards/android/brave_rewards_native_worker.h index d98a7f92a5d..ce44ee97e3a 100644 --- a/browser/brave_rewards/android/brave_rewards_native_worker.h +++ b/browser/brave_rewards/android/brave_rewards_native_worker.h @@ -168,6 +168,17 @@ class BraveRewardsNativeWorker : public brave_rewards::RewardsServiceObserver, brave_rewards::RewardsService* rewards_service, ledger::type::RewardsParametersPtr parameters); + void OnUnblindedTokensReady( + brave_rewards::RewardsService* rewards_service) override; + + void OnReconcileComplete( + brave_rewards::RewardsService* rewards_service, + const ledger::type::Result result, + const std::string& contribution_id, + const double amount, + const ledger::type::RewardsType type, + const ledger::type::ContributionProcessor processor) override; + void OnNotificationAdded( brave_rewards::RewardsNotificationService* rewards_notification_service, const brave_rewards::RewardsNotificationService::RewardsNotification&