[Xfce4-commits] [apps/xfce4-screensaver] 338/425: Tidy up xfce-desktop-utils.{c, h}

noreply at xfce.org noreply at xfce.org
Mon Oct 15 01:53:05 CEST 2018


This is an automated email from the git hooks/post-receive script.

b   l   u   e   s   a   b   r   e       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       m   a   s   t   e   r   
   in repository apps/xfce4-screensaver.

commit 5b4efdd19fb242946a78ba49f5224f0c65527a80
Author: Sean Davis <smd.seandavis at gmail.com>
Date:   Mon Oct 1 22:05:38 2018 -0400

    Tidy up xfce-desktop-utils.{c,h}
---
 src/xfce-desktop-utils.c | 370 -----------------------------------------------
 src/xfce-desktop-utils.h |  13 --
 2 files changed, 383 deletions(-)

diff --git a/src/xfce-desktop-utils.c b/src/xfce-desktop-utils.c
index b5269c3..483f34f 100644
--- a/src/xfce-desktop-utils.c
+++ b/src/xfce-desktop-utils.c
@@ -36,145 +36,6 @@
 
 #include "private.h"
 
-static void
-gtk_style_shade (GdkRGBA *a,
-                 GdkRGBA *b,
-                 gdouble  k);
-
-static void
-rgb_to_hls (gdouble *r,
-            gdouble *g,
-            gdouble *b);
-
-static void
-hls_to_rgb (gdouble *h,
-            gdouble *l,
-            gdouble *s);
-
-/**
- * xfce_desktop_prepend_terminal_to_vector:
- * @argc: a pointer to the vector size
- * @argv: a pointer to the vector
- *
- * Prepends a terminal (either the one configured as default in the user's
- * MATE setup, or one of the common xterm emulators) to the passed in vector,
- * modifying it in the process.  The vector should be allocated with #g_malloc,
- * as this will #g_free the original vector.  Also all elements must have been
- * allocated separately.  That is the standard glib/MATE way of doing vectors
- * however.  If the integer that @argc points to is negative, the size will
- * first be computed.  Also note that passing in pointers to a vector that is
- * empty, will just create a new vector for you.
- **/
-void
-xfce_desktop_prepend_terminal_to_vector (int *argc, char ***argv)
-{
-        char **real_argv;
-        int real_argc;
-        int i, j;
-	char **term_argv = NULL;
-	int term_argc = 0;
-	GSettings *settings;
-
-	gchar *terminal = NULL;
-
-	char **the_argv;
-
-        g_return_if_fail (argc != NULL);
-        g_return_if_fail (argv != NULL);
-
-        _mate_desktop_init_i18n ();
-
-	/* sanity */
-        if(*argv == NULL)
-                *argc = 0;
-
-	the_argv = *argv;
-
-	/* compute size if not given */
-	if (*argc < 0) {
-		for (i = 0; the_argv[i] != NULL; i++)
-			;
-		*argc = i;
-	}
-
-	settings = g_settings_new ("org.mate.applications-terminal");
-	terminal = g_settings_get_string (settings, "exec");
-
-	if (terminal) {
-		gchar *command_line;
-		gchar *exec_flag;
-		exec_flag = g_settings_get_string (settings, "exec-arg");
-
-		if (exec_flag == NULL)
-			command_line = g_strdup (terminal);
-		else
-			command_line = g_strdup_printf ("%s %s", terminal,
-							exec_flag);
-
-		g_shell_parse_argv (command_line,
-				    &term_argc,
-				    &term_argv,
-				    NULL /* error */);
-
-		g_free (command_line);
-		g_free (exec_flag);
-		g_free (terminal);
-	}
-	g_object_unref (settings);
-
-	if (term_argv == NULL) {
-		char *check;
-
-		term_argc = 2;
-		term_argv = g_new0 (char *, 3);
-
-		check = g_find_program_in_path ("mate-terminal");
-		if (check != NULL) {
-			term_argv[0] = check;
-			/* Note that mate-terminal takes -x and
-			 * as -e in mate-terminal is broken we use that. */
-			term_argv[1] = g_strdup ("-x");
-		} else {
-			if (check == NULL)
-				check = g_find_program_in_path ("nxterm");
-			if (check == NULL)
-				check = g_find_program_in_path ("color-xterm");
-			if (check == NULL)
-				check = g_find_program_in_path ("rxvt");
-			if (check == NULL)
-				check = g_find_program_in_path ("xterm");
-			if (check == NULL)
-				check = g_find_program_in_path ("dtterm");
-			if (check == NULL) {
-				g_warning (_("Cannot find a terminal, using "
-					     "xterm, even if it may not work"));
-				check = g_strdup ("xterm");
-			}
-			term_argv[0] = check;
-			term_argv[1] = g_strdup ("-e");
-		}
-	}
-
-        real_argc = term_argc + *argc;
-        real_argv = g_new (char *, real_argc + 1);
-
-        for (i = 0; i < term_argc; i++)
-                real_argv[i] = term_argv[i];
-
-        for (j = 0; j < *argc; j++, i++)
-                real_argv[i] = (char *)the_argv[j];
-
-	real_argv[i] = NULL;
-
-	g_free (*argv);
-	*argv = real_argv;
-	*argc = real_argc;
-
-	/* we use g_free here as we sucked all the inner strings
-	 * out from it into real_argv */
-	g_free (term_argv);
-}
-
 /**
  * xfce_gdk_spawn_command_line_on_screen:
  * @screen: a GdkScreen
@@ -227,234 +88,3 @@ _mate_desktop_init_i18n (void) {
 		initialized = TRUE;
 	}
 }
-
-/**
- * gtk_style_shade:
- * @a:  the starting colour
- * @b:  [out] the resulting colour
- * @k:  amount to scale lightness and saturation by
- *
- * Takes a colour "a", scales the lightness and saturation by a certain amount,
- * and sets "b" to the resulting colour.
- * gtkstyle.c cut-and-pastage.
- */
-static void
-gtk_style_shade (GdkRGBA *a,
-                 GdkRGBA *b,
-                 gdouble  k)
-{
-	gdouble red;
-	gdouble green;
-	gdouble blue;
-
-	red = a->red;
-	green = a->green;
-	blue = a->blue;
-
-	rgb_to_hls (&red, &green, &blue);
-
-	green *= k;
-	if (green > 1.0)
-		green = 1.0;
-	else if (green < 0.0)
-		green = 0.0;
-
-	blue *= k;
-	if (blue > 1.0)
-		blue = 1.0;
-	else if (blue < 0.0)
-		blue = 0.0;
-
-	hls_to_rgb (&red, &green, &blue);
-
-	b->red = red;
-	b->green = green;
-	b->blue = blue;
-}
-
-/**
- * rgb_to_hls:
- * @r:  on input, red; on output, hue
- * @g:  on input, green; on output, lightness
- * @b:  on input, blue; on output, saturation
- *
- * Converts a red/green/blue triplet to a hue/lightness/saturation triplet.
- */
-static void
-rgb_to_hls (gdouble *r,
-            gdouble *g,
-            gdouble *b)
-{
-	gdouble min;
-	gdouble max;
-	gdouble red;
-	gdouble green;
-	gdouble blue;
-	gdouble h, l, s;
-	gdouble delta;
-
-	red = *r;
-	green = *g;
-	blue = *b;
-
-	if (red > green)
-	{
-		if (red > blue)
-			max = red;
-		else
-			max = blue;
-
-		if (green < blue)
-			min = green;
-		else
-			min = blue;
-	}
-	else
-	{
-		if (green > blue)
-			max = green;
-		else
-			max = blue;
-
-		if (red < blue)
-			min = red;
-		else
-			min = blue;
-	}
-
-	l = (max + min) / 2;
-	s = 0;
-	h = 0;
-
-	if (max != min)
-	{
-		if (l <= 0.5)
-			s = (max - min) / (max + min);
-		else
-			s = (max - min) / (2 - max - min);
-
-		delta = max -min;
-		if (red == max)
-			h = (green - blue) / delta;
-		else if (green == max)
-			h = 2 + (blue - red) / delta;
-		else if (blue == max)
-			h = 4 + (red - green) / delta;
-
-		h *= 60;
-		if (h < 0.0)
-			h += 360;
-	}
-
-	*r = h;
-	*g = l;
-	*b = s;
-}
-
-/**
- * hls_to_rgb:
- * @h: on input, hue; on output, red
- * @l: on input, lightness; on output, green
- * @s  on input, saturation; on output, blue
- *
- * Converts a hue/lightness/saturation triplet to a red/green/blue triplet.
- */
-static void
-hls_to_rgb (gdouble *h,
-            gdouble *l,
-            gdouble *s)
-{
-	gdouble hue;
-	gdouble lightness;
-	gdouble saturation;
-	gdouble m1, m2;
-	gdouble r, g, b;
-
-	lightness = *l;
-	saturation = *s;
-
-	if (lightness <= 0.5)
-		m2 = lightness * (1 + saturation);
-	else
-		m2 = lightness + saturation - lightness * saturation;
-	m1 = 2 * lightness - m2;
-
-	if (saturation == 0)
-	{
-		*h = lightness;
-		*l = lightness;
-		*s = lightness;
-	}
-	else
-	{
-		hue = *h + 120;
-		while (hue > 360)
-			hue -= 360;
-		while (hue < 0)
-			hue += 360;
-
-		if (hue < 60)
-			r = m1 + (m2 - m1) * hue / 60;
-		else if (hue < 180)
-			r = m2;
-		else if (hue < 240)
-			r = m1 + (m2 - m1) * (240 - hue) / 60;
-		else
-			r = m1;
-
-		hue = *h;
-		while (hue > 360)
-			hue -= 360;
-		while (hue < 0)
-			hue += 360;
-
-		if (hue < 60)
-			g = m1 + (m2 - m1) * hue / 60;
-		else if (hue < 180)
-			g = m2;
-		else if (hue < 240)
-			g = m1 + (m2 - m1) * (240 - hue) / 60;
-		else
-			g = m1;
-
-		hue = *h - 120;
-		while (hue > 360)
-			hue -= 360;
-		while (hue < 0)
-			hue += 360;
-
-		if (hue < 60)
-			b = m1 + (m2 - m1) * hue / 60;
-		else if (hue < 180)
-			b = m2;
-		else if (hue < 240)
-			b = m1 + (m2 - m1) * (240 - hue) / 60;
-		else
-			b = m1;
-
-		*h = r;
-		*l = g;
-		*s = b;
-	}
-}
-
-/* Based on set_color() in gtkstyle.c */
-#define LIGHTNESS_MULT 1.3
-#define DARKNESS_MULT  0.7
-void
-xfce_desktop_gtk_style_get_light_color (GtkStyleContext *style,
-                                        GtkStateFlags    state,
-                                        GdkRGBA         *color)
-{
-	gtk_style_context_get_background_color (style, state, color);
-	gtk_style_shade (color, color, LIGHTNESS_MULT);
-}
-
-void
-xfce_desktop_gtk_style_get_dark_color (GtkStyleContext *style,
-                                       GtkStateFlags    state,
-                                       GdkRGBA         *color)
-{
-	gtk_style_context_get_background_color (style, state, color);
-	gtk_style_shade (color, color, DARKNESS_MULT);
-}
diff --git a/src/xfce-desktop-utils.h b/src/xfce-desktop-utils.h
index 7ac7394..f4ccd17 100644
--- a/src/xfce-desktop-utils.h
+++ b/src/xfce-desktop-utils.h
@@ -33,22 +33,9 @@
 
 G_BEGIN_DECLS
 
-/* prepend the terminal command to a vector */
-void xfce_desktop_prepend_terminal_to_vector (int *argc, char ***argv);
-
 /* replace gdk_spawn_command_line_on_screen, not available in GTK3 */
 gboolean xfce_gdk_spawn_command_line_on_screen (GdkScreen *screen, const gchar *command, GError **error);
 
-void
-xfce_desktop_gtk_style_get_light_color (GtkStyleContext *style,
-                                        GtkStateFlags    state,
-                                        GdkRGBA         *color);
-
-void
-xfce_desktop_gtk_style_get_dark_color (GtkStyleContext *style,
-                                       GtkStateFlags    state,
-                                       GdkRGBA         *color);
-
 G_END_DECLS
 
 #endif /* XFCE_DESKTOP_UTILS_H */

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list