-
Notifications
You must be signed in to change notification settings - Fork 308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(ModalDialog): support IsCenter when set IsDraggable to true #4589
Conversation
Reviewer's Guide by SourceryThis PR implements support for centering draggable modal dialogs by introducing a new CSS class 'is-draggable-center' and updating the JavaScript positioning logic. The implementation calculates the dialog's center position based on its dimensions and viewport size, then applies the position using CSS properties. The changes also include documentation improvements and updated unit tests. Sequence diagram for modal dialog initializationsequenceDiagram
participant User
participant ModalDialog
participant JavaScript
User->>ModalDialog: Open modal dialog
ModalDialog->>JavaScript: init(id, invoke, shownCallback, closeCallback)
JavaScript->>JavaScript: Check 'is-draggable-center' class
alt is-draggable-center is present
JavaScript->>JavaScript: Calculate center position
JavaScript->>JavaScript: Apply CSS for centering
JavaScript->>JavaScript: Remove 'is-draggable-center' class
end
JavaScript->>ModalDialog: Invoke shownCallback
Updated class diagram for ModalDialog componentclassDiagram
class ModalDialog {
+bool IsCentered = true
+bool IsDraggable
+bool IsScrolling
+bool ShowMaximizeButton
+Size Size = Size.ExtraExtraLarge
+FullScreenSize FullScreenSize
}
note for ModalDialog "Added 'is-draggable-center' class when IsCentered and IsDraggable are true"
File-Level Changes
Assessment against linked issues
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @ArgoZhang - I've reviewed your changes and found some issues that need to be addressed.
Blocking issues:
- Missing closing parenthesis in calc() expressions for margin calculations (link)
Overall Comments:
- There's a syntax error in the JavaScript margin calculations - missing closing parentheses in the calc() functions. Please update to
calc(50vw - ${width}px)
andcalc(50vh - ${height}px)
Here's what I looked at during the review
- 🔴 General issues: 1 blocking issue
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #4589 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 621 621
Lines 27397 27398 +1
Branches 3921 3921
=========================================
+ Hits 27397 27398 +1 ☔ View full report in Codecov by Sentry. |
@sourcery-ai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @ArgoZhang - I've reviewed your changes and they look great!
Here's what I looked at during the review
- 🟡 General issues: 1 issue found
- 🟢 Security: all looks good
- 🟡 Testing: 1 issue found
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
support IsCenter when set IsDraggable to true
Summary of the changes (Less than 80 chars)
简单描述你更改了什么, 不超过80个字符;如果有关联 Issue 请在下方填写相关编号
Description
fixes #4571
Regression?
[If yes, specify the version the behavior has regressed from]
[是否影响老版本]
Risk
[Justify the selection above]
Verification
Packaging changes reviewed?
☑️ Self Check before Merge
Summary by Sourcery
Add support for centering modal dialogs when they are draggable and the IsCentered property is true. Update the default value of IsCentered to true and adjust unit tests to cover the new behavior.
New Features:
Enhancements:
Tests: