Skip to content

fix(widget): fix reminder popup split - #339

Open
wangruoxuan3782 wants to merge 2 commits into
linuxdeepin:masterfrom
wangruoxuan3782:fix-tooltip-text-colors
Open

fix(widget): fix reminder popup split#339
wangruoxuan3782 wants to merge 2 commits into
linuxdeepin:masterfrom
wangruoxuan3782:fix-tooltip-text-colors

Conversation

@wangruoxuan3782

@wangruoxuan3782 wangruoxuan3782 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor
  1. Adjust the reminder popup arrow size, margin, and background settings to remove the visual split between the bubble frame and content.
  2. Refresh popup geometry and arrow position when data, direction, or visibility changes so the arrow stays aligned on both left and right placements.
  3. Disable system background filling for the popup content widget to reduce layered artifacts on translucent backgrounds.

Log: Fix the split rendering issue in the schedule reminder popup.
Influence: Improves popup visual consistency.

  1. 调整提醒浮窗的箭头尺寸、边距和背景配置,消除气泡外框与内容区域之间的割裂感。
  2. 在数据更新、方向切换和显示状态变化时统一刷新浮窗几何和箭头位置,保证左右展示时箭头始终贴合内容区域。
  3. 关闭浮窗内容部件的系统背景填充,减少透明背景下的分层渲染痕迹。

Log: 修复日程提醒浮窗的割裂显示问题
PMS: BUG-369001
Influence: 提升浮窗视觉一致性。

1. 调整搜索结果和年视图日程悬浮卡片的标题与时间文字颜色透明度,使浅色和深色主题表现一致。
2. 为时间文字单独设置更轻的字重,增强其与日程标题的层级区分。
3. 统一相关日程提示信息的文本样式,避免不同入口的悬浮展示不一致。

1. Adjust title and time text color opacity for schedule hover cards in search and year views so light and dark themes render consistently.
2. Use a lighter font weight for time text to keep it visually distinct from schedule titles.
3. Unify tooltip text styling for related schedule entry points to avoid inconsistent hover presentation.

PMS: BUG-368745
Log:
- Unified schedule tooltip text colors and opacity for light and dark themes.
- Applied a lighter font weight to time text in search and year views.

@sourcery-ai sourcery-ai 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.

Sorry @wangruoxuan3782, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@deepin-ci-robot

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: wangruoxuan3782

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@deepin-ci-robot

Copy link
Copy Markdown

Hi @wangruoxuan3782. Thanks for your PR.

I'm waiting for a linuxdeepin member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@sourcery-ai

sourcery-ai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Reviewer's Guide

Refines the schedule reminder popup’s visual styling and geometry handling (arrow size/position, margins, rounded background, translucency) and aligns time/text colors and fonts across month, year, and search views for consistent light/dark theming.

Sequence diagram for showing schedule reminder popup with updated geometry

sequenceDiagram
    participant CMonthView
    participant ScheduleRemindWidget
    participant DArrowRectangle

    CMonthView->>ScheduleRemindWidget: setData(vScheduleInfo, gcolor)
    ScheduleRemindWidget->>ScheduleRemindWidget: updatePopupGeometry()
    ScheduleRemindWidget->>ScheduleRemindWidget: resizeWithContent()
    ScheduleRemindWidget->>ScheduleRemindWidget: updateArrowPosition()
    ScheduleRemindWidget->>ScheduleRemindWidget: setArrowY((height() - arrowWidth()) / 2)

    CMonthView->>ScheduleRemindWidget: setDirection(ArrowLeft/ArrowRight)
    ScheduleRemindWidget->>ScheduleRemindWidget: updatePopupGeometry()

    CMonthView->>ScheduleRemindWidget: show(x, y)
    ScheduleRemindWidget->>ScheduleRemindWidget: updateArrowPosition()
    ScheduleRemindWidget->>DArrowRectangle: show(x, y)
    ScheduleRemindWidget->>ScheduleRemindWidget: updateArrowPosition()
Loading

File-Level Changes

