Skip to content

Allow DialogOverlay to display custom dialogs#37638

Open
LiquidPL wants to merge 2 commits intoppy:masterfrom
LiquidPL:custom-popup-dialogs
Open

Allow DialogOverlay to display custom dialogs#37638
LiquidPL wants to merge 2 commits intoppy:masterfrom
LiquidPL:custom-popup-dialogs

Conversation

@LiquidPL
Copy link
Copy Markdown
Contributor

@LiquidPL LiquidPL commented May 4, 2026

A prerequisite for refactoring ReportPopovers into dialog popups. This initially came to be while I was working on #36335, which needed some ugly hacks to be able to be triggered from an already visible popover. The idea behind this PR is to rework said report popovers into fullscreen dialogs based on DialogOverlay, because in most of the cases it is displayed it feels kinda weird for it to be parented to whatever drawable it was spawned from, and also it's a different behaviour from web, which would always display those as screen centered dialogs.

This PR is split into two commits to reduce the per commit diff size:

  • the first one moves PopupDialog to ButtonPopupDialog, which is going to contain all the logic surrounding the current dialogs,
  • the second one deals with the actual refactor splitting out the common popup logic (mostly relating to the masking, edge effects and animations) to the new PopupDialog class.

A follow-up PR will handle refactoring the ReportPopovers to use the new PopupDialog, although I'm not sure if this should happen before or after #36335 is merged.

LiquidPL added a commit to LiquidPL/osu that referenced this pull request May 6, 2026
Following up from ppy#37638, this commit refactors `ReportPopover` and
friends to instead use `PopupDialog` and `DialogOverlay`. This results
in the report forms being always placed in the center of the screen,
instead of being anchored at whatever drawable happened to spawn it.
LiquidPL added a commit to LiquidPL/osu that referenced this pull request May 6, 2026
Depends on both ppy#37638 and ppy#37647.

This commit adds a 'Report opponent' option in the hamburger menu on the
ranked play screen. It's effectively a shorthand for manually opening
the profile and using the report option that's available over there.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant