using Gtk; using Adw; namespace Publicate { private class IdentityActionRow : ActionRow { private Gtk.Window toplevel; public Ppub.CollectionMemberCredentials creds; public Pprf.MemberIdentity? identity; public IdentityActionRow(Gtk.Window window, Ppub.CollectionMemberCredentials credentials, Pprf.MemberIdentity? identity, string? name) { toplevel = window; creds = credentials; this.identity = identity; if(identity != null) { title = identity.name; } else { title = name; } subtitle = credentials.get_public_keys().to_string(); var copy_key_button = new Gtk.Button.from_icon_name ("edit-copy-symbolic"); copy_key_button.valign = Align.CENTER; copy_key_button.clicked.connect (() => get_clipboard ().set_text(subtitle)); copy_key_button.tooltip_text = "Copy the public key of this identity"; add_suffix (copy_key_button); } } }