Change Details Files
Standardize schedule reminder popup geometry and arrow behavior to avoid visual splitting from its content.
  • Introduce constants for arrow size and popup margins and apply them in the ScheduleRemindWidget constructor.
  • Enable left/right rounded corners and auto background color on the popup rectangle.
  • Replace manual height setting with resizeWithContent via updatePopupGeometry so size tracks content.
  • Override show(int x, int y) to recalculate arrow position before and after showing.
  • Add helpers updateArrowPosition and updatePopupGeometry to centralize popup sizing and arrow centering on the Y axis.
  • Ensure arrow direction changes trigger geometry refresh via updatePopupGeometry.
src/calendar-client/src/customWidget/scheduleRemindWidget.cpp
src/calendar-client/src/customWidget/scheduleRemindWidget.h
Improve popup content rendering to remove system background artifacts on translucent backgrounds.
  • Disable auto background filling and system background for CenterWidget and enable translucent background attribute.
  • Adjust CenterWidget time font weight to QFont::Normal for better visual hierarchy.
src/calendar-client/src/customWidget/scheduleRemindWidget.cpp
Unify time/text color schemes and opacity for light/dark themes in schedule reminder, search, month, and year views.
  • Change dark theme reminder time/text colors to white with reduced alpha, and light theme to black with reduced alpha in CenterWidget.
  • Adjust hover state colors for CScheduleSearchItem to use white/black with 0.6 (time) and 0.7 (text) alpha for dark/light themes.
  • Update CScheduleSearchView base item colors to match the new alpha and foreground color scheme for both themes.
  • Align CYearScheduleView time/text colors with consistent black/white plus alpha for light/dark themes.
src/calendar-client/src/customWidget/scheduleRemindWidget.cpp
src/calendar-client/src/widget/schedulesearchview.cpp
src/calendar-client/src/widget/yearWidget/yearscheduleview.cpp
Differentiate fonts used for main text versus time labels in search and year schedule views.
  • Create a separate time font in CScheduleSearchView when creating item widgets, with smaller pixel size and lighter weight, and pass it to setTimeC.
  • Add a dedicated m_timefont in CYearScheduleView with Normal weight while keeping m_textfont Medium, and use m_timefont when painting the time string.
src/calendar-client/src/widget/schedulesearchview.cpp
src/calendar-client/src/widget/yearWidget/yearscheduleview.cpp
src/calendar-client/src/widget/yearWidget/yearscheduleview.h
Minor cleanup of reminder popup positioning calls in month and year views.
  • Normalize spacing around arithmetic in calls to m_remindWidget->show and m_scheduleView->show when offsetting X by ±10.
  • Remove obsolete comments about converting from window to widget coordinates where that behavior is now established.
src/calendar-client/src/widget/monthWidget/monthview.cpp
src/calendar-client/src/widget/yearWidget/yearwindow.cpp
src/calendar-client/src/customWidget/scheduleview.cpp

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@deepin-bot

deepin-bot Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

TAG Bot

New tag: 6.5.42
DISTRIBUTION: unstable
Suggest: synchronizing this PR through rebase #340

1. Adjust the reminder popup arrow size, margin, and background settings to remove the visual split between the bubble frame and content.
2. Refresh popup geometry and arrow position when data, direction, or visibility changes so the arrow stays aligned on both left and right placements.
3. Disable system background filling for the popup content widget to reduce layered artifacts on translucent backgrounds.

Log: Fix the split rendering issue in the schedule reminder popup.
Influence: Improves popup visual consistency.

fix(widget): 修复日程提醒浮窗割裂显示

1. 调整提醒浮窗的箭头尺寸、边距和背景配置,消除气泡外框与内容区域之间的割裂感。
2. 在数据更新、方向切换和显示状态变化时统一刷新浮窗几何和箭头位置,保证左右展示时箭头始终贴合内容区域。
3. 关闭浮窗内容部件的系统背景填充,减少透明背景下的分层渲染痕迹。

Log: 修复日程提醒浮窗的割裂显示问题
PMS: BUG-369001
Influence: 提升浮窗视觉一致性。
@wangruoxuan3782
wangruoxuan3782 force-pushed the fix-tooltip-text-colors branch from c4990a0 to 3205428 Compare July 31, 2026 01:30
@wangruoxuan3782 wangruoxuan3782 changed the title fix(widget): remove split effect in schedule reminder popup fix(widget): fix reminder popup split Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants