From 39047037625300a995c3fa0fdd8b84b763439374 Mon Sep 17 00:00:00 2001 From: tfuxu <73042332+tfuxu@users.noreply.github.com> Date: Mon, 26 Aug 2024 22:49:07 +0200 Subject: [PATCH] feat: port View Source dialog to `adw.Dialog` --- internal/messages/message.go | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/internal/messages/message.go b/internal/messages/message.go index e2ecead..a06c164 100644 --- a/internal/messages/message.go +++ b/internal/messages/message.go @@ -246,17 +246,20 @@ func (m *message) ShowEmojiChooser() { e.Popup() } -// ShowSource opens a JSON showing the message JSON. +// ShowSource opens a dialog showing a JSON representation of the message. func (m *message) ShowSource() { - d := adw.NewWindow() + d := adw.NewDialog() d.SetTitle(locale.Get("View Source")) - d.SetTransientFor(app.GTKWindowFromContext(m.ctx())) - d.SetModal(true) - d.SetDefaultSize(500, 300) + d.SetContentWidth(500) + d.SetContentHeight(300) h := adw.NewHeaderBar() h.SetCenteringPolicy(adw.CenteringPolicyStrict) + toolbarView := adw.NewToolbarView() + toolbarView.SetTopBarStyle(adw.ToolbarFlat) + toolbarView.AddTopBar(h) + buf := gtk.NewTextBuffer(nil) if raw, err := json.MarshalIndent(m.message, "", "\t"); err != nil { @@ -292,8 +295,10 @@ func (m *message) ShowSource() { box.Append(h) box.Append(s) - d.SetContent(box) - d.Present() + toolbarView.SetContent(box) + + d.SetChild(toolbarView) + d.Present(app.GTKWindowFromContext(m.ctx())) } // cozyMessage is a large cozy message with an avatar.