2006-04-19 Tapani Palli <tapani.palli@nokia.com>
+ * thread safety (N#24348), fixed timeout and idle callbacks :
+ hildon-widgets/hildon-window.c : hildon_window_escape_timeout()
+ hildon-widgets/hildon-time-picker.c : hildon_time_picker_key_repeat_timeout()
+ hildon-widgets/hildon-number-editor.c : do_mouse_timeout(),hildon_number_editor_select_all()
+ hildon-widgets/hildon-banner.c : hildon_banner_timeout()
+ hildon-widgets/hildon-app.c : hildon_app_escape_timeout()
+ hildon-widgets/hildon-time-editor.c : highlight_callback()
+ hildon-widgets/hildon-date-editor.c : _hildon_date_editor_entry_select_all()
+
+2006-04-19 Tapani Palli <tapani.palli@nokia.com>
+
* hildon-widgets/hildon-app.c (hildon_app_key_release): send
correct state for fullscreen, fixes N#26611
HildonAppPrivate *priv;
GdkEvent *event;
- g_assert(GTK_WIDGET_REALIZED(app));
+ GDK_THREADS_ENTER ();
+
+ g_assert(GTK_WIDGET_REALIZED(app));
priv = HILDON_APP_GET_PRIVATE(app);
priv->escape_timeout = 0;
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}
GdkEvent *event;
gboolean continue_timeout = FALSE;
+ GDK_THREADS_ENTER ();
+
g_assert(HILDON_IS_BANNER(data));
widget = GTK_WIDGET(data);
g_object_unref(widget);
+ GDK_THREADS_LEAVE ();
+
return continue_timeout;
}
static gboolean
_hildon_date_editor_entry_select_all (GtkWidget *widget)
{
+ GDK_THREADS_ENTER ();
gtk_editable_select_region(GTK_EDITABLE(widget), 0, -1);
+ GDK_THREADS_LEAVE ();
return FALSE;
}
{
HildonNumberEditorPrivate *priv;
+ GDK_THREADS_ENTER ();
+
g_assert(HILDON_IS_NUMBER_EDITOR(editor));
/* Update value based on button held */
priv = HILDON_NUMBER_EDITOR_GET_PRIVATE(editor);
change_numbers(editor, priv->button_type);
+ GDK_THREADS_LEAVE ();
+
return TRUE;
}
static gboolean
hildon_number_editor_select_all (HildonNumberEditorPrivate *priv)
{
+ GDK_THREADS_ENTER ();
gtk_editable_select_region(GTK_EDITABLE(priv->num_entry), 0, -1);
priv->select_all_idle_id = 0;
+ GDK_THREADS_LEAVE ();
return FALSE;
}
HildonTimeEditorPrivate *priv;
GtkWidget *widget;
+ GDK_THREADS_ENTER ();
+
g_assert(HILDON_IS_TIME_EDITOR(data));
priv = HILDON_TIME_EDITOR_GET_PRIVATE(data);
gtk_editable_select_region(GTK_EDITABLE(widget), 0, -1);
gtk_widget_grab_focus(widget);
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}
static gboolean
hildon_time_picker_key_repeat_timeout( gpointer tpicker )
{
- HildonTimePicker *picker = HILDON_TIME_PICKER(tpicker);
+ HildonTimePicker *picker;
HildonTimePickerPrivate *priv = NULL;
gint newval = 0;
+ GDK_THREADS_ENTER ();
+
+ picker = HILDON_TIME_PICKER(tpicker);
g_assert(picker != NULL);
priv = picker->priv;
hildon_time_picker_key_repeat_timeout,
picker);
priv->start_key_repeat = FALSE;
+
+ GDK_THREADS_LEAVE ();
return FALSE;
}
+ GDK_THREADS_LEAVE ();
return TRUE;
}
HildonWindowPrivate *priv;
GdkEvent *event;
+ GDK_THREADS_ENTER ();
+
priv = HILDON_WINDOW(data)->priv;
/* Send fake event, simulation a situation that user
priv->escape_timeout = 0;
+ GDK_THREADS_LEAVE ();
+
return FALSE;
}