Commit 2b7fffb1 authored by Collin Baker's avatar Collin Baker Committed by Commit Bot

Rename ReopenTabIPH to ReopenTabInProductHelp

This is to reflect a change in the design doc.

Bug: 887991
Change-Id: I8dbc058549ffd6bc9fbaf9d0d20d0d8d6ce30158
Reviewed-on: https://chromium-review.googlesource.com/c/1283938Reviewed-by: default avatarPeter Boström <pbos@chromium.org>
Commit-Queue: Collin Baker <collinbaker@chromium.org>
Cr-Commit-Position: refs/heads/master@{#600114}
parent ca8eefb7
......@@ -3334,8 +3334,8 @@ jumbo_split_static_library("ui") {
sources += [
"in_product_help/active_tab_tracker.cc",
"in_product_help/active_tab_tracker.h",
"in_product_help/reopen_tab_iph_trigger.cc",
"in_product_help/reopen_tab_iph_trigger.h",
"in_product_help/reopen_tab_in_product_help_trigger.cc",
"in_product_help/reopen_tab_in_product_help_trigger.h",
]
}
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ui/in_product_help/reopen_tab_iph_trigger.h"
#include "chrome/browser/ui/in_product_help/reopen_tab_in_product_help_trigger.h"
#include <utility>
......@@ -13,17 +13,18 @@
namespace in_product_help {
// static
const base::TimeDelta ReopenTabIPHTrigger::kTabMinimumActiveDuration =
const base::TimeDelta ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration =
base::TimeDelta::FromSeconds(10);
// static
const base::TimeDelta ReopenTabIPHTrigger::kNewTabOpenedTimeout =
const base::TimeDelta ReopenTabInProductHelpTrigger::kNewTabOpenedTimeout =
base::TimeDelta::FromSeconds(10);
// static
const base::TimeDelta ReopenTabIPHTrigger::kOmniboxFocusedTimeout =
const base::TimeDelta ReopenTabInProductHelpTrigger::kOmniboxFocusedTimeout =
base::TimeDelta::FromSeconds(10);
ReopenTabIPHTrigger::ReopenTabIPHTrigger(feature_engagement::Tracker* tracker,
const base::TickClock* clock)
ReopenTabInProductHelpTrigger::ReopenTabInProductHelpTrigger(
feature_engagement::Tracker* tracker,
const base::TickClock* clock)
: tracker_(tracker), clock_(clock), trigger_state_(NO_ACTIONS_SEEN) {
DCHECK(tracker);
DCHECK(clock);
......@@ -33,14 +34,16 @@ ReopenTabIPHTrigger::ReopenTabIPHTrigger(feature_engagement::Tracker* tracker,
DCHECK(!kOmniboxFocusedTimeout.is_zero());
}
ReopenTabIPHTrigger::~ReopenTabIPHTrigger() = default;
ReopenTabInProductHelpTrigger::~ReopenTabInProductHelpTrigger() = default;
void ReopenTabIPHTrigger::SetShowHelpCallback(ShowHelpCallback callback) {
void ReopenTabInProductHelpTrigger::SetShowHelpCallback(
ShowHelpCallback callback) {
DCHECK(callback);
cb_ = std::move(callback);
}
void ReopenTabIPHTrigger::ActiveTabClosed(base::TimeTicks activation_time) {
void ReopenTabInProductHelpTrigger::ActiveTabClosed(
base::TimeTicks activation_time) {
// Reset all flags at this point. We should only trigger IPH if the events
// happen in the prescribed order.
ResetTriggerState();
......@@ -53,7 +56,7 @@ void ReopenTabIPHTrigger::ActiveTabClosed(base::TimeTicks activation_time) {
}
}
void ReopenTabIPHTrigger::NewTabOpened() {
void ReopenTabInProductHelpTrigger::NewTabOpened() {
if (trigger_state_ != ACTIVE_TAB_CLOSED)
return;
......@@ -67,7 +70,7 @@ void ReopenTabIPHTrigger::NewTabOpened() {
}
}
void ReopenTabIPHTrigger::OmniboxFocused() {
void ReopenTabInProductHelpTrigger::OmniboxFocused() {
if (trigger_state_ != NEW_TAB_OPENED)
return;
......@@ -83,12 +86,12 @@ void ReopenTabIPHTrigger::OmniboxFocused() {
}
}
void ReopenTabIPHTrigger::HelpDismissed() {
void ReopenTabInProductHelpTrigger::HelpDismissed() {
tracker_->Dismissed(feature_engagement::kIPHReopenTabFeature);
ResetTriggerState();
}
void ReopenTabIPHTrigger::ResetTriggerState() {
void ReopenTabInProductHelpTrigger::ResetTriggerState() {
time_of_last_step_ = base::TimeTicks();
trigger_state_ = NO_ACTIONS_SEEN;
}
......
......@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IPH_TRIGGER_H_
#define CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IPH_TRIGGER_H_
#ifndef CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IN_PRODUCT_HELP_TRIGGER_H_
#define CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IN_PRODUCT_HELP_TRIGGER_H_
#include "base/callback.h"
#include "base/time/tick_clock.h"
......@@ -22,11 +22,11 @@ namespace in_product_help {
//
// Clients should listen for the relevant user events and pass them to this
// class. Additionally, clients must display IPH when told by this class.
class ReopenTabIPHTrigger {
class ReopenTabInProductHelpTrigger {
public:
ReopenTabIPHTrigger(feature_engagement::Tracker* tracker,
const base::TickClock* clock);
~ReopenTabIPHTrigger();
ReopenTabInProductHelpTrigger(feature_engagement::Tracker* tracker,
const base::TickClock* clock);
~ReopenTabInProductHelpTrigger();
using ShowHelpCallback = base::RepeatingCallback<void()>;
......@@ -74,9 +74,9 @@ class ReopenTabIPHTrigger {
base::TimeTicks time_of_last_step_;
DISALLOW_COPY_AND_ASSIGN(ReopenTabIPHTrigger);
DISALLOW_COPY_AND_ASSIGN(ReopenTabInProductHelpTrigger);
};
} // namespace in_product_help
#endif // CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IPH_TRIGGER_H_
#endif // CHROME_BROWSER_UI_IN_PRODUCT_HELP_REOPEN_TAB_IN_PRODUCT_HELP_TRIGGER_H_
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "chrome/browser/ui/in_product_help/reopen_tab_iph_trigger.h"
#include "chrome/browser/ui/in_product_help/reopen_tab_in_product_help_trigger.h"
#include "base/bind.h"
#include "base/test/simple_test_tick_clock.h"
......@@ -22,18 +22,19 @@ namespace in_product_help {
namespace {
void DismissImmediately(ReopenTabIPHTrigger* trigger) {
void DismissImmediately(ReopenTabInProductHelpTrigger* trigger) {
trigger->HelpDismissed();
}
void DismissAndSetFlag(ReopenTabIPHTrigger* trigger, bool* triggered) {
void DismissAndSetFlag(ReopenTabInProductHelpTrigger* trigger,
bool* triggered) {
*triggered = true;
trigger->HelpDismissed();
}
} // namespace
TEST(ReopenTabIPHTriggerTest, TriggersIPH) {
TEST(ReopenTabInProductHelpTriggerTest, TriggersIPH) {
NiceMock<MockTracker> mock_tracker;
// We expect to send the backend our trigger event and ask if we should
......@@ -50,19 +51,19 @@ TEST(ReopenTabIPHTriggerTest, TriggersIPH) {
// Instantiate IPH and send sequence of user interactions.
base::SimpleTestTickClock clock;
ReopenTabIPHTrigger reopen_tab_iph(&mock_tracker, &clock);
ReopenTabInProductHelpTrigger reopen_tab_iph(&mock_tracker, &clock);
reopen_tab_iph.SetShowHelpCallback(
base::BindRepeating(DismissImmediately, &reopen_tab_iph));
auto activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
}
TEST(ReopenTabIPHTriggerTest, RespectsBackendShouldTrigger) {
TEST(ReopenTabInProductHelpTriggerTest, RespectsBackendShouldTrigger) {
NiceMock<MockTracker> mock_tracker;
EXPECT_CALL(mock_tracker, ShouldTriggerHelpUI(_))
......@@ -71,62 +72,62 @@ TEST(ReopenTabIPHTriggerTest, RespectsBackendShouldTrigger) {
EXPECT_CALL(mock_tracker, Dismissed(_)).Times(0);
base::SimpleTestTickClock clock;
ReopenTabIPHTrigger reopen_tab_iph(&mock_tracker, &clock);
ReopenTabInProductHelpTrigger reopen_tab_iph(&mock_tracker, &clock);
reopen_tab_iph.SetShowHelpCallback(
base::BindRepeating(DismissImmediately, &reopen_tab_iph));
auto activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
}
TEST(ReopenTabIPHTriggerTest, TabNotActiveLongEnough) {
TEST(ReopenTabInProductHelpTriggerTest, TabNotActiveLongEnough) {
NiceMock<MockTracker> mock_tracker;
EXPECT_CALL(mock_tracker, NotifyEvent(_)).Times(0);
EXPECT_CALL(mock_tracker, ShouldTriggerHelpUI(_)).Times(0);
base::SimpleTestTickClock clock;
ReopenTabIPHTrigger reopen_tab_iph(&mock_tracker, &clock);
ReopenTabInProductHelpTrigger reopen_tab_iph(&mock_tracker, &clock);
auto activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration / 2);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration / 2);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
}
TEST(ReopenTabIPHTriggerTest, RespectsTimeouts) {
TEST(ReopenTabInProductHelpTriggerTest, RespectsTimeouts) {
NiceMock<MockTracker> mock_tracker;
EXPECT_CALL(mock_tracker, NotifyEvent(_)).Times(0);
EXPECT_CALL(mock_tracker, ShouldTriggerHelpUI(_)).Times(0);
base::SimpleTestTickClock clock;
ReopenTabIPHTrigger reopen_tab_iph(&mock_tracker, &clock);
ReopenTabInProductHelpTrigger reopen_tab_iph(&mock_tracker, &clock);
reopen_tab_iph.SetShowHelpCallback(
base::BindRepeating(DismissImmediately, &reopen_tab_iph));
auto activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
clock.Advance(ReopenTabIPHTrigger::kNewTabOpenedTimeout);
clock.Advance(ReopenTabInProductHelpTrigger::kNewTabOpenedTimeout);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
clock.Advance(ReopenTabIPHTrigger::kOmniboxFocusedTimeout);
clock.Advance(ReopenTabInProductHelpTrigger::kOmniboxFocusedTimeout);
reopen_tab_iph.OmniboxFocused();
}
TEST(ReopenTabIPHTriggerTest, TriggersTwice) {
TEST(ReopenTabInProductHelpTriggerTest, TriggersTwice) {
NiceMock<MockTracker> mock_tracker;
EXPECT_CALL(
......@@ -139,14 +140,14 @@ TEST(ReopenTabIPHTriggerTest, TriggersTwice) {
EXPECT_CALL(mock_tracker, Dismissed(_)).Times(2);
base::SimpleTestTickClock clock;
ReopenTabIPHTrigger reopen_tab_iph(&mock_tracker, &clock);
ReopenTabInProductHelpTrigger reopen_tab_iph(&mock_tracker, &clock);
bool triggered = false;
reopen_tab_iph.SetShowHelpCallback(
base::BindRepeating(DismissAndSetFlag, &reopen_tab_iph, &triggered));
auto activation_time = clock.NowTicks();
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
......@@ -154,7 +155,7 @@ TEST(ReopenTabIPHTriggerTest, TriggersTwice) {
EXPECT_TRUE(triggered);
triggered = false;
clock.Advance(ReopenTabIPHTrigger::kTabMinimumActiveDuration);
clock.Advance(ReopenTabInProductHelpTrigger::kTabMinimumActiveDuration);
reopen_tab_iph.ActiveTabClosed(activation_time);
reopen_tab_iph.NewTabOpened();
reopen_tab_iph.OmniboxFocused();
......
......@@ -3381,7 +3381,7 @@ test("unit_tests") {
"../browser/feature_engagement/new_tab/new_tab_tracker_unittest.cc",
"../browser/feature_engagement/session_duration_updater_unittest.cc",
"../browser/ui/in_product_help/active_tab_tracker_unittest.cc",
"../browser/ui/in_product_help/reopen_tab_iph_trigger_unittest.cc",
"../browser/ui/in_product_help/reopen_tab_in_product_help_trigger_unittest.cc",
]
deps += [ "//components/feature_engagement/test:test_support" ]
}
......
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