From 088d4ff31849c5bbf93853fb5327743490a2493f Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 6 Jan 2007 19:25:28 +0000 Subject: Special #ifdef win32 code to enable Dialogs on Top for windows. Note the removal of options from the global preferences on win32! just one option left: dialogs on top yes/no. Does have one "bug" though... read note! (bzr r2138) --- src/dialogs/dialog-events.cpp | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) (limited to 'src/dialogs') diff --git a/src/dialogs/dialog-events.cpp b/src/dialogs/dialog-events.cpp index deabcf383..c2ac1b12f 100644 --- a/src/dialogs/dialog-events.cpp +++ b/src/dialogs/dialog-events.cpp @@ -145,12 +145,24 @@ sp_dialog_event_handler (GtkWindow *win, GdkEvent *event, gpointer data) void sp_transientize (GtkWidget *dialog) { +#ifndef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs + // _set_skip_taskbar_hint makes transient dialogs NON-transient! When dialogs + // are made transient (_set_transient_for), they are already removed from + // the taskbar in Win32. if (prefs_get_int_attribute ( "options.dialogsskiptaskbar", "value", 0)) { gtk_window_set_skip_taskbar_hint (GTK_WINDOW (dialog), TRUE); - } + } +#endif gint transient_policy = prefs_get_int_attribute_limited ( "options.transientpolicy", "value", 1, 0, 2 ); +#ifdef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs + if (prefs_get_int_attribute ( "options.dialogsontopwin32", "value", 0)) + transient_policy = 2; + else + transient_policy = 0; +#endif + if (transient_policy) { // if there's an active document window, attach dialog to it as a transient: @@ -171,9 +183,14 @@ void sp_transientize_callback ( Inkscape::Application * /*inkscape*/, SPDesktop *desktop, win_data *wd ) { - gint transient_policy = - prefs_get_int_attribute_limited ( "options.transientpolicy", "value", - 1, 0, 2); + gint transient_policy = prefs_get_int_attribute_limited ( "options.transientpolicy", "value", 1, 0, 2); + +#ifdef WIN32 // FIXME: Temporary Win32 special code to enable transient dialogs + if (prefs_get_int_attribute ( "options.dialogsontopwin32", "value", 0)) + transient_policy = 2; + else + return; +#endif if (!transient_policy) return; -- cgit v1.2.3