Skip to content

Commit

Permalink
Merge pull request #12184 from wordpress-mobile/issue/12063-missing-t…
Browse files Browse the repository at this point in the history
…racks

Fixed missing tracks for error notifications
  • Loading branch information
develric committed Jul 20, 2020
2 parents 0cb7df0 + c240b65 commit 143172e
Show file tree
Hide file tree
Showing 4 changed files with 43 additions and 0 deletions.
Expand Up @@ -67,6 +67,7 @@
import org.wordpress.android.ui.pages.PageListFragment;
import org.wordpress.android.ui.pages.PageParentFragment;
import org.wordpress.android.ui.pages.PageParentSearchFragment;
import org.wordpress.android.ui.pages.PagesActivity;
import org.wordpress.android.ui.pages.PagesFragment;
import org.wordpress.android.ui.pages.SearchListFragment;
import org.wordpress.android.ui.people.PeopleInviteFragment;
Expand Down Expand Up @@ -342,6 +343,8 @@ public interface AppComponent extends AndroidInjector<WordPress> {

void inject(PostsListActivity object);

void inject(PagesActivity object);

void inject(AuthorSelectionAdapter object);

void inject(PostListFragment object);
Expand Down
Expand Up @@ -60,6 +60,7 @@
import org.wordpress.android.fluxc.store.MediaStore.OnMediaUploaded;
import org.wordpress.android.fluxc.store.SiteStore;
import org.wordpress.android.fluxc.store.SiteStore.OnSiteChanged;
import org.wordpress.android.push.NotificationType;
import org.wordpress.android.ui.ActivityId;
import org.wordpress.android.ui.ActivityLauncher;
import org.wordpress.android.ui.LocaleAwareActivity;
Expand All @@ -68,6 +69,7 @@
import org.wordpress.android.ui.media.MediaGridFragment.MediaFilter;
import org.wordpress.android.ui.media.MediaGridFragment.MediaGridListener;
import org.wordpress.android.ui.media.services.MediaDeleteService;
import org.wordpress.android.ui.notifications.SystemNotificationsTracker;
import org.wordpress.android.ui.plans.PlansConstants;
import org.wordpress.android.ui.uploads.UploadService;
import org.wordpress.android.ui.uploads.UploadUtilsWrapper;
Expand Down Expand Up @@ -95,6 +97,7 @@
import javax.inject.Inject;

import static org.wordpress.android.analytics.AnalyticsTracker.Stat.APP_REVIEWS_EVENT_INCREMENTED_BY_UPLOADING_MEDIA;
import static org.wordpress.android.push.NotificationsProcessingService.ARG_NOTIFICATION_TYPE;

/**
* The main activity in which the user can browse their media.
Expand All @@ -114,6 +117,7 @@ public class MediaBrowserActivity extends LocaleAwareActivity implements MediaGr
@Inject MediaStore mMediaStore;
@Inject SiteStore mSiteStore;
@Inject UploadUtilsWrapper mUploadUtilsWrapper;
@Inject SystemNotificationsTracker mSystemNotificationsTracker;
@Inject TenorFeatureConfig mTenorFeatureConfig;

private SiteModel mSite;
Expand Down Expand Up @@ -225,6 +229,18 @@ public void onCreate(Bundle savedInstanceState) {
showQuota(true);
}

@Override protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);

if (intent.hasExtra(ARG_NOTIFICATION_TYPE)) {
NotificationType notificationType =
(NotificationType) intent.getSerializableExtra(ARG_NOTIFICATION_TYPE);
if (notificationType != null) {
mSystemNotificationsTracker.trackTappedNotification(notificationType);
}
}
}

private void formatQuotaDiskSpace() {
String percentage = FormatUtils.formatPercentage(mSite.getSpacePercentUsed() / 100);

Expand Down
Expand Up @@ -5,18 +5,26 @@ import android.os.Bundle
import android.view.MenuItem
import kotlinx.android.synthetic.main.pages_fragment.*
import org.wordpress.android.R
import org.wordpress.android.WordPress
import org.wordpress.android.push.NotificationType
import org.wordpress.android.push.NotificationsProcessingService.ARG_NOTIFICATION_TYPE
import org.wordpress.android.ui.LocaleAwareActivity
import org.wordpress.android.ui.notifications.SystemNotificationsTracker
import org.wordpress.android.ui.posts.BasicFragmentDialog.BasicDialogNegativeClickInterface
import org.wordpress.android.ui.posts.BasicFragmentDialog.BasicDialogPositiveClickInterface
import javax.inject.Inject

const val EXTRA_PAGE_REMOTE_ID_KEY = "extra_page_remote_id_key"
const val EXTRA_PAGE_PARENT_ID_KEY = "extra_page_parent_id_key"

class PagesActivity : LocaleAwareActivity(),
BasicDialogPositiveClickInterface,
BasicDialogNegativeClickInterface {
@Inject internal lateinit var systemNotificationTracker: SystemNotificationsTracker

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
(application as WordPress).component().inject(this)

setContentView(R.layout.pages_activity)

Expand All @@ -36,6 +44,12 @@ class PagesActivity : LocaleAwareActivity(),
}

private fun handleIntent(intent: Intent) {
if (intent.hasExtra(ARG_NOTIFICATION_TYPE)) {
val notificationType: NotificationType =
intent.getSerializableExtra(ARG_NOTIFICATION_TYPE) as NotificationType
systemNotificationTracker.trackTappedNotification(notificationType)
}

if (intent.hasExtra(EXTRA_PAGE_REMOTE_ID_KEY)) {
val pageId = intent.getLongExtra(EXTRA_PAGE_REMOTE_ID_KEY, -1)
supportFragmentManager.findFragmentById(R.id.fragment_container)?.let {
Expand Down
Expand Up @@ -39,10 +39,13 @@ import org.wordpress.android.fluxc.model.SiteModel
import org.wordpress.android.fluxc.store.QuickStartStore
import org.wordpress.android.fluxc.store.QuickStartStore.QuickStartTask
import org.wordpress.android.fluxc.store.SiteStore
import org.wordpress.android.push.NotificationType
import org.wordpress.android.push.NotificationsProcessingService.ARG_NOTIFICATION_TYPE
import org.wordpress.android.ui.ActivityId
import org.wordpress.android.ui.ActivityLauncher
import org.wordpress.android.ui.LocaleAwareActivity
import org.wordpress.android.ui.RequestCodes
import org.wordpress.android.ui.notifications.SystemNotificationsTracker
import org.wordpress.android.ui.pages.SnackbarMessageHolder
import org.wordpress.android.ui.posts.BasicFragmentDialog.BasicDialogNegativeClickInterface
import org.wordpress.android.ui.posts.BasicFragmentDialog.BasicDialogOnDismissByOutsideTouchInterface
Expand Down Expand Up @@ -89,6 +92,7 @@ class PostsListActivity : LocaleAwareActivity(),
@Inject internal lateinit var snackbarSequencer: SnackbarSequencer
@Inject internal lateinit var uploadUtilsWrapper: UploadUtilsWrapper
@Inject internal lateinit var quickStartStore: QuickStartStore
@Inject internal lateinit var systemNotificationTracker: SystemNotificationsTracker
@Inject internal lateinit var editPostRepository: EditPostRepository

private lateinit var site: SiteModel
Expand Down Expand Up @@ -364,6 +368,12 @@ class PostsListActivity : LocaleAwareActivity(),
}

private fun loadIntentData(intent: Intent) {
if (intent.hasExtra(ARG_NOTIFICATION_TYPE)) {
val notificationType: NotificationType =
intent.getSerializableExtra(ARG_NOTIFICATION_TYPE) as NotificationType
systemNotificationTracker.trackTappedNotification(notificationType)
}

val targetPostId = intent.getIntExtra(EXTRA_TARGET_POST_LOCAL_ID, -1)
if (targetPostId != -1) {
viewModel.showTargetPost(targetPostId)
Expand Down

0 comments on commit 143172e

Please sign in to comment.