From 58b8b4854ec77628d0865dcf30afd0edd9960c66 Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Fri, 6 Dec 2013 11:23:43 +0100 Subject: Fix for Bug #1257007 ([devlibs-gtk3] Crash when clicking on Export As...). Fixed bugs: - https://launchpad.net/bugs/1257007 (bzr r12840) --- src/ui/dialog/export.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/ui/dialog/export.cpp') diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 8ea1a09fa..2cfdacb3d 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -1343,7 +1343,15 @@ void Export::onBrowse () wcsncpy(_filename, reinterpret_cast(utf16_path_string), _MAX_PATH); g_free(utf16_path_string); - opf.hwndOwner = (HWND)(GDK_WINDOW_HWND(gtk_widget_get_window(GTK_WIDGET(this)))); + SPDesktop *desktop = SP_ACTIVE_DESKTOP; + Glib::RefPtr parentWindow = desktop->getToplevel()->get_window(); + g_assert(parentWindow->gobj() != NULL); + +#if WITH_GTKMM_3_0 + opf.hwndOwner = (HWND)gdk_win32_window_get_handle((GdkWindow*)parentWindow->gobj()); +#else + opf.hwndOwner = (HWND)gdk_win32_drawable_get_handle((GdkDrawable*)parentWindow->gobj()); +#endif opf.lpstrFilter = filter_string; opf.lpstrCustomFilter = 0; opf.nMaxCustFilter = 0L; -- cgit v1.2.3