[ekiga] Manage the call window using a smart pointer in the gtk+ frontend



commit f33174f75cd58f7e73e70b7ba238433eaea831ba
Author: Julien Puydt <jpuydt free fr>
Date:   Wed Jun 19 17:33:29 2013 +0200

    Manage the call window using a smart pointer in the gtk+ frontend

 lib/engine/gui/gtk-frontend/gtk-frontend.cpp |    7 ++++---
 lib/engine/gui/gtk-frontend/gtk-frontend.h   |    2 +-
 2 files changed, 5 insertions(+), 4 deletions(-)
---
diff --git a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
index 3c872d5..163dd1b 100644
--- a/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
+++ b/lib/engine/gui/gtk-frontend/gtk-frontend.cpp
@@ -96,7 +96,6 @@ GtkFrontend::~GtkFrontend ()
   // management
 
   //gtk_widget_destroy (assistant_window);
-  //gtk_widget_destroy (call_window);
   //if (status_icon)
   //  g_object_unref (status_icon);
   //gtk_widget_destroy (main_window);
@@ -119,7 +118,9 @@ void GtkFrontend::build ()
     boost::shared_ptr<GtkWidget> (accounts_window_new_with_key (core, "/apps/" PACKAGE_NAME 
"/general/user_interface/accounts_window"),
                                  gtk_widget_destroy);
   assistant_window = ekiga_assistant_new (core);
-  call_window = call_window_new (core);
+  call_window =
+    boost::shared_ptr<GtkWidget> (call_window_new (core),
+                                 gtk_widget_destroy);
   chat_window =
     boost::shared_ptr<GtkWidget> (chat_window_new (core, "/apps/" PACKAGE_NAME 
"/general/user_interface/chat_window"),
                                  gtk_widget_destroy);
@@ -174,7 +175,7 @@ const GtkWidget *GtkFrontend::get_preferences_window () const
 
 const GtkWidget *GtkFrontend::get_call_window () const
 {
-  return call_window;
+  return call_window.get ();
 }
 
 
diff --git a/lib/engine/gui/gtk-frontend/gtk-frontend.h b/lib/engine/gui/gtk-frontend/gtk-frontend.h
index a9f1e4f..4552d71 100644
--- a/lib/engine/gui/gtk-frontend/gtk-frontend.h
+++ b/lib/engine/gui/gtk-frontend/gtk-frontend.h
@@ -86,7 +86,7 @@ private :
   GtkWidget *preferences_window;
   boost::shared_ptr<GtkWidget> addressbook_window;
   boost::shared_ptr<GtkWidget> accounts_window;
-  GtkWidget *call_window;
+  boost::shared_ptr<GtkWidget> call_window;
   boost::shared_ptr<GtkWidget> chat_window;
   StatusIcon *status_icon;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]