[gnome-color-manager] trivial: add gcm_calibrate_dialog_set_move_window() so we only move the calibration window when doin
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-color-manager] trivial: add gcm_calibrate_dialog_set_move_window() so we only move the calibration window when doin
- Date: Tue, 23 Feb 2010 11:51:45 +0000 (UTC)
commit f71373e5a6b232065e83ff6e75cec696b80c549c
Author: Richard Hughes <richard hughsie com>
Date: Tue Feb 23 11:51:18 2010 +0000
trivial: add gcm_calibrate_dialog_set_move_window() so we only move the calibration window when doing a display read
src/gcm-calibrate-argyll.c | 9 +++++++++
src/gcm-calibrate-dialog.c | 37 +++++++++++++++++++++++++------------
src/gcm-calibrate-dialog.h | 2 ++
3 files changed, 36 insertions(+), 12 deletions(-)
---
diff --git a/src/gcm-calibrate-argyll.c b/src/gcm-calibrate-argyll.c
index 6c60618..ecff92e 100644
--- a/src/gcm-calibrate-argyll.c
+++ b/src/gcm-calibrate-argyll.c
@@ -1255,6 +1255,10 @@ gcm_calibrate_argyll_display (GcmCalibrate *calibrate, GtkWindow *window, GError
const gchar *title;
const gchar *message;
+ /* set modal windows up correctly */
+ gcm_calibrate_dialog_set_move_window (priv->calibrate_dialog, TRUE);
+ gcm_calibrate_dialog_set_window (priv->calibrate_dialog, window);
+
/* TRANSLATORS: title, hardware refers to a calibration device */
title = _("Set up display");
@@ -1496,6 +1500,7 @@ gcm_calibrate_argyll_printer (GcmCalibrate *calibrate, GtkWindow *window, GError
/* need to ask if we are printing now, or using old data */
/* set modal windows up correctly */
+ gcm_calibrate_dialog_set_move_window (priv->calibrate_dialog, FALSE);
gcm_calibrate_dialog_set_window (priv->calibrate_dialog, window);
/* step 1 */
@@ -1556,6 +1561,10 @@ gcm_calibrate_argyll_device (GcmCalibrate *calibrate, GtkWindow *window, GError
const gchar *title;
const gchar *message;
+ /* set modal windows up correctly */
+ gcm_calibrate_dialog_set_move_window (priv->calibrate_dialog, FALSE);
+ gcm_calibrate_dialog_set_window (priv->calibrate_dialog, window);
+
/* TRANSLATORS: title, hardware refers to a calibration device */
title = _("Set up device");
diff --git a/src/gcm-calibrate-dialog.c b/src/gcm-calibrate-dialog.c
index 7dee419..c6ebbc2 100644
--- a/src/gcm-calibrate-dialog.c
+++ b/src/gcm-calibrate-dialog.c
@@ -55,6 +55,7 @@ struct _GcmCalibrateDialogPrivate
GcmCalibrateReferenceKind reference_kind;
GtkResponseType response;
GMainLoop *loop;
+ gboolean move_window;
};
enum {
@@ -291,9 +292,11 @@ gcm_calibrate_dialog_show (GcmCalibrateDialog *calibrate_dialog,
/* move the dialog out of the way, so the grey square doesn't cover it */
widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "dialog_calibrate"));
- gtk_window_get_position (GTK_WINDOW (widget), &x, &y);
- egg_debug ("currently at %i,%i, moving left", x, y);
- gtk_window_move (GTK_WINDOW (widget), 10, y);
+ if (calibrate_dialog->priv->move_window) {
+ gtk_window_get_position (GTK_WINDOW (widget), &x, &y);
+ egg_debug ("currently at %i,%i, moving left", x, y);
+ gtk_window_move (GTK_WINDOW (widget), 10, y);
+ }
gtk_widget_show (widget);
}
@@ -403,14 +406,23 @@ gcm_calibrate_dialog_set_show_expander (GcmCalibrateDialog *calibrate_dialog, gb
}
/**
+ * gcm_calibrate_dialog_set_move_window:
+ **/
+void
+gcm_calibrate_dialog_set_move_window (GcmCalibrateDialog *calibrate_dialog, gboolean move_window)
+{
+ calibrate_dialog->priv->move_window = move_window;
+}
+
+/**
* gcm_calibrate_dialog_delete_event_cb:
**/
-//static gboolean
-//gcm_calibrate_dialog_delete_event_cb (GtkWidget *widget, GdkEvent *event, GcmCalibrateArgyll *calibrate_argyll)
-//{
-// gcm_calibrate_dialog_cancel_cb (widget, calibrate_argyll);
-// return FALSE;
-//}
+static gboolean
+gcm_calibrate_dialog_delete_event_cb (GtkWidget *widget, GdkEvent *event, GcmCalibrateDialog *calibrate_dialog)
+{
+ gcm_calibrate_dialog_emit_response (calibrate_dialog, GTK_RESPONSE_CANCEL);
+ return FALSE;
+}
/**
* gcm_calibrate_dialog_reference_kind_to_thumbnail_image_filename:
@@ -626,6 +638,7 @@ gcm_calibrate_dialog_init (GcmCalibrateDialog *calibrate_dialog)
calibrate_dialog->priv->device_kind = GCM_CALIBRATE_DEVICE_KIND_UNKNOWN;
calibrate_dialog->priv->reference_kind = GCM_CALIBRATE_REFERENCE_KIND_UNKNOWN;
+ calibrate_dialog->priv->move_window = FALSE;
calibrate_dialog->priv->loop = g_main_loop_new (NULL, FALSE);
calibrate_dialog->priv->cached_dialogs = g_ptr_array_new_with_free_func ((GDestroyNotify)gcm_calibrate_dialog_dialog_free);
@@ -637,6 +650,9 @@ gcm_calibrate_dialog_init (GcmCalibrateDialog *calibrate_dialog)
g_error_free (error);
}
+ widget = GTK_WIDGET (gtk_builder_get_object (calibrate_dialog->priv->builder, "dialog_calibrate"));
+ g_signal_connect (widget, "delete_event",
+ G_CALLBACK (gcm_calibrate_dialog_delete_event_cb), calibrate_dialog);
widget = GTK_WIDGET (gtk_builder_get_object (calibrate_dialog->priv->builder, "button_lcd"));
g_signal_connect (widget, "clicked",
G_CALLBACK (gcm_calibrate_dialog_button_clicked_lcd_cb), calibrate_dialog);
@@ -659,9 +675,6 @@ gcm_calibrate_dialog_init (GcmCalibrateDialog *calibrate_dialog)
gcm_calibrate_dialog_setup_combo_simple_text (widget);
g_signal_connect (widget, "changed", G_CALLBACK (gcm_calibrate_dialog_reference_kind_combobox_cb), calibrate_dialog);
-// g_signal_connect (main_window, "delete_event",
-// G_CALLBACK (gcm_calibrate_dialog_delete_event_cb), calibrate_argyll);
-
/* add the list of charts */
for (i = 0; i < GCM_CALIBRATE_REFERENCE_KIND_UNKNOWN; i++) {
gtk_combo_box_append_text (GTK_COMBO_BOX (widget),
diff --git a/src/gcm-calibrate-dialog.h b/src/gcm-calibrate-dialog.h
index 63b53db..136a833 100644
--- a/src/gcm-calibrate-dialog.h
+++ b/src/gcm-calibrate-dialog.h
@@ -70,6 +70,8 @@ void gcm_calibrate_dialog_show (GcmCalibrateDialog *calibrate_dialog,
GcmCalibrateDialogTab tab,
const gchar *title,
const gchar *message);
+void gcm_calibrate_dialog_set_move_window (GcmCalibrateDialog *calibrate_dialog,
+ gboolean move_window);
void gcm_calibrate_dialog_set_show_expander (GcmCalibrateDialog *calibrate_dialog,
gboolean visible);
void gcm_calibrate_dialog_set_show_button_ok (GcmCalibrateDialog *calibrate_dialog,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]