Commit 8663895c authored by Peter Beverloo's avatar Peter Beverloo Committed by Commit Bot

Don't pass -1 as an action index for Windows native notifications

A negative index is used to indicate the default, unset state of the
action button index in the NotificationLaunchId, but this is not the
right value to pass along to NotificationHandlers.

Bug: 875091
Change-Id: I0d327eb1f3887904a674a6748cc6e9d60ec783c3
Reviewed-on: https://chromium-review.googlesource.com/1180973
Commit-Queue: Peter Beverloo <peter@chromium.org>
Reviewed-by: default avatarFinnur Thorarinsson <finnur@chromium.org>
Cr-Commit-Position: refs/heads/master@{#584430}
parent 84f31be1
...@@ -843,10 +843,14 @@ bool NotificationPlatformBridgeWin::HandleActivation( ...@@ -843,10 +843,14 @@ bool NotificationPlatformBridgeWin::HandleActivation(
launch_id.is_for_context_menu() ? NotificationCommon::OPERATION_SETTINGS launch_id.is_for_context_menu() ? NotificationCommon::OPERATION_SETTINGS
: NotificationCommon::OPERATION_CLICK; : NotificationCommon::OPERATION_CLICK;
base::Optional<int> action_index;
if (launch_id.button_index() != -1)
action_index = launch_id.button_index();
ForwardNotificationOperationOnUiThread( ForwardNotificationOperationOnUiThread(
operation, launch_id.notification_type(), launch_id.origin_url(), operation, launch_id.notification_type(), launch_id.origin_url(),
launch_id.notification_id(), launch_id.profile_id(), launch_id.notification_id(), launch_id.profile_id(),
launch_id.incognito(), launch_id.button_index(), reply, /*by_user=*/true); launch_id.incognito(), std::move(action_index), reply, /*by_user=*/true);
LogActivationStatus(ActivationStatus::SUCCESS); LogActivationStatus(ActivationStatus::SUCCESS);
return true; return true;
......
...@@ -258,7 +258,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, HandleEvent) { ...@@ -258,7 +258,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, HandleEvent) {
EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_); EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_);
EXPECT_EQ(GURL("https://example.com/"), last_origin_); EXPECT_EQ(GURL("https://example.com/"), last_origin_);
EXPECT_EQ("notification_id", last_notification_id_); EXPECT_EQ("notification_id", last_notification_id_);
EXPECT_EQ(base::Optional<int>(1), last_action_index_); EXPECT_EQ(1, last_action_index_);
EXPECT_EQ(base::nullopt, last_reply_); EXPECT_EQ(base::nullopt, last_reply_);
EXPECT_EQ(base::nullopt, last_by_user_); EXPECT_EQ(base::nullopt, last_by_user_);
} }
...@@ -285,7 +285,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, HandleActivation) { ...@@ -285,7 +285,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, HandleActivation) {
EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_); EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_);
EXPECT_EQ(GURL("https://example.com/"), last_origin_); EXPECT_EQ(GURL("https://example.com/"), last_origin_);
EXPECT_EQ("notification_id", last_notification_id_); EXPECT_EQ("notification_id", last_notification_id_);
EXPECT_EQ(base::Optional<int>(1), last_action_index_); EXPECT_EQ(1, last_action_index_);
EXPECT_EQ(base::nullopt, last_reply_); EXPECT_EQ(base::nullopt, last_reply_);
EXPECT_EQ(true, last_by_user_); EXPECT_EQ(true, last_by_user_);
} }
...@@ -480,7 +480,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, CmdLineClick) { ...@@ -480,7 +480,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, CmdLineClick) {
EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_); EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_);
EXPECT_EQ(GURL("https://example.com/"), last_origin_); EXPECT_EQ(GURL("https://example.com/"), last_origin_);
EXPECT_EQ("notification_id", last_notification_id_); EXPECT_EQ("notification_id", last_notification_id_);
EXPECT_EQ(-1, last_action_index_); EXPECT_EQ(base::nullopt, last_action_index_);
EXPECT_EQ(base::nullopt, last_reply_); EXPECT_EQ(base::nullopt, last_reply_);
EXPECT_TRUE(last_by_user_); EXPECT_TRUE(last_by_user_);
} }
...@@ -532,7 +532,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, CmdLineSettings) { ...@@ -532,7 +532,7 @@ IN_PROC_BROWSER_TEST_F(NotificationPlatformBridgeWinUITest, CmdLineSettings) {
EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_); EXPECT_EQ(NotificationHandler::Type::WEB_PERSISTENT, last_notification_type_);
EXPECT_EQ(GURL("https://example.com/"), last_origin_); EXPECT_EQ(GURL("https://example.com/"), last_origin_);
EXPECT_EQ("notification_id", last_notification_id_); EXPECT_EQ("notification_id", last_notification_id_);
EXPECT_EQ(-1, last_action_index_); EXPECT_EQ(base::nullopt, last_action_index_);
EXPECT_EQ(base::nullopt, last_reply_); EXPECT_EQ(base::nullopt, last_reply_);
EXPECT_TRUE(last_by_user_); EXPECT_TRUE(last_by_user_);
} }
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