Skip to content

Commit 1567127

Browse files
authored
Fix ads not shown if a background tab is playing video
Fixes brave/brave-browser#3779
1 parent 793b567 commit 1567127

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

vendor/bat-native-ads/src/bat/ads/internal/ads_impl.cc

+3-1
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,9 @@ void AdsImpl::OnMediaStopped(const int32_t tab_id) {
248248
}
249249

250250
bool AdsImpl::IsMediaPlaying() const {
251-
if (media_playing_.empty()) {
251+
auto tab = media_playing_.find(last_shown_tab_id_);
252+
if (tab == media_playing_.end()) {
253+
// Media is not playing in the last shown tab
252254
return false;
253255
}
254256

vendor/bat-native-ads/src/bat/ads/internal/ads_tabs_unittest.cc

+3
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ class AdsTabsTest : public ::testing::Test {
140140

141141
TEST_F(AdsTabsTest, Media_IsPlaying) {
142142
// Arrange
143+
ads_->TabUpdated(1, "https://brave.com", true, false);
143144
ads_->OnMediaPlaying(1);
144145

145146
// Act
@@ -151,6 +152,8 @@ TEST_F(AdsTabsTest, Media_IsPlaying) {
151152

152153
TEST_F(AdsTabsTest, Media_NotPlaying) {
153154
// Arrange
155+
ads_->TabUpdated(1, "https://brave.com", true, false);
156+
154157
ads_->OnMediaPlaying(1);
155158
ads_->OnMediaPlaying(2);
156159

0 commit comments

Comments
 (0)