Skip to content

fix(intelligent-assistant): chat UI squashed when opening drawer in overlay/docked modes - #4216

Open
rohitratannagar wants to merge 2 commits into
redhat-developer:mainfrom
rohitratannagar:fix/intelligent-assistant-drawer-squash-RHDHBUGS-3575
Open

fix(intelligent-assistant): chat UI squashed when opening drawer in overlay/docked modes#4216
rohitratannagar wants to merge 2 commits into
redhat-developer:mainfrom
rohitratannagar:fix/intelligent-assistant-drawer-squash-RHDHBUGS-3575

Conversation

@rohitratannagar

@rohitratannagar rohitratannagar commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

Summary

fixes: https://redhat.atlassian.net/browse/RHDHBUGS-3575

  • Fixes the chat history drawer rendering inline in overlay and docked display modes, which squashed the chat content area to ~55% of its width (overlay) or hid it entirely (docked)
  • Root cause: ChatbotConversationHistoryNav was hardcoded to displayMode={ChatbotDisplayMode.embedded}, which tells PatternFly to render the drawer panel inline (side-by-side). In overlay/docked modes it should use the actual displayMode so the drawer renders as a floating overlay with a backdrop instead
  • One-line fix: pass displayMode={displayMode} instead of the hardcoded value

Before / After

Mode Before (bug) After (fix)
Overlay Drawer opens inline, squashing footer from 480px → 264px. Suggestion cards and input text truncated Drawer overlays with backdrop. Chat content stays full width (480px)
Docked Drawer replaces chat content entirely — no chat visible Drawer overlays with backdrop. Chat content visible behind

Test plan

  • Reproduction test confirms footer width drops to 55% when drawer opens (fails before fix, passes after)
  • All 980 unit tests pass (73 suites, zero failures)
  • Before/after video recordings captured
  • Manual verification: open chatbot in overlay mode → click hamburger → drawer should float over content
  • Manual verification: switch to docked mode → click hamburger → drawer should float over content
  • Manual verification: fullscreen mode → click expand history → drawer should still render inline (unchanged behavior)

Resolves: RHDHBUGS-3575

🤖 Generated with Claude Code

…r opens in overlay/docked modes

ChatbotConversationHistoryNav was hardcoded to displayMode=embedded,
causing the drawer to render inline and squeeze the chat content.
Pass the actual displayMode so the drawer overlays in overlay/docked
modes while preserving inline behavior in fullscreen.

Resolves: RHDHBUGS-3575

Assisted-by: Claude Opus 4.6
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rhdh-gh-app

rhdh-gh-app Bot commented Aug 10, 2026

Copy link
Copy Markdown

Changed Packages

Package Name Package Path Changeset Bump Current Version
@red-hat-developer-hub/backstage-plugin-intelligent-assistant workspaces/intelligent-assistant/plugins/intelligent-assistant patch v3.2.0

@rhdh-qodo-merge

Copy link
Copy Markdown

PR Summary by Qodo

Fix chat history drawer overlay behavior in overlay/docked modes

🐞 Bug fix 🕐 Less than 10 minutes

Grey Divider

AI Description

• Fix chat history drawer rendering inline in overlay/docked modes, which squashed/hidden chat UI
• Pass the actual displayMode to the drawer nav so PatternFly renders an overlay when appropriate
• Preserve existing fullscreen/embedded inline drawer behavior
Diagram

graph TD
  U["User"] --> L["LightspeedChat"] --> N["ConversationHistoryNav"] --> D["PatternFly Drawer"]
  L --> M["displayMode prop"] --> D
  D --> C["Chat content area"]
Loading
High-Level Assessment

This is the right fix: the drawer component should use the actual current display mode rather than forcing embedded, allowing PatternFly to render overlay behavior in overlay/docked modes while keeping inline behavior in fullscreen/embedded.

Files changed (1) +1 / -1

Bug fix (1) +1 / -1
LightSpeedChat.tsxForward active displayMode to chat history drawer nav +1/-1

Forward active displayMode to chat history drawer nav

• Replaces a hardcoded 'displayMode={ChatbotDisplayMode.embedded}' with 'displayMode={displayMode}' for the conversation history drawer navigation. This prevents inline drawer rendering from squeezing or replacing the chat content in overlay/docked modes.

workspaces/intelligent-assistant/plugins/intelligent-assistant/src/components/LightSpeedChat.tsx

Assisted-by: Claude Opus 4.6
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@rhdh-qodo-merge

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)

Grey Divider

Great, no issues found!

Qodo reviewed your code and found no material issues that require review

Grey Divider

Tip of the day
💡 Did you know, you can reply 'qodo' on any finding to push back, ask questions, or dig deeper

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

@sonarqubecloud

Copy link
Copy Markdown

@codecov

codecov Bot commented Aug 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 58.33%. Comparing base (3d1d7d7) to head (8d61b18).
⚠️ Report is 4 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4216   +/-   ##
=======================================
  Coverage   58.33%   58.33%           
=======================================
  Files        2432     2432           
  Lines       96776    96776           
  Branches    26923    26932    +9     
=======================================
  Hits        56457    56457           
  Misses      40125    40125           
  Partials      194      194           
Flag Coverage Δ *Carryforward flag
adoption-insights 84.55% <ø> (ø) Carriedforward from 3d1d7d7
ai-integrations 69.76% <ø> (ø) Carriedforward from 3d1d7d7
app-defaults 69.79% <ø> (ø) Carriedforward from 3d1d7d7
augment 46.67% <ø> (ø) Carriedforward from 3d1d7d7
boost 76.77% <ø> (ø) Carriedforward from 3d1d7d7
bulk-import 72.79% <ø> (ø) Carriedforward from 3d1d7d7
cost-management 13.55% <ø> (ø) Carriedforward from 3d1d7d7
dcm 67.21% <ø> (ø) Carriedforward from 3d1d7d7
extensions 56.59% <ø> (ø) Carriedforward from 3d1d7d7
global-floating-action-button 71.18% <ø> (ø) Carriedforward from 3d1d7d7
global-header 66.50% <ø> (ø) Carriedforward from 3d1d7d7
homepage 47.59% <ø> (ø) Carriedforward from 3d1d7d7
install-dynamic-plugins 59.95% <ø> (ø) Carriedforward from 3d1d7d7
intelligent-assistant 75.24% <ø> (ø)
konflux 91.98% <ø> (ø) Carriedforward from 3d1d7d7
lightspeed 69.02% <ø> (ø) Carriedforward from 3d1d7d7
mcp-integrations 83.40% <ø> (ø) Carriedforward from 3d1d7d7
orchestrator 66.91% <ø> (ø) Carriedforward from 3d1d7d7
quickstart 63.74% <ø> (ø) Carriedforward from 3d1d7d7
sandbox 79.56% <ø> (ø) Carriedforward from 3d1d7d7
scorecard 86.17% <ø> (ø) Carriedforward from 3d1d7d7
theme 88.77% <ø> (ø) Carriedforward from 3d1d7d7
translations 5.12% <ø> (ø) Carriedforward from 3d1d7d7
x2a 79.20% <ø> (ø) Carriedforward from 3d1d7d7

*This pull request uses carry forward flags. Click here to find out more.


Continue to review full report in Codecov by Harness.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3d1d7d7...8d61b18. Read the comment docs.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

1 participant