Skip to content

[EuiToolTip] Replace all title attributes with EuiToolTip#268225

Closed
weronikaolejniczak wants to merge 7 commits into
elastic:mainfrom
weronikaolejniczak:feat/replace-title
Closed

[EuiToolTip] Replace all title attributes with EuiToolTip#268225
weronikaolejniczak wants to merge 7 commits into
elastic:mainfrom
weronikaolejniczak:feat/replace-title

Conversation

@weronikaolejniczak
Copy link
Copy Markdown
Contributor

@weronikaolejniczak weronikaolejniczak commented May 7, 2026

Summary

Relates to elastic/eui#9643
Closes elastic/eui#9566
Closes #270161
Closes #270154

Important

These changes should be carefully tested visually by each code owner. Wrapping with EuiToolTip instead of passing title leads to another DOM node and can potentially break the layout. In such cases, I would appreciate committing appropriate fixes to this PR directly, I cannot possibly setup and run all Kibana functionalities to fix every regression.

This PR:

  • wraps ALL EuiButtonIcon with EuiToolTip, the content is the same as aria-label, any title passed to EuiButtonIcon is removed,
  • changes several title cases (not truncation related) to use EuiToolTip instead.

Requested changes

These are the specific places that were requested either in GitHub (see the linked issues) or through Slack:

Issue #270161 (Metrics in Discover) - addressed

  • Magnifier "Search metrics" → wrapped in EuiToolTip in search_button.tsx
  • "Enter/Collapse fullscreen" → wrapped in EuiToolTip in use_fullscreen.tsx

Issue #270154 (Discover viz Edit/Save) - addressed

  • "Edit visualization" → added toolTipContent to the IconButtonGroup action in chart.tsx:284 (both canEditVisualizationOnTheFly and onEditVisualization branches)
  • "Save visualization to dashboard" → added toolTipContent to the IconButtonGroup action in chart.tsx:308

Issue image case ("Send to background") - addressed

  • "Send to background" (cancel variant) → switched to tooltipProps on EuiSplitButton.ActionSecondary in query_bar_top_row.tsx:875
  • "Send to background" (update variant) → switched to tooltipProps on EuiSplitButton.ActionSecondary in query_bar_top_row.tsx:971

QA

Checklist

Check the PR satisfies following conditions.

Reviewers should verify this PR satisfies this list as well.

  • Any text added follows EUI's writing guidelines, uses sentence case text and includes i18n support
  • Documentation was added for features that require explanation or tutorials
  • Unit or functional tests were updated or added to match the most common scenarios
  • If a plugin configuration key changed, check if it needs to be allowlisted in the cloud and added to the docker list
  • This was checked for breaking HTTP API changes, and any breaking changes have been approved by the breaking-change committee. The release_note:breaking label should be applied in these situations.
  • Flaky Test Runner was used on any tests changed
  • The PR description includes the appropriate Release Notes section, and the correct release_note:* label is applied per the guidelines
  • Review the backport guidelines and apply applicable backport:* labels.

@infra-vault-gh-plugin-prod
Copy link
Copy Markdown

🤖 Jobs for this PR can be triggered through checkboxes. 🚧

ℹ️ To trigger the CI, please tick the checkbox below 👇

  • Click to trigger kibana-pull-request for this PR!
  • Click to trigger kibana-deploy-project-from-pr for this PR!
  • Click to trigger kibana-deploy-cloud-from-pr for this PR!
  • Click to trigger kibana-entity-store-performance-from-pr for this PR!
  • Click to trigger kibana-storybooks-from-pr for this PR!

@weronikaolejniczak weronikaolejniczak self-assigned this May 8, 2026
@weronikaolejniczak weronikaolejniczak force-pushed the feat/replace-title branch 3 times, most recently from dde016d to 2f4a574 Compare May 18, 2026 20:33
@miguel-sanchez-elastic
Copy link
Copy Markdown

Hi @weronikaolejniczak , does this PR also addresses #270154?

I noticed that it covered #270161 and I was wondering if you are improving it across the whole platform?

@weronikaolejniczak
Copy link
Copy Markdown
Contributor Author

@miguel-sanchez-elastic that's the goal, to improve it across the whole platform (as much as possible). EUI components have been addressed here, this PR is for Kibana specific cases like wrapping all EuiButtonIcon with EuiToolTip and replacing title wherever possible with EuiToolTip (not possible for truncation cases).

I'll link this one as well. If you know of any other cases, feel free to drop them here!

@weronikaolejniczak weronikaolejniczak added release_note:skip Skip the PR/issue when compiling release notes backport:skip This PR does not require backporting labels May 26, 2026
@kibanamachine
Copy link
Copy Markdown
Contributor

kibanamachine commented May 26, 2026

💔 Build Failed

Failed CI Steps

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
agentBuilder 1.3MB 1.3MB +3.0KB
aiops 530.9KB 532.1KB +1.2KB
alertingVTwo 819.2KB 821.5KB +2.3KB
apm 2.8MB 2.8MB +3.4KB
automaticImport 332.2KB 332.3KB +57.0B
canvas 1.1MB 1.1MB +686.0B
cases 2.4MB 2.4MB +2.0KB
charts 4.3KB 4.3KB +57.0B
cloudConnect 38.0KB 38.3KB +360.0B
cloudDefend 93.7KB 94.1KB +415.0B
cloudSecurityPosture 615.8KB 616.9KB +1.1KB
console 208.3KB 209.0KB +692.0B
contentConnectors 477.0KB 479.1KB +2.1KB
controls 528.2KB 528.5KB +318.0B
core 136.4KB 136.6KB +147.0B
cps 13.7KB 13.8KB +77.0B
dashboard 1.1MB 1.1MB +494.0B
datasetQuality 537.9KB 538.1KB +238.0B
dataUsage 28.2KB 28.3KB +90.0B
dataViewFieldEditor 99.9KB 100.5KB +699.0B
dataViewManagement 145.6KB 146.0KB +437.0B
dataVisualizer 621.9KB 623.3KB +1.4KB
developerToolbar 216.8KB 216.9KB +88.0B
discover 1.9MB 1.9MB +1.7KB
embeddable 89.6KB 89.7KB +136.0B
enterpriseSearch 960.1KB 963.0KB +2.9KB
esql 920.6KB 921.5KB +950.0B
esqlDataGrid 155.8KB 156.2KB +449.0B
evals 144.5KB 144.6KB +133.0B
eventAnnotationListing 208.8KB 209.2KB +441.0B
exploratoryView 138.7KB 139.2KB +524.0B
filesManagement 104.6KB 104.7KB +114.0B
fileUpload 649.9KB 650.1KB +173.0B
fleet 2.8MB 2.8MB +4.6KB
graph 374.3KB 374.4KB +114.0B
home 72.5KB 72.6KB +57.0B
imageEmbeddable 111.9KB 112.1KB +215.0B
indexLifecycleManagement 151.5KB 151.5KB +79.0B
indexManagement 793.8KB 794.6KB +821.0B
infra 1.5MB 1.5MB +3.7KB
ingestPipelines 366.0KB 367.0KB +996.0B
inputControlVis 41.8KB 42.4KB +576.0B
inspector 31.8KB 32.5KB +725.0B
kibanaOverview 47.4KB 47.4KB +57.0B
kubernetesSecurity 228.3KB 228.3KB +17.0B
lens 2.1MB 2.1MB +1.9KB
lists 64.3KB 64.4KB +91.0B
logsShared 103.0KB 103.1KB +57.0B
maintenanceWindows 89.4KB 89.6KB +179.0B
management 32.7KB 32.8KB +57.0B
maps 3.2MB 3.2MB +1.6KB
ml 5.6MB 5.6MB +4.4KB
monitoring 636.6KB 636.7KB +141.0B
observability 2.1MB 2.1MB +1.1KB
observabilityAIAssistant 20.3KB 21.0KB +664.0B
observabilityAIAssistantApp 666.2KB 666.2KB +17.0B
observabilityAiAssistantManagement 106.5KB 106.6KB +130.0B
observabilityOnboarding 169.2KB 169.3KB +172.0B
observabilityShared 37.2KB 37.2KB +57.0B
osquery 1.3MB 1.3MB +2.2KB
profiling 366.1KB 366.5KB +360.0B
queryActivity 21.0KB 21.3KB +321.0B
remoteClusters 85.5KB 85.6KB +66.0B
reporting 145.5KB 145.6KB +73.0B
savedObjectsManagement 80.7KB 80.7KB -18.0B
searchGettingStarted 219.2KB 220.0KB +852.0B
searchHomepage 80.3KB 81.2KB +941.0B
searchInferenceEndpoints 235.8KB 236.7KB +927.0B
searchPlayground 243.7KB 244.7KB +944.0B
searchQueryRules 131.6KB 132.9KB +1.3KB
searchSynonyms 65.1KB 65.3KB +244.0B
security 550.1KB 551.9KB +1.8KB
securitySolution 12.1MB 12.1MB +13.1KB
securitySolutionEss 45.3KB 45.4KB +57.0B
securitySolutionServerless 63.3KB 63.3KB +57.0B
serverlessSearch 174.5KB 175.3KB +863.0B
serverlessVectordb 48.9KB 49.2KB +247.0B
sessionView 357.1KB 357.7KB +613.0B
slo 1.2MB 1.2MB +2.5KB
snapshotRestore 265.9KB 266.1KB +256.0B
spaces 236.3KB 236.5KB +243.0B
stackAlerts 90.0KB 90.6KB +703.0B
stackConnectors 1.8MB 1.8MB +859.0B
streamsApp 2.1MB 2.1MB +7.1KB
synthetics 1.1MB 1.1MB +1.9KB
timelines 20.6KB 20.8KB +263.0B
transform 633.2KB 635.0KB +1.8KB
triggersActionsUi 2.0MB 2.0MB +2.8KB
unifiedDocViewer 684.5KB 684.6KB +57.0B
unifiedSearch 309.9KB 310.3KB +477.0B
upgradeAssistant 230.1KB 230.5KB +439.0B
uptime 493.6KB 494.6KB +959.0B
ux 137.8KB 137.9KB +76.0B
visDefaultEditor 81.9KB 82.5KB +704.0B
visTypeTimeseries 441.0KB 441.4KB +463.0B
visTypeVega 2.0MB 2.0MB +329.0B
visualizationListing 97.6KB 97.7KB +114.0B
visualizations 335.2KB 335.3KB +114.0B
watcher 159.8KB 160.0KB +183.0B
workflowsManagement 2.5MB 2.5MB +679.0B
workplaceAIApp 513.1KB 513.6KB +585.0B
total +99.4KB

