Skip to content

Commit

Permalink
Merge pull request #6378 from brave/update_rewards_panel_behaviour_dp
Browse files Browse the repository at this point in the history
Update rewards panel behaviour dp
  • Loading branch information
deeppandya authored Aug 11, 2020
2 parents a49b5fe + 5cfe5e4 commit ff1725d
Show file tree
Hide file tree
Showing 7 changed files with 93 additions and 8 deletions.
1 change: 1 addition & 0 deletions android/brave_java_resources.gni
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ brave_java_resources = [
"java/res/drawable/brave_stats_radio_button_selected.xml",
"java/res/drawable/brave_stats_radio_group_bg.xml",
"java/res/drawable/ic_phone.xml",
"java/res/drawable/ic_help_filled.xml",
"java/res/drawable-hdpi/check.png",
"java/res/drawable-hdpi/btn_bookmark.png",
"java/res/drawable-hdpi/arrow_forward.png",
Expand Down
8 changes: 8 additions & 0 deletions android/java/org/chromium/chrome/browser/BraveActivity.java
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,14 @@ public void showOnboarding() {
transaction.commit();
}

public void hideRewardsOnboardingIcon() {
BraveToolbarLayout layout = (BraveToolbarLayout)findViewById(R.id.toolbar);
assert layout != null;
if (layout != null) {
layout.hideRewardsOnboardingIcon();
}
}

private void createNotificationChannel() {
Context context = ContextUtils.getApplicationContext();
// Create the NotificationChannel, but only on API 26+ because
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,13 @@
import org.chromium.chrome.browser.notifications.BraveAdsNotificationBuilder;
import org.chromium.chrome.browser.notifications.NotificationBuilderBase;
import org.chromium.chrome.browser.notifications.NotificationUmaTracker;
import org.chromium.chrome.browser.notifications.retention.RetentionNotificationUtil;
import org.chromium.chrome.browser.notifications.retention.RetentionNotificationPublisher;
import org.chromium.components.browser_ui.notifications.ChromeNotification;
import org.chromium.components.browser_ui.notifications.NotificationManagerProxyImpl;
import org.chromium.components.browser_ui.notifications.NotificationMetadata;
import org.chromium.components.browser_ui.notifications.PendingIntentProvider;
import org.chromium.chrome.browser.BraveActivity;

import java.util.Locale;

Expand Down Expand Up @@ -74,13 +77,19 @@ private static PendingIntentProvider getDeepLinkIntent(Context context) {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
BraveActivity braveActivity = BraveActivity.getBraveActivity();
if (action != null && action.equals(DEEP_LINK)) {
Intent webIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(getNotificationUrl()));
webIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
webIntent.setPackage(context.getPackageName());
context.startActivity(webIntent);
if (braveActivity != null) {
braveActivity.openRewardsPanel();
} else {
intent.putExtra(RetentionNotificationUtil.NOTIFICATION_TYPE, RetentionNotificationUtil.DAY_10);
RetentionNotificationPublisher.backgroundNotificationAction(context, intent);
}
} else {
showOnboardingNotification(context);
if (braveActivity != null) {
braveActivity.hideRewardsOnboardingIcon();
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ private void createNotification(Context context, Intent intent) {
notificationManager.notify(retentionNotification.getNotificationId(), notification);
}

private void backgroundNotificationAction(Context context, Intent intent) {
public static void backgroundNotificationAction(Context context, Intent intent) {
String notificationType = intent.getStringExtra(RetentionNotificationUtil.NOTIFICATION_TYPE);
if (ApplicationStatus.hasVisibleActivities()) {
return;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import android.widget.FrameLayout;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.ImageView;
import android.widget.PopupWindow;
import android.util.Pair;

Expand Down Expand Up @@ -108,6 +109,7 @@ public abstract class BraveToolbarLayout extends ToolbarLayout implements OnClic
private BraveShieldsContentSettings mBraveShieldsContentSettings;
private BraveShieldsContentSettingsObserver mBraveShieldsContentSettingsObserver;
private TextView mBraveRewardsNotificationsCount;
private ImageView mBraveRewardsOnboardingIcon;
private boolean mShieldsLayoutIsColorBackground;
private int mCurrentToolbarColor;

Expand Down Expand Up @@ -149,6 +151,7 @@ protected void onFinishInflate() {
mShieldsLayout = (FrameLayout) findViewById(R.id.brave_shields_button_layout);
mRewardsLayout = (FrameLayout) findViewById(R.id.brave_rewards_button_layout);
mBraveRewardsNotificationsCount = (TextView) findViewById(R.id.br_notifications_count);
mBraveRewardsOnboardingIcon = findViewById(R.id.br_rewards_onboarding_icon);
mBraveShieldsButton = (ImageButton) findViewById(R.id.brave_shields_button);
mBraveRewardsButton = (ImageButton) findViewById(R.id.brave_rewards_button);
mHomeButton = (HomeButton) findViewById(R.id.home_button);
Expand Down Expand Up @@ -390,6 +393,19 @@ protected void onPostExecute(Void result) {
} .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}

public void hideRewardsOnboardingIcon() {
if (mBraveRewardsOnboardingIcon != null) {
mBraveRewardsOnboardingIcon.setVisibility(View.GONE);
}
if (mBraveRewardsNotificationsCount != null) {
mBraveRewardsNotificationsCount.setVisibility(View.GONE);
}
SharedPreferences sharedPref = ContextUtils.getAppSharedPreferences();
SharedPreferences.Editor editor = sharedPref.edit();
editor.putBoolean(BraveRewardsPanelPopup.PREF_WAS_TOOLBAR_BAT_LOGO_BUTTON_PRESSED, true);
editor.apply();
}

@Override
public void onClick(View v) {
if (mBraveShieldsHandler == null) {
Expand All @@ -400,10 +416,9 @@ public void onClick(View v) {
showShieldsMenu(mBraveShieldsButton);
} else if (mBraveRewardsButton == v && mBraveRewardsButton != null) {
Context context = getContext();
if ((PackageUtils.isFirstInstall(context)
|| (!PackageUtils.isFirstInstall(context) && !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedRegularProfile())))
&& !OnboardingPrefManager.getInstance().isOnboardingShown()) {
if (checkForRewardsOnboarding()) {
OnboardingPrefManager.getInstance().showOnboarding(context);
hideRewardsOnboardingIcon();
} else {
if (null != mRewardsPopup) {
return;
Expand All @@ -422,6 +437,14 @@ public void onClick(View v) {
}
}



private boolean checkForRewardsOnboarding() {
return (ChromeFeatureList.isEnabled(BraveFeatureList.BRAVE_REWARDS) && !BravePrefServiceBridge.getInstance().getBoolean(BravePref.BRAVE_REWARDS_ENABLED))
&& !BraveAdsNativeHelper.nativeIsBraveAdsEnabled(Profile.getLastUsedRegularProfile())
&& !OnboardingPrefManager.getInstance().isOnboardingShown();
}

private void showShieldsMenu(View mBraveShieldsButton) {
Tab currentTab = getToolbarDataProvider().getTab();
if (currentTab == null) {
Expand Down Expand Up @@ -719,6 +742,11 @@ public void OnNotificationsCount(int count) {
&& !OnboardingPrefManager.getInstance().isAdsAvailable()) {
mayShowBraveAdsOnboardingDialog();
}

if (checkForRewardsOnboarding()) {
mBraveRewardsOnboardingIcon.setVisibility(View.VISIBLE);
mBraveRewardsNotificationsCount.setVisibility(View.GONE);
}
}

@Override
Expand Down
27 changes: 27 additions & 0 deletions android/java/res/drawable/ic_help_filled.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="18dp"
android:height="18dp"
android:viewportWidth="18"
android:viewportHeight="18">
<path
android:strokeWidth="1"
android:pathData="M0.5,9C0.5,13.6875 4.3125,17.5 9,17.5C13.6875,17.5 17.5,13.6875 17.5,9C17.5,4.3125 13.6875,0.5 9,0.5C4.3125,0.5 0.5,4.3125 0.5,9Z"
android:strokeColor="#ffffff">
<aapt:attr name="android:fillColor">
<gradient
android:startY="1"
android:startX="1"
android:endY="13.9576"
android:endX="18.9454"
android:type="linear">
<item android:offset="0" android:color="#FF392DD1"/>
<item android:offset="1" android:color="#FF22B8CF"/>
</gradient>
</aapt:attr>
</path>
<path
android:pathData="M9.6646,10.9132C9.6626,10.8772 9.6266,10.0112 10.5926,9.2292C11.3353,8.6279 11.6666,7.9506 11.6666,7.0339C11.6666,5.5239 10.4706,4.2959 8.9999,4.2959C7.5046,4.2959 6.3333,5.4672 6.3333,6.9619C6.3333,7.3306 6.6319,7.6286 6.9999,7.6286C7.3679,7.6286 7.6666,7.3306 7.6666,6.9619C7.6666,6.2019 8.2399,5.6286 8.9999,5.6286C9.7353,5.6286 10.3333,6.2592 10.3333,7.0339C10.3333,7.5426 10.1813,7.8466 9.7533,8.1926C8.2139,9.4392 8.3306,10.9572 8.3359,11.0212C8.3666,11.3672 8.6559,11.6232 8.9979,11.6232C9.0146,11.6232 9.0306,11.6226 9.0479,11.6212C9.4106,11.5946 9.6853,11.2766 9.6646,10.9132ZM9.6566,13.0759C9.7193,12.7125 9.4726,12.3865 9.11,12.3239C8.7453,12.2605 8.3993,12.5239 8.3366,12.8865C8.2739,13.2492 8.5173,13.5939 8.8799,13.6565C8.9186,13.6632 8.9566,13.6665 8.9939,13.6665C9.3126,13.6665 9.5946,13.4372 9.6506,13.1132L9.6566,13.0759Z"
android:fillColor="#ffffff"
android:fillType="evenOdd"/>
</vector>
12 changes: 12 additions & 0 deletions android/java/res/layout/brave_toolbar.xml
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,18 @@
android:layout_gravity="center"
android:contentDescription="@string/accessibility_toolbar_btn_brave_rewards" />

<ImageView
android:id="@+id/br_rewards_onboarding_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="7dp"
android:layout_marginEnd="6dp"
android:layout_gravity="end"
android:gravity="center"
android:visibility="gone"
android:contentDescription="@null"
app:srcCompat="@drawable/ic_help_filled"/>

<TextView
android:id="@+id/br_notifications_count"
android:layout_width="14dp"
Expand Down

0 comments on commit ff1725d

Please sign in to comment.