Skip to content

RUM-16379: Fix dialog opening from another dialog in sr - #3563

Open
jonathanmos wants to merge 6 commits into
developfrom
jmoskovich/rum-16379/fix-bottomsheets-issue
Open

RUM-16379: Fix dialog opening from another dialog in sr#3563
jonathanmos wants to merge 6 commits into
developfrom
jmoskovich/rum-16379/fix-bottomsheets-issue

Conversation

@jonathanmos

@jonathanmos jonathanmos commented Jun 22, 2026

Copy link
Copy Markdown
Member

What does this PR do?

Fixes an issue recording dialogs opened from within other dialogs in session replay. This pr also includes a couple of other small fixes:

• Fixes a crash in the fine grained masking screen in the sample application
• Guard against NaN fontsize by providing a default fallback value.

Motivation

What inspired you to submit this pull request?

Additional Notes

Anything else we should know when reviewing?

Review checklist (to be filled by reviewers)

  • Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
  • Make sure you discussed the feature or bugfix with the maintaining team in an Issue
  • Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

@datadog-datadog-prod-us1-2

This comment has been minimized.

@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch 2 times, most recently from fb1d870 to 3fa1209 Compare June 28, 2026 12:04
@codecov-commenter

codecov-commenter commented Jun 28, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 86.13861% with 14 lines in your changes missing coverage. Please review.
✅ Project coverage is 73.37%. Comparing base (75c73bf) to head (cb5fc57).
⚠️ Report is 12 commits behind head on develop.

Files with missing lines Patch % Lines
...ternal/recorder/callback/RecorderWindowCallback.kt 87.04% 1 Missing and 6 partials ⚠️
...nreplay/internal/recorder/WindowReflectionUtils.kt 75.00% 3 Missing and 2 partials ⚠️
...nreplay/internal/recorder/SessionReplayRecorder.kt 90.91% 1 Missing ⚠️
...lay/internal/recorder/WindowCallbackInterceptor.kt 90.91% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #3563      +/-   ##
===========================================
+ Coverage    73.29%   73.37%   +0.08%     
===========================================
  Files          995      996       +1     
  Lines        36297    36398     +101     
  Branches      6136     6151      +15     
===========================================
+ Hits         26601    26704     +103     
+ Misses        7986     7983       -3     
- Partials      1710     1711       +1     
Files with missing lines Coverage Δ
...ionreplay/compose/internal/utils/SemanticsUtils.kt 69.08% <100.00%> (+0.45%) ⬆️
...nreplay/internal/recorder/SessionReplayRecorder.kt 94.08% <90.91%> (+3.17%) ⬆️
...lay/internal/recorder/WindowCallbackInterceptor.kt 97.87% <90.91%> (-2.13%) ⬇️
...nreplay/internal/recorder/WindowReflectionUtils.kt 75.00% <75.00%> (ø)
...ternal/recorder/callback/RecorderWindowCallback.kt 90.65% <87.04%> (-2.46%) ⬇️

... and 33 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch 2 times, most recently from 15d2c3d to 17a292a Compare June 29, 2026 07:26
@jonathanmos
jonathanmos marked this pull request as ready for review June 29, 2026 08:20
@jonathanmos
jonathanmos requested review from a team as code owners June 29, 2026 08:20

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 17a292a2c8

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@jonathanmos
jonathanmos marked this pull request as draft June 29, 2026 08:55
@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch from 17a292a to ff21e5a Compare July 12, 2026 12:31
@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch 2 times, most recently from daf3d39 to d2f3469 Compare July 23, 2026 12:39
@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch from d2f3469 to 0b0bcf3 Compare July 23, 2026 13:14
@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch from af6e7c6 to 1964127 Compare July 23, 2026 15:03
@jonathanmos
jonathanmos marked this pull request as ready for review July 26, 2026 08:04

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 19641270bc

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@sbarrio
sbarrio requested a review from satween July 27, 2026 07:07

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 44139c2658

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch from 44139c2 to ce00228 Compare July 27, 2026 13:58

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ce00228bf1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@jonathanmos
jonathanmos force-pushed the jmoskovich/rum-16379/fix-bottomsheets-issue branch from ce00228 to cb5fc57 Compare July 27, 2026 14:52

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cb5fc57a8a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

if (shouldRecord) {
val decorViews = windowInspector.getGlobalWindowViews(internalLogger)
windowCallbackInterceptor.intercept(windows, appContext)
windowCallbackInterceptor.intercept(windows + resolveUntrackedWindows(decorViews, windows), appContext)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep paused windows excluded during lifecycle intercepts

When activity A pauses but its decor remains in the global roots and activity B then resumes, windows contains only B, so resolveUntrackedWindows(decorViews, windows) classifies A as untracked and passes it back to intercept(). That method removes every supplied window from excludedWindows and wraps it, undoing the paused-window protection. The fresh evidence beyond the previously addressed dynamic-scan issue is this lifecycle path bypassing the exclusion predicate; resolve against all currently active lifecycle windows or preserve exclusions when adding discovered dialogs.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants