//-----------------------------------------------------------------------------
extern "C" {
-static gboolean gtk_frame_focus_callback( GtkWidget *widget, GtkDirectionType WXUNUSED(d), wxWindow *WXUNUSED(win) )
+static gboolean gtk_frame_focus_callback( GtkWidget *WXUNUSED(widget),
+ GtkDirectionType WXUNUSED(d),
+ wxWindow *WXUNUSED(win) )
{
if (g_isIdle)
wxapp_install_idle_handler();
win->m_width = alloc->width;
win->m_height = alloc->height;
- if (win->m_mainWidget)
- GTK_PIZZA(win->m_mainWidget)->m_width = win->m_width;
-
win->GtkUpdateSize();
}
}
m_insertInClientArea = true;
m_isIconized = false;
m_fsIsShowing = false;
+ m_fsSaveFlag = 0;
m_themeEnabled = true;
m_gdkDecor = m_gdkFunc = 0;
m_grabbed = false;
GTK_WIDGET_UNSET_FLAGS( m_mainWidget, GTK_CAN_FOCUS );
gtk_container_add( GTK_CONTAINER(m_widget), m_mainWidget );
- GTK_PIZZA(m_mainWidget)->m_width = m_width;
-
if (m_miniEdge == 0) // wxMiniFrame has its own version.
{
// For m_mainWidget themes
g_lastActiveFrame = NULL;
}
-
+bool wxTopLevelWindowGTK::EnableCloseButton( bool enable )
+{
+ if (enable)
+ m_gdkFunc |= GDK_FUNC_CLOSE;
+ else
+ m_gdkFunc &= ~GDK_FUNC_CLOSE;
+
+ if (GTK_WIDGET_REALIZED(m_widget) && (m_widget->window))
+ gdk_window_set_functions( m_widget->window, (GdkWMFunction)m_gdkFunc );
+
+ return true;
+}
bool wxTopLevelWindowGTK::ShowFullScreen(bool show, long style )
{
if ( (method == wxX11_FS_WMSPEC) && !gtk_check_version(2,2,0) )
{
if (show)
+ {
+ m_fsSaveFlag = style;
gtk_window_fullscreen( GTK_WINDOW( m_widget ) );
+ }
else
+ {
+ m_fsSaveFlag = 0;
gtk_window_unfullscreen( GTK_WINDOW( m_widget ) );
+ }
}
else
#endif // GTK+ >= 2.2.0
}
else // hide
{
+ m_fsSaveFlag = 0;
if (method != wxX11_FS_WMSPEC)
{
// don't do it always, Metacity hates it
if (width != -1) m_width = width;
if (height != -1) m_height = height;
- if (m_mainWidget)
- GTK_PIZZA(m_mainWidget)->m_width = m_width;
-
/*
if ((sizeFlags & wxSIZE_AUTO_WIDTH) == wxSIZE_AUTO_WIDTH)
{
if (height)
{
- *height = m_height - 2 * m_miniEdge + m_miniTitle;
+ *height = m_height - 2 * m_miniEdge - m_miniTitle;
if (*height < 0)
*height = 0;
}