]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/toplevel.cpp
Revert my last commit, GetClientAreaOrigin was already implemented
[wxWidgets.git] / src / gtk / toplevel.cpp
index aa4e7ee76ea8501e7deaab4a58fa63bdad88e7d7..fb7300af9dbb5a6ffefee59158edb6425e9dfaef 100644 (file)
@@ -451,8 +451,18 @@ bool wxTopLevelWindowGTK::Create( wxWindow *parent,
             m_widget = gtk_window_new(GTK_WINDOW_TOPLEVEL);
 #if GTK_CHECK_VERSION(2,1,0)
             if (style & wxFRAME_TOOL_WINDOW)
+            {
                 gtk_window_set_type_hint(GTK_WINDOW(m_widget),
                                          GDK_WINDOW_TYPE_HINT_UTILITY);
+                
+                // On some WMs, like KDE, a TOOL_WINDOW will still show
+                // on the taskbar, but on Gnome a TOOL_WINDOW will not.
+                // For consistency between WMs and with Windows, we 
+                // should set the NO_TASKBAR flag which will apply
+                // the set_skip_taskbar_hint if it is available,
+                // ensuring no taskbar entry will appear.
+                style |= wxFRAME_NO_TASKBAR;
+            }
 #endif
 
         }
@@ -732,6 +742,15 @@ bool wxTopLevelWindowGTK::Show( bool show )
     return wxWindow::Show( show );
 }
 
+void wxTopLevelWindowGTK::Raise()
+{
+#ifdef __WXGTK20__
+    gtk_window_present( GTK_WINDOW( m_widget ) );
+#else
+    wxWindow::Raise();
+#endif
+}
+
 void wxTopLevelWindowGTK::DoMoveWindow(int WXUNUSED(x), int WXUNUSED(y), int WXUNUSED(width), int WXUNUSED(height) )
 {
     wxFAIL_MSG( wxT("DoMoveWindow called for wxTopLevelWindowGTK") );