# HG changeset patch
# Node ID 379bc3ba4c995946e8eff6230788385421af2c52
# Parent  ad73c9be8cb1b01410140d327d2ddd5d6288db8f
diff --git a/pidgin/pidginabout.c b/pidgin/pidginabout.c
--- a/pidgin/pidginabout.c
+++ b/pidgin/pidginabout.c
@@ -41,7 +41,7 @@
 #include "pidginresources.h"
 
 struct _PidginAboutDialog {
-	GtkDialog parent;
+	AdwWindow parent;
 
 	GtkWidget *application_name;
 
@@ -556,18 +556,6 @@
  * Callbacks
  *****************************************************************************/
 static void
-pidgin_about_dialog_response_cb(GtkDialog *dialog, gint response_id,
-                                G_GNUC_UNUSED gpointer data)
-{
-	switch(response_id) {
-		case GTK_RESPONSE_CLOSE:
-		case GTK_RESPONSE_DELETE_EVENT:
-			gtk_window_destroy(GTK_WINDOW(dialog));
-			break;
-	}
-}
-
-static void
 pidgin_about_dialog_copy_button_cb(GtkButton *button,
                                    gpointer data)
 {
@@ -637,7 +625,7 @@
 /******************************************************************************
  * GObject Implementation
  *****************************************************************************/
-G_DEFINE_FINAL_TYPE(PidginAboutDialog, pidgin_about_dialog, GTK_TYPE_DIALOG)
+G_DEFINE_FINAL_TYPE(PidginAboutDialog, pidgin_about_dialog, ADW_TYPE_WINDOW)
 
 static void
 pidgin_about_dialog_class_init(PidginAboutDialogClass *klass) {
@@ -671,8 +659,6 @@
 	                                     build_args_group);
 
 	gtk_widget_class_bind_template_callback(widget_class,
-	                                        pidgin_about_dialog_response_cb);
-	gtk_widget_class_bind_template_callback(widget_class,
 	                                        pidgin_about_dialog_copy_button_cb);
 }
 
diff --git a/pidgin/pidginabout.h b/pidgin/pidginabout.h
--- a/pidgin/pidginabout.h
+++ b/pidgin/pidginabout.h
@@ -29,6 +29,8 @@
 
 #include <gtk/gtk.h>
 
+#include <adwaita.h>
+
 #include "pidginversion.h"
 
 G_BEGIN_DECLS
@@ -45,7 +47,7 @@
 
 PIDGIN_AVAILABLE_IN_3_0
 G_DECLARE_FINAL_TYPE(PidginAboutDialog, pidgin_about_dialog, PIDGIN,
-                     ABOUT_DIALOG, GtkDialog)
+                     ABOUT_DIALOG, AdwWindow)
 
 /**
  * pidgin_about_dialog_new:
diff --git a/pidgin/resources/About/about.ui b/pidgin/resources/About/about.ui
--- a/pidgin/resources/About/about.ui
+++ b/pidgin/resources/About/about.ui
@@ -22,10 +22,9 @@
   <!-- interface-name Pidgin -->
   <!-- interface-description Internet Messenger -->
   <!-- interface-copyright Pidgin Developers <devel@pidgin.im> -->
-  <template class="PidginAboutDialog" parent="GtkDialog">
+  <template class="PidginAboutDialog" parent="AdwWindow">
     <property name="default-height">600</property>
-    <signal name="response" handler="pidgin_about_dialog_response_cb" swapped="no"/>
-    <child internal-child="content_area">
+    <child>
       <object class="GtkBox">
         <property name="orientation">vertical</property>
         <property name="spacing">2</property>
@@ -46,7 +45,6 @@
                 <property name="css-classes">title-1</property>
                 <property name="label" translatable="1">Pidgin</property>
                 <property name="justify">center</property>
-                <property name="selectable">1</property>
               </object>
             </child>
             <child>
@@ -237,26 +235,27 @@
             </child>
           </object>
         </child>
-      </object>
-    </child>
-    <action-widgets>
-      <action-widget response="close">close_button</action-widget>
-    </action-widgets>
-    <child internal-child="action_area">
-      <object class="GtkBox">
-        <property name="valign">center</property>
         <child>
-          <object class="GtkStackSwitcher" id="switcher">
-            <property name="stack">stack</property>
-            <property name="hexpand">1</property>
-          </object>
-        </child>
-        <child>
-          <object class="GtkButton" id="close_button">
-            <property name="label" translatable="1">Close</property>
-            <property name="focusable">1</property>
-            <property name="receives-default">1</property>
-            <property name="hexpand">1</property>
+          <object class="GtkBox">
+            <property name="halign">center</property>
+            <property name="orientation">horizontal</property>
+            <property name="margin-top">12</property>
+            <property name="valign">center</property>
+            <child>
+              <object class="GtkStackSwitcher" id="switcher">
+                <property name="stack">stack</property>
+                <property name="hexpand">1</property>
+              </object>
+            </child>
+            <child>
+              <object class="GtkButton">
+                <property name="label" translatable="1">Close</property>
+                <property name="action-name">window.close</property>
+                <property name="focusable">1</property>
+                <property name="receives-default">1</property>
+                <property name="hexpand">1</property>
+              </object>
+            </child>
           </object>
         </child>
       </object>