Page load bundle

Size of the bundles that are downloaded on every page load. Target size is below 100kb

id before after diff errors
cases 204.9KB 205.2KB +234.0B
cloudLinks 38.1KB 38.4KB +366.0B
core 535.5KB 535.9KB +505.0B ❌ 208.0B over limit
elasticAssistant 266.2KB 266.2KB +66.0B
esUiShared 96.6KB 96.6KB +57.0B
globalSearchBar 27.7KB 27.8KB +87.0B
intercepts 19.0KB 19.0KB +78.0B
kbnUiSharedDeps-npmDll 7.4MB 7.4MB -598.0B
kql 13.8KB 13.9KB +77.0B
navigation 10.7KB 10.8KB +57.0B
observabilityShared 69.5KB 69.7KB +178.0B
sessionView 43.0KB 43.3KB +313.0B
stackAlerts 28.3KB 28.4KB +178.0B
triggersActionsUi 117.2KB 117.2KB +57.0B
visDefaultEditor 32.3KB 32.3KB +57.0B
visTypeVega 35.8KB 36.0KB +206.0B
total +1.9KB

History

cc @weronikaolejniczak

@weronikaolejniczak
Copy link
Copy Markdown
Contributor Author

Closing in favor of:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:skip This PR does not require backporting EUI release_note:skip Skip the PR/issue when compiling release notes

Projects

None yet

3 participants