@@ -16,7 +16,6 @@ import (
16 "github.com/charmbracelet/crush/internal/tui/styles"
16 "github.com/charmbracelet/crush/internal/tui/styles"
17 "github.com/charmbracelet/crush/internal/tui/util"
17 "github.com/charmbracelet/crush/internal/tui/util"
18 "github.com/charmbracelet/lipgloss/v2"
18 "github.com/charmbracelet/lipgloss/v2"
19− uv "github.com/charmbracelet/ultraviolet"
20 "github.com/charmbracelet/x/ansi"
19 "github.com/charmbracelet/x/ansi"
@@ -383,35 +382,11 @@ func (p *permissionDialogCmp) generateFetchContent() string {
383 t := styles.CurrentTheme()
382 t := styles.CurrentTheme()
384 baseStyle := t.S().Base.Background(t.BgSubtle)
383 baseStyle := t.S().Base.Background(t.BgSubtle)
385 if pr, ok := p.permission.Params.(tools.FetchPermissionsParams); ok {
384 if pr, ok := p.permission.Params.(tools.FetchPermissionsParams); ok {
386− content := fmt.Sprintf("```bash\n%s\n```", pr.URL)
388− // Use the cache for markdown rendering
389− renderedContent := p.GetOrSetMarkdown(p.permission.ID, func() (string, error) {
390− r := styles.GetMarkdownRenderer(p.width - 4)
391− s, err := r.Render(content)
395 finalContent := baseStyle.
385 finalContent := baseStyle.
396 Width(p.contentViewPort.Width()).
387 Width(p.contentViewPort.Width()).
397− Render(renderedContent)
388+ Render(pr.URL)
398−
389+ return finalContent
399− // We render the content into a buffer with the size of the viewport
400− // width and height of the content. Then we make sure each cell has the
401− // appropriate background color.
402− ss := uv.NewStyledString(finalContent)
403− scr := uv.NewScreenBuffer(p.contentViewPort.Width(), lipgloss.Height(finalContent))
404− ss.Draw(scr, scr.Bounds())
405− for y := 0; y < scr.Height(); y++ {
406− for x := 0; x < scr.Width(); x++ {
407− cell := scr.CellAt(x, y)
409− cell.Style.Bg = t.BgSubtle
416 return ""
391 return ""