Skip to content

Improve Seeker's total number description#542

Merged
Flaminel merged 2 commits into
mainfrom
improve_total_tooltip
Apr 3, 2026
Merged

Improve Seeker's total number description#542
Flaminel merged 2 commits into
mainfrom
improve_total_tooltip

Conversation

@Flaminel

@Flaminel Flaminel commented Apr 3, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@qodo-code-review

Copy link
Copy Markdown

Review Summary by Qodo

Enhance cycle progress tooltip with clearer item counting description

✨ Enhancement

Grey Divider

Walkthroughs

Description
• Improved tooltip text for cycle progress metric
• Clarified that series/movies are counted as items
• Added Sonarr-specific behavior explanation
Diagram
flowchart LR
  A["Cycle Progress Tooltip"] -- "Updated description" --> B["Clarified item counting logic"]
  B -- "Added Sonarr context" --> C["Better user understanding"]
Loading

Grey Divider

File Changes

1. code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html 📝 Documentation +1/-1

Enhanced cycle progress tooltip description

• Updated tooltip text for the cycle progress metric
• Changed from generic "items searched" to specific "series/movies searched"
• Added clarification about Sonarr's series counting behavior
• Improved user guidance on how items are counted across different instances

code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html


Grey Divider

Qodo Logo

@qodo-code-review

qodo-code-review Bot commented Apr 3, 2026

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0) 🎨 UX Issues (0)

Grey Divider


Remediation recommended

1. Tooltip may misposition🐞 Bug ≡ Correctness
Description
The longer Cycle Progress tooltip text will wrap (max-width 220px), but
TooltipComponent.calculatePosition() uses a fixed estimatedTooltipHeight = 50, so it can choose
a placement that doesn’t actually have enough vertical space and the tooltip can clip off-screen or
overlap content.
Code

code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html[57]

+              <app-tooltip text="Series/movies searched in the current cycle out of total eligible. For Sonarr, each series counts as one item regardless of how many seasons were searched.">
Evidence
The updated tooltip string is long enough to wrap into multiple lines due to the tooltip bubble’s
max-width: 220px and white-space: normal. However, the positioning algorithm assumes a constant
50px tooltip height for space checks, so the space calculations can be wrong for multi-line
tooltips, increasing the chance of clipping with this new longer text.

code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html[55-60]
code/frontend/src/app/ui/tooltip/tooltip.component.scss[8-20]
code/frontend/src/app/ui/tooltip/tooltip.component.ts[34-58]

Agent prompt
The issue below was found during a code review. Follow the provided context and guidance below and implement a solution

## Issue description
`TooltipComponent.calculatePosition()` uses hard-coded tooltip dimensions (`estimatedTooltipHeight = 50`, `estimatedTooltipWidth = 230`). With the newly expanded tooltip text in the Seeker Stats Searches tab, the bubble will wrap and often exceed 50px height, causing incorrect position selection and potential clipping/overlap.
### Issue Context
The tooltip bubble already has `white-space: normal` and `max-width: 220px`, meaning long text will wrap and increase the rendered height. Because the position calculation doesn’t measure the actual bubble size, it can incorrectly decide there is space above/below.
### Fix Focus Areas
- code/frontend/src/app/ui/tooltip/tooltip.component.ts[34-58]
- code/frontend/src/app/ui/tooltip/tooltip.component.scss[8-20]
- code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html[55-60]
### Suggested fix approach
- Add a `viewChild` for the bubble element (e.g., `#bubble`) and read `offsetWidth/offsetHeight` (or `getBoundingClientRect()`) to obtain *real* tooltip dimensions.
- Use those measured dimensions in the `hasSpace` calculations instead of fixed estimates.
- Ensure measurement works while hidden (current bubble is in the DOM even when not visible), or temporarily set it to `visibility: hidden; opacity: 0;` but measurable.
- (Optional) If measuring is not feasible immediately, raise `estimatedTooltipHeight` to a safer value as a short-term mitigation, but prefer measuring for correctness.

ⓘ Copy this prompt and use it to remediate the issue with your preferred AI generation tools


Grey Divider

ⓘ The new review experience is currently in Beta. Learn more

Grey Divider

Qodo Logo

@greptile-apps

greptile-apps Bot commented Apr 3, 2026

Copy link
Copy Markdown

Greptile Summary

This PR improves the tooltip text for the "Cycle Progress" label in the Seeker Stats searches tab, adding a Sonarr-specific clarification that each series counts as one item regardless of how many seasons were searched.

  • The new text improves user understanding of how the cycle counter works for Sonarr instances.
  • However, replacing the generic noun "items" with "Series/movies" makes the tooltip inaccurate for Lidarr (artists/albums) and Readarr (books/authors) instances, since all instance types share the same template.

Confidence Score: 4/5

Safe to merge with a minor wording tweak — no functional code is changed.

The change is a single tooltip string update with no logic impact. The only concern is that "Series/movies" narrows a generic description in a way that's inaccurate for Lidarr/Readarr instances, but this is cosmetic and does not break any feature.

No files require special attention beyond the tooltip wording in searches-tab.component.html.

Important Files Changed

Filename Overview
code/frontend/src/app/features/seeker-stats/searches-tab/searches-tab.component.html Tooltip text updated for "Cycle Progress" — improves clarity for Sonarr but narrows the noun "items" to "Series/movies", which is inaccurate for Lidarr and Readarr instances sharing the same template.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Instance Card rendered] --> B{Instance Type?}
    B -->|Sonarr| C["Tooltip: 'Series/movies...\nFor Sonarr, each series counts as one item'"]
    B -->|Radarr| C
    B -->|Lidarr| C
    B -->|Readarr| C
    B -->|Whisparr| C
    C --> D["'Series/movies' label\nis inaccurate for\nLidarr / Readarr"]
Loading

Reviews (1): Last reviewed commit: "improve Seeker's total number descriptio..." | Re-trigger Greptile

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
@Flaminel Flaminel merged commit 81f6de0 into main Apr 3, 2026
10 checks passed
@Flaminel Flaminel deleted the improve_total_tooltip branch April 3, 2026 12:59
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.

1 participant