Example #1
0
static gboolean
on_window_state_event (GtkWidget *widget, GdkEvent *event, gpointer user_data)
{
	if (event->type == GDK_WINDOW_STATE) {
		GdkWindowState changed = ((GdkEventWindowState*)event)->changed_mask, state = ((GdkEventWindowState*)event)->new_window_state;

		if (changed == GDK_WINDOW_STATE_MAXIMIZED && !(state & GDK_WINDOW_STATE_WITHDRAWN)) {
			if (state & GDK_WINDOW_STATE_MAXIMIZED)
				conf_set_bool_value (LAST_WINDOW_MAXIMIZED, TRUE);
			else
				conf_set_bool_value (LAST_WINDOW_MAXIMIZED, FALSE);
		}
		if (state & GDK_WINDOW_STATE_ICONIFIED)
			conf_set_int_value (LAST_WINDOW_STATE, MAINWINDOW_ICONIFIED);
		else if(state & GDK_WINDOW_STATE_WITHDRAWN)
			conf_set_int_value (LAST_WINDOW_STATE, MAINWINDOW_HIDDEN);
		else
			conf_set_int_value (LAST_WINDOW_STATE, MAINWINDOW_SHOWN);
	}

	if ((event->window_state.new_window_state & GDK_WINDOW_STATE_FULLSCREEN) == 0)
		shell->priv->fullscreen = TRUE;
	else
		shell->priv->fullscreen = FALSE;

	return FALSE;
}
Example #2
0
static void
on_browser_place_changed (GtkComboBox *optionmenu, gpointer user_data)
{
    int num = gtk_combo_box_get_active (optionmenu);

    conf_set_int_value (BROWSER_PLACE, num);
}
Example #3
0
ItemView *
itemview_create (GtkWidget *window)
{
	gint zoom;

	/* 1. Create widgets, load preferences */
	
	g_object_new (ITEMVIEW_TYPE, NULL);
	
	itemview->priv->currentLayoutMode = NODE_VIEW_MODE_INVALID;
	itemview->priv->itemListView = item_list_view_create (window);
	itemview->priv->itemListViewContainer = gtk_widget_get_parent (GTK_WIDGET (item_list_view_get_widget (itemview->priv->itemListView)));
	conf_get_int_value (LAST_ZOOMLEVEL, &zoom);
	
	if (zoom == 0) {
		zoom = 100;
		conf_set_int_value (LAST_ZOOMLEVEL, zoom);
	}
	itemview->priv->zoom = zoom;
	
	/* initially we pack the item list in the normal view pane,
	   which is later changed in itemview_set_layout() */
	gtk_container_add (GTK_CONTAINER (liferea_shell_lookup ("normalViewItems")), itemview->priv->itemListViewContainer);

	/* 2. Prepare HTML rendering */
	htmlview_init ();
	
	return itemview;
}
Example #4
0
void
on_itemCountBtn_value_changed (GtkSpinButton *spinbutton, gpointer user_data)
{
    GtkAdjustment	*itemCount;

    itemCount = gtk_spin_button_get_adjustment (spinbutton);
    conf_set_int_value (DEFAULT_MAX_ITEMS, gtk_adjustment_get_value (itemCount));
}
Example #5
0
static void
liferea_shell_save_position (void)
{
	GtkWidget	*pane;
	gint		x, y, w, h;
	gboolean	last_window_maximized;

	/* save pane proportions */
	pane = liferea_shell_lookup ("leftpane");
	if (pane) {
		x = gtk_paned_get_position (GTK_PANED (pane));
		conf_set_int_value (LAST_VPANE_POS, x);
	}

	pane = liferea_shell_lookup ("normalViewPane");
	if (pane) {
		y = gtk_paned_get_position (GTK_PANED (pane));
		conf_set_int_value (LAST_HPANE_POS, y);
	}

	pane = liferea_shell_lookup ("wideViewPane");
	if (pane) {
		y = gtk_paned_get_position (GTK_PANED (pane));
		conf_set_int_value (LAST_WPANE_POS, y);
	}
	
	/* The following needs to be skipped when the window is not visible */
	if (!gtk_widget_get_visible (GTK_WIDGET (shell->priv->window)))
		return;

	conf_get_bool_value (LAST_WINDOW_MAXIMIZED, &last_window_maximized);

	if (last_window_maximized)
		return;

	gtk_window_get_position (shell->priv->window, &x, &y);
	gtk_window_get_size (shell->priv->window, &w, &h);

	if (x+w<0 || y+h<0 ||
	    x > gdk_screen_width () ||
	    y > gdk_screen_height ())
		return;

	debug4 (DEBUG_GUI, "Saving window size and position: %dx%d %d:%d", w, h, x, y);

	/* save window position */
	conf_set_int_value (LAST_WINDOW_X, x);
	conf_set_int_value (LAST_WINDOW_Y, y);

	/* save window size */
	conf_set_int_value (LAST_WINDOW_WIDTH, w);
	conf_set_int_value (LAST_WINDOW_HEIGHT, h);
}
Example #6
0
void
on_default_update_interval_value_changed (GtkSpinButton *spinbutton, gpointer user_data)
{
    gint			updateInterval, intervalUnit;
    GtkWidget		*unitWidget, *valueWidget;

    unitWidget = liferea_dialog_lookup (prefdialog->priv->dialog, "globalRefreshIntervalUnitComboBox");
    valueWidget = liferea_dialog_lookup (prefdialog->priv->dialog, "globalRefreshIntervalSpinButton");
    intervalUnit = gtk_combo_box_get_active (GTK_COMBO_BOX (unitWidget));
    updateInterval = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (valueWidget));

    if (intervalUnit == 1)
        updateInterval *= 60;		/* hours */
    else if (intervalUnit == 2)
        updateInterval *= 1440;		/* days */

    conf_set_int_value (DEFAULT_UPDATE_INTERVAL, updateInterval);
}
Example #7
0
static void
itemview_finalize (GObject *object)
{
	ItemViewPrivate *priv = ITEMVIEW_GET_PRIVATE (object);

	if (priv->htmlview) {
		/* save zoom preferences */
		conf_set_int_value (LAST_ZOOMLEVEL, (gint)(100.* liferea_htmlview_get_zoom (priv->htmlview)));

		g_object_unref (priv->htmlview);
	}
	
	if (priv->enclosureView)
		g_object_unref (priv->enclosureView);
	if (priv->itemListView)
		g_object_unref (priv->itemListView);

	G_OBJECT_CLASS (parent_class)->finalize (object);
}
Example #8
0
ItemView *
itemview_create (GtkWidget *window)
{
	gint zoom;

	g_object_new (ITEMVIEW_TYPE, NULL);

	/* 1. Load preferences */
	conf_get_int_value (LAST_ZOOMLEVEL, &zoom);
	if (zoom == 0) {
		zoom = 100;
		conf_set_int_value (LAST_ZOOMLEVEL, zoom);
	}
	itemview->priv->zoom = zoom;

	/* 2. Set initial layout (because no node selected yet) */
	itemview_set_layout (NODE_VIEW_MODE_WIDE);
	
	return itemview;
}
Example #9
0
static void
on_enclosure_download_tool_changed (gpointer user_data)
{
    conf_set_int_value (DOWNLOAD_TOOL, gtk_combo_box_get_active (GTK_COMBO_BOX (user_data)));
}
Example #10
0
static void
on_default_view_mode_changed (gpointer user_data)
{
    conf_set_int_value (DEFAULT_VIEW_MODE, gtk_combo_box_get_active (GTK_COMBO_BOX (user_data)));
}
Example #11
0
static void
on_skim_key_changed (gpointer user_data)
{
    conf_set_int_value (BROWSE_KEY_SETTING, gtk_combo_box_get_active (GTK_COMBO_BOX (user_data)));
}
Example #12
0
static void
on_proxyportentry_changed (GtkEditable *editable, gpointer user_data)
{
    conf_set_int_value (PROXY_PORT, atoi (gtk_editable_get_chars (editable,0,-1)));
}
Example #13
0
static void
on_manualProxy_clicked (GtkButton *button, gpointer user_data)
{
    conf_set_int_value (PROXY_DETECT_MODE, 2);
    gtk_widget_set_sensitive (GTK_WIDGET (liferea_dialog_lookup (prefdialog->priv->dialog, "proxybox")), TRUE);
}
Example #14
0
void
on_startupactionbtn_toggled (GtkButton *button, gpointer user_data)
{
    gboolean enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button));
    conf_set_int_value (STARTUP_FEED_ACTION, enabled?0:1);
}
Example #15
0
void
on_folderdisplaybtn_toggled (GtkToggleButton *togglebutton, gpointer user_data)
{
    gboolean enabled = gtk_toggle_button_get_active(togglebutton);
    conf_set_int_value(FOLDER_DISPLAY_MODE, (TRUE == enabled)?1:0);
}