fix: remove bubble removal animation and simplify visibility logic#1496
fix: remove bubble removal animation and simplify visibility logic#1496deepin-bot[bot] merged 1 commit intolinuxdeepin:masterfrom
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: qxp930712 The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
Reviewer's guide (collapsed on small PRs)Reviewer's GuideRemoves the custom ListView removal animation for notification bubbles in QML and simplifies the C++ bubble panel visibility logic by eliminating the delayed hide timer and directly tying visibility to bubble presence and panel enabled state. Class diagram for simplified BubblePanel visibility logicclassDiagram
class BubblePanel {
- BubbleModel* m_bubbles
+ onNotificationStateChanged(qint64 id, int processedType) void
+ onBubbleCountChanged() void
+ addBubble(qint64 id) void
+ setVisible(bool visible) void
+ enabled() bool
}
class BubbleModel {
+ items() QList~BubbleItem~
}
class BubbleItem {
+ id qint64
+ content QString
}
BubblePanel --> BubbleModel : uses
BubbleModel --> BubbleItem : contains
%% onBubbleCountChanged now directly sets visibility based on items().isEmpty() and enabled() without delayed hide timer
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Removed the complex animation sequence when bubbles are removed from the notification panel and simplified the visibility control logic. The previous implementation had a delayed hide mechanism that caused unnecessary complexity and potential timing issues. The bubble removal animation in QML was overly complex with sequential animations and property actions, which could lead to inconsistent behavior. The C++ visibility logic was simplified by removing the delayed hide timer, making the panel state management more straightforward and reliable. Log: Improved notification bubble panel behavior with smoother transitions Influence: 1. Test adding multiple notification bubbles 2. Verify bubbles are properly removed when dismissed 3. Check that panel visibility updates correctly when last bubble is removed 4. Test panel behavior when notifications come in rapid succession 5. Verify no visual glitches during bubble transitions 6. Test with different notification types and durations PMS: BUG-284659
deepin pr auto review这份代码修改涉及通知气泡面板(BubblePanel)的显示逻辑和气泡移除动画的处理。以下是对这两处修改的详细审查意见,涵盖语法逻辑、代码质量、性能和安全方面。 1. 文件:
|
|
/forcemerge |
|
This pr force merged! (status: blocked) |
Removed the complex animation sequence when bubbles are removed from the notification panel and simplified the visibility control logic. The previous implementation had a delayed hide mechanism that caused unnecessary complexity and potential timing issues.
The bubble removal animation in QML was overly complex with sequential animations and property actions, which could lead to inconsistent behavior. The C++ visibility logic was simplified by removing the delayed hide timer, making the panel state management more straightforward and reliable.
Log: Improved notification bubble panel behavior with smoother transitions
Influence:
PMS: BUG-284659
Summary by Sourcery
Simplify notification bubble removal behavior and visibility handling in the bubble panel.
Bug Fixes:
Enhancements: