patches/metacity-10-trusted-extensions.diff
author dcarbery
Fri, 24 Nov 2006 16:37:59 +0000
branch217update
changeset 19096 d542fc2c823e
parent 19085 99c383b79d0f
child 8895 19ba17ae3367
permissions -rw-r--r--
Merged trunk changes r9797:9829 into 217update branch.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
     1
diff -Nrup metacity-2.16.3/config.h.in ../SUNWgnome-wm-2.16.1/metacity-2.16.3/config.h.in
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
     2
--- metacity-2.16.3/config.h.in	2006-11-02 13:18:51.283813000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
     3
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/config.h.in	2006-11-02 13:21:03.744380000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     4
@@ -78,12 +78,18 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     5
 /* Define to 1 if you have the <sys/stat.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     6
 #undef HAVE_SYS_STAT_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     7
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     8
+/* Define to 1 if you have the <sys/tsol/label_macro.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
     9
+#undef HAVE_SYS_TSOL_LABEL_MACRO_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    10
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    11
 /* Define to 1 if you have the <sys/types.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    12
 #undef HAVE_SYS_TYPES_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    13
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    14
 /* Define to 1 if you have the <unistd.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    15
 #undef HAVE_UNISTD_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    16
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    17
+/* Define to 1 if you have the <X11/extensions/Xtsol.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    18
+#undef HAVE_X11_EXTENSIONS_XTSOL_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    19
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    20
 /* Define to 1 if you have the <X11/SM/SMlib.h> header file. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    21
 #undef HAVE_X11_SM_SMLIB_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    22
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    23
@@ -102,6 +108,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    24
 /* Have the Xsync extension library */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    25
 #undef HAVE_XSYNC
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    26
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    27
+/* Building with XTSOL support */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    28
+#undef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    29
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    30
 /* Name of package */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    31
 #undef PACKAGE
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    32
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    33
diff -Nrup metacity-2.16.3/configure.in ../SUNWgnome-wm-2.16.1/metacity-2.16.3/configure.in
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    34
--- metacity-2.16.3/configure.in	2006-11-02 13:18:51.279604000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    35
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/configure.in	2006-11-02 13:21:03.746104000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    36
@@ -339,6 +339,19 @@ if test "${try_xinerama}" != no; then
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    37
 fi
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    38
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    39
 CPPFLAGS="$metacity_save_cppflags"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    40
+### tsol ans Xtsol libraries
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    41
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    42
+found_xtsol=no
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    43
+case "$host" in
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    44
+    *-*-solaris*)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    45
+        AC_CHECK_HEADERS(X11/extensions/Xtsol.h sys/tsol/label_macro.h,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    46
+			 AC_DEFINE(HAVE_XTSOL, ,[Building with XTSOL support]) found_xtsol=yes,)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    47
+        ;;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    48
+    *)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    49
+        ;;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    50
+esac
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    51
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    52
+AM_CONDITIONAL(XTSOL_DEFINED, test x$found_xtsol = xyes)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    53
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    54
 SHAPE_LIBS=
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    55
 found_shape=no
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    56
diff -Nrup metacity-2.16.3/src/Makefile.am ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/Makefile.am
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    57
--- metacity-2.16.3/src/Makefile.am	2006-11-02 13:18:50.417123000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    58
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/Makefile.am	2006-11-02 14:10:51.786071000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    59
@@ -4,7 +4,7 @@ SUBDIRS=wm-tester tools themes
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    60
 
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    61
 INCLUDES=@METACITY_CFLAGS@ -DMETACITY_LIBEXECDIR=\"$(libexecdir)\" -DHOST_ALIAS=\"@HOST_ALIAS@\" -DMETACITY_LOCALEDIR=\"$(prefix)/@DATADIRNAME@/locale\" -DMETACITY_PKGDATADIR=\"$(pkgdatadir)\" -DMETACITY_DATADIR=\"$(datadir)\" -DG_LOG_DOMAIN=\"metacity\" -DSN_API_NOT_YET_FROZEN=1
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    62
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    63
-metacity_SOURCES= 				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    64
+SOURCEFILES=					\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    65
 	async-getprop.c				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    66
 	async-getprop.h				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    67
 	bell.h					\
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    68
@@ -82,6 +82,9 @@ metacity_SOURCES= 				\
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    69
 	theme-parser.h				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    70
 	themewidget.c				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    71
 	themewidget.h				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    72
+	trusted.h				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    73
+	trusted.c				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    74
+	trusted-pics.h				\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    75
 	ui.c					\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    76
 	ui.h					\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    77
 	util.c					\
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    78
@@ -95,23 +98,16 @@ metacity_SOURCES= 				\
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    79
 	xprops.c				\
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    80
 	xprops.h
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    81
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    82
+metacity_SOURCES= $(SOURCEFILES)
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    83
+metacity_CFLAGS = $(AM_CFLAGS)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    84
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    85
 # by setting libmetacity_private_la_CFLAGS, the files shared with
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    86
 # metacity proper will be compiled with different names.
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    87
 libmetacity_private_la_CFLAGS =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    88
 libmetacity_private_la_SOURCES=	\
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    89
-	boxes.c			\
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
    90
-	boxes.h			\
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    91
-	gradient.c		\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    92
-	gradient.h		\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    93
 	preview-widget.c	\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    94
 	preview-widget.h	\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    95
-	theme.c			\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    96
-	theme.h			\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    97
-	theme-parser.c		\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    98
-	theme-parser.h		\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
    99
-	util.c			\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   100
-	util.h			\
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   101
-	common.h
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   102
+	$(SOURCEFILES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   103
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   104
 libmetacity_private_la_LDFLAGS = -no-undefined
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   105
 libmetacity_private_la_LIBADD  = @METACITY_LIBS@
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   106
diff -Nrup metacity-2.16.3/src/display.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/display.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   107
--- metacity-2.16.3/src/display.c	2006-11-02 13:18:50.435094000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   108
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/display.c	2006-11-02 13:21:03.758620000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   109
@@ -64,6 +64,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   110
 #include <X11/Xcursor/Xcursor.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   111
 #endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   112
 #include <string.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   113
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   114
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   115
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   116
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   117
 #define GRAB_OP_IS_WINDOW_SWITCH(g)                     \
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   118
         (g == META_GRAB_OP_KEYBOARD_TABBING_NORMAL  ||  \
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   119
@@ -331,7 +334,10 @@ meta_display_open (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   120
     "_NET_DESKTOP_VIEWPORT",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   121
     "_METACITY_VERSION",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   122
     "_NET_WM_VISIBLE_NAME",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   123
-    "_NET_WM_VISIBLE_ICON_NAME"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   124
+    "_NET_WM_VISIBLE_ICON_NAME",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   125
+    "_NET_DESKTOP_ROLES",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   126
+    "_NET_TRUSTED_ACTIVE_WINDOW",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   127
+    "_NET_DESKTOP_LABELS"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   128
   };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   129
   Atom atoms[G_N_ELEMENTS(atom_names)];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   130
   
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   131
@@ -489,6 +495,11 @@ meta_display_open (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   132
   display->atom_metacity_version = atoms[91];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   133
   display->atom_net_wm_visible_name = atoms[92];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   134
   display->atom_net_wm_visible_icon_name = atoms[93];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   135
+  display->atom_net_desktop_roles = atoms[94];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   136
+  display->atom_net_trusted_active_window = atoms[95];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   137
+  display->atom_net_desktop_labels = atoms[96];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   138
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   139
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   140
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   141
   display->prop_hooks = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   142
   meta_display_init_window_prop_hooks (display);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   143
@@ -510,6 +521,10 @@ meta_display_open (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   144
   display->screens = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   145
   display->active_screen = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   146
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   147
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   148
+  display->labels = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   149
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   150
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   151
 #ifdef HAVE_STARTUP_NOTIFICATION
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   152
   display->sn_display = sn_display_new (display->xdisplay,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   153
                                         sn_error_trap_push,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   154
@@ -1811,7 +1826,10 @@ event_callback (XEvent   *event,
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   155
         meta_window_handle_mouse_grab_op_event (window, event);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   156
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   157
     case EnterNotify:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   158
-      if (display->grab_window == window &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   159
+ #ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   160
+       tsol_trusted_stripe_atom_update (display, window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   161
+ #endif	
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   162
+       if (display->grab_window == window &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   163
           event->xany.serial >= display->grab_start_serial &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   164
           grab_op_is_mouse (display->grab_op))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   165
         {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   166
@@ -1905,6 +1923,9 @@ event_callback (XEvent   *event,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   167
         }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   168
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   169
     case LeaveNotify:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   170
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   171
+      tsol_trusted_stripe_atom_update (display, window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   172
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   173
       if (display->grab_window == window &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   174
           event->xany.serial >= display->grab_start_serial &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   175
           grab_op_is_mouse (display->grab_op))
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   176
@@ -2185,6 +2206,14 @@ event_callback (XEvent   *event,
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   177
             else if (event->xproperty.atom ==
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   178
                      display->atom_net_desktop_names)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   179
               meta_screen_update_workspace_names (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   180
+ #ifdef HAVE_XTSOL	    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   181
+             else if (event->xproperty.atom ==
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   182
+                      display->atom_net_desktop_labels)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   183
+               tsol_workspace_labels_gconf_update (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   184
+             else if (event->xproperty.atom ==
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   185
+                      display->atom_net_desktop_roles)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   186
+               tsol_workspace_roles_gconf_update (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   187
+ #endif /*HAVE_XTSOL */	  	    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   188
 #if 0
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   189
             else if (event->xproperty.atom ==
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   190
                      display->atom_net_restack_window)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   191
diff -Nrup metacity-2.16.3/src/display.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/display.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   192
--- metacity-2.16.3/src/display.h	2006-11-02 13:18:50.435594000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   193
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/display.h	2006-11-02 13:21:03.761557000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   194
@@ -178,6 +178,9 @@ struct _MetaDisplay
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   195
   Atom atom_metacity_version;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   196
   Atom atom_net_wm_visible_name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   197
   Atom atom_net_wm_visible_icon_name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   198
+  Atom atom_net_desktop_roles;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   199
+  Atom atom_net_trusted_active_window;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   200
+  Atom atom_net_desktop_labels;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   201
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   202
   /* This is the actual window from focus events,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   203
    * not the one we last set
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   204
@@ -219,6 +222,9 @@ struct _MetaDisplay
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   205
   guint error_trap_synced_at_last_pop : 1;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   206
   MetaEventQueue *events;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   207
   GSList *screens;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   208
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   209
+  GSList *labels;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   210
+#endif    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   211
   MetaScreen *active_screen;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   212
   GHashTable *window_ids;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   213
   int error_traps;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   214
diff -Nrup metacity-2.16.3/src/frame.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frame.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   215
--- metacity-2.16.3/src/frame.c	2006-11-02 13:18:50.441652000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   216
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frame.c	2006-11-02 13:21:03.763300000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   217
@@ -26,6 +26,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   218
 #include "bell.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   219
 #include "errors.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   220
 #include "keybindings.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   221
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   222
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   223
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   224
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   225
 #ifdef HAVE_RENDER
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   226
 #include <X11/extensions/Xrender.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   227
@@ -150,6 +153,17 @@ meta_window_ensure_frame (MetaWindow *wi
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   228
                              window->frame->xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   229
                              window->title);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   230
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   231
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   232
+  /* associate trusted label with the window only if a frame exist */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   233
+  meta_ui_set_frame_label (window->screen->ui,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   234
+			   window->frame->xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   235
+			   tsol_meta_window_label_get (window));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   236
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   237
+  /* make sure the frame window as the same privileges
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   238
+   * "real" window */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   239
+  tsol_set_frame_label (window->display->xdisplay, window->xwindow, window->frame->xwindow);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   240
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   241
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   242
   /* Move keybindings to frame instead of window */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   243
   meta_window_grab_keys (window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   244
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   245
diff -Nrup metacity-2.16.3/src/frame.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frame.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   246
--- metacity-2.16.3/src/frame.h	2006-11-02 13:18:50.442017000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   247
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frame.h	2006-11-02 13:21:03.764262000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   248
@@ -23,17 +23,19 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   249
 #define META_FRAME_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   250
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   251
 #include "window.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   252
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   253
+#include "theme.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   254
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   255
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   256
-typedef struct _MetaFrameGeometry MetaFrameGeometry;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   257
+/*typedef struct _MetaFrameGeometry MetaFrameGeometry; 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   258
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   259
 struct _MetaFrameGeometry
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   260
 {  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   261
-  /* border sizes (space between frame and child) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   262
   int left_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   263
   int right_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   264
   int top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   265
   int bottom_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   266
-};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   267
+};*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   268
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   269
 struct _MetaFrame
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   270
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   271
diff -Nrup metacity-2.16.3/src/frames.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frames.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   272
--- metacity-2.16.3/src/frames.c	2006-11-02 13:18:50.443059000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   273
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frames.c	2006-11-02 13:21:03.768671000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   274
@@ -561,7 +561,7 @@ meta_frames_manage_window (MetaFrames *f
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   275
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   276
   g_assert (window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   277
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   278
-  frame = g_new (MetaUIFrame, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   279
+  frame = g_new0 (MetaUIFrame, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   280
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   281
   frame->window = window;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   282
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   283
@@ -2190,7 +2190,14 @@ meta_frames_paint_to_drawable (MetaFrame
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   284
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   285
   /* Punch out the client area */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   286
   area.x = left;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   287
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   288
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   289
+    area.y = top + top; /*Trusted Frame Layout Modification TFLM*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   290
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   291
+    area.y = top;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   292
+#else  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   293
   area.y = top;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   294
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   295
   area.width = w;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   296
   area.height = h;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   297
   tmp_region = gdk_region_rectangle (&area);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   298
@@ -2217,7 +2224,12 @@ meta_frames_paint_to_drawable (MetaFrame
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   299
                              frame->text_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   300
                              &button_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   301
                              button_states,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   302
-                             mini_icon, icon);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   303
+                             mini_icon, icon
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   304
+#ifdef HAVE_XTSOL			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   305
+			     ,frame->label
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   306
+#endif			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   307
+			     );
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   308
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   309
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   310
       if (GDK_IS_WINDOW (drawable))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   311
         gdk_window_end_paint (drawable);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   312
@@ -2509,3 +2521,26 @@ invalidate_whole_window (MetaFrames *fra
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   313
   gdk_window_invalidate_rect (frame->window, NULL, FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   314
   invalidate_cache (frames, frame);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   315
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   316
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   317
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   318
+void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   319
+meta_frames_set_label (MetaFrames *frames,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   320
+                       Window      xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   321
+                       MetaTrustedLabel *label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   322
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   323
+  GtkWidget *widget;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   324
+  MetaUIFrame *frame;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   325
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   326
+  widget = GTK_WIDGET (frames);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   327
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   328
+  frame = meta_frames_lookup_window (frames, xwindow);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   329
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   330
+  g_assert (frame);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   331
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   332
+  if (frame->label != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   333
+    g_warning ("label should be null");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   334
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   335
+  frame->label = label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   336
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   337
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   338
+
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   339
diff -Nrup metacity-2.16.3/src/frames.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frames.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   340
--- metacity-2.16.3/src/frames.h	2006-11-02 13:18:50.443366000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   341
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/frames.h	2006-11-02 13:21:03.770334000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   342
@@ -26,6 +26,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   343
 #include <gdk/gdkx.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   344
 #include "common.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   345
 #include "theme.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   346
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   347
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   348
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   349
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   350
 typedef enum
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   351
 {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   352
@@ -68,6 +71,9 @@ struct _MetaUIFrame
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   353
   Window xwindow;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   354
   GdkWindow *window;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   355
   MetaFrameStyle *cache_style;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   356
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   357
+  MetaTrustedLabel *label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   358
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   359
   PangoLayout *layout;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   360
   int text_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   361
   char *title; /* NULL once we have a layout */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   362
@@ -151,4 +157,9 @@ Window meta_frames_get_moving_frame (Met
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   363
 void meta_frames_push_delay_exposes (MetaFrames *frames);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   364
 void meta_frames_pop_delay_exposes  (MetaFrames *frames);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   365
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   366
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   367
+void meta_frames_set_label (MetaFrames	     *frames, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   368
+			    Window	      xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   369
+			    MetaTrustedLabel *label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   370
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   371
 #endif
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   372
diff -Nrup metacity-2.16.3/src/keybindings.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/keybindings.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   373
--- metacity-2.16.3/src/keybindings.c	2006-11-02 13:18:50.448923000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   374
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/keybindings.c	2006-11-02 13:21:03.775661000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   375
@@ -42,6 +42,11 @@
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   376
 #include <X11/XKBlib.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   377
 #endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   378
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   379
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   380
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   381
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   382
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   383
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   384
 static gboolean all_bindings_disabled = FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   385
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   386
 typedef void (* MetaKeyHandlerFunc) (MetaDisplay    *display,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   387
@@ -2738,6 +2743,42 @@ meta_spawn_command_line_async_on_screen 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   388
                            error))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   389
     return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   390
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   391
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   392
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   393
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   394
+      GdkDisplay *dpy;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   395
+      Display *xdpy;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   396
+      Window root;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   397
+      Atom atom, utf8_string;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   398
+      gchar* tsol_command =  g_strdup_printf ("%d:%s", 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   399
+					      screen->number,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   400
+					      command_line);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   401
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   402
+      dpy = gdk_display_get_default ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   403
+      xdpy = GDK_DISPLAY_XDISPLAY (dpy);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   404
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   405
+      utf8_string = XInternAtom (xdpy, "UTF8_STRING", FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   406
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   407
+      root = DefaultRootWindow (xdpy);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   408
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   409
+      atom = XInternAtom (xdpy, "_LABEL_EXEC_COMMAND", FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   410
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   411
+      gdk_error_trap_push ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   412
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   413
+      XChangeProperty (xdpy, root, atom, utf8_string, 8, PropModeReplace,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   414
+		       tsol_command, strlen (tsol_command));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   415
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   416
+      XSync (xdpy, False);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   417
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   418
+      gdk_error_trap_pop ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   419
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   420
+      g_free (tsol_command);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   421
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   422
+      retval = TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   423
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   424
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   425
+#endif /* HAVE_XTSOL */	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   426
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   427
   retval = g_spawn_async (NULL,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   428
                           argv,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   429
                           NULL,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   430
@@ -2747,11 +2788,10 @@ meta_spawn_command_line_async_on_screen 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   431
                           NULL,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   432
                           error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   433
   g_strfreev (argv);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   434
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   435
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   436
   return retval;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   437
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   438
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   439
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   440
 static void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   441
 handle_run_command (MetaDisplay    *display,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   442
                     MetaScreen     *screen,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   443
diff -Nrup metacity-2.16.3/src/prefs.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/prefs.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   444
--- metacity-2.16.3/src/prefs.c	2006-11-02 13:18:50.704637000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   445
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/prefs.c	2006-11-02 13:23:36.656857000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   446
@@ -29,6 +29,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   447
 #endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   448
 #include <string.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   449
 #include <stdlib.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   450
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   451
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   452
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   453
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   454
 #define MAX_REASONABLE_WORKSPACES 36
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   455
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   456
@@ -68,6 +71,10 @@
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   457
 #define KEY_LIST_BINDINGS_SUFFIX "_list"
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   458
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   459
 #define KEY_WORKSPACE_NAME_PREFIX "/apps/metacity/workspace_names/name_"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   460
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   461
+#define KEY_WORKSPACE_LABEL_PREFIX "/apps/metacity/workspace_labels/ws_"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   462
+#define KEY_WORKSPACE_ROLE_PREFIX "/apps/metacity/workspace_roles/ws_"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   463
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   464
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   465
 #define KEY_VISUAL_BELL "/apps/metacity/general/visual_bell"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   466
 #define KEY_AUDIBLE_BELL "/apps/metacity/general/audible_bell"
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   467
@@ -128,6 +135,14 @@ static char *commands[MAX_COMMANDS] = { 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   468
 static char *terminal_command = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   469
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   470
 static char *workspace_names[MAX_REASONABLE_WORKSPACES] = { NULL, };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   471
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   472
+/* these are only used for session managements
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   473
+ * workspace_labels are NOT used in metacity as the window label 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   474
+ * is queried directly from the window
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   475
+ * ditto for the workspace_roles*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   476
+static char *workspace_labels[MAX_REASONABLE_WORKSPACES] = { NULL, };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   477
+static char *workspace_roles[MAX_REASONABLE_WORKSPACES] = { NULL, };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   478
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   479
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   480
 #ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   481
 static gboolean update_use_system_font    (gboolean    value);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   482
@@ -175,6 +190,10 @@ static void change_notify (GConfClient  
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   483
                            gpointer        user_data);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   484
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   485
 static char* gconf_key_for_workspace_name (int i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   486
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   487
+static char* gconf_key_for_workspace_label (int i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   488
+static char* gconf_key_for_workspace_role (int i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   489
+#endif /*HAVE_XTSOL*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   490
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   491
 static void queue_changed (MetaPreference  pref);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   492
 #endif /* HAVE_GCONF */
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   493
@@ -195,6 +214,15 @@ static void     init_bindings           
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   494
 static void     init_commands             (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   495
 static void     init_workspace_names      (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   496
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   497
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   498
+static void init_labels_roles_workspaces (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   499
+static gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   500
+update_workspace_property (char **property,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   501
+			   char *error_property_name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   502
+			   const char  *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   503
+			   const char  *value);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   504
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   505
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   506
        
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   507
 typedef struct
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   508
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   509
@@ -536,6 +564,11 @@ meta_prefs_init (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   510
   /* workspace names */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   511
   init_workspace_names ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   512
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   513
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   514
+  /* tsol labels and roles */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   515
+  init_labels_roles_workspaces ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   516
+#endif /* HAVE_XTSOL */  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   517
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   518
 #ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   519
   gconf_client_notify_add (default_client, "/apps/metacity",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   520
                            change_notify,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   521
@@ -923,6 +956,75 @@ change_notify (GConfClient    *client,
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   522
       if (update_workspace_name (key, str))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   523
         queue_changed (META_PREF_WORKSPACE_NAMES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   524
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   525
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   526
+  else if (g_str_has_prefix (key, KEY_WORKSPACE_LABEL_PREFIX))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   527
+   {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   528
+     const char *str;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   529
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   530
+     if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   531
+       goto out;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   532
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   533
+     if (value && value->type != GCONF_VALUE_STRING)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   534
+       {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   535
+         meta_warning (_("GConf key \"%s\" is set to an invalid type\n"),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   536
+                       key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   537
+         goto out;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   538
+       }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   539
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   540
+     str = value ? gconf_value_get_string (value) : NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   541
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   542
+     /* Check if the label is in range if not set it to USER_MIN_SL 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   543
+      * NOTE : if USER_MIN_SL is not properly set you can have an infinite loop here */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   544
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   545
+     if (str && !tsol_label_is_in_user_range (str))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   546
+       {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   547
+	 char *p; /* code from update_workspace_property */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   548
+	 int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   549
+	 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   550
+	 p = strrchr (key, '_');
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   551
+	 if (p != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   552
+	   {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   553
+	     ++p;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   554
+	     if (g_ascii_isdigit (*p))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   555
+	       {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   556
+		 i = atoi (p);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   557
+		 i -= 1; /* count from 0 not 1 */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   558
+		 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   559
+		 if (i >= MAX_REASONABLE_WORKSPACES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   560
+		   {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   561
+		     meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   562
+				 "%s key %d is too highly numbered, ignoring\n", 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   563
+				 "trusted workspace label", i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   564
+		   }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   565
+		 else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   566
+		   meta_prefs_change_workspace_label (i, tsol_label_get_min ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   567
+	       }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   568
+	   }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   569
+       }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   570
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   571
+     if (update_workspace_property (workspace_labels,"Workspace Label", key, str))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   572
+       queue_changed (META_PREF_WORKSPACE_LABELS);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   573
+   }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   574
+  else if (g_str_has_prefix (key, KEY_WORKSPACE_ROLE_PREFIX))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   575
+   {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   576
+     const char *str;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   577
+     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   578
+     if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   579
+       goto out;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   580
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   581
+     if (value && value->type != GCONF_VALUE_STRING)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   582
+       {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   583
+         meta_warning (_("GConf key \"%s\" is set to an invalid type\n"),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   584
+                       key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   585
+         goto out;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   586
+       }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   587
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   588
+     str = value ? gconf_value_get_string (value) : NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   589
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   590
+     if (update_workspace_property (workspace_roles ,"Workspace roles", key, str))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   591
+       queue_changed (META_PREF_WORKSPACE_ROLES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   592
+   }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   593
+#endif /*HAVE_XTSOL*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   594
   else if (strcmp (key, KEY_BUTTON_LAYOUT) == 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   595
     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   596
       const char *str;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   597
@@ -1546,6 +1648,42 @@ update_num_workspaces (int value)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   598
         value = MAX_REASONABLE_WORKSPACES;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   599
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   600
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   601
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   602
+  if (tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   603
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   604
+      if (old > value) /* remove a workspace blank label and role */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   605
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   606
+	  GError *err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   607
+	  char *key = gconf_key_for_workspace_label (value-1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   608
+	  gconf_client_unset (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   609
+			      key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   610
+	  update_workspace_property (workspace_labels,"Workspace Label",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   611
+				     key, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   612
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   613
+	  g_free (key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   614
+	  err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   615
+	  key = gconf_key_for_workspace_role (value-1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   616
+	  gconf_client_unset (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   617
+			      key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   618
+	  update_workspace_property (workspace_roles ,"Workspace roles",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   619
+				     key, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   620
+	  g_free (key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   621
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   622
+      else		   /* add a workspace add default label, blank role */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   623
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   624
+	  GError *err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   625
+	  char *key = gconf_key_for_workspace_role (value-1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   626
+	  gconf_client_unset (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   627
+			      key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   628
+	  update_workspace_property (workspace_roles ,"Workspace roles",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   629
+				     key, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   630
+	  g_free (key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   631
+	  meta_prefs_change_workspace_label (value, tsol_label_get_min ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   632
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   633
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   634
+#endif /* HAVE_XTSOL */  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   635
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   636
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   637
   num_workspaces = value;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   638
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   639
   return old != num_workspaces;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   640
@@ -1795,6 +1933,16 @@ meta_preference_to_string (MetaPreferenc
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   641
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   642
     case META_PREF_COMPOSITING_MANAGER:
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   643
       return "COMPOSITING_MANAGER";
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   644
+
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   645
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   646
+    case META_PREF_WORKSPACE_LABELS:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   647
+      return "WORKSPACE_LABELS";
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   648
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   649
+    case META_PREF_WORKSPACE_ROLES:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   650
+      return "WORKSPACE_ROLES";
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   651
+      break;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   652
+#endif /*HAVE_XTSOL*/     
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   653
+
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   654
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   655
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   656
   return "(unknown)";
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   657
@@ -2150,6 +2298,53 @@ init_commands (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   658
 #endif /* HAVE_GCONF */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   659
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   660
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   661
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   662
+static void init_labels_roles_workspaces (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   663
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   664
+  #ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   665
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   666
+  GError *err;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   667
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   668
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   669
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   670
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   671
+  i = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   672
+  while (i < MAX_REASONABLE_WORKSPACES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   673
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   674
+      char *str_val;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   675
+      char *label_key, *role_key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   676
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   677
+      label_key = gconf_key_for_workspace_label (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   678
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   679
+      err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   680
+      str_val = gconf_client_get_string (default_client, label_key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   681
+      cleanup_error (&err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   682
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   683
+      update_workspace_property (workspace_labels,"Workspace Label",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   684
+				 label_key, str_val);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   685
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   686
+      g_free (str_val);    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   687
+      g_free (label_key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   688
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   689
+      role_key = gconf_key_for_workspace_role (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   690
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   691
+      err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   692
+      str_val = gconf_client_get_string (default_client, role_key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   693
+      cleanup_error (&err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   694
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   695
+      update_workspace_property (workspace_roles ,"Workspace roles",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   696
+				 role_key, str_val);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   697
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   698
+      g_free (str_val);    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   699
+      g_free (role_key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   700
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   701
+      ++i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   702
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   703
+#endif /* HAVE_GCONF */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   704
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   705
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   706
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   707
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   708
 static void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   709
 init_workspace_names (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   710
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   711
@@ -2666,6 +2861,72 @@ meta_prefs_get_gconf_key_for_terminal_co
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   712
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   713
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   714
 #ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   715
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   716
+static gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   717
+update_workspace_property (char **property,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   718
+			   char *error_property_name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   719
+			   const char  *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   720
+			   const char  *value)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   721
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   722
+  char *p;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   723
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   724
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   725
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   726
+    return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   727
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   728
+  p = strrchr (name, '_');
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   729
+  if (p == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   730
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   731
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   732
+                  "%s name %s has no underscore?\n", error_property_name, name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   733
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   734
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   735
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   736
+  ++p;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   737
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   738
+  if (!g_ascii_isdigit (*p))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   739
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   740
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   741
+                  "%s name %s doesn't end in number?\n", 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   742
+		  error_property_name, name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   743
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   744
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   745
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   746
+  i = atoi (p);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   747
+  i -= 1; /* count from 0 not 1 */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   748
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   749
+  if (i >= MAX_REASONABLE_WORKSPACES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   750
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   751
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   752
+                  "%s name %d is too highly numbered, ignoring\n", 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   753
+		  error_property_name, i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   754
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   755
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   756
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   757
+  if (property[i] && value && strcmp (property[i], value) == 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   758
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   759
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   760
+                  "%s name %d is unchanged\n", error_property_name, i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   761
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   762
+    }  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   763
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   764
+  if (value != NULL && *value != '\0')
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   765
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   766
+      g_free (property[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   767
+      property[i] = g_strdup (value);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   768
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   769
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   770
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   771
+      g_free (property[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   772
+      property[i] = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   773
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   774
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   775
+  return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   776
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   777
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   778
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   779
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   780
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   781
 static gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   782
 update_workspace_name (const char  *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   783
                        const char  *value)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   784
@@ -2743,6 +3004,152 @@ update_workspace_name (const char  *name
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   785
   return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   786
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   787
 #endif /* HAVE_GCONF */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   788
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   789
+const char* meta_prefs_get_workspace_label    (int         i)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   790
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   791
+  g_return_val_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   792
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   793
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   794
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   795
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   796
+  return workspace_labels [i];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   797
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   798
+void        
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   799
+meta_prefs_change_workspace_label (int         i,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   800
+				   const char *name)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   801
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   802
+#ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   803
+  char *key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   804
+  GError *err;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   805
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   806
+  g_return_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   807
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   808
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   809
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   810
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   811
+  meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   812
+              "Changing name of workspace_labels %d to %s\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   813
+              i, name ? name : "none");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   814
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   815
+  /* This is a bad hack. We have to treat empty string as
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   816
+   * "unset" because the root window property can't contain
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   817
+   * null. So it gets empty string instead and we don't want
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   818
+   * that to result in setting the empty string as a value that
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   819
+   * overrides "unset".
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   820
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   821
+  if (name && *name == '\0')
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   822
+    name = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   823
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   824
+  if ((name == NULL && workspace_labels [i] == NULL) ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   825
+      (name && workspace_labels[i] && strcmp (name, workspace_labels[i]) == 0))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   826
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   827
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   828
+                  "Workspace label %d already has name %s\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   829
+                  i, name ? name : "none");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   830
+      return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   831
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   832
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   833
+  key = gconf_key_for_workspace_label (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   834
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   835
+  err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   836
+  if (name != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   837
+    gconf_client_set_string (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   838
+                             key, name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   839
+                             &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   840
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   841
+    gconf_client_unset (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   842
+                        key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   843
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   844
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   845
+  if (err)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   846
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   847
+      meta_warning (_("Error setting name for workspace label %d to \"%s\": %s\n"),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   848
+                    i, name ? name : "none",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   849
+                    err->message);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   850
+      g_error_free (err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   851
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   852
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   853
+  update_workspace_property (workspace_labels,"Workspace Label",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   854
+			     key, name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   855
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   856
+  g_free (key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   857
+#endif /* HAVE_GCONF */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   858
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   859
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   860
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   861
+const char* meta_prefs_get_workspace_role    (int         i)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   862
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   863
+  g_return_val_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   864
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   865
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   866
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   867
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   868
+  return workspace_roles [i];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   869
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   870
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   871
+void        meta_prefs_change_workspace_role (int         i,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   872
+                                              const char *name)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   873
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   874
+#ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   875
+  char *key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   876
+  GError *err;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   877
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   878
+  g_return_if_fail (i >= 0 && i < MAX_REASONABLE_WORKSPACES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   879
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   880
+  if (!tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   881
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   882
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   883
+  meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   884
+              "Changing name of workspace_roles %d to %s\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   885
+              i, name ? name : "none");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   886
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   887
+  /* This is a bad hack. We have to treat empty string as
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   888
+   * "unset" because the root window property can't contain
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   889
+   * null. So it gets empty string instead and we don't want
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   890
+   * that to result in setting the empty string as a value that
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   891
+   * overrides "unset".
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   892
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   893
+  if (name && *name == '\0')
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   894
+    name = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   895
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   896
+  if ((name == NULL && workspace_roles [i] == NULL) ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   897
+      (name && workspace_roles [i] && strcmp (name, workspace_roles [i]) == 0))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   898
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   899
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   900
+                  "Workspace role %d already has name %s\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   901
+                  i, name ? name : "none");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   902
+      return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   903
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   904
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   905
+  key = gconf_key_for_workspace_role (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   906
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   907
+  err = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   908
+  if (name != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   909
+    gconf_client_set_string (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   910
+                             key, name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   911
+                             &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   912
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   913
+    gconf_client_unset (default_client,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   914
+                        key, &err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   915
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   916
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   917
+  if (err)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   918
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   919
+      meta_warning (_("Error setting name for workspace role %d to \"%s\": %s\n"),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   920
+                    i, name ? name : "none",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   921
+                    err->message);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   922
+      g_error_free (err);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   923
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   924
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   925
+  g_free (key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   926
+#endif /* HAVE_GCONF */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   927
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   928
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   929
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   930
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   931
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   932
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   933
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   934
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   935
 const char*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   936
 meta_prefs_get_workspace_name (int i)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   937
@@ -2818,6 +3225,29 @@ meta_prefs_change_workspace_name (int   
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   938
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   939
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   940
 #ifdef HAVE_GCONF
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   941
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   942
+static char*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   943
+gconf_key_for_workspace_label (int i)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   944
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   945
+  char *key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   946
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   947
+  key = g_strdup_printf (KEY_WORKSPACE_LABEL_PREFIX"%d", i + 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   948
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   949
+  return key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   950
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   951
+static char*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   952
+gconf_key_for_workspace_role (int i)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   953
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   954
+  char *key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   955
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   956
+  key = g_strdup_printf (KEY_WORKSPACE_ROLE_PREFIX"%d", i + 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   957
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   958
+  return key;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   959
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   960
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   961
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   962
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   963
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   964
 static char*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   965
 gconf_key_for_workspace_name (int i)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   966
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   967
diff -Nrup metacity-2.16.3/src/prefs.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/prefs.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   968
--- metacity-2.16.3/src/prefs.h	2006-11-02 13:18:50.705019000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   969
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/prefs.h	2006-11-02 13:24:26.248825000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   970
@@ -56,6 +56,10 @@ typedef enum
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   971
   META_PREF_CURSOR_THEME,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   972
   META_PREF_CURSOR_SIZE,
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   973
   META_PREF_COMPOSITING_MANAGER
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   974
+#ifdef HAVE_XTSOL
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   975
+    ,META_PREF_WORKSPACE_LABELS,
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   976
+  META_PREF_WORKSPACE_ROLES
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   977
+#endif /*HAVE_XTSOL*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   978
 } MetaPreference;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   979
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   980
 typedef void (* MetaPrefsChangedFunc) (MetaPreference pref,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   981
@@ -105,6 +109,16 @@ const char* meta_prefs_get_cursor_theme 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   982
 int         meta_prefs_get_cursor_size       (void);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   983
 gboolean    meta_prefs_get_compositing_manager (void);
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   984
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   985
+#ifdef HAVE_XTSOL 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   986
+const char* meta_prefs_get_workspace_label    (int         i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   987
+void        meta_prefs_change_workspace_label (int         i,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   988
+                                              const char *name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   989
+const char* meta_prefs_get_workspace_role    (int         i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   990
+void        meta_prefs_change_workspace_role (int         i,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   991
+                                              const char *name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   992
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   993
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   994
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   995
 /* Screen bindings */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   996
 #define META_KEYBINDING_WORKSPACE_1              "switch_to_workspace_1"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
   997
 #define META_KEYBINDING_WORKSPACE_2              "switch_to_workspace_2"
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   998
diff -Nrup metacity-2.16.3/src/preview-widget.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/preview-widget.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
   999
--- metacity-2.16.3/src/preview-widget.c	2006-11-02 13:18:50.419967000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1000
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/preview-widget.c	2006-11-02 13:21:03.827543000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1001
@@ -19,6 +19,7 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1002
  * 02111-1307, USA.
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1003
  */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1004
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1005
+#include <config.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1006
 #include "preview-widget.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1007
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1008
 static void     meta_preview_class_init    (MetaPreviewClass *klass);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1009
@@ -248,7 +249,11 @@ meta_preview_expose (GtkWidget      *wid
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1010
                              &preview->button_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1011
                              button_states,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1012
                              meta_preview_get_mini_icon (),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1013
-                             meta_preview_get_icon ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1014
+                             meta_preview_get_icon ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1015
+#ifdef HAVE_XTSOL			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1016
+			     ,NULL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1017
+#endif			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1018
+			       );
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1019
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1020
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1021
   /* draw child */
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1022
diff -Nrup metacity-2.16.3/src/screen.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/screen.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1023
--- metacity-2.16.3/src/screen.c	2006-11-02 13:18:50.706767000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1024
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/screen.c	2006-11-02 13:21:03.872773000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1025
@@ -36,6 +36,7 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1026
 #include "stack.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1027
 #include "xprops.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1028
 #include "compositor.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1029
+#include <gtk/gtk.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1030
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1031
 #ifdef HAVE_SOLARIS_XINERAMA
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1032
 #include <X11/extensions/xinerama.h>
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1033
@@ -612,6 +613,13 @@ meta_screen_new (MetaDisplay *display,
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1034
   update_num_workspaces (screen, timestamp);
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1035
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1036
   set_workspace_names (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1037
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1038
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1039
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1040
+      tsol_workspace_labels_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1041
+      tsol_workspace_roles_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1042
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1043
+#endif /*HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1044
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1045
   screen->all_keys_grabbed = FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1046
   screen->keys_grabbed = FALSE;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1047
@@ -872,6 +880,16 @@ prefs_changed_callback (MetaPreference p
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1048
     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1049
       set_workspace_names (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1050
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1051
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1052
+  else if (pref == META_PREF_WORKSPACE_LABELS)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1053
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1054
+      tsol_workspace_labels_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1055
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1056
+  else if (pref == META_PREF_WORKSPACE_ROLES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1057
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1058
+      tsol_workspace_roles_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1059
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1060
+#endif /*HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1061
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1062
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1063
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1064
@@ -1167,6 +1185,13 @@ update_num_workspaces (MetaScreen *scree
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1065
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1066
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1067
   set_number_of_spaces_hint (screen, new_num);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1068
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1069
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1070
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1071
+      tsol_workspace_labels_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1072
+      tsol_workspace_roles_atom_set (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1073
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1074
+#endif /* HAVE_XTSOL */  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1075
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1076
   meta_screen_queue_workarea_recalc (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1077
 }
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1078
diff -Nrup metacity-2.16.3/src/tabpopup.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/tabpopup.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1079
--- metacity-2.16.3/src/tabpopup.c	2006-11-02 13:18:50.801016000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1080
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/tabpopup.c	2006-11-02 13:21:03.895686000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1081
@@ -31,6 +31,10 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1082
 #include "frame.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1083
 #include <gtk/gtk.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1084
 #include <math.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1085
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1086
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1087
+#include "display.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1088
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1089
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1090
 #define OUTSIDE_SELECT_RECT 2
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1091
 #define INSIDE_SELECT_RECT 2
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1092
@@ -99,6 +103,65 @@ outline_window_expose (GtkWidget      *w
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1093
   return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1094
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1095
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1096
+#ifdef HAVE_XTSOL 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1097
+static gboolean should_label_layout_be_black (GdkColor *color)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1098
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1099
+  int ntsc;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1100
+  ntsc = ((color->red) * .4450 +
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1101
+	   (color->blue) * .030 +
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1102
+	   (color->green) * .525);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1103
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1104
+  if ((65535 - ntsc) < .61 * 65535)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1105
+      return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1106
+  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1107
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1108
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1109
+static gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1110
+tsol_tab_label_expose_event (GtkWidget      *widget,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1111
+			     GdkEventExpose *event,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1112
+			     gpointer        data)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1113
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1114
+  MetaTabPopup *popup;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1115
+  int w, h;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1116
+  TabEntry *te;  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1117
+  ConstraintImage *cimage;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1118
+  MetaTrustedLabel *tlabel;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1119
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1120
+  popup = data;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1121
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1122
+  if (popup->current_selected_entry == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1123
+    return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1124
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1125
+  te = popup->current_selected_entry;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1126
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1127
+  if (popup->outline)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1128
+    tlabel = tsol_xwindow_label_get (meta_display_for_x_display (gdk_display), (Window) te->key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1129
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1130
+    tlabel = tsol_workspace_get_label ((MetaWorkspace *) te->key);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1131
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1132
+  if (should_label_layout_be_black (&tlabel->color->data.basic.color))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1133
+    gtk_widget_modify_fg (widget, GTK_STATE_NORMAL, &widget->style->black);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1134
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1135
+    gtk_widget_modify_fg (widget, GTK_STATE_NORMAL, &widget->style->white);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1136
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1137
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1138
+  cimage = tsol_get_highlight_stripe (tlabel->name, &tlabel->color->data.basic.color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1139
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1140
+  if (cimage)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1141
+    libgnome_tsol_constraint_image_render (cimage, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1142
+					   widget->window,    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1143
+					   NULL, &event->area,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1144
+					   FALSE,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1145
+					   event->area.x,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1146
+					   event->area.y,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1147
+					   event->area.width,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1148
+					   event->area.height);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1149
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1150
+   return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1151
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1152
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1153
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1154
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1155
 static GdkPixbuf*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1156
 dimm_icon (GdkPixbuf *pixbuf)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1157
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1158
@@ -301,6 +364,13 @@ meta_ui_tab_popup_new (const MetaTabEntr
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1159
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1160
   gtk_box_pack_end (GTK_BOX (vbox), popup->label, FALSE, FALSE, 0);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1161
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1162
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1163
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1164
+    g_signal_connect (G_OBJECT (popup->label), "expose_event",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1165
+		      G_CALLBACK (tsol_tab_label_expose_event),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1166
+		      popup);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1167
+#endif /*HAVE_XTSOL */  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1168
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1169
   max_label_width = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1170
   top = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1171
   bottom = 1;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1172
@@ -933,6 +1003,34 @@ meta_select_workspace_expose_event (GtkW
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1173
         }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1174
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1175
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1176
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1177
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1178
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1179
+      GdkGC *tmp_gc = gdk_gc_new (widget->window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1180
+      MetaTrustedLabel *label = tsol_workspace_get_label (workspace);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1181
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1182
+      gdk_gc_set_rgb_fg_color (tmp_gc, &label->color->data.basic.color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1183
+     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1184
+      gdk_draw_rectangle (widget->window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1185
+			  tmp_gc,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1186
+			  TRUE,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1187
+			  widget->allocation.width / 3,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1188
+			  0,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1189
+			  widget->allocation.width / 3,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1190
+			  4);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1191
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1192
+      g_object_unref (tmp_gc);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1193
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1194
+      gdk_draw_rectangle (widget->window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1195
+			  widget->style->black_gc,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1196
+			  FALSE,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1197
+			  widget->allocation.width / 3,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1198
+			  0,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1199
+			  widget->allocation.width / 3,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1200
+			  4);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1201
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1202
+#endif /*HAVE_XTSOL*/  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1203
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1204
   return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1205
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1206
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1207
diff -Nrup metacity-2.16.3/src/theme-viewer.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme-viewer.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1208
--- metacity-2.16.3/src/theme-viewer.c	2006-11-02 13:18:50.810534000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1209
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme-viewer.c	2006-11-02 13:21:03.898536000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1210
@@ -987,7 +987,11 @@ run_theme_benchmark (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1211
                              &button_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1212
                              button_states,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1213
                              meta_preview_get_mini_icon (),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1214
-                             meta_preview_get_icon ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1215
+                             meta_preview_get_icon ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1216
+#ifdef HAVE_XTSOL			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1217
+			     ,NULL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1218
+#endif			     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1219
+			    );
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1220
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1221
       g_object_unref (G_OBJECT (pixmap));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1222
       
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1223
diff -Nrup metacity-2.16.3/src/theme.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1224
--- metacity-2.16.3/src/theme.c	2006-11-02 13:18:50.423816000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1225
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme.c	2006-11-02 13:21:03.975292000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1226
@@ -28,6 +28,9 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1227
 #include <string.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1228
 #include <stdlib.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1229
 #include <math.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1230
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1231
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1232
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1233
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1234
 #define GDK_COLOR_RGBA(color)                                           \
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1235
                          ((guint32) (0xff                         |     \
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1236
@@ -497,8 +500,14 @@ meta_frame_layout_calc_geometry (const M
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1237
     fgeom->top_height + fgeom->bottom_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1238
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1239
   fgeom->width = width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1240
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1241
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1242
+    fgeom->height = height + fgeom->top_height; /*Trusted Frame Layout Modification TFLM*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1243
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1244
   fgeom->height = height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1245
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1246
+#else  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1247
+  fgeom->height = height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1248
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1249
   fgeom->top_titlebar_edge = layout->title_border.top;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1250
   fgeom->bottom_titlebar_edge = layout->title_border.bottom;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1251
   fgeom->left_titlebar_edge = layout->left_titlebar_edge;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1252
@@ -891,7 +900,11 @@ meta_color_spec_new (MetaColorSpecType t
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1253
     case META_COLOR_SPEC_BASIC:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1254
       size += sizeof (dummy.data.basic);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1255
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1256
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1257
+#ifdef HAVE_XTSOL    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1258
+    case META_COLOR_SPEC_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1259
+      size += sizeof (dummy.data.label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1260
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1261
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1262
     case META_COLOR_SPEC_GTK:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1263
       size += sizeof (dummy.data.gtk);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1264
       break;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1265
@@ -922,7 +935,11 @@ meta_color_spec_free (MetaColorSpec *spe
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1266
     case META_COLOR_SPEC_BASIC:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1267
       DEBUG_FILL_STRUCT (&spec->data.basic);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1268
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1269
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1270
+#ifdef HAVE_XTSOL      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1271
+    case META_COLOR_SPEC_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1272
+      DEBUG_FILL_STRUCT (&spec->data.label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1273
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1274
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1275
     case META_COLOR_SPEC_GTK:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1276
       DEBUG_FILL_STRUCT (&spec->data.gtk);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1277
       break;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1278
@@ -1021,6 +1038,14 @@ meta_color_spec_new_from_string (const c
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1279
       g_assert (spec->data.gtk.state < N_GTK_STATES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1280
       g_assert (spec->data.gtk.component < META_GTK_COLOR_LAST);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1281
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1282
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1283
+  else if (str[0] == 'l' && str[1] == 'a' && str[2] == 'b' && str[3] == 'e' &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1284
+           str[4] == 'l')
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1285
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1286
+      spec = meta_color_spec_new (META_COLOR_SPEC_LABEL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1287
+      spec->data.label.dummy = TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1288
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1289
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1290
   else if (str[0] == 'b' && str[1] == 'l' && str[2] == 'e' && str[3] == 'n' &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1291
            str[4] == 'd' && str[5] == '/')
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1292
     {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1293
@@ -1196,7 +1221,19 @@ meta_color_spec_render (MetaColorSpec *s
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1294
     case META_COLOR_SPEC_BASIC:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1295
       *color = spec->data.basic.color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1296
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1297
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1298
+    case META_COLOR_SPEC_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1299
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1300
+	  MetaTrustedLabel *label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1301
+	  label = (MetaTrustedLabel *)g_object_get_data (G_OBJECT (widget), "trusted_label");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1302
+	  if (label != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1303
+	    *color = label->color->data.basic.color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1304
+	  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1305
+	    g_warning ("trusted_label property isn't set for the widget");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1306
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1307
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1308
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1309
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1310
     case META_COLOR_SPEC_GTK:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1311
       switch (spec->data.gtk.component)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1312
         {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1313
@@ -2039,6 +2076,12 @@ pos_eval_helper (PosToken               
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1314
                 exprs[n_exprs].d.int_val = env->title_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1315
               else if (strcmp (t->d.v.name, "title_height") == 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1316
                 exprs[n_exprs].d.int_val = env->title_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1317
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1318
+	      else if (strcmp (t->d.v.name, "trusted_label_width") == 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1319
+                exprs[n_exprs].d.int_val = env->trusted_label_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1320
+              else if (strcmp (t->d.v.name, "trusted_label_height") == 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1321
+                exprs[n_exprs].d.int_val = env->trusted_label_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1322
+#endif	      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1323
               /* In practice we only hit this code on initial theme
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1324
                * parse; after that we always optimize constants away
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1325
                */
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1326
@@ -2484,6 +2527,11 @@ meta_draw_op_new (MetaDrawType type)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1327
     case META_DRAW_TILE:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1328
       size += sizeof (dummy.data.tile);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1329
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1330
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1331
+    case META_DRAW_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1332
+      size += sizeof (dummy.data.trusted_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1333
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1334
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1335
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1336
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1337
   op = g_malloc0 (size);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1338
@@ -2628,6 +2676,14 @@ meta_draw_op_free (MetaDrawOp *op)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1339
       g_free (op->data.tile.tile_width);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1340
       g_free (op->data.tile.tile_height);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1341
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1342
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1343
+    case META_DRAW_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1344
+      if (op->data.trusted_label.color_spec)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1345
+        meta_color_spec_free (op->data.trusted_label.color_spec);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1346
+      g_free (op->data.trusted_label.x);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1347
+      g_free (op->data.trusted_label.y);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1348
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1349
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1350
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1351
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1352
   g_free (op);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1353
@@ -3144,6 +3200,10 @@ draw_op_as_pixbuf (const MetaDrawOp    *
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1354
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1355
     case META_DRAW_TILE:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1356
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1357
+#ifdef HAVE_XTSOL      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1358
+    case META_DRAW_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1359
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1360
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1361
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1362
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1363
   return pixbuf;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1364
@@ -3181,6 +3241,23 @@ fill_env (MetaPositionExprEnv *env,
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1365
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1366
   env->title_width = info->title_layout_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1367
   env->title_height = info->title_layout_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1368
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1369
+  if (info->label && info->label->layout)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1370
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1371
+      PangoRectangle extents;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1372
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1373
+      pango_layout_get_pixel_extents (info->label->layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1374
+				      NULL, &extents);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1375
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1376
+      env->trusted_label_width =  extents.width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1377
+      env->trusted_label_height = extents.height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1378
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1379
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1380
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1381
+      env->trusted_label_width = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1382
+      env->trusted_label_height = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1383
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1384
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1385
   env->theme = NULL; /* not required, constants have been optimized out */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1386
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1387
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1388
@@ -3349,6 +3426,14 @@ meta_draw_op_draw_with_env (const MetaDr
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1389
           {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1390
             env->object_width = gdk_pixbuf_get_width (op->data.image.pixbuf);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1391
             env->object_height = gdk_pixbuf_get_height (op->data.image.pixbuf);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1392
+#ifdef HAVE_XTSOL	    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1393
+	    /* Hack to display shield icon conditionally  */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1394
+	    if (op->data.image.pixbuf == shield_pixbuf)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1395
+	      {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1396
+		if (strcmp (info->label->name, "Trusted Path") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1397
+		  return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1398
+	      }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1399
+#endif	    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1400
           }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1401
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1402
         rwidth = parse_size_unchecked (op->data.image.width, env);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1403
@@ -3535,6 +3620,67 @@ meta_draw_op_draw_with_env (const MetaDr
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1404
           }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1405
       }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1406
       break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1407
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1408
+#ifdef HAVE_XTSOL      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1409
+    case META_DRAW_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1410
+      if (info->title_layout)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1411
+        {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1412
+          int rx, ry;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1413
+	  int text_w, text_h;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1414
+	  static MetaColorSpec *black = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1415
+	  static MetaColorSpec *white = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1416
+	  MetaColorSpec *main_color, *shadow_color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1417
+	  gboolean black_text = tsol_should_label_layout_be_black (info->label->color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1418
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1419
+	  if (!black)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1420
+	    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1421
+	      black = meta_color_spec_new (META_COLOR_SPEC_BASIC);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1422
+	      white = meta_color_spec_new (META_COLOR_SPEC_BASIC);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1423
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1424
+	      gdk_color_parse ("black", &black->data.basic.color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1425
+	      gdk_color_parse ("white", &white->data.basic.color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1426
+	    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1427
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1428
+	  if (black_text)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1429
+	    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1430
+	      main_color = black;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1431
+	      shadow_color = white;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1432
+	    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1433
+	  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1434
+	    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1435
+	      main_color = white;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1436
+	      shadow_color = black;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1437
+	    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1438
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1439
+	  pango_layout_get_pixel_size (info->label->layout,&text_w, &text_h);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1440
+
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1441
+	  rx = ((rect.width - text_w) / 2 ) + rect.x;
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1442
+	  ry = ((rect.height - text_h) / 2 ) + rect.y;
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1443
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1444
+	  gc = get_gc_for_primitive (widget, drawable, shadow_color, clip, 0);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1445
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1446
+	  if (black)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1447
+	    gdk_draw_layout (drawable, gc,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1448
+			     rx+1, ry+1,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1449
+			     info->label->layout);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1450
+	  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1451
+	    gdk_draw_layout (drawable, gc,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1452
+			     rx+1, ry,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1453
+			     info->label->layout);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1454
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1455
+          g_object_unref (G_OBJECT (gc));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1456
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1457
+	  gc = get_gc_for_primitive (widget, drawable, main_color, clip, 0);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1458
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1459
+          gdk_draw_layout (drawable, gc,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1460
+                           rx, ry,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1461
+                           info->label->layout);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1462
+          
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1463
+	  g_object_unref (G_OBJECT (gc));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1464
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1465
+        }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1466
+      break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1467
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1468
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1469
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1470
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1471
@@ -3934,6 +4080,9 @@ meta_frame_style_draw (MetaFrameStyle   
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1472
                        int                      client_width,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1473
                        int                      client_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1474
                        PangoLayout             *title_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1475
+#ifdef HAVE_XTSOL		       
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1476
+		       MetaTrustedLabel	       *label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1477
+#endif		       
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1478
                        int                      text_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1479
                        MetaButtonState          button_states[META_BUTTON_TYPE_LAST],
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1480
                        GdkPixbuf               *mini_icon,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1481
@@ -3999,6 +4148,18 @@ meta_frame_style_draw (MetaFrameStyle   
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1482
   draw_info.title_layout_width = title_layout ? extents.width : 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1483
   draw_info.title_layout_height = title_layout ? extents.height : 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1484
   draw_info.fgeom = fgeom;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1485
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1486
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1487
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1488
+      draw_info.label = label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1489
+      if (!label->layout)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1490
+	label->layout = gtk_widget_create_pango_layout (widget, label->name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1491
+      g_object_set_data (G_OBJECT (widget), "trusted_label", label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1492
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1493
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1494
+    draw_info.label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1495
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1496
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1497
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1498
   /* The enum is in the order the pieces should be rendered. */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1499
   i = 0;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1500
@@ -4015,7 +4176,14 @@ meta_frame_style_draw (MetaFrameStyle   
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1501
           rect.width = fgeom->width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1502
           rect.height = fgeom->height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1503
           break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1504
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1505
+#ifdef HAVE_XTSOL 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1506
+	case META_FRAME_PIECE_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1507
+          rect.x = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1508
+          rect.y = fgeom->top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1509
+          rect.width = fgeom->width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1510
+          rect.height = fgeom->top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1511
+          break;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1512
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1513
         case META_FRAME_PIECE_TITLEBAR:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1514
           rect = titlebar_rect;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1515
           break;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1516
@@ -4353,6 +4521,97 @@ meta_theme_get_current (void)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1517
   return meta_current_theme;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1518
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1519
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1520
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1521
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1522
+static void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1523
+set_trusted_ops (MetaFrameStyle *style, MetaFrameFocus focus)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1524
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1525
+  if (style != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1526
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1527
+      if (style->pieces[META_FRAME_PIECE_TITLE])
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1528
+	meta_draw_op_list_unref (style->pieces[META_FRAME_PIECE_TITLE]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1529
+      style->pieces[META_FRAME_PIECE_TITLE] = tsol_theme_trusted_label_ops_get (focus);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1530
+      style->pieces[META_FRAME_PIECE_TRUSTED_LABEL] = tsol_theme_trusted_title_ops_get (focus);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1531
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1532
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1533
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1534
+static void 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1535
+style_set_for_each (gpointer key,gpointer value,gpointer user_data)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1536
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1537
+ int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1538
+ MetaFrameStyleSet *sset = (MetaFrameStyleSet *) value;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1539
+ for (i=0;i < META_FRAME_RESIZE_LAST;i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1540
+   {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1541
+     set_trusted_ops(sset->normal_styles[i][META_FRAME_FOCUS_YES], META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1542
+     set_trusted_ops(sset->normal_styles[i][META_FRAME_FOCUS_NO], META_FRAME_FOCUS_NO);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1543
+   }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1544
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1545
+ set_trusted_ops(sset->maximized_styles[META_FRAME_FOCUS_YES], META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1546
+ set_trusted_ops(sset->maximized_styles[META_FRAME_FOCUS_NO], META_FRAME_FOCUS_NO);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1547
+ set_trusted_ops(sset->shaded_styles[META_FRAME_FOCUS_YES], META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1548
+ set_trusted_ops(sset->shaded_styles[META_FRAME_FOCUS_NO], META_FRAME_FOCUS_NO);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1549
+ set_trusted_ops(sset->maximized_and_shaded_styles[META_FRAME_FOCUS_YES], META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1550
+ set_trusted_ops(sset->maximized_and_shaded_styles[META_FRAME_FOCUS_NO], META_FRAME_FOCUS_NO);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1551
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1552
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1553
+/* merge all needed style piece into one MetaDrawOpList 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1554
+ * to draw the titlebar in the Trusted Label space */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1555
+/*static MetaDrawOpList * 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1556
+merge_title_draw_list(MetaFrameStyle *style)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1557
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1558
+  MetaDrawOpList *new = meta_draw_op_list_new (10);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1559
+  MetaDrawOpList *tmp = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1560
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1561
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1562
+  tmp = style->pieces[META_FRAME_PIECE_TITLEBAR];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1563
+  if (tmp)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1564
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1565
+      for (i=0;i< tmp->n_ops; i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1566
+	meta_draw_op_list_append (new, tmp->ops[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1567
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1568
+  tmp = style->pieces[META_FRAME_PIECE_TITLEBAR_MIDDLE];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1569
+  if (tmp)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1570
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1571
+      for (i=0;i< tmp->n_ops; i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1572
+	meta_draw_op_list_append (new, tmp->ops[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1573
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1574
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1575
+  tmp = style->pieces[META_FRAME_PIECE_TOP_TITLEBAR_EDGE];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1576
+  if (tmp)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1577
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1578
+      for (i=0;i< tmp->n_ops; i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1579
+	meta_draw_op_list_append (new, tmp->ops[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1580
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1581
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1582
+  tmp = style->pieces[META_FRAME_PIECE_BOTTOM_TITLEBAR_EDGE];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1583
+  if (tmp)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1584
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1585
+      for (i=0;i< tmp->n_ops; i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1586
+	meta_draw_op_list_append (new, tmp->ops[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1587
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1588
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1589
+  tmp = style->pieces[META_FRAME_PIECE_TITLE];  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1590
+  if (tmp)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1591
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1592
+      for (i=0;i< tmp->n_ops; i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1593
+	meta_draw_op_list_append (new, tmp->ops[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1594
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1595
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1596
+  return new;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1597
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1598
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1599
+static void 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1600
+style_for_each (gpointer key,gpointer value,gpointer user_data)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1601
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1602
+  MetaFrameStyle * style =  (MetaFrameStyle *) value;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1603
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1604
+ if (style->pieces[META_FRAME_PIECE_TITLE])
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1605
+   meta_draw_op_list_unref (style->pieces[META_FRAME_PIECE_TITLE]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1606
+ style->pieces[META_FRAME_PIECE_TITLE] = tsol_theme_trusted_label_ops_get (META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1607
+ style->pieces[META_FRAME_PIECE_TRUSTED_LABEL] = tsol_theme_trusted_title_ops_get (META_FRAME_FOCUS_YES);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1608
+}*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1609
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1610
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1611
 void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1612
 meta_theme_set_current (const char *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1613
                         gboolean    force_reload)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1614
@@ -4383,6 +4642,14 @@ meta_theme_set_current (const char *name
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1615
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1616
       meta_current_theme = new_theme;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1617
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1618
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1619
+      if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1620
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1621
+	  shield_pixbuf = NULL; /* hack to display shield icon conditionally */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1622
+	  g_hash_table_foreach (new_theme->style_sets_by_name, style_set_for_each, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1623
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1624
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1625
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1626
       meta_topic (META_DEBUG_THEMES, "New theme is \"%s\"\n", meta_current_theme->name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1627
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1628
 }
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1629
@@ -4729,7 +4996,11 @@ meta_theme_draw_frame (MetaTheme        
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1630
                        const MetaButtonLayout *button_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1631
                        MetaButtonState         button_states[META_BUTTON_TYPE_LAST],
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1632
                        GdkPixbuf              *mini_icon,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1633
-                       GdkPixbuf              *icon)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1634
+                       GdkPixbuf              *icon
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1635
+#ifdef HAVE_XTSOL		       
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1636
+		       ,MetaTrustedLabel	      *label
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1637
+#endif		       
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1638
+		      )
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1639
 {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1640
   MetaFrameGeometry fgeom;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1641
   MetaFrameStyle *style;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1642
@@ -4757,6 +5028,9 @@ meta_theme_draw_frame (MetaTheme        
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1643
                          &fgeom,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1644
                          client_width, client_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1645
                          title_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1646
+#ifdef HAVE_XTSOL			 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1647
+			 label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1648
+#endif			 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1649
                          text_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1650
                          button_states,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1651
                          mini_icon, icon);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1652
@@ -5305,6 +5579,10 @@ meta_frame_piece_to_string (MetaFramePie
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1653
     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1654
     case META_FRAME_PIECE_ENTIRE_BACKGROUND:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1655
       return "entire_background";
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1656
+#ifdef HAVE_XTSOL      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1657
+    case META_FRAME_PIECE_TRUSTED_LABEL:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1658
+      return "trusted_label";
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1659
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1660
     case META_FRAME_PIECE_TITLEBAR:
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1661
       return "titlebar";
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1662
     case META_FRAME_PIECE_TITLEBAR_MIDDLE:
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1663
diff -Nrup metacity-2.16.3/src/theme.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1664
--- metacity-2.16.3/src/theme.h	2006-11-02 13:18:50.416316000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1665
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/theme.h	2006-11-02 13:21:04.020925000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1666
@@ -40,6 +40,9 @@ typedef struct _MetaFrameGeometry MetaFr
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1667
 typedef struct _MetaTheme MetaTheme;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1668
 typedef struct _MetaPositionExprEnv MetaPositionExprEnv;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1669
 typedef struct _MetaDrawInfo MetaDrawInfo;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1670
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1671
+typedef struct _MetaTrustedLabel  MetaTrustedLabel;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1672
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1673
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1674
 #define META_THEME_ERROR (g_quark_from_static_string ("meta-theme-error"))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1675
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1676
@@ -172,6 +175,10 @@ typedef enum
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1677
   META_COLOR_SPEC_GTK,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1678
   META_COLOR_SPEC_BLEND,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1679
   META_COLOR_SPEC_SHADE
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1680
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1681
+  ,  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1682
+  META_COLOR_SPEC_LABEL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1683
+#endif    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1684
 } MetaColorSpecType;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1685
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1686
 typedef enum
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1687
@@ -195,6 +202,11 @@ struct _MetaColorSpec
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1688
     struct {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1689
       GdkColor color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1690
     } basic;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1691
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1692
+    struct {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1693
+      gboolean dummy;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1694
+    } label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1695
+#endif    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1696
     struct {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1697
       MetaGtkColorComponent component;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1698
       GtkStateType state;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1699
@@ -232,6 +244,9 @@ struct _MetaDrawInfo
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1700
   int title_layout_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1701
   int title_layout_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1702
   const MetaFrameGeometry *fgeom;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1703
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1704
+  MetaTrustedLabel *label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1705
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1706
 };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1707
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1708
 typedef enum
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1709
@@ -262,6 +277,11 @@ typedef enum
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1710
   META_DRAW_OP_LIST,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1711
   /* tiled draw op list */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1712
   META_DRAW_TILE
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1713
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1714
+  ,  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1715
+  /* draw a string (used for trusted label) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1716
+  META_DRAW_TRUSTED_LABEL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1717
+#endif    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1718
 } MetaDrawType;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1719
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1720
 struct _MetaDrawOp
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1721
@@ -404,6 +424,14 @@ struct _MetaDrawOp
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1722
       char *tile_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1723
     } tile;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1724
     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1725
+#ifdef HAVE_XTSOL    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1726
+    struct {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1727
+      MetaColorSpec *color_spec;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1728
+      char *x;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1729
+      char *y;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1730
+    } trusted_label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1731
+#endif    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1732
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1733
   } data;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1734
 };
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1735
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1736
@@ -465,6 +493,10 @@ typedef enum
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1737
   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1738
   /* entire frame */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1739
   META_FRAME_PIECE_ENTIRE_BACKGROUND,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1740
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1741
+  /* Trusted Label area*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1742
+  META_FRAME_PIECE_TRUSTED_LABEL,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1743
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1744
   /* entire titlebar background */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1745
   META_FRAME_PIECE_TITLEBAR,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1746
   /* portion of the titlebar background inside the titlebar
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1747
@@ -589,6 +621,10 @@ struct _MetaPositionExprEnv
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1748
   int bottom_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1749
   int title_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1750
   int title_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1751
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1752
+  int trusted_label_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1753
+  int trusted_label_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1754
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1755
   int mini_icon_width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1756
   int mini_icon_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1757
   int icon_width;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1758
@@ -694,6 +730,9 @@ void meta_frame_style_draw (MetaFrameSty
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1759
                             int                      client_width,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1760
                             int                      client_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1761
                             PangoLayout             *title_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1762
+#ifdef HAVE_XTSOL			    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1763
+			    MetaTrustedLabel	    *label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1764
+#endif			    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1765
                             int                      text_height,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1766
                             MetaButtonState          button_states[META_BUTTON_TYPE_LAST],
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1767
                             GdkPixbuf               *mini_icon,
19085
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1768
@@ -771,7 +771,11 @@
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1769
                             const MetaButtonLayout *button_layout,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1770
                             MetaButtonState         button_states[META_BUTTON_TYPE_LAST],
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1771
                             GdkPixbuf              *mini_icon,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1772
-                            GdkPixbuf              *icon);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1773
+                            GdkPixbuf              *icon
19085
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1774
+#ifdef HAVE_XTSOL
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1775
+                           ,MetaTrustedLabel       *label
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1776
+#endif
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1777
+                            );
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1778
 
19085
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1779
 void meta_theme_get_frame_borders (MetaTheme         *theme,
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  1780
                                    MetaFrameType      type,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1781
diff -Nrup metacity-2.16.3/src/trusted-pics.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted-pics.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1782
--- metacity-2.16.3/src/trusted-pics.h	1970-01-01 01:00:00.000000000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  1783
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted-pics.h	2006-11-02 13:21:04.026656000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1784
@@ -0,0 +1,728 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1785
+/* Metacity trusted image */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1786
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1787
+/* 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1788
+ * Copyright (C) 2005 Erwann Chenede
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1789
+ */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1790
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1791
+#ifndef TRUSTED_PICS_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1792
+#define TRUSTED_PICS_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1793
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1794
+#include <gtk/gtk.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1795
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1796
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1797
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1798
+#pragma align 4 (label_arrows)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1799
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1800
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1801
+static const guint8 label_arrows[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1802
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1803
+static const guint8 label_arrows[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1804
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1805
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1806
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1807
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1808
+  /* length: header (24) + pixel_data (400) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1809
+  "\0\0\1\250"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1810
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1811
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1812
+  /* rowstride (80) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1813
+  "\0\0\0P"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1814
+  /* width (20) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1815
+  "\0\0\0\24"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1816
+  /* height (5) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1817
+  "\0\0\0\5"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1818
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1819
+  "\2\2\2t\362\362\362^\0\0\0\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362^\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1820
+  "\0\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362^\0\0\0\0\0\0\0\0\0\0\0\0\2\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1821
+  "\2t\362\362\362^\0\0\0\0\0\0\0\0\0\0\0\0\362\362\362\0\2\2\2t\362\362"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1822
+  "\362^\0\0\0\0\2\2\2\0\362\362\362\0\2\2\2t\362\362\362^\0\0\0\0\2\2\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1823
+  "\0\362\362\362\0\2\2\2t\362\362\362^\0\0\0\0\2\2\2\0\362\362\362\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1824
+  "\2\2t\362\362\362^\0\0\0\0\2\2\2\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1825
+  "^\362\362\362\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1826
+  "\0\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362\0\0\0\0\0\0\0\0\0\2\2\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1827
+  "t\362\362\362^\362\362\362\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1828
+  "\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1829
+  "\2\2\2t\362\362\362^\362\362\362\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1830
+  "^\362\362\362\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1831
+  "\0\0\2\2\2t\362\362\362^\362\362\362\0\0\0\0\0\0\0\0\0\2\2\2t\362\362"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1832
+  "\362^\362\362\362\0\0\0\0\0\0\0\0\0\2\2\2t\362\362\362^\362\362\362\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1833
+  "\0\0\0\0\0\0\0\0"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1834
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1835
+/*GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1836
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1837
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1838
+#pragma align 4 (title_gradient)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1839
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1840
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1841
+static const guint8 title_gradient[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1842
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1843
+static const guint8 title_gradient[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1844
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1845
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1846
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1847
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1848
+  /* length: header (24) + pixel_data (360) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1849
+  "\0\0\1\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1850
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1851
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1852
+  /* rowstride (40) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1853
+  "\0\0\0("
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1854
+  /* width (10) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1855
+  "\0\0\0\12"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1856
+  /* height (9) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1857
+  "\0\0\0\11"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1858
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1859
+  "\337\337\337\11\337\337\337\11\337\337\337\11\337\337\337\11\337\337"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1860
+  "\337\11\337\337\337\11\337\337\337\11\337\337\337\11\337\337\337\11\337"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1861
+  "\337\337\11\364\364\364\32\364\364\364\32\364\364\364\32\364\364\364"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1862
+  "\32\364\364\364\32\364\364\364\32\364\364\364\32\364\364\364\32\364\364"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1863
+  "\364\32\364\364\364\32\360\360\3600\360\360\3600\360\360\3600\360\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1864
+  "\3600\360\360\3600\360\360\3600\360\360\3600\360\360\3600\360\360\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1865
+  "0\360\360\3600\357\357\357E\357\357\357E\357\357\357E\357\357\357E\357"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1866
+  "\357\357E\357\357\357E\357\357\357E\357\357\357E\357\357\357E\357\357"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1867
+  "\357E\356\356\356X\356\356\356X\356\356\356X\356\356\356X\356\356\356"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1868
+  "X\356\356\356X\356\356\356X\356\356\356X\356\356\356X\356\356\356X\356"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1869
+  "\356\356k\356\356\356k\356\356\356k\356\356\356k\356\356\356k\356\356"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1870
+  "\356k\356\356\356k\356\356\356k\356\356\356k\356\356\356k\357\357\357"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1871
+  "}\357\357\357}\357\357\357}\357\357\357}\357\357\357}\357\357\357}\357"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1872
+  "\357\357}\357\357\357}\357\357\357}\357\357\357}\360\360\360\212\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1873
+  "\360\360\212\360\360\360\212\360\360\360\212\360\360\360\212\360\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1874
+  "\360\212\360\360\360\212\360\360\360\212\360\360\360\212\360\360\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1875
+  "\212\266\266\266J\266\266\266J\266\266\266J\266\266\266J\266\266\266"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1876
+  "J\266\266\266J\266\266\266J\266\266\266J\266\266\266J\266\266\266J"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1877
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1878
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1879
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1880
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1881
+#pragma align 4 (title_center_dimple)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1882
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1883
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1884
+static const guint8 title_center_dimple[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1885
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1886
+static const guint8 title_center_dimple[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1887
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1888
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1889
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1890
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1891
+  /* length: header (24) + pixel_data (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1892
+  "\0\0\0d"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1893
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1894
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1895
+  /* rowstride (4) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1896
+  "\0\0\0\4"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1897
+  /* width (1) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1898
+  "\0\0\0\1"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1899
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1900
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1901
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1902
+  "QQQ\377RRR\377UUU\377YYY\377]]]\377bbb\377hhh\377nnn\377sss\377zzz\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1903
+  "\200\200\200\377\205\205\205\377\212\212\212\377\216\216\216\377\222"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1904
+  "\222\222\377\225\225\225\377\227\227\227\377\230\230\230\377\231\231"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1905
+  "\231\377"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1906
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1907
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1908
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1909
+#pragma align 4 (title_left_dimple)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1910
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1911
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1912
+static const guint8 title_left_dimple[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1913
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1914
+static const guint8 title_left_dimple[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1915
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1916
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1917
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1918
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1919
+  /* length: header (24) + pixel_data (1444) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1920
+  "\0\0\5\274"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1921
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1922
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1923
+  /* rowstride (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1924
+  "\0\0\0L"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1925
+  /* width (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1926
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1927
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1928
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1929
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1930
+  "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1931
+  "\0NNNEMMM\231MMM\314MMM\374MMM\377NNN\377NNN\377OOO\377PPP\377PPP\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1932
+  "PPP\377QQQ\377QQQ\377QQQ\377\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1933
+  "\0OOO$MMM\300MMM\377LLL\377LLL\377MMM\377MMM\377NNN\377OOO\377PPP\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1934
+  "PPP\377QQQ\377RRR\377RRR\377RRR\377RRR\377\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1935
+  "\0OOO<MMM\355LLL\377LLL\377LLL\377MMM\377MMM\377OOO\377PPP\377QQQ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1936
+  "RRR\377SSS\377SSS\377TTT\377TTT\377TTT\377UUU\377\377\377\377\0PPP$N"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1937
+  "NN\355MMM\377LLL\377MMM\377MMM\377NNN\377OOO\377QQQ\377RRR\377TTT\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1938
+  "UUU\377VVV\377WWW\377XXX\377XXX\377XXX\377YYY\377\377\377\377\0OOO\300"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1939
+  "NNN\377MMM\377MMM\377NNN\377OOO\377PPP\377RRR\377TTT\377VVV\377XXX\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1940
+  "YYY\377ZZZ\377[[[\377\\\\\\\377]]]\377]]]\377]]]\377RRRBPPP\377OOO\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1941
+  "OOO\377OOO\377PPP\377RRR\377TTT\377VVV\377XXX\377ZZZ\377\\\\\\\377^^"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1942
+  "^\377```\377```\377aaa\377aaa\377bbb\377bbb\377SSS\226QQQ\377QQQ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1943
+  "QQQ\377RRR\377TTT\377VVV\377XXX\377ZZZ\377]]]\377___\377aaa\377ccc\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1944
+  "eee\377fff\377ggg\377ggg\377ggg\377ggg\377TTT\333SSS\377SSS\377TTT\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1945
+  "VVV\377WWW\377ZZZ\377]]]\377___\377bbb\377eee\377ggg\377iii\377kkk\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1946
+  "lll\377lll\377mmm\377mmm\377mmm\377WWW\371VVV\377VVV\377XXX\377ZZZ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1947
+  "\\\\\\\377___\377bbb\377eee\377hhh\377kkk\377mmm\377ooo\377qqq\377rr"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1948
+  "r\377sss\377sss\377sss\377sss\377ZZZ\377YYY\377ZZZ\377\\\\\\\377^^^\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1949
+  "aaa\377ddd\377ggg\377kkk\377nnn\377ppp\377sss\377uuu\377www\377xxx\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1950
+  "yyy\377yyy\377zzz\377zzz\377]]]\366]]]\377^^^\377aaa\377ccc\377fff\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1951
+  "iii\377mmm\377ppp\377ttt\377www\377yyy\377|||\377}}}\377~~~\377\177\177"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1952
+  "\177\377\177\177\177\377\177\177\177\377\177\177\177\377aaa\333aaa\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1953
+  "ccc\377eee\377hhh\377kkk\377ooo\377rrr\377vvv\377yyy\377|||\377\177\177"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1954
+  "\177\377\200\200\200\377\202\202\202\377\203\203\203\377\204\204\204"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1955
+  "\377\204\204\204\377\205\205\205\377\205\205\205\377eee\245eee\377gg"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1956
+  "g\377jjj\377mmm\377ppp\377ttt\377xxx\377{{{\377~~~\377\201\201\201\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1957
+  "\203\203\203\377\205\205\205\377\207\207\207\377\210\210\210\377\211"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1958
+  "\211\211\377\211\211\211\377\212\212\212\377\212\212\212\377iiiNjjj\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1959
+  "lll\377ooo\377rrr\377uuu\377yyy\377}}}\377\177\177\177\377\202\202\202"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1960
+  "\377\205\205\205\377\210\210\210\377\212\212\212\377\213\213\213\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1961
+  "\214\214\214\377\215\215\215\377\215\215\215\377\216\216\216\377\216"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1962
+  "\216\216\377lll\3nnn\317ppp\377sss\377vvv\377zzz\377}}}\377\200\200\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1963
+  "\377\203\203\203\377\206\206\206\377\211\211\211\377\213\213\213\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1964
+  "\215\215\215\377\217\217\217\377\220\220\220\377\220\220\220\377\221"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1965
+  "\221\221\377\221\221\221\377\222\222\222\377\377\377\377\0rrr-ttt\363"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1966
+  "www\377zzz\377}}}\377\200\200\200\377\203\203\203\377\207\207\207\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1967
+  "\212\212\212\377\214\214\214\377\216\216\216\377\220\220\220\377\222"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1968
+  "\222\222\377\223\223\223\377\223\223\223\377\224\224\224\377\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1969
+  "\224\377\224\224\224\377\377\377\377\0\377\377\377\0xxxKzzz\366}}}\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1970
+  "\200\200\200\377\203\203\203\377\207\207\207\377\212\212\212\377\214"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1971
+  "\214\214\377\216\216\216\377\221\221\221\377\223\223\223\377\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1972
+  "\224\377\225\225\225\377\226\226\226\377\226\226\226\377\226\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1973
+  "\377\226\226\226\377\377\377\377\0\377\377\377\0\377\377\377\0}}}-\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1974
+  "\200\200\317\203\203\203\377\206\206\206\377\211\211\211\377\213\213"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1975
+  "\213\377\216\216\216\377\220\220\220\377\223\223\223\377\224\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1976
+  "\377\226\226\226\377\226\226\226\377\227\227\227\377\230\230\230\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1977
+  "\230\230\230\377\230\230\230\377\377\377\377\0\377\377\377\0\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1978
+  "\377\0\377\377\377\0\377\377\377\0\205\205\205T\210\210\210\256\212\212"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1979
+  "\212\355\215\215\215\377\217\217\217\377\222\222\222\377\223\223\223"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1980
+  "\377\225\225\225\377\226\226\226\377\230\230\230\377\230\230\230\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1981
+  "\231\231\231\377\231\231\231\377\231\231\231\377"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1982
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1983
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1984
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1985
+#pragma align 4 (title_right_dimple)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1986
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1987
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1988
+static const guint8 title_right_dimple[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1989
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1990
+static const guint8 title_right_dimple[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1991
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1992
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1993
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1994
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1995
+  /* length: header (24) + pixel_data (1444) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1996
+  "\0\0\5\274"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1997
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1998
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  1999
+  /* rowstride (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2000
+  "\0\0\0L"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2001
+  /* width (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2002
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2003
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2004
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2005
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2006
+  "QQQ\377QQQ\377RRR\377RRR\377SSS\377SSS\377TTT\377VVV\377XXX\377ZZZ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2007
+  "\\\\\\\377___\314bbb\231eeeE\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2008
+  "\0\377\377\377\0\377\377\377\0SSS\377SSS\377SSS\377SSS\377TTT\377TTT"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2009
+  "\377VVV\377WWW\377YYY\377[[[\377^^^\377aaa\377ddd\377ggg\377jjj\300n"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2010
+  "nn$\377\377\377\0\377\377\377\0\377\377\377\0UUU\377UUU\377UUU\377VV"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2011
+  "V\377VVV\377WWW\377XXX\377ZZZ\377[[[\377^^^\377```\377ccc\377fff\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2012
+  "iii\377lll\377ppp\355sss<\377\377\377\0\377\377\377\0YYY\377YYY\377Y"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2013
+  "YY\377YYY\377ZZZ\377[[[\377\\\\\\\377]]]\377___\377aaa\377ddd\377ggg"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2014
+  "\377iii\377mmm\377ppp\377sss\377vvv\355yyy$\377\377\377\0]]]\377]]]\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2015
+  "]]]\377^^^\377^^^\377___\377```\377bbb\377ccc\377eee\377hhh\377kkk\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2016
+  "nnn\377qqq\377ttt\377www\377zzz\377}}}\300\377\377\377\0bbb\377bbb\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2017
+  "bbb\377ccc\377ccc\377ddd\377eee\377ggg\377hhh\377kkk\377mmm\377ppp\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2018
+  "sss\377vvv\377yyy\377|||\377~~~\377\200\200\200\377\202\202\202Bhhh\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2019
+  "hhh\377hhh\377hhh\377iii\377iii\377kkk\377lll\377nnn\377ppp\377sss\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2020
+  "uuu\377xxx\377{{{\377}}}\377\200\200\200\377\202\202\202\377\204\204"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2021
+  "\204\377\205\205\205\226nnn\377nnn\377nnn\377nnn\377ooo\377ooo\377pp"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2022
+  "p\377rrr\377ttt\377vvv\377yyy\377{{{\377}}}\377\200\200\200\377\202\202"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2023
+  "\202\377\205\205\205\377\207\207\207\377\210\210\210\377\211\211\211"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2024
+  "\333ttt\377ttt\377ttt\377ttt\377uuu\377vvv\377www\377yyy\377zzz\377|"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2025
+  "||\377~~~\377\200\200\200\377\203\203\203\377\205\205\205\377\210\210"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2026
+  "\210\377\212\212\212\377\213\213\213\377\214\214\214\377\215\215\215"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2027
+  "\371zzz\377zzz\377zzz\377{{{\377{{{\377|||\377}}}\377\177\177\177\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2028
+  "\200\200\200\377\202\202\202\377\204\204\204\377\206\206\206\377\210"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2029
+  "\210\210\377\213\213\213\377\215\215\215\377\216\216\216\377\220\220"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2030
+  "\220\377\220\220\220\377\221\221\221\377\200\200\200\377\200\200\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2031
+  "\377\200\200\200\377\200\200\200\377\201\201\201\377\202\202\202\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2032
+  "\203\203\203\377\204\204\204\377\206\206\206\377\210\210\210\377\212"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2033
+  "\212\212\377\214\214\214\377\216\216\216\377\220\220\220\377\222\222"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2034
+  "\222\377\223\223\223\377\224\224\224\377\224\224\224\377\224\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2035
+  "\371\205\205\205\377\205\205\205\377\205\205\205\377\206\206\206\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2036
+  "\206\206\206\377\207\207\207\377\210\210\210\377\212\212\212\377\213"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2037
+  "\213\213\377\215\215\215\377\217\217\217\377\221\221\221\377\223\223"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2038
+  "\223\377\225\225\225\377\226\226\226\377\227\227\227\377\230\230\230"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2039
+  "\377\230\230\230\377\227\227\227\336\212\212\212\377\212\212\212\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2040
+  "\212\212\212\377\213\213\213\377\213\213\213\377\214\214\214\377\215"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2041
+  "\215\215\377\216\216\216\377\220\220\220\377\222\222\222\377\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2042
+  "\224\377\225\225\225\377\227\227\227\377\231\231\231\377\232\232\232"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2043
+  "\377\232\232\232\377\233\233\233\377\232\232\232\377\231\231\231\245"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2044
+  "\216\216\216\377\216\216\216\377\216\216\216\377\217\217\217\377\220"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2045
+  "\220\220\377\220\220\220\377\222\222\222\377\223\223\223\377\225\225"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2046
+  "\225\377\226\226\226\377\230\230\230\377\232\232\232\377\233\233\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2047
+  "\377\234\234\234\377\235\235\235\377\235\235\235\377\235\235\235\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2048
+  "\234\234\234\377\233\233\233N\222\222\222\377\222\222\222\377\222\222"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2049
+  "\222\377\223\223\223\377\223\223\223\377\224\224\224\377\225\225\225"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2050
+  "\377\226\226\226\377\230\230\230\377\232\232\232\377\233\233\233\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2051
+  "\235\235\235\377\236\236\236\377\236\236\236\377\237\237\237\377\237"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2052
+  "\237\237\377\236\236\236\377\235\235\235\317\234\234\234\3\225\225\225"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2053
+  "\377\225\225\225\377\225\225\225\377\226\226\226\377\226\226\226\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2054
+  "\227\227\227\377\230\230\230\377\232\232\232\377\233\233\233\377\234"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2055
+  "\234\234\377\235\235\235\377\236\236\236\377\240\240\240\377\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2056
+  "\240\377\240\240\240\377\240\240\240\377\237\237\237\363\236\236\236"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2057
+  "-\377\377\377\0\227\227\227\377\227\227\227\377\230\230\230\377\230\230"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2058
+  "\230\377\230\230\230\377\231\231\231\377\232\232\232\377\233\233\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2059
+  "\377\235\235\235\377\236\236\236\377\237\237\237\377\240\240\240\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2060
+  "\240\240\240\377\241\241\241\377\241\241\241\377\240\240\240\366\237"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2061
+  "\237\237K\377\377\377\0\377\377\377\0\231\231\231\377\231\231\231\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2062
+  "\231\231\231\377\232\232\232\377\232\232\232\377\233\233\233\377\234"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2063
+  "\234\234\377\235\235\235\377\236\236\236\377\236\236\236\377\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2064
+  "\240\377\240\240\240\377\241\241\241\377\241\241\241\377\240\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2065
+  "\317\240\240\240-\377\377\377\0\377\377\377\0\377\377\377\0\232\232\232"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2066
+  "\377\232\232\232\377\232\232\232\377\232\232\232\377\233\233\233\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2067
+  "\233\233\233\377\234\234\234\377\235\235\235\377\236\236\236\377\236"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2068
+  "\236\236\377\237\237\237\377\240\240\240\355\240\240\240\256\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2069
+  "\240T\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2070
+  "\377\0"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2071
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2072
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2073
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2074
+#pragma align 4 (shield)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2075
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2076
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2077
+static const guint8 shield[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2078
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2079
+static const guint8 shield[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2080
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2081
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2082
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2083
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2084
+  /* length: header (24) + pixel_data (4096) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2085
+  "\0\0\20\30"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2086
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2087
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2088
+  /* rowstride (128) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2089
+  "\0\0\0\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2090
+  /* width (32) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2091
+  "\0\0\0\40"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2092
+  /* height (32) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2093
+  "\0\0\0\40"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2094
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2095
+  "\0\0\0\0\0\0\0\0\377\375\326\7\377\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2096
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\354\220"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2097
+  "\17\377\341d\276\375\321D\217\377\362\270\3\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2098
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\340\204\3"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2099
+  "\377\341\201\6\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\0\377\351z\271\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2100
+  "\353}\232\377\361\233!\377\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2101
+  "\0\0\0\0\0\0\0\0\377\373\327\3\377\351{P\377\341d\333\377\336Z\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2102
+  "\334T\377\377\327F\275\377\333[4\377\377\377\1\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2103
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\376\1\376\311.1\371\271\13\273\343"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2104
+  "\252.\264\377\377\376\0\0\0\0\0\0\0\0\0\377\370\305\13\377\352y\365\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2105
+  "\353{\377\377\354\200\373\377\356\210\310\377\360\214\217\377\360\217"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2106
+  "k\377\361\221X\377\360\217S\377\355\211j\377\354\201\230\377\352w\337"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2107
+  "\377\345m\377\377\344f\377\377\340_\377\377\335W\377\377\334Q\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2108
+  "\332I\375\377\327H\317\377\327I\215\377\326Fd\377\321\77R\377\317;Z\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2109
+  "\314.p\377\310\"\230\376\301\27\325\375\273\6\376\373\267\0\377\337\241"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2110
+  "\32\363\374\354\315\14\0\0\0\0\0\0\0\0\377\360\2238\377\353~\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2111
+  "\356\203\377\377\357\210\377\377\360\213\377\377\360\215\377\377\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2112
+  "\215\377\377\360\214\377\377\360\211\377\377\356\205\377\377\354\177"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2113
+  "\377\377\352y\377\377\351s\377\377\345l\377\377\343d\377\377\337]\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2114
+  "\377\335V\377\377\333N\377\377\330G\377\377\324\77\377\377\3227\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2115
+  "\315/\377\377\311'\377\377\307\37\377\377\305\27\377\377\277\17\377\375"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2116
+  "\273\10\377\375\271\1\377\342\240\4\377\346\276\2055\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2117
+  "\377\357\215c\377\356\204\377\377\360\213\377\377\361\220\377\377\363"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2118
+  "\224\377\377\363\227\377\377\364\227\377\377\363\225\377\377\362\221"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2119
+  "\377\377\360\214\377\377\357\206\377\377\354\177\377\377\352x\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2120
+  "\350q\377\377\344i\377\377\342b\377\377\336Z\377\377\334R\377\377\332"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2121
+  "J\377\377\325B\377\377\323:\377\377\3171\377\377\312)\377\377\310!\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2122
+  "\377\306\31\377\377\301\21\377\375\274\12\377\375\271\2\377\357\255\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2123
+  "\377\311\227Sb\0\0\0\0\0\0\0\0\377\360\214\204\377\360\211\377\377\361"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2124
+  "\221\377\377\364\227\377\377\365\235\377\377\366\241\377\377\366\241"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2125
+  "\377\377\365\236\377\377\364\231\377\377\362\223\377\377\360\214\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2126
+  "\377\356\204\377\377\353|\377\376\334U\377\376\3161\377\377\347t\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2127
+  "\377\342g\377\377\335T\377\377\333L\377\377\326D\377\377\323<\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2128
+  "\3213\377\377\312+\377\377\310#\377\377\306\33\377\377\302\22\377\376"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2129
+  "\274\13\377\376\272\3\377\370\264\0\377\301\213:\201\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2130
+  "\377\360\215\234\377\360\215\377\377\363\226\377\377\365\237\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2131
+  "\363\232\377\377\346v\377\377\347y\377\377\343m\377\376\337d\377\376"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2132
+  "\342h\377\376\334W\377\376\322>\377\376\3175\377\376\331L\377\377\345"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2133
+  "k\377\377\347r\377\377\353\205\377\377\355\212\377\377\352~\377\377\337"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2134
+  "\\\377\377\327G\377\377\3239\377\377\314.\377\377\312'\377\377\310\40"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2135
+  "\377\377\303\23\377\376\275\14\377\376\272\4\377\371\266\0\377\304\213"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2136
+  "/\227\0\0\0\0\0\0\0\0\376\356\211\254\377\360\216\377\377\365\236\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2137
+  "\377\370\255\377\377\360\222\377\377\354\206\377\377\363\235\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2138
+  "\362\231\377\377\357\217\377\377\353\200\377\377\354\201\377\377\357"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2139
+  "\210\377\377\354\200\377\377\352x\377\377\347o\377\377\344g\377\377\340"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2140
+  "_\377\377\335V\377\377\334P\377\377\331L\377\377\325B\377\377\324;\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2141
+  "\377\315/\377\377\321=\377\377\332S\377\377\303\23\377\376\275\14\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2142
+  "\376\272\4\377\372\266\0\377\305\213+\253\0\0\0\0\0\0\0\0\375\353\204"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2143
+  "\254\377\360\216\377\377\366\244\377\377\370\263\377\377\355\213\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2144
+  "\377\360\224\377\377\370\252\377\377\367\246\377\377\365\237\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2145
+  "\364\227\377\377\361\217\377\377\357\207\377\377\354\177\377\377\352"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2146
+  "w\377\377\346o\377\377\344f\377\377\337^\377\377\335V\377\377\333M\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2147
+  "\377\327E\377\377\323=\377\377\3225\377\377\313,\377\377\311$\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2148
+  "\343n\377\377\303\23\377\376\275\14\377\376\272\4\377\371\266\0\377\275"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2149
+  "\203'\254\0\0\0\0\0\0\0\0\375\352\201\254\377\360\212\377\377\366\242"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2150
+  "\377\377\371\263\377\377\350\200\377\377\362\230\377\377\366\241\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2151
+  "\377\365\236\377\377\364\231\377\377\362\223\377\377\360\214\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2152
+  "\356\204\377\377\353|\377\377\352t\377\377\345m\377\377\343d\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2153
+  "\336\\\377\377\335T\377\377\333L\377\377\326D\377\377\323<\377\377\321"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2154
+  "3\377\377\312+\377\377\310#\377\377\342m\377\377\302\22\377\376\274\13"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2155
+  "\377\376\272\3\377\370\265\0\377\274\202)\254\0\0\0\0\0\0\0\0\377\353"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2156
+  "\205\245\377\356\204\377\377\364\233\377\377\371\261\377\377\343r\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2157
+  "\377\365\241\377\377\364\227\377\377\363\225\377\377\362\221\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2158
+  "\360\214\377\377\357\206\377\377\354\177\377\377\352x\377\377\350q\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2159
+  "\377\344i\377\377\342a\377\377\336Y\377\377\334R\377\377\332J\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2160
+  "\325B\377\377\323:\377\377\3202\377\377\312)\377\377\310!\377\377\344"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2161
+  "r\377\377\301\22\377\375\274\12\377\375\271\2\377\367\264\0\377\263|"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2162
+  "*\234\0\0\0\0\0\0\0\0\376\353\201\216\377\353~\377\377\362\223\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2163
+  "\371\260\377\377\351\203\377\377\360\217\377\377\360\216\377\377\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2164
+  "\214\377\377\360\211\377\377\356\204\377\377\354\177\377\377\352y\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2165
+  "\377\351s\377\377\345l\377\377\343e\377\377\337]\377\377\335V\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2166
+  "\333N\377\377\330G\377\377\324\77\377\377\3227\377\377\315/\377\377\311"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2167
+  "'\377\377\307\37\377\377\347{\377\376\277\17\377\375\273\10\377\375\271"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2168
+  "\1\377\363\260\0\377\251t2\210\0\0\0\0\0\0\0\0\376\351}p\377\352v\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2169
+  "\377\357\214\377\377\370\257\377\377\360\227\377\377\353\202\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2170
+  "\356\205\377\377\355\202\377\377\354\200\377\377\353|\377\377\352w\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2171
+  "\377\351r\377\377\345l\377\377\344f\377\377\340`\377\377\336Y\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2172
+  "\334Q\377\377\332J\377\377\325C\377\377\323;\377\377\3213\377\377\313"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2173
+  ",\377\377\310$\377\377\307\35\377\377\345v\377\376\275\15\377\375\272"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2174
+  "\6\377\373\267\0\377\343\243\1\377\255z@i\0\0\0\0\0\0\0\0\376\350\177"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2175
+  "F\377\346n\377\377\354\202\377\377\370\253\377\377\366\252\377\377\336"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2176
+  "\\\377\377\353}\377\377\352y\377\377\352v\377\377\351s\377\377\347o\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2177
+  "\377\345k\377\377\343e\377\377\340`\377\377\336Y\377\377\334S\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2178
+  "\333L\377\377\327E\377\377\324>\377\377\3227\377\377\315/\377\377\311"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2179
+  "(\377\377\310\40\377\377\315.\377\377\327S\377\375\274\12\377\376\272"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2180
+  "\2\377\370\265\0\377\313\215\2\377\316\235b\77\0\0\0\0\0\0\0\0\377\361"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2181
+  "\244\26\376\343f\374\377\350s\377\377\365\240\377\377\371\257\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2182
+  "\331P\377\377\352x\377\377\346o\377\377\346m\377\377\345j\377\377\344"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2183
+  "g\377\377\342c\377\377\337^\377\377\336X\377\377\334S\377\377\333M\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2184
+  "\377\327F\377\377\324\77\377\377\3239\377\377\3202\377\377\312+\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2185
+  "\310#\377\377\306\34\377\377\333U\377\376\310+\377\375\273\7\377\374"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2186
+  "\270\0\377\365\262\0\377\275\201\16\370\364\333\264\22\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2187
+  "\0\377\377\377\1\376\340e\320\377\342d\377\377\357\213\377\377\366\244"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2188
+  "\377\377\336^\377\377\343f\377\377\343e\377\377\342c\377\377\341a\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2189
+  "\377\337^\377\377\336Z\377\377\335V\377\377\334Q\377\377\333L\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2190
+  "\327F\377\377\324@\377\377\3239\377\377\3203\377\377\313,\377\377\311"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2191
+  "%\377\377\307\36\377\377\305\27\377\377\340h\377\375\274\12\377\376\272"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2192
+  "\2\377\371\265\0\377\361\260\0\377\256x\40\311\377\377\376\1\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2193
+  "\0\0\0\0\0\0\0\0\376\336a\205\377\335W\377\377\347s\377\377\362\223\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2194
+  "\377\354\202\377\377\322:\377\377\336\\\377\377\336Z\377\377\335X\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2195
+  "\377\335U\377\377\334Q\377\377\333M\377\377\331I\377\377\326D\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2196
+  "\324\77\377\377\3239\377\377\3203\377\377\313-\377\377\311&\377\377\307"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2197
+  "\40\377\377\306\31\377\377\310\"\377\376\332Z\377\375\272\5\377\373\267"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2198
+  "\0\377\364\262\0\377\341\242\1\377\233i2~\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2199
+  "\0\0\377\344u/\376\332N\376\377\337\\\377\377\353|\377\377\355\203\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2200
+  "\376\3204\377\377\333P\377\377\334P\377\377\333N\377\377\333K\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2201
+  "\331H\377\377\326D\377\377\324@\377\377\323<\377\377\3227\377\377\317"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2202
+  "1\377\377\313,\377\377\311&\377\377\307\40\377\377\306\31\377\377\303"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2203
+  "\23\377\377\336d\377\375\305\"\377\375\271\1\377\366\264\0\377\357\257"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2204
+  "\0\377\270}\6\375\325\253w+\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2205
+  "\1\376\330N\307\377\331J\377\377\342c\377\377\347q\377\377\333R\377\376"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2206
+  "\316-\377\377\330F\377\377\326D\377\377\325B\377\377\324\77\377\377\323"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2207
+  "<\377\377\3228\377\377\3214\377\377\315/\377\377\312*\377\377\311%\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2208
+  "\377\307\37\377\377\306\31\377\377\303\23\377\376\306&\377\376\336g\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2209
+  "\375\271\1\377\370\265\0\377\361\260\0\377\351\251\0\377\241l\40\300"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2210
+  "\377\377\377\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\376\331WW\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2211
+  "\323=\377\377\331K\377\377\337]\377\377\335X\377\376\307\37\377\377\321"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2212
+  "6\377\377\323;\377\377\3239\377\377\3226\377\377\3203\377\377\316/\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2213
+  "\377\312+\377\377\311'\377\377\310\"\377\377\307\35\377\377\305\30\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2214
+  "\377\302\22\377\376\275\16\377\377\344v\377\376\277\22\377\371\265\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2215
+  "\377\362\261\0\377\353\253\0\377\301\203\2\377\256\177LP\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2216
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\365\311\4\376\322=\321\377\322"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2217
+  "8\377\377\327F\377\377\331J\377\377\3218\377\376\304\27\377\377\3171"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2218
+  "\377\377\315/\377\377\313-\377\377\312*\377\377\311&\377\377\310#\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2219
+  "\377\307\36\377\377\306\32\377\377\304\25\377\377\300\20\377\376\275"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2220
+  "\14\377\376\324M\377\375\320A\377\370\265\0\377\362\261\0\377\354\254"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2221
+  "\0\377\344\242\0\377\236i\34\312\374\363\335\3\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2222
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\325UJ\377\312+\376\377\3161\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2223
+  "\377\3229\377\377\3204\377\376\306\40\377\376\304\31\377\377\311%\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2224
+  "\377\310#\377\377\310\40\377\377\307\35\377\377\306\32\377\377\304\26"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2225
+  "\377\377\301\22\377\376\276\16\377\375\273\12\377\376\311.\377\375\337"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2226
+  "k\377\367\264\0\377\361\260\0\377\353\253\0\377\345\243\0\377\264x\5"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2227
+  "\374\260\203P\77\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2228
+  "\0\0\0\0\0\0\377\375\362\1\376\315<\263\377\310\"\377\377\311'\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2229
+  "\311'\377\377\310\"\377\376\302\22\377\376\304\26\377\377\306\32\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2230
+  "\377\305\27\377\377\304\24\377\377\301\21\377\376\276\16\377\375\274"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2231
+  "\13\377\375\273\6\377\376\302\32\377\375\344x\377\365\265\6\377\360\257"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2232
+  "\0\377\352\252\0\377\344\242\0\377\322\222\0\377\230f)\236\377\377\372"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2233
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2234
+  "\0\0\0\376\334\206\40\374\305%\355\377\305\30\377\377\306\32\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2235
+  "\305\30\377\377\303\24\377\376\302\22\377\376\302\21\377\376\276\17\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2236
+  "\376\274\14\377\375\273\11\377\375\272\6\377\375\271\2\377\374\304\40"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2237
+  "\377\374\344z\377\363\267\16\377\355\255\0\377\350\247\0\377\343\241"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2238
+  "\0\377\334\233\0\377\233d\24\334\340\275\215\21\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2239
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\365"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2240
+  "\307[Q\371\272\24\374\376\275\16\377\376\275\16\377\376\274\14\377\375"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2241
+  "\274\12\377\375\276\13\377\376\304\30\377\375\273\5\377\375\270\1\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2242
+  "\372\266\0\377\372\306-\377\373\341v\377\357\262\11\377\352\251\0\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2243
+  "\345\243\0\377\340\236\0\377\333\233\0\377\244l\12\364\267\213X5\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2244
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2245
+  "\0\0\0\0\0\0\0\0\0\0\0\0\377\377\376\0\353\270Lz\370\265\10\377\375\272"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2246
+  "\3\377\375\271\2\377\375\271\1\377\374\270\0\377\372\271\4\377\375\307"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2247
+  "#\377\367\274\25\377\371\325V\377\366\327a\377\353\254\5\377\346\244"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2248
+  "\0\377\342\237\0\377\335\234\0\377\330\231\0\377\254r\6\373\244vDT\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2249
+  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2250
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\375\357\2\345\260"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2251
+  "D\215\361\257\4\377\366\263\0\377\364\262\0\377\362\261\0\377\360\257"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2252
+  "\0\377\357\257\2\377\366\3072\377\357\2774\377\345\243\0\377\341\237"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2253
+  "\0\377\335\234\0\377\331\231\0\377\325\226\0\377\254s\6\374\237q>b\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2254
+  "\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2255
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\376\370"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2256
+  "\345\2\335\250C\206\345\245\6\376\352\252\0\377\351\250\0\377\347\245"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2257
+  "\0\377\345\245\0\377\345\245\0\377\336\235\0\377\334\233\0\377\330\231"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2258
+  "\0\377\325\226\0\377\321\223\0\377\246m\7\367\236p=[\377\377\376\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2259
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2260
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2261
+  "\377\370\1\325\242Lg\331\230\13\370\337\236\0\377\335\234\0\377\336\235"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2262
+  "\0\377\342\240\0\377\325\226\0\377\323\225\0\377\320\223\0\377\314\217"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2263
+  "\0\377\234e\15\352\251|KH\377\377\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2264
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2265
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2266
+  "\325\246`B\315\220\30\345\324\225\0\377\324\226\0\377\332\232\0\377\317"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2267
+  "\222\0\377\316\221\0\377\277\203\1\377\225a\30\312\276\222_$\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2268
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2269
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2270
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\350\303\215\30\307\216-\256"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2271
+  "\315\216\4\376\327\230\0\377\316\221\0\377\251p\7\372\227e,\211\355\321"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2272
+  "\246\10\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2273
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2274
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2275
+  "\0\377\375\360\1\313\230QX\272\200\32\345\231e\32\312\261\204Q7\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2276
+  "\376\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2277
+  "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2278
+GdkPixbuf *shield_pixbuf;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2279
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2280
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2281
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2282
+#pragma align 4 (title_center_dimple_unfocused)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2283
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2284
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2285
+static const guint8 title_center_dimple_unfocused[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2286
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2287
+static const guint8 title_center_dimple_unfocused[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2288
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2289
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2290
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2291
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2292
+  /* length: header (24) + pixel_data (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2293
+  "\0\0\0d"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2294
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2295
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2296
+  /* rowstride (4) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2297
+  "\0\0\0\4"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2298
+  /* width (1) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2299
+  "\0\0\0\1"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2300
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2301
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2302
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2303
+  "\231\231\231\377\230\230\230\377\227\227\227\377\225\225\225\377\222"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2304
+  "\222\222\377\216\216\216\377\212\212\212\377\205\205\205\377\200\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2305
+  "\200\377zzz\377sss\377nnn\377hhh\377bbb\377]]]\377YYY\377UUU\377RRR\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2306
+  "QQQ\377"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2307
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2308
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2309
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2310
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2311
+#pragma align 4 (title_left_dimple_unfocused)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2312
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2313
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2314
+static const guint8 title_left_dimple_unfocused[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2315
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2316
+static const guint8 title_left_dimple_unfocused[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2317
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2318
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2319
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2320
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2321
+  /* length: header (24) + pixel_data (1444) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2322
+  "\0\0\5\274"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2323
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2324
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2325
+  /* rowstride (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2326
+  "\0\0\0L"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2327
+  /* width (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2328
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2329
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2330
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2331
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2332
+  "\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2333
+  "\0\205\205\205T\210\210\210\256\212\212\212\355\215\215\215\377\217\217"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2334
+  "\217\377\222\222\222\377\223\223\223\377\225\225\225\377\226\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2335
+  "\377\230\230\230\377\230\230\230\377\231\231\231\377\231\231\231\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2336
+  "\231\231\231\377\377\377\377\0\377\377\377\0\377\377\377\0}}}-\200\200"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2337
+  "\200\317\203\203\203\377\206\206\206\377\211\211\211\377\213\213\213"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2338
+  "\377\216\216\216\377\220\220\220\377\223\223\223\377\224\224\224\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2339
+  "\226\226\226\377\226\226\226\377\227\227\227\377\230\230\230\377\230"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2340
+  "\230\230\377\230\230\230\377\377\377\377\0\377\377\377\0xxxKzzz\366}"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2341
+  "}}\377\200\200\200\377\203\203\203\377\207\207\207\377\212\212\212\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2342
+  "\214\214\214\377\216\216\216\377\221\221\221\377\223\223\223\377\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2343
+  "\224\224\377\225\225\225\377\226\226\226\377\226\226\226\377\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2344
+  "\226\377\226\226\226\377\377\377\377\0rrr-ttt\363www\377zzz\377}}}\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2345
+  "\200\200\200\377\203\203\203\377\207\207\207\377\212\212\212\377\214"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2346
+  "\214\214\377\216\216\216\377\220\220\220\377\222\222\222\377\223\223"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2347
+  "\223\377\223\223\223\377\224\224\224\377\224\224\224\377\224\224\224"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2348
+  "\377lll\3nnn\317ppp\377sss\377vvv\377zzz\377}}}\377\200\200\200\377\203"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2349
+  "\203\203\377\206\206\206\377\211\211\211\377\213\213\213\377\215\215"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2350
+  "\215\377\217\217\217\377\220\220\220\377\220\220\220\377\221\221\221"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2351
+  "\377\221\221\221\377\222\222\222\377iiiNjjj\377lll\377ooo\377rrr\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2352
+  "uuu\377yyy\377}}}\377\177\177\177\377\202\202\202\377\205\205\205\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2353
+  "\210\210\210\377\212\212\212\377\213\213\213\377\214\214\214\377\215"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2354
+  "\215\215\377\215\215\215\377\216\216\216\377\216\216\216\377eee\245e"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2355
+  "ee\377ggg\377jjj\377mmm\377ppp\377ttt\377xxx\377{{{\377~~~\377\201\201"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2356
+  "\201\377\203\203\203\377\205\205\205\377\207\207\207\377\210\210\210"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2357
+  "\377\211\211\211\377\211\211\211\377\212\212\212\377\212\212\212\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2358
+  "aaa\333aaa\377ccc\377eee\377hhh\377kkk\377ooo\377rrr\377vvv\377yyy\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2359
+  "|||\377\177\177\177\377\200\200\200\377\202\202\202\377\203\203\203\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2360
+  "\204\204\204\377\204\204\204\377\205\205\205\377\205\205\205\377]]]\366"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2361
+  "]]]\377^^^\377aaa\377ccc\377fff\377iii\377mmm\377ppp\377ttt\377www\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2362
+  "yyy\377|||\377}}}\377~~~\377\177\177\177\377\177\177\177\377\177\177"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2363
+  "\177\377\177\177\177\377ZZZ\377YYY\377ZZZ\377\\\\\\\377^^^\377aaa\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2364
+  "ddd\377ggg\377kkk\377nnn\377ppp\377sss\377uuu\377www\377xxx\377yyy\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2365
+  "yyy\377zzz\377zzz\377WWW\371VVV\377VVV\377XXX\377ZZZ\377\\\\\\\377__"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2366
+  "_\377bbb\377eee\377hhh\377kkk\377mmm\377ooo\377qqq\377rrr\377sss\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2367
+  "sss\377sss\377sss\377TTT\333SSS\377SSS\377TTT\377VVV\377WWW\377ZZZ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2368
+  "]]]\377___\377bbb\377eee\377ggg\377iii\377kkk\377lll\377lll\377mmm\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2369
+  "mmm\377mmm\377SSS\226QQQ\377QQQ\377QQQ\377RRR\377TTT\377VVV\377XXX\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2370
+  "ZZZ\377]]]\377___\377aaa\377ccc\377eee\377fff\377ggg\377ggg\377ggg\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2371
+  "ggg\377RRRBPPP\377OOO\377OOO\377OOO\377PPP\377RRR\377TTT\377VVV\377X"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2372
+  "XX\377ZZZ\377\\\\\\\377^^^\377```\377```\377aaa\377aaa\377bbb\377bbb"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2373
+  "\377\377\377\377\0OOO\300NNN\377MMM\377MMM\377NNN\377OOO\377PPP\377R"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2374
+  "RR\377TTT\377VVV\377XXX\377YYY\377ZZZ\377[[[\377\\\\\\\377]]]\377]]]"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2375
+  "\377]]]\377\377\377\377\0PPP$NNN\355MMM\377LLL\377MMM\377MMM\377NNN\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2376
+  "OOO\377QQQ\377RRR\377TTT\377UUU\377VVV\377WWW\377XXX\377XXX\377XXX\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2377
+  "YYY\377\377\377\377\0\377\377\377\0OOO<MMM\355LLL\377LLL\377LLL\377M"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2378
+  "MM\377MMM\377OOO\377PPP\377QQQ\377RRR\377SSS\377SSS\377TTT\377TTT\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2379
+  "TTT\377UUU\377\377\377\377\0\377\377\377\0\377\377\377\0OOO$MMM\300M"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2380
+  "MM\377LLL\377LLL\377MMM\377MMM\377NNN\377OOO\377PPP\377PPP\377QQQ\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2381
+  "RRR\377RRR\377RRR\377RRR\377\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2382
+  "\0\377\377\377\0\377\377\377\0NNNEMMM\231MMM\314MMM\374MMM\377NNN\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2383
+  "NNN\377OOO\377PPP\377PPP\377PPP\377QQQ\377QQQ\377QQQ\377"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2384
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2385
+/* GdkPixbuf RGBA C-Source image dump */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2386
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2387
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2388
+#pragma align 4 (title_right_dimple_unfocused)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2389
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2390
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2391
+static const guint8 title_right_dimple_unfocused[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2392
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2393
+static const guint8 title_right_dimple_unfocused[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2394
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2395
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2396
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2397
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2398
+  /* length: header (24) + pixel_data (1444) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2399
+  "\0\0\5\274"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2400
+  /* pixdata_type (0x1010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2401
+  "\1\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2402
+  /* rowstride (76) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2403
+  "\0\0\0L"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2404
+  /* width (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2405
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2406
+  /* height (19) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2407
+  "\0\0\0\23"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2408
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2409
+  "\232\232\232\377\232\232\232\377\232\232\232\377\232\232\232\377\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2410
+  "\233\233\377\233\233\233\377\234\234\234\377\235\235\235\377\236\236"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2411
+  "\236\377\236\236\236\377\237\237\237\377\240\240\240\355\240\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2412
+  "\256\240\240\240T\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2413
+  "\0\377\377\377\0\231\231\231\377\231\231\231\377\231\231\231\377\232"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2414
+  "\232\232\377\232\232\232\377\233\233\233\377\234\234\234\377\235\235"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2415
+  "\235\377\236\236\236\377\236\236\236\377\240\240\240\377\240\240\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2416
+  "\377\241\241\241\377\241\241\241\377\240\240\240\317\240\240\240-\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2417
+  "\377\377\0\377\377\377\0\377\377\377\0\227\227\227\377\227\227\227\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2418
+  "\230\230\230\377\230\230\230\377\230\230\230\377\231\231\231\377\232"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2419
+  "\232\232\377\233\233\233\377\235\235\235\377\236\236\236\377\237\237"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2420
+  "\237\377\240\240\240\377\240\240\240\377\241\241\241\377\241\241\241"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2421
+  "\377\240\240\240\366\237\237\237K\377\377\377\0\377\377\377\0\225\225"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2422
+  "\225\377\225\225\225\377\225\225\225\377\226\226\226\377\226\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2423
+  "\377\227\227\227\377\230\230\230\377\232\232\232\377\233\233\233\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2424
+  "\234\234\234\377\235\235\235\377\236\236\236\377\240\240\240\377\240"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2425
+  "\240\240\377\240\240\240\377\240\240\240\377\237\237\237\363\236\236"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2426
+  "\236-\377\377\377\0\222\222\222\377\222\222\222\377\222\222\222\377\223"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2427
+  "\223\223\377\223\223\223\377\224\224\224\377\225\225\225\377\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2428
+  "\226\377\230\230\230\377\232\232\232\377\233\233\233\377\235\235\235"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2429
+  "\377\236\236\236\377\236\236\236\377\237\237\237\377\237\237\237\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2430
+  "\236\236\236\377\235\235\235\317\234\234\234\3\216\216\216\377\216\216"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2431
+  "\216\377\216\216\216\377\217\217\217\377\220\220\220\377\220\220\220"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2432
+  "\377\222\222\222\377\223\223\223\377\225\225\225\377\226\226\226\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2433
+  "\230\230\230\377\232\232\232\377\233\233\233\377\234\234\234\377\235"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2434
+  "\235\235\377\235\235\235\377\235\235\235\377\234\234\234\377\233\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2435
+  "\233N\212\212\212\377\212\212\212\377\212\212\212\377\213\213\213\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2436
+  "\213\213\213\377\214\214\214\377\215\215\215\377\216\216\216\377\220"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2437
+  "\220\220\377\222\222\222\377\224\224\224\377\225\225\225\377\227\227"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2438
+  "\227\377\231\231\231\377\232\232\232\377\232\232\232\377\233\233\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2439
+  "\377\232\232\232\377\231\231\231\245\205\205\205\377\205\205\205\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2440
+  "\205\205\205\377\206\206\206\377\206\206\206\377\207\207\207\377\210"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2441
+  "\210\210\377\212\212\212\377\213\213\213\377\215\215\215\377\217\217"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2442
+  "\217\377\221\221\221\377\223\223\223\377\225\225\225\377\226\226\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2443
+  "\377\227\227\227\377\230\230\230\377\230\230\230\377\227\227\227\336"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2444
+  "\200\200\200\377\200\200\200\377\200\200\200\377\200\200\200\377\201"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2445
+  "\201\201\377\202\202\202\377\203\203\203\377\204\204\204\377\206\206"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2446
+  "\206\377\210\210\210\377\212\212\212\377\214\214\214\377\216\216\216"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2447
+  "\377\220\220\220\377\222\222\222\377\223\223\223\377\224\224\224\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2448
+  "\224\224\224\377\224\224\224\371zzz\377zzz\377zzz\377{{{\377{{{\377|"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2449
+  "||\377}}}\377\177\177\177\377\200\200\200\377\202\202\202\377\204\204"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2450
+  "\204\377\206\206\206\377\210\210\210\377\213\213\213\377\215\215\215"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2451
+  "\377\216\216\216\377\220\220\220\377\220\220\220\377\221\221\221\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2452
+  "ttt\377ttt\377ttt\377ttt\377uuu\377vvv\377www\377yyy\377zzz\377|||\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2453
+  "~~~\377\200\200\200\377\203\203\203\377\205\205\205\377\210\210\210\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2454
+  "\212\212\212\377\213\213\213\377\214\214\214\377\215\215\215\371nnn\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2455
+  "nnn\377nnn\377nnn\377ooo\377ooo\377ppp\377rrr\377ttt\377vvv\377yyy\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2456
+  "{{{\377}}}\377\200\200\200\377\202\202\202\377\205\205\205\377\207\207"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2457
+  "\207\377\210\210\210\377\211\211\211\333hhh\377hhh\377hhh\377hhh\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2458
+  "iii\377iii\377kkk\377lll\377nnn\377ppp\377sss\377uuu\377xxx\377{{{\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2459
+  "}}}\377\200\200\200\377\202\202\202\377\204\204\204\377\205\205\205\226"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2460
+  "bbb\377bbb\377bbb\377ccc\377ccc\377ddd\377eee\377ggg\377hhh\377kkk\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2461
+  "mmm\377ppp\377sss\377vvv\377yyy\377|||\377~~~\377\200\200\200\377\202"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2462
+  "\202\202B]]]\377]]]\377]]]\377^^^\377^^^\377___\377```\377bbb\377ccc"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2463
+  "\377eee\377hhh\377kkk\377nnn\377qqq\377ttt\377www\377zzz\377}}}\300\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2464
+  "\377\377\0YYY\377YYY\377YYY\377YYY\377ZZZ\377[[[\377\\\\\\\377]]]\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2465
+  "___\377aaa\377ddd\377ggg\377iii\377mmm\377ppp\377sss\377vvv\355yyy$\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2466
+  "\377\377\0UUU\377UUU\377UUU\377VVV\377VVV\377WWW\377XXX\377ZZZ\377[["
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2467
+  "[\377^^^\377```\377ccc\377fff\377iii\377lll\377ppp\355sss<\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2468
+  "\0\377\377\377\0SSS\377SSS\377SSS\377SSS\377TTT\377TTT\377VVV\377WWW"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2469
+  "\377YYY\377[[[\377^^^\377aaa\377ddd\377ggg\377jjj\300nnn$\377\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2470
+  "\0\377\377\377\0\377\377\377\0QQQ\377QQQ\377RRR\377RRR\377SSS\377SSS"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2471
+  "\377TTT\377VVV\377XXX\377ZZZ\377\\\\\\\377___\314bbb\231eeeE\377\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2472
+  "\377\0\377\377\377\0\377\377\377\0\377\377\377\0\377\377\377\0"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2473
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2474
+#endif /* HAVE_XTSOL */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2475
+#ifdef __SUNPRO_C
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2476
+#pragma align 4 (my_pixbuf)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2477
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2478
+#ifdef __GNUC__
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2479
+static const guint8 tabpopup_highlight[] __attribute__ ((__aligned__ (4))) =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2480
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2481
+static const guint8 tabpopup_highlight[] =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2482
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2483
+{ ""
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2484
+  /* Pixbuf magic (0x47646b50) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2485
+  "GdkP"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2486
+  /* length: header (24) + pixel_data (421) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2487
+  "\0\0\1\275"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2488
+  /* pixdata_type (0x2010002) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2489
+  "\2\1\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2490
+  /* rowstride (132) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2491
+  "\0\0\0\204"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2492
+  /* width (33) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2493
+  "\0\0\0!"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2494
+  /* height (18) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2495
+  "\0\0\0\22"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2496
+  /* pixel_data: */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2497
+  "\246\0\0\0\0\3^^^F^^^\215^^^\307\221^^^\377\3^^^\307^^^\215^^^F\210\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2498
+  "\0\0\0\3^^^\40^^^\214^^^\363\225^^^\377\3^^^\363^^^\214^^^\40\205\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2499
+  "\0\0\2^^^\40^^^\243\231^^^\377\2^^^\243^^^\40\204\0\0\0\0\1^^^\214\233"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2500
+  "^^^\377\1^^^\214\203\0\0\0\0\2^^^F^^^\363\233^^^\377\2^^^\363^^^F\202"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2501
+  "\0\0\0\0\1^^^\215\235^^^\377\1^^^\215\202\0\0\0\0\1^^^\307\235^^^\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2502
+  "\1^^^\307\202\0\0\0\0\1^^^\360\235^^^\377\1^^^\360\202\0\0\0\0\1^^^\360"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2503
+  "\235^^^\377\1^^^\360\202\0\0\0\0\1^^^\307\235^^^\377\1^^^\307\202\0\0"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2504
+  "\0\0\1^^^\215\235^^^\377\1^^^\215\202\0\0\0\0\2^^^F^^^\363\233^^^\377"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2505
+  "\2^^^\363^^^F\203\0\0\0\0\1^^^\214\233^^^\377\1^^^\214\204\0\0\0\0\2"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2506
+  "^^^\40^^^\243\231^^^\377\2^^^\243^^^\40\205\0\0\0\0\3^^^\40^^^\214^^"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2507
+  "^\363\225^^^\377\3^^^\363^^^\214^^^\40\210\0\0\0\0\3^^^F^^^\215^^^\307"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2508
+  "\221^^^\377\3^^^\307^^^\215^^^F\246\0\0\0\0"};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2509
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2510
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2511
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2512
+#endif /*TRUSTED_PICS_H */
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  2513
diff -Nrup metacity-2.16.3/src/trusted.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  2514
--- metacity-2.16.3/src/trusted.c	1970-01-01 01:00:00.000000000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  2515
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted.c	2006-11-02 13:21:04.028609000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2516
@@ -0,0 +1,1131 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2517
+/* Metacity trusted */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2518
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2519
+/* 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2520
+ * Copyright (C) 2005 Erwann Chenede
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2521
+ */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2522
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2523
+#include <config.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2524
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2525
+#include <string.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2526
+#include <X11/Xatom.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2527
+#include <stdlib.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2528
+#include <dlfcn.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2529
+#include <link.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2530
+#include "trusted.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2531
+#include "window.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2532
+#include "display.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2533
+#include "screen.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2534
+#include "workspace.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2535
+#include "xprops.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2536
+#include "trusted-pics.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2537
+#include "errors.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2538
+#include "prefs.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2539
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2540
+static
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2541
+void * dlopen_tsol (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2542
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2543
+   void  *handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2544
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2545
+   if ((handle = dlopen ("/usr/lib/libtsol.so.2", RTLD_LAZY)) != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2546
+       return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2547
+   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2548
+   return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2549
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2550
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2551
+static
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2552
+void * dlopen_gnometsol (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2553
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2554
+   void  *handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2555
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2556
+   if ((handle = dlopen ("/usr/lib/libgnometsol.so", RTLD_LAZY)) != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2557
+       return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2558
+   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2559
+   return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2560
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2561
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2562
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2563
+static
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2564
+void * dlopen_xtsol (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2565
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2566
+   void  *handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2567
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2568
+   if ((handle = dlopen ("/usr/lib/libXtsol.so.1", RTLD_LAZY)) != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2569
+       return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2570
+   if ((handle = dlopen ("/usr/openwin/lib/libXtsol.so.1", RTLD_LAZY)) != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2571
+       return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2572
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2573
+   return handle;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2574
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2575
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2576
+static gboolean 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2577
+tsol_is_multi_label_session (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2578
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2579
+  static int trusted = -1;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2580
+  if (trusted < 0) {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2581
+    if (getenv ("TRUSTED_SESSION")) {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2582
+      trusted = 1;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2583
+    } else {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2584
+      trusted = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2585
+    }      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2586
+  }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2587
+  return trusted ? TRUE : FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2588
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2589
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2590
+gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2591
+tsol_use_trusted_extensions (void)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2592
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2593
+  static gboolean _trusted_extensions_initialised = FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2594
+  static gpointer tsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2595
+  static gpointer xtsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2596
+  static gpointer gnometsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2597
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2598
+    if (!_trusted_extensions_initialised) {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2599
+        char *label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2600
+        _trusted_extensions_initialised = TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2601
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2602
+        if (!tsol_is_multi_label_session ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2603
+            return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2604
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2605
+        tsol_handle = dlopen_tsol ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2606
+        if (tsol_handle != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2607
+            xtsol_handle = dlopen_xtsol ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2608
+        if (tsol_handle && xtsol_handle) {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2609
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2610
+           /* Replacement libtsol functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2611
+           libtsol_label_to_str = (tsol_label_to_str) dlsym (tsol_handle, "label_to_str"); 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2612
+           libtsol_str_to_label = (tsol_str_to_label) dlsym (tsol_handle, "str_to_label");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2613
+           libtsol_m_label_free = (tsol_m_label_free) dlsym (tsol_handle, "m_label_free");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2614
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2615
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2616
+           /* Other misc. libtsol functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2617
+           /* libtsol_blminimum = (tsol_blminimum) dlsym (tsol_handle, "blminimum"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2618
+           /* libtsol_blmaximum = (tsol_blmaximum) dlsym (tsol_handle, "blmaximum"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2619
+           libtsol_blinrange = (tsol_blinrange) dlsym (tsol_handle, "blinrange");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2620
+           /* libtsol_getuserrange = (tsol_getuserrange) dlsym (tsol_handle, "getuserrange"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2621
+           /* libtsol_blabel_alloc = (tsol_blabel_alloc) dlsym (tsol_handle, "blabel_alloc"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2622
+           /* libtsol_blabel_free  = (tsol_blabel_free)  dlsym (tsol_handle, "blabel_free"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2623
+           /* libtsol_bsllow  = (tsol_bsllow)  dlsym (tsol_handle, "bsllow"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2624
+           /* libtsol_bslhigh = (tsol_bslhigh) dlsym (tsol_handle, "bslhigh"); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2625
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2626
+           /* libXtsol functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2627
+           libxtsol_XTSOLgetClientLabel = (xtsol_XTSOLgetClientLabel) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2628
+									     "XTSOLgetClientLabel");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2629
+           libxtsol_XTSOLIsWindowTrusted = (xtsol_XTSOLIsWindowTrusted) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2630
+									       "XTSOLIsWindowTrusted");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2631
+	   libxtsol_XTSOLsetResLabel = (xtsol_XTSOLsetResLabel) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2632
+									     "XTSOLsetResLabel");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2633
+	   libxtsol_XTSOLsetResUID = (xtsol_XTSOLsetResUID) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2634
+									     "XTSOLsetResUID");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2635
+	   libxtsol_XTSOLgetResLabel = (xtsol_XTSOLgetResLabel) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2636
+									     "XTSOLgetResLabel");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2637
+	   libxtsol_XTSOLgetResUID = (xtsol_XTSOLgetResUID) dlsym (xtsol_handle,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2638
+									     "XTSOLgetResUID");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2639
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2640
+           if (/*libtsol_stobsl == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2641
+               libtsol_bsltos == NULL || */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2642
+               libtsol_label_to_str == NULL || 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2643
+               libtsol_str_to_label == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2644
+               libtsol_m_label_free == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2645
+               /*libtsol_blminimum == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2646
+               libtsol_blmaximum == NULL ||*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2647
+               libtsol_blinrange == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2648
+               /* libtsol_getdevicerange == NULL || 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2649
+               libtsol_getuserrange == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2650
+               libtsol_blabel_alloc == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2651
+               libtsol_blabel_free  == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2652
+               libtsol_bsllow  == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2653
+               libtsol_bslhigh == NULL || */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2654
+               libxtsol_XTSOLgetClientLabel == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2655
+               libxtsol_XTSOLIsWindowTrusted == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2656
+	       libxtsol_XTSOLsetResLabel == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2657
+	       libxtsol_XTSOLsetResUID == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2658
+	       libxtsol_XTSOLgetResLabel == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2659
+	       libxtsol_XTSOLgetResUID == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2660
+	     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2661
+               dlclose (tsol_handle);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2662
+               dlclose (xtsol_handle);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2663
+               tsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2664
+               xtsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2665
+            }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2666
+        }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2667
+	gnometsol_handle = dlopen_gnometsol ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2668
+	if (gnometsol_handle != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2669
+	  {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2670
+	    libgnome_tsol_constraint_image_render = (gnome_tsol_constraint_image_render) dlsym (gnometsol_handle, "gnome_tsol_constraint_image_render");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2671
+	    libgnome_tsol_constraint_image_set_border = (gnome_tsol_constraint_image_set_border) dlsym (gnometsol_handle, "gnome_tsol_constraint_image_set_border");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2672
+	    libgnome_tsol_constraint_image_set_stretch = (gnome_tsol_constraint_image_set_stretch) dlsym (gnometsol_handle, "gnome_tsol_constraint_image_set_stretch");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2673
+	    libgnome_tsol_constraint_image_colorize = (gnome_tsol_constraint_image_colorize) dlsym (gnometsol_handle, "gnome_tsol_constraint_image_colorize");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2674
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2675
+	    if (libgnome_tsol_constraint_image_render == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2676
+		libgnome_tsol_constraint_image_set_border == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2677
+		libgnome_tsol_constraint_image_set_stretch == NULL ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2678
+		libgnome_tsol_constraint_image_colorize == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2679
+		gnometsol_handle = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2680
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2681
+	  }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2682
+	
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2683
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2684
+    return ((tsol_handle != NULL) && (xtsol_handle != NULL) && (gnometsol_handle != NULL));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2685
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2686
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2687
+static gboolean
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2688
+tsol_use_xtsol_extension ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2689
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2690
+  static int foundxtsol = -1;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2691
+  int major_code, first_event, first_error;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2692
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2693
+  if (foundxtsol < 0) { 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2694
+      foundxtsol = XQueryExtension (gdk_display, "SUN_TSOL", &major_code,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2695
+                                    &first_event, &first_error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2696
+  }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2697
+  return foundxtsol;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2698
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2699
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2700
+gboolean tsol_is_available ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2701
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2702
+  if (tsol_use_xtsol_extension () && tsol_use_trusted_extensions ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2703
+    return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2704
+  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2705
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2706
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2707
+MetaDrawOpList * tsol_theme_trusted_title_ops_get (MetaFrameFocus focus)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2708
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2709
+  static MetaDrawOpList *op_list = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2710
+  if (op_list == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2711
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2712
+      MetaDrawOp *op;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2713
+      GError	 **error = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2714
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2715
+      op_list = meta_draw_op_list_new (6);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2716
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2717
+      /* inspired from Bluecruve title_gradient draw_ops */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2718
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2719
+      /* background gradient */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2720
+      op = meta_draw_op_new (META_DRAW_GRADIENT);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2721
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2722
+      op->data.gradient.x = g_strdup ("left_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2723
+      op->data.gradient.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2724
+      op->data.gradient.width =  g_strdup ("width - (left_width + right_width)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2725
+      op->data.gradient.height = g_strdup ("height - 2");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2726
+      op->data.gradient.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2727
+      op->data.gradient.gradient_spec = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2728
+	meta_gradient_spec_new (meta_gradient_type_from_string ("vertical"));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2729
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2730
+      /* Similar to bluecurve Gradient */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2731
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2732
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2733
+			meta_color_spec_new_from_string ("blend/gtk:light[NORMAL]/gtk:bg[NORMAL]/0.7", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2734
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2735
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2736
+			meta_color_spec_new_from_string ("blend/gtk:light[NORMAL]/gtk:bg[NORMAL]/0.95", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2737
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2738
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2739
+			meta_color_spec_new_from_string ("blend/gtk:light[NORMAL]/gtk:bg[NORMAL]/1.0", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2740
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2741
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2742
+			meta_color_spec_new_from_string ("blend/gtk:light[NORMAL]/gtk:bg[NORMAL]/0.95", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2743
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2744
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2745
+			meta_color_spec_new_from_string ("blend/gtk:light[NORMAL]/gtk:bg[NORMAL]/0.7", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2746
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2747
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2748
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2749
+      /* background alpha image */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2750
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2751
+      op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2752
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2753
+      op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, label_arrows, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2754
+      op->data.image.colorize_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2755
+      op->data.image.x = g_strdup ("left_width + 1");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2756
+      op->data.image.y = g_strdup ("2");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2757
+      op->data.image.width = g_strdup ("width - (left_width + right_width)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2758
+      op->data.image.height = g_strdup ("(height-4)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2759
+      op->data.image.alpha_spec = meta_alpha_gradient_spec_new (META_GRADIENT_HORIZONTAL, 5);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2760
+      op->data.image.alpha_spec->alphas[0] = (unsigned char) 255 * 0.9;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2761
+      op->data.image.alpha_spec->alphas[1] = (unsigned char) 255 * 0.4;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2762
+      op->data.image.alpha_spec->alphas[2] = (unsigned char) 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2763
+      op->data.image.alpha_spec->alphas[3] = (unsigned char) 255 * 0.4;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2764
+      op->data.image.alpha_spec->alphas[4] = (unsigned char) 255 * 0.9;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2765
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2766
+      op->data.image.fill_type = meta_image_fill_type_from_string ("tile");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2767
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2768
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2769
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2770
+      /* top shine first line */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2771
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2772
+      op = meta_draw_op_new (META_DRAW_GRADIENT);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2773
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2774
+      op->data.gradient.x = g_strdup ("left_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2775
+      op->data.gradient.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2776
+      op->data.gradient.width =  g_strdup ("width - (left_width + right_width)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2777
+      op->data.gradient.height = g_strdup ("1");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2778
+      op->data.gradient.alpha_spec = meta_alpha_gradient_spec_new (META_GRADIENT_HORIZONTAL, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2779
+      op->data.image.alpha_spec->alphas[0] = (unsigned char) 255 * 0.2;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2780
+      op->data.gradient.gradient_spec = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2781
+	meta_gradient_spec_new (meta_gradient_type_from_string ("vertical"));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2782
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2783
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2784
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2785
+			meta_color_spec_new_from_string ("shade/gtk:bg[NORMAL]/2.0", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2786
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2787
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2788
+			meta_color_spec_new_from_string ("shade/gtk:bg[NORMAL]/1.7", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2789
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2790
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2791
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2792
+      /* top shine second line */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2793
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2794
+      op = meta_draw_op_new (META_DRAW_GRADIENT);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2795
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2796
+      op->data.gradient.x = g_strdup ("left_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2797
+      op->data.gradient.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2798
+      op->data.gradient.width =  g_strdup ("width - (left_width + right_width)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2799
+      op->data.gradient.height = g_strdup ("1");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2800
+      op->data.gradient.alpha_spec = meta_alpha_gradient_spec_new (META_GRADIENT_HORIZONTAL, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2801
+      op->data.image.alpha_spec->alphas[0] = (unsigned char) 255 * 0.4;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2802
+      op->data.gradient.gradient_spec = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2803
+	meta_gradient_spec_new (meta_gradient_type_from_string ("vertical"));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2804
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2805
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2806
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2807
+			meta_color_spec_new_from_string ("shade/gtk:bg[NORMAL]/2.0", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2808
+      op->data.gradient.gradient_spec->color_specs = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2809
+	g_slist_append (op->data.gradient.gradient_spec->color_specs,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2810
+			meta_color_spec_new_from_string ("shade/gtk:bg[NORMAL]/1.4", error));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2811
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2812
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2813
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2814
+      /* background alpha image */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2815
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2816
+      op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2817
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2818
+      op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_gradient, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2819
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2820
+      op->data.image.colorize_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2821
+      op->data.image.x = g_strdup ("left_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2822
+      op->data.image.y = g_strdup ("height - object_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2823
+      op->data.image.width = g_strdup ("width - (left_width + right_width)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2824
+      op->data.image.height = g_strdup ("object_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2825
+      op->data.image.alpha_spec = meta_alpha_gradient_spec_new (META_GRADIENT_HORIZONTAL, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2826
+      op->data.image.alpha_spec->alphas[0] = (unsigned char) 255 * 0.2;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2827
+      op->data.image.colorize_spec = meta_color_spec_new_from_string ("shade/gtk:bg[NORMAL]/2.0", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2828
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2829
+      op->data.image.fill_type = meta_image_fill_type_from_string ("tile");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2830
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2831
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2832
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2833
+      op = meta_draw_op_new (META_DRAW_TITLE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2834
+      op->data.trusted_label.color_spec = meta_color_spec_new_from_string ("black", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2835
+      op->data.title.x = g_strdup ("(width - title_width) / 2");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2836
+      op->data.title.y = g_strdup ("(height - title_height) / 2");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2837
+      meta_draw_op_list_append (op_list, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2838
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2839
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2840
+  meta_draw_op_list_ref (op_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2841
+  return op_list;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2842
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2843
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2844
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2845
+/* create and return drawing ops for the window trusted label  */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2846
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2847
+MetaDrawOpList * tsol_theme_trusted_label_ops_get (MetaFrameFocus focus)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2848
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2849
+  static MetaDrawOpList *op_list_focus = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2850
+  static MetaDrawOpList *op_list_unfocused = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2851
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2852
+  if (focus == META_FRAME_FOCUS_YES)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2853
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2854
+      if (op_list_focus == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2855
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2856
+	  MetaDrawOp *op;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2857
+	  GError	 **error = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2858
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2859
+	  op_list_focus = meta_draw_op_list_new (5);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2860
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2861
+	  /* dimple center */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2862
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2863
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2864
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2865
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2866
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_center_dimple, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2867
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2868
+	  op->data.image.x = g_strdup ("19");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2869
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2870
+	  op->data.image.width = g_strdup ("width - (19*2)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2871
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2872
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2873
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2874
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2875
+	  meta_draw_op_list_append (op_list_focus, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2876
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2877
+	  /* left dimple */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2878
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2879
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2880
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2881
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_left_dimple, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2882
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2883
+	  op->data.image.x = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2884
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2885
+	  op->data.image.width = g_strdup ("object_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2886
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2887
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2888
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2889
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2890
+	  meta_draw_op_list_append (op_list_focus, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2891
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2892
+	  /* right dimple */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2893
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2894
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2895
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2896
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_right_dimple, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2897
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2898
+	  op->data.image.x = g_strdup ("width-(object_width+1)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2899
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2900
+	  op->data.image.width = g_strdup ("object_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2901
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2902
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2903
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2904
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2905
+	  meta_draw_op_list_append (op_list_focus, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2906
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2907
+	  /*Trusted Label */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2908
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2909
+	  op = meta_draw_op_new (META_DRAW_TRUSTED_LABEL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2910
+	  /* dummy value */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2911
+	  op->data.trusted_label.color_spec = meta_color_spec_new_from_string ("black", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2912
+	  op->data.title.x = g_strdup ("10");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2913
+	  op->data.title.y = g_strdup ("5");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2914
+	  meta_draw_op_list_append (op_list_focus, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2915
+     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2916
+	  /* shield icon */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2917
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2918
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2919
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2920
+	  if (shield_pixbuf == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2921
+	    shield_pixbuf = gdk_pixbuf_new_from_inline (-1, shield, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2922
+	  op->data.image.pixbuf = shield_pixbuf;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2923
+	  op->data.image.colorize_spec = NULL; 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2924
+	  op->data.image.x = g_strdup ("((width - trusted_label_width) / 2) - (trusted_label_height *3)");  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2925
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2926
+	  op->data.image.width = g_strdup ("trusted_label_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2927
+	  op->data.image.height = g_strdup ("trusted_label_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2928
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2929
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2930
+	  meta_draw_op_list_append (op_list_focus, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2931
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2932
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2933
+      meta_draw_op_list_ref (op_list_focus);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2934
+      return op_list_focus;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2935
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2936
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2937
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2938
+      if (op_list_unfocused == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2939
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2940
+	  MetaDrawOp *op;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2941
+	  GError	 **error = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2942
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2943
+	  op_list_unfocused = meta_draw_op_list_new (5);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2944
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2945
+	  /* dimple center */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2946
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2947
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2948
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2949
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2950
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_center_dimple_unfocused, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2951
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2952
+	  op->data.image.x = g_strdup ("19");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2953
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2954
+	  op->data.image.width = g_strdup ("width - (19*2)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2955
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2956
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2957
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2958
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2959
+	  meta_draw_op_list_append (op_list_unfocused, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2960
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2961
+	  /* left dimple */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2962
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2963
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2964
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2965
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_left_dimple_unfocused, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2966
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2967
+	  op->data.image.x = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2968
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2969
+	  op->data.image.width = g_strdup ("object_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2970
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2971
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2972
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2973
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2974
+	  meta_draw_op_list_append (op_list_unfocused, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2975
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2976
+	  /* right dimple */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2977
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2978
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2979
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2980
+	  op->data.image.pixbuf = gdk_pixbuf_new_from_inline (-1, title_right_dimple_unfocused, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2981
+	  op->data.image.colorize_spec =  meta_color_spec_new_from_string ("label", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2982
+	  op->data.image.x = g_strdup ("width-(object_width+1)");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2983
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2984
+	  op->data.image.width = g_strdup ("object_width");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2985
+	  op->data.image.height = g_strdup ("height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2986
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2987
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2988
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2989
+	  meta_draw_op_list_append (op_list_unfocused, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2990
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2991
+	  /*Trusted Label */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2992
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2993
+	  op = meta_draw_op_new (META_DRAW_TRUSTED_LABEL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2994
+	  /* dummy value */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2995
+	  op->data.trusted_label.color_spec = meta_color_spec_new_from_string ("black", error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2996
+	  op->data.title.x = g_strdup ("10");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2997
+	  op->data.title.y = g_strdup ("5");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2998
+	  meta_draw_op_list_append (op_list_unfocused, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  2999
+     
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3000
+	  /* shield icon */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3001
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3002
+	  op = meta_draw_op_new (META_DRAW_IMAGE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3003
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3004
+	  if (shield_pixbuf == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3005
+	    shield_pixbuf = gdk_pixbuf_new_from_inline (-1, shield, FALSE, error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3006
+	  op->data.image.pixbuf = shield_pixbuf;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3007
+	  op->data.image.colorize_spec = NULL; 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3008
+	  op->data.image.x = g_strdup ("((width - trusted_label_width) / 2) - (trusted_label_height *3)");  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3009
+	  op->data.image.y = g_strdup ("0");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3010
+	  op->data.image.width = g_strdup ("trusted_label_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3011
+	  op->data.image.height = g_strdup ("trusted_label_height");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3012
+	  op->data.image.alpha_spec = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3013
+	  op->data.image.fill_type = META_IMAGE_FILL_SCALE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3014
+	  meta_draw_op_list_append (op_list_unfocused, op);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3015
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3016
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3017
+      meta_draw_op_list_ref (op_list_unfocused);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3018
+      return op_list_unfocused;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3019
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3020
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3021
+static gint
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3022
+trusted_label_string_compare (MetaTrustedLabel *tmp, char *searched_label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3023
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3024
+  return strcmp (searched_label, tmp->name);  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3025
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3026
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3027
+static char *
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3028
+get_window_label (Display *xdisplay, Window xwindow)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3029
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3030
+   m_label_t label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3031
+   int error;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3032
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3033
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3034
+      return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3035
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3036
+  if (libxtsol_XTSOLIsWindowTrusted (xdisplay, xwindow))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3037
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3038
+      return g_strdup ("Trusted Path");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3039
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3040
+  else if (libxtsol_XTSOLgetClientLabel (xdisplay, xwindow, &label))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3041
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3042
+      char *string = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3043
+      libtsol_label_to_str (&label, &string, M_LABEL, DEF_NAMES, &error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3044
+      return string;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3045
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3046
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3047
+    return g_strdup ("didn't get the label\n");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3048
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3049
+static char *
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3050
+getlabelcolor(Display *xdisplay, Window xwindow)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3051
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3052
+#define DEFAULT_COLOR	"white"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3053
+  char *colorname;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3054
+  m_label_t label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3055
+  int error;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3056
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3057
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3058
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3059
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3060
+  if (libxtsol_XTSOLgetClientLabel (xdisplay, xwindow, &label))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3061
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3062
+      libtsol_label_to_str (&label, &colorname, M_COLOR, DEF_NAMES, &error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3063
+      if (colorname == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3064
+	return g_strdup(DEFAULT_COLOR);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3065
+      else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3066
+	return g_strdup(colorname);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3067
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3068
+  return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3069
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3070
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3071
+MetaTrustedLabel* tsol_xwindow_label_get (MetaDisplay *display, Window xwindow)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3072
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3073
+  MetaTrustedLabel *label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3074
+  GSList *stored_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3075
+  char *label_name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3076
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3077
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3078
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3079
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3080
+  label_name = get_window_label (display->xdisplay, xwindow);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3081
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3082
+  /* Look if the label already exist */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3083
+   stored_label = g_slist_find_custom (display->labels, label_name, (GCompareFunc)trusted_label_string_compare);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3084
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3085
+  if (stored_label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3086
+    return (MetaTrustedLabel*) stored_label->data;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3087
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3088
+  /* create new MetaTrustedLabel */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3089
+  label = g_new0 (MetaTrustedLabel, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3090
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3091
+  label->name = label_name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3092
+  /* Layout is initialized in meta_frame_style_draw */ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3093
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3094
+  label->color = meta_color_spec_new (META_COLOR_SPEC_BASIC);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3095
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3096
+  if (!gdk_color_parse ((const char*)getlabelcolor (display->xdisplay, xwindow), &label->color->data.basic.color))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3097
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3098
+      label->color->data.basic.color.red = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3099
+      label->color->data.basic.color.green = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3100
+      label->color->data.basic.color.blue = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3101
+      g_warning ("gdk_color_parse couldn't parse the label color\n");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3102
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3103
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3104
+  display->labels = g_slist_append (display->labels, label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3105
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3106
+  return label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3107
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3108
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3109
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3110
+MetaTrustedLabel* 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3111
+tsol_meta_window_label_get (MetaWindow  *window)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3112
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3113
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3114
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3115
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3116
+  return tsol_xwindow_label_get (window->display, window->xwindow);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3117
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3118
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3119
+gboolean tsol_should_label_layout_be_black (MetaColorSpec *bkg)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3120
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3121
+  int ntsc;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3122
+  ntsc = ((bkg->data.basic.color.red) * .4450 +
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3123
+	   (bkg->data.basic.color.blue) * .030 +
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3124
+	   (bkg->data.basic.color.green) * .525);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3125
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3126
+  /* printf ("ntsc %d ->",ntsc); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3127
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3128
+  if ((65535 - ntsc) < .61 * 65535)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3129
+    return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3130
+  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3131
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3132
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3133
+static Window
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3134
+get_window_at_pointer (Display *xdisplay)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3135
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3136
+  Window root;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3137
+  Window child;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3138
+  int rootx = -1, rooty = -1;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3139
+  int winx, winy;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3140
+  unsigned int xmask;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3141
+                                                                                
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3142
+  XQueryPointer (xdisplay, DefaultRootWindow (xdisplay),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3143
+                 &root, &child, &rootx, &rooty, &winx, &winy, &xmask);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3144
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3145
+  return child;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3146
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3147
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3148
+gboolean tsol_meta_screen_use_roles (MetaScreen *screen)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3149
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3150
+  char **role_list = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3151
+  int nb_roles;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3152
+  if (meta_prop_get_utf8_list (screen->display, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3153
+			       screen->xroot, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3154
+			       screen->display->atom_net_desktop_roles,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3155
+			       &role_list, &nb_roles))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3156
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3157
+      int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3158
+      for (i=0;i<nb_roles;i++)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3159
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3160
+	  if (role_list[i] != NULL && strcmp (role_list[i], "") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3161
+	    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3162
+	      g_strfreev (role_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3163
+	      return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3164
+	    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3165
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3166
+      g_strfreev (role_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3167
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3168
+  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3169
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3170
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3171
+gboolean tsol_meta_workspace_has_roleas_role (MetaWorkspace *ws)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3172
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3173
+  char **role_list = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3174
+  int nb_roles;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3175
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3176
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3177
+    return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3178
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3179
+  if (meta_prop_get_utf8_list (ws->screen->display, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3180
+			       ws->screen->xroot, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3181
+			       ws->screen->display->atom_net_desktop_roles,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3182
+			       &role_list, &nb_roles))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3183
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3184
+      int ws_id = meta_workspace_index (ws);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3185
+      if (ws_id > nb_roles) /* something is wrong here we don't have the same number of roles/ws */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3186
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3187
+	  g_strfreev (role_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3188
+	  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3189
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3190
+      if (role_list[ws_id] != NULL && strcmp (role_list[ws_id], "") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3191
+	{	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3192
+	  g_strfreev (role_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3193
+	  return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3194
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3195
+      g_strfreev (role_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3196
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3197
+    return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3198
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3199
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3200
+gboolean tsol_meta_window_can_move_to_workspace (MetaWindow *win,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3201
+					    MetaWorkspace *ws)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3202
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3203
+  if (tsol_meta_workspace_has_roleas_role (ws))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3204
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3205
+      MetaTrustedLabel * label = tsol_meta_window_label_get (win);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3206
+      if (strcmp (label->name, "Trusted Path") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3207
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3208
+	  g_warning ("window %s cannot be moved to workspace %s\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3209
+		     win->title, meta_workspace_get_name (ws));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3210
+	  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3211
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3212
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3213
+  return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3214
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3215
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3216
+gboolean tsol_xwindow_can_move_to_workspace (Display *xdisplay,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3217
+					Window xwin,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3218
+					int ws_index)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3219
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3220
+  MetaDisplay *display = meta_display_for_x_display (xdisplay);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3221
+  MetaWindow *window = meta_display_lookup_x_window (display, xwin);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3222
+  g_assert (window != NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3223
+  MetaWorkspace *workspace = meta_screen_get_workspace_by_index (window->screen, ws_index);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3224
+  if (tsol_meta_window_can_move_to_workspace (window, workspace))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3225
+    return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3226
+  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3227
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3228
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3229
+GList *tsol_add_all_sticky_non_tp_windows (MetaDisplay *display, GList *win_list)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3230
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3231
+  GList *return_list;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3232
+  GSList *all_windows;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3233
+  GSList *tmp;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3234
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3235
+  return_list = win_list;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3236
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3237
+  all_windows = meta_display_list_windows (display);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3238
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3239
+  tmp = all_windows;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3240
+  while (tmp != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3241
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3242
+      MetaWindow *window = tmp->data;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3243
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3244
+      if (window->on_all_workspaces && 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3245
+	  window->decorated && 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3246
+	  strcmp (tsol_meta_window_label_get (window)->name, "Trusted Path") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3247
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3248
+	  return_list = g_list_prepend (return_list, window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3249
+        }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3250
+      tmp = tmp->next;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3251
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3252
+  return return_list;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3253
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3254
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3255
+void tsol_trusted_stripe_atom_update (MetaDisplay* display, MetaWindow *window)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3256
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3257
+  unsigned long data[2];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3258
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3259
+  if (!tsol_is_available())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3260
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3261
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3262
+  if (window == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3263
+    data[0] = get_window_at_pointer (display->xdisplay);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3264
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3265
+    data[0] = window->xwindow;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3266
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3267
+  data[1] = None;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3268
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3269
+  meta_error_trap_push (display);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3270
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3271
+  XChangeProperty (display->xdisplay, DefaultRootWindow (display->xdisplay),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3272
+                       display->atom_net_trusted_active_window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3273
+                       XA_WINDOW,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3274
+                       32, PropModeReplace, (guchar*) data, 2);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3275
+  meta_error_trap_pop (display, FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3276
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3277
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3278
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3279
+/* Preference related code
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3280
+ * init labels and roles from metacity to root window */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3281
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3282
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3283
+const char * 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3284
+tsol_label_get_min ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3285
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3286
+    static char *min_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3287
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3288
+    if (!min_label) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3289
+        min_label = (char *) getenv ("USER_MIN_SL");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3290
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3291
+    return min_label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3292
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3293
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3294
+const char*
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3295
+tsol_label_get_max ()
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3296
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3297
+    static char *max_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3298
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3299
+    if (!max_label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3300
+        max_label = (char *) getenv ("USER_MAX_SL");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3301
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3302
+    return max_label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3303
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3304
+MetaTrustedLabel *
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3305
+tsol_workspace_get_label (MetaWorkspace *ws)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3306
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3307
+  int error;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3308
+  MetaTrustedLabel *label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3309
+  m_label_t *mlabel = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3310
+  GSList *stored_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3311
+  GdkColor * color = g_new0 (GdkColor, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3312
+  const char *label_name = meta_prefs_get_workspace_label (meta_workspace_index (ws));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3313
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3314
+  /* Look if the label already exist */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3315
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3316
+  stored_label = g_slist_find_custom (ws->screen->display->labels, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3317
+				      label_name, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3318
+				      (GCompareFunc)trusted_label_string_compare);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3319
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3320
+  if (stored_label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3321
+    return (MetaTrustedLabel*) stored_label->data;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3322
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3323
+  /* create a new one otherwise */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3324
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3325
+  if (libtsol_str_to_label (label_name, &mlabel,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3326
+			    MAC_LABEL, L_NO_CORRECTION, &error) == 0) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3327
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3328
+      char *colorname = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3329
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3330
+      libtsol_label_to_str (mlabel, &colorname, M_COLOR, DEF_NAMES, &error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3331
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3332
+      #define DEFAULT_COLOR "white"	 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3333
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3334
+      if (colorname == NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3335
+	colorname = g_strdup(DEFAULT_COLOR);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3336
+   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3337
+      label = g_new0 (MetaTrustedLabel, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3338
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3339
+      label->name = (char*)label_name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3340
+      /* Layout is initialized in meta_frame_style_draw */ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3341
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3342
+      label->color = meta_color_spec_new (META_COLOR_SPEC_BASIC);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3343
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3344
+      if (!gdk_color_parse ((const char*)colorname, &label->color->data.basic.color))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3345
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3346
+	  label->color->data.basic.color.red = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3347
+	  label->color->data.basic.color.green = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3348
+	  label->color->data.basic.color.blue = 255 *255;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3349
+	  g_warning ("gdk_color_parse couldn't parse the label color\n");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3350
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3351
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3352
+      ws->screen->display->labels = g_slist_append (ws->screen->display->labels, label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3353
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3354
+      g_free (colorname);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3355
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3356
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3357
+  return label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3358
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3359
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3360
+void tsol_set_frame_label (Display* xdpy, Window xwin, Window xwin_frame)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3361
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3362
+  bslabel_t label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3363
+  uid_t uid;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3364
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3365
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3366
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3367
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3368
+  if (libxtsol_XTSOLgetResLabel (xdpy, xwin, IsWindow, &label))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3369
+      libxtsol_XTSOLsetResLabel (xdpy, xwin_frame, IsWindow, &label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3370
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3371
+  if (libxtsol_XTSOLgetResUID (xdpy, xwin, IsWindow, &uid))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3372
+      libxtsol_XTSOLsetResUID (xdpy, xwin_frame, IsWindow, &uid);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3373
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3374
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3375
+gboolean 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3376
+tsol_label_is_in_user_range (const char * label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3377
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3378
+  static blrange_t *range = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3379
+  m_label_t *mlabel = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3380
+  int error;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3381
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3382
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3383
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3384
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3385
+  if (!range)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3386
+    { /* Get user label Range */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3387
+      char *min_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3388
+      char *max_label = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3389
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3390
+      range = g_malloc (sizeof (blrange_t));
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3391
+      range->lower_bound = range->upper_bound = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3392
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3393
+      min_label = g_strdup (tsol_label_get_min ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3394
+      max_label = g_strdup (tsol_label_get_max ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3395
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3396
+      if (libtsol_str_to_label (min_label, &(range->lower_bound),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3397
+				MAC_LABEL, L_NO_CORRECTION, &error) < 0) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3398
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3399
+	  g_warning ("Couldn't determine minimum workspace label");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3400
+	  g_free (min_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3401
+	  g_free (max_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3402
+	  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3403
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3404
+      if (libtsol_str_to_label (max_label, &(range->upper_bound),
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3405
+				USER_CLEAR, L_NO_CORRECTION, &error) < 0) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3406
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3407
+	  g_warning ("Couldn't determine workspace clearance");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3408
+	  g_free (min_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3409
+	  g_free (max_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3410
+	  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3411
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3412
+      g_free (min_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3413
+      g_free (max_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3414
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3415
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3416
+  if (libtsol_str_to_label (label, &mlabel, MAC_LABEL, L_NO_CORRECTION, &error) < 0) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3417
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3418
+      g_warning("Could not validate sensitivity label \"%s\"", label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3419
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3420
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3421
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3422
+  if (!libtsol_blinrange (mlabel, range)) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3423
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3424
+      libtsol_m_label_free (mlabel);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3425
+      return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3426
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3427
+  libtsol_m_label_free (mlabel);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3428
+  return TRUE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3429
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3430
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3431
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3432
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3433
+/* boolean is used to select between label or roles */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3434
+static void 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3435
+set_workspace_tsol_properties (MetaScreen *screen, gboolean label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3436
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3437
+  GString *flattened;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3438
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3439
+  int n_spaces;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3440
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3441
+  /* flatten to nul-separated list */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3442
+  n_spaces = meta_screen_get_n_workspaces (screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3443
+  flattened = g_string_new ("");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3444
+  i = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3445
+  while (i < n_spaces)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3446
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3447
+      const char *name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3448
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3449
+      if (label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3450
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3451
+	  name = meta_prefs_get_workspace_label (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3452
+	  /* default to min label range if the workspace label isn't defined */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3453
+	  if (name == NULL) 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3454
+	    name = tsol_label_get_min ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3455
+	  if (!tsol_label_is_in_user_range (name))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3456
+	    name = tsol_label_get_min ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3457
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3458
+      else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3459
+	name = meta_prefs_get_workspace_role (i);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3460
+	
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3461
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3462
+      if (name)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3463
+        g_string_append_len (flattened, name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3464
+                             strlen (name) + 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3465
+      else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3466
+        g_string_append_len (flattened, "", 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3467
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3468
+      ++i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3469
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3470
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3471
+  meta_error_trap_push (screen->display);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3472
+  XChangeProperty (screen->display->xdisplay,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3473
+                   screen->xroot,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3474
+                   label ? screen->display->atom_net_desktop_labels : screen->display->atom_net_desktop_roles,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3475
+		   screen->display->atom_utf8_string,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3476
+                   8, PropModeReplace,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3477
+		   (const unsigned char *)flattened->str, flattened->len);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3478
+  meta_error_trap_pop (screen->display, FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3479
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3480
+  g_string_free (flattened, TRUE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3481
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3482
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3483
+void 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3484
+tsol_workspace_labels_atom_set (MetaScreen *screen)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3485
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3486
+  /* This updates label names on root window when the pref changes,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3487
+   * note we only get prefs change notify if things have
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3488
+   * really changed.
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3489
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3490
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3491
+    set_workspace_tsol_properties (screen, TRUE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3492
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3493
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3494
+void tsol_workspace_roles_atom_set (MetaScreen *screen)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3495
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3496
+  /* This updates roles names on root window when the pref changes,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3497
+   * note we only get prefs change notify if things have
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3498
+   * really changed.
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3499
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3500
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3501
+    set_workspace_tsol_properties (screen, FALSE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3502
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3503
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3504
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3505
+void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3506
+tsol_workspace_labels_gconf_update (MetaScreen *screen)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3507
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3508
+  char **names;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3509
+  int n_names;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3510
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3511
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3512
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3513
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3514
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3515
+  /* this updates names in prefs when the root window property changes,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3516
+   * iff the new property contents don't match what's already in prefs
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3517
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3518
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3519
+  names = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3520
+  n_names = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3521
+  if (!meta_prop_get_utf8_list (screen->display,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3522
+                                screen->xroot,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3523
+                                screen->display->atom_net_desktop_labels,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3524
+                                &names, &n_names))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3525
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3526
+      meta_verbose ("Failed to get workspace label from root window %d\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3527
+                    screen->number);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3528
+      return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3529
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3530
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3531
+  i = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3532
+  while (i < n_names)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3533
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3534
+     /* Check if the label is in range if not set it to USER_MIN_SL 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3535
+      * NOTE : if USER_MIN_SL is not properly set you can have an infinite loop here */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3536
+      if (names[i] && !tsol_label_is_in_user_range (names[i]))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3537
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3538
+	  g_free (names[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3539
+	  names[i] = g_strdup (tsol_label_get_min ());
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3540
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3541
+	  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3542
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3543
+                  "Setting workspace label %d name to \"%s\" due to _NET_DESKTOP_LABELS change\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3544
+                  i, names[i] ? names[i] : "null");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3545
+      meta_prefs_change_workspace_label (i, names[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3546
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3547
+      ++i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3548
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3549
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3550
+  g_strfreev (names);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3551
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3552
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3553
+void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3554
+tsol_workspace_roles_gconf_update (MetaScreen *screen)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3555
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3556
+  char **names;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3557
+  int n_names;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3558
+  int i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3559
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3560
+  if (!tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3561
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3562
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3563
+  /* this updates names in prefs when the root window property changes,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3564
+   * iff the new property contents don't match what's already in prefs
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3565
+   */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3566
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3567
+  names = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3568
+  n_names = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3569
+  if (!meta_prop_get_utf8_list (screen->display,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3570
+                                screen->xroot,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3571
+                                screen->display->atom_net_desktop_roles,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3572
+                                &names, &n_names))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3573
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3574
+      meta_verbose ("Failed to get workspace roles from root window %d\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3575
+                    screen->number);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3576
+      return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3577
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3578
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3579
+  i = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3580
+  while (i < n_names)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3581
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3582
+      meta_topic (META_DEBUG_PREFS,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3583
+                  "Setting workspace roles %d name to \"%s\" due to _NET_DESKTOP_ROLES change\n",
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3584
+                  i, names[i] ? names[i] : "null");
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3585
+      meta_prefs_change_workspace_role (i, names[i]);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3586
+      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3587
+      ++i;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3588
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3589
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3590
+  g_strfreev (names);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3591
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3592
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3593
+/* GFX part */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3594
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3595
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3596
+typedef struct _HighlightStripe HighlightStripe;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3597
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3598
+struct _HighlightStripe
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3599
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3600
+  ConstraintImage *image;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3601
+  char		  *name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3602
+};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3603
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3604
+static gint
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3605
+label_string_compare (HighlightStripe *tmp, char *searched_label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3606
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3607
+  return strcmp (searched_label, tmp->name);  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3608
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3609
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3610
+ConstraintImage * 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3611
+tsol_get_highlight_stripe (char     *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3612
+			    GdkColor *label_color)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3613
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3614
+  static GSList *hl_stripe_list = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3615
+  GSList *stored_hl_stripe = NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3616
+  HighlightStripe *hl_stripe;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3617
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3618
+  if ((name == NULL) || (label_color == NULL))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3619
+    return NULL;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3620
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3621
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3622
+  stored_hl_stripe = g_slist_find_custom (hl_stripe_list, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3623
+					  name, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3624
+					  (GCompareFunc)label_string_compare);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3625
+  if (stored_hl_stripe)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3626
+    return ((HighlightStripe* )stored_hl_stripe->data)->image;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3627
+ 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3628
+  hl_stripe = g_new0 (HighlightStripe, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3629
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3630
+  hl_stripe->name = g_strdup (name);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3631
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3632
+  hl_stripe->image = g_new0 (ConstraintImage, 1);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3633
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3634
+  hl_stripe->image->pixbuf = gdk_pixbuf_new_from_inline (-1, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3635
+							  tabpopup_highlight, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3636
+							  TRUE, NULL);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3637
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3638
+  libgnome_tsol_constraint_image_set_border (hl_stripe->image, 8, 8, 3, 3);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3639
+  libgnome_tsol_constraint_image_set_stretch (hl_stripe->image, TRUE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3640
+  libgnome_tsol_constraint_image_colorize (hl_stripe->image, label_color, 255, TRUE);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3641
+  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3642
+  hl_stripe_list = g_slist_append (hl_stripe_list, hl_stripe);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3643
+  return hl_stripe->image; 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3644
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3645
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3646
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3647
+#endif
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3648
diff -Nrup metacity-2.16.3/src/trusted.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3649
--- metacity-2.16.3/src/trusted.h	1970-01-01 01:00:00.000000000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3650
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/trusted.h	2006-11-02 13:21:04.029390000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3651
@@ -0,0 +1,193 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3652
+/* Metacity trusted */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3653
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3654
+/* 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3655
+ * Copyright (C) 2005 Erwann Chenede
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3656
+ */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3657
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3658
+#ifndef TRUSTED_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3659
+#define TRUSTED_H
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3660
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3661
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3662
+#include "frames.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3663
+#include "display.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3664
+#include "theme.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3665
+#include <gdk/gdkcolor.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3666
+#include <gtk/gtk.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3667
+#include "trusted-pics.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3668
+#include <X11/extensions/Xtsol.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3669
+#include <sys/tsol/label_macro.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3670
+/* #include "constraint-scaling.h" */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3671
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3672
+typedef struct _ConstraintImage ConstraintImage;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3673
+struct _ConstraintImage
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3674
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3675
+  gchar     *filename;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3676
+  GdkPixbuf *pixbuf;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3677
+  GdkPixbuf *scaled;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3678
+  gboolean   stretch;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3679
+  gint       border_left;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3680
+  gint       border_right;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3681
+  gint       border_bottom;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3682
+  gint       border_top;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3683
+  guint      hints[3][3];
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3684
+  gboolean   recolorable;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3685
+  GdkColor   colorize_color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3686
+  gboolean   use_as_bkg_mask;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3687
+};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3688
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3689
+/* dlopened libtsol functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3690
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3691
+typedef int     (*tsol_label_to_str) (const m_label_t *label, char **string,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3692
+				      const m_label_str_t conversion_type, uint_t flags,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3693
+				      int *error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3694
+typedef int	(*tsol_str_to_label) (const char *string, m_label_t **label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3695
+				      const m_label_type_t label_type, uint_t flags,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3696
+				      int *error);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3697
+typedef void	(*tsol_m_label_free) (m_label_t *label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3698
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3699
+typedef blrange_t*  (*tsol_getuserrange) (const char *username);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3700
+typedef int	    (*tsol_blinrange)	 (const m_label_t *label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3701
+					  const blrange_t *range);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3702
+typedef void	    (*tsol_blminimum)	 (m_label_t *minimum_label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3703
+					  const m_label_t *bounding_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3704
+typedef void	    (*tsol_blmaximum)	 (m_label_t *maximum_label,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3705
+					  const m_label_t *bounding_label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3706
+typedef m_label_t*  (*tsol_blabel_alloc) (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3707
+typedef void	    (*tsol_blabel_free)  (m_label_t *label_p);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3708
+typedef void	    (*tsol_bsllow)	 (m_label_t *label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3709
+typedef void	    (*tsol_bslhigh)	 (m_label_t *label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3710
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3711
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3712
+typedef void  (*gnome_tsol_constraint_image_render) (ConstraintImage *cimage,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3713
+						     GdkWindow    *window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3714
+						     GdkBitmap    *mask,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3715
+						     GdkRectangle *clip_rect,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3716
+						     gboolean      center,		   
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3717
+						     gint          x,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3718
+						     gint          y,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3719
+						     gint          width,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3720
+						     gint          height);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3721
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3722
+typedef void (*gnome_tsol_constraint_image_set_border) (ConstraintImage *pb,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3723
+							gint         left,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3724
+							gint         right,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3725
+							gint         top,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3726
+							gint         bottom);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3727
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3728
+typedef void (*gnome_tsol_constraint_image_set_stretch) (ConstraintImage *pb,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3729
+							 gboolean     stretch);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3730
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3731
+typedef void (*gnome_tsol_constraint_image_colorize) (ConstraintImage *image,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3732
+						      GdkColor  *color,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3733
+						      int	alpha,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3734
+						      gboolean   use_alpha);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3735
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3736
+/* dlopened libXtsol functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3737
+typedef Status	(*xtsol_XTSOLgetClientLabel) (Display *dpy, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3738
+					      XID xid,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3739
+					      bslabel_t *sl);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3740
+typedef Bool    (*xtsol_XTSOLIsWindowTrusted) (Display *dpy, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3741
+					       Window win);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3742
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3743
+typedef Status (*xtsol_XTSOLsetResLabel) (Display *dpy,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3744
+					  XID object,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3745
+					  ResourceType resourceFlag,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3746
+					  bslabel_t *sl);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3747
+typedef Status (*xtsol_XTSOLsetResUID) (Display *dpy,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3748
+					XID object,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3749
+					ResourceType resourceFlag,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3750
+					uid_t *uidp);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3751
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3752
+typedef Status (*xtsol_XTSOLgetResLabel) (Display *dpy,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3753
+					   XID object,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3754
+					   ResourceType resourceFlag,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3755
+					   bslabel_t *sl);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3756
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3757
+typedef Status (*xtsol_XTSOLgetResUID) (Display *dpy,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3758
+					XID object,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3759
+					ResourceType resourceFlag,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3760
+					uid_t *uidp);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3761
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3762
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3763
+tsol_label_to_str	libtsol_label_to_str;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3764
+tsol_str_to_label	libtsol_str_to_label;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3765
+tsol_m_label_free	libtsol_m_label_free;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3766
+tsol_blminimum		libtsol_blminimum;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3767
+tsol_blmaximum		libtsol_blmaximum;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3768
+tsol_blinrange		libtsol_blinrange;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3769
+tsol_getuserrange	libtsol_getuserrange;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3770
+tsol_blabel_alloc	libtsol_blabel_alloc;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3771
+tsol_blabel_free	libtsol_blabel_free;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3772
+tsol_bsllow		libtsol_bsllow;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3773
+tsol_bslhigh		libtsol_bslhigh;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3774
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3775
+gnome_tsol_constraint_image_render libgnome_tsol_constraint_image_render;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3776
+gnome_tsol_constraint_image_set_border libgnome_tsol_constraint_image_set_border;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3777
+gnome_tsol_constraint_image_set_stretch libgnome_tsol_constraint_image_set_stretch;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3778
+gnome_tsol_constraint_image_colorize libgnome_tsol_constraint_image_colorize;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3779
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3780
+xtsol_XTSOLgetClientLabel	libxtsol_XTSOLgetClientLabel;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3781
+xtsol_XTSOLIsWindowTrusted	libxtsol_XTSOLIsWindowTrusted;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3782
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3783
+xtsol_XTSOLsetResLabel		libxtsol_XTSOLsetResLabel;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3784
+xtsol_XTSOLgetResLabel		libxtsol_XTSOLgetResLabel;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3785
+xtsol_XTSOLsetResUID		libxtsol_XTSOLsetResUID;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3786
+xtsol_XTSOLgetResUID		libxtsol_XTSOLgetResUID;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3787
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3788
+gboolean tsol_is_available (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3789
+gboolean tsol_use_trusted_extensions (void);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3790
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3791
+/* metacity trusted functions */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3792
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3793
+struct _MetaTrustedLabel 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3794
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3795
+  char		*name;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3796
+  PangoLayout	*layout;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3797
+  MetaColorSpec *color;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3798
+};
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3799
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3800
+void		      tsol_trusted_stripe_atom_update (MetaDisplay *display, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3801
+						       MetaWindow  *window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3802
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3803
+MetaDrawOpList*	      tsol_theme_trusted_label_ops_get (MetaFrameFocus focus);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3804
+MetaDrawOpList*	      tsol_theme_trusted_title_ops_get (MetaFrameFocus focus);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3805
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3806
+MetaTrustedLabel*     tsol_meta_window_label_get (MetaWindow  *window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3807
+MetaTrustedLabel*     tsol_workspace_get_label (MetaWorkspace *ws);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3808
+MetaTrustedLabel*     tsol_xwindow_label_get (MetaDisplay *display, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3809
+					      Window	   xwindow);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3810
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3811
+gboolean tsol_should_label_layout_be_black (MetaColorSpec *bkg);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3812
+gboolean tsol_meta_workspace_has_role (MetaWorkspace *ws);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3813
+gboolean tsol_meta_workspace_has_roleas_role (MetaWorkspace *ws);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3814
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3815
+gboolean tsol_meta_window_can_move_to_workspace (MetaWindow    *win,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3816
+						 MetaWorkspace *ws);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3817
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3818
+gboolean tsol_xwindow_can_move_to_workspace (Display *display,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3819
+					     Window   xwin,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3820
+					     int      ws_index);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3821
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3822
+gboolean tsol_meta_screen_use_roles (MetaScreen *screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3823
+GList*	 tsol_add_all_sticky_non_tp_windows (MetaDisplay *display,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3824
+					     GList	 *win_list);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3825
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3826
+void tsol_workspace_labels_atom_set (MetaScreen *screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3827
+void tsol_workspace_roles_atom_set (MetaScreen *screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3828
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3829
+	
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3830
+void tsol_workspace_labels_gconf_update (MetaScreen *screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3831
+void tsol_workspace_roles_gconf_update (MetaScreen *screen);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3832
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3833
+gboolean	tsol_label_is_in_user_range (const char * label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3834
+const char     *tsol_label_get_min ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3835
+const char     *tsol_label_get_max ();
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3836
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3837
+ConstraintImage * tsol_get_highlight_stripe (char     *name,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3838
+					     GdkColor *label_color);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3839
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3840
+void tsol_set_frame_label (Display* xdpy, Window xwin, Window xwin_frame);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3841
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3842
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3843
+#endif /*HAVE_XTSOL*/
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3844
+#endif /*TRUSTED_H*/
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3845
diff -Nrup metacity-2.16.3/src/ui.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/ui.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3846
--- metacity-2.16.3/src/ui.c	2006-11-02 13:18:50.802434000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3847
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/ui.c	2006-11-02 13:21:04.031870000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3848
@@ -969,3 +969,13 @@ meta_ui_get_drag_threshold (MetaUI *ui)
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3849
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3850
   return threshold;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3851
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3852
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3853
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3854
+void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3855
+meta_ui_set_frame_label (MetaUI     *ui,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3856
+                         Window      xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3857
+                         MetaTrustedLabel *label)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3858
+{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3859
+  meta_frames_set_label (ui->frames, xwindow, label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3860
+}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3861
+#endif
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3862
diff -Nrup metacity-2.16.3/src/ui.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/ui.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3863
--- metacity-2.16.3/src/ui.h	2006-11-02 13:18:50.802849000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3864
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/ui.h	2006-11-02 13:21:04.033142000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3865
@@ -28,6 +28,7 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3866
 #include <X11/Xutil.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3867
 #include <glib.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3868
 #include <gdk-pixbuf/gdk-pixbuf.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3869
+#include "frames.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3870
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3871
 /* This is between GTK_PRIORITY_RESIZE (+10) and GTK_PRIORITY_REDRAW (+20) */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3872
 #define META_PRIORITY_RESIZE    (G_PRIORITY_HIGH_IDLE + 15)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3873
@@ -192,6 +193,12 @@ gboolean meta_ui_window_is_widget (MetaU
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3874
 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3875
 int      meta_ui_get_drag_threshold       (MetaUI *ui);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3876
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3877
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3878
+void	 meta_ui_set_frame_label  (MetaUI	    *ui,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3879
+				   Window	     xwindow,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3880
+				   MetaTrustedLabel *label);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3881
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3882
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3883
 #include "tabpopup.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3884
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3885
 #endif
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3886
diff -Nrup metacity-2.16.3/src/window.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/window.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3887
--- metacity-2.16.3/src/window.c	2006-11-02 13:18:50.805857000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3888
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/window.c	2006-11-02 13:21:04.051573000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3889
@@ -27,6 +27,7 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3890
 #include "edge-resistance.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3891
 #include "util.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3892
 #include "frame.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3893
+#include "frames.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3894
 #include "errors.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3895
 #include "workspace.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3896
 #include "stack.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3897
@@ -185,7 +186,7 @@ maybe_leave_show_desktop_mode (MetaWindo
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3898
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3899
 }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3900
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3901
-static
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3902
+static void
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3903
 prefs_changed_callback (MetaPreference pref,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3904
                         gpointer        data)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3905
 {
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3906
@@ -423,7 +424,11 @@ meta_window_new_with_attrs (MetaDisplay 
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3907
   window->rect.x = attrs->x;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3908
   window->rect.y = attrs->y;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3909
   window->rect.width = attrs->width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3910
+#ifdef HAVE_XTSOL /*TODO check what's the difference */  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3911
+  window->rect.height = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3912
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3913
   window->rect.height = attrs->height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3914
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3915
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3916
   /* And border width, size_hints are the "request" */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3917
   window->border_width = attrs->border_width;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3918
@@ -725,6 +730,10 @@ meta_window_new_with_attrs (MetaDisplay 
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3919
   meta_stack_add (window->screen->stack, 
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3920
                   window);
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3921
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3922
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3923
+  if (window->decorated)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3924
+    meta_window_ensure_frame (window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3925
+
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3926
   /* Put our state back where it should be,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3927
    * passing TRUE for is_configure_request, ICCCM says
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3928
    * initial map is handled same as configure request
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3929
@@ -1241,6 +1250,16 @@ gboolean
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3930
 meta_window_located_on_workspace (MetaWindow    *window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3931
                                   MetaWorkspace *workspace)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3932
 {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3933
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3934
+  if (tsol_meta_workspace_has_roleas_role (workspace))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3935
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3936
+      if (window->on_all_workspaces && window->decorated && strcmp (tsol_meta_window_label_get (window)->name, "Trusted Path") != 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3937
+	{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3938
+	  /* printf ("meta_window_visible_on_workspace in ws role win (%s) is not TP\n", window->title); */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3939
+	  return FALSE;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3940
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3941
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3942
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3943
   return (window->on_all_workspaces && window->screen == workspace->screen) ||
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3944
     (window->workspace == workspace);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3945
 }
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3946
@@ -3003,7 +3022,23 @@ meta_window_move_resize_internal (MetaWi
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3947
       if (window->shaded)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3948
         new_h = fgeom.top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3949
       else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3950
+#ifdef HAVE_XTSOL	
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3951
+	{ /* Trusted Frame Layout Modification TFLM */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3952
+	  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3953
+	    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3954
+	      if (window->maximized_vertically)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3955
+		{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3956
+		  /*remove label size from height if maximized */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3957
+		  window->rect.height -= fgeom.top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3958
+		}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3959
+	      new_h = window->rect.height + fgeom.top_height + fgeom.bottom_height + fgeom.top_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3960
+	    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3961
+	  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3962
         new_h = window->rect.height + fgeom.top_height + fgeom.bottom_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3963
+	}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3964
+#else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3965
+        new_h = window->rect.height + fgeom.top_height + fgeom.bottom_height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3966
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3967
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3968
       frame_size_dx = new_w - window->frame->rect.width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3969
       frame_size_dy = new_h - window->frame->rect.height;
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3970
@@ -3195,7 +3230,19 @@ meta_window_move_resize_internal (MetaWi
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3971
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3972
   values.border_width = 0;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3973
   values.x = client_move_x;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3974
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3975
+  if (tsol_is_available () && window->frame)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3976
+    { 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3977
+      values.y = client_move_y + fgeom.top_height;  /* Trusted Frame Layout Modification TFLM */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3978
+      /* added padding for tlabel */
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3979
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3980
+  else
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3981
+    {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3982
   values.y = client_move_y;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3983
+    }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3984
+#else  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3985
+  values.y = client_move_y;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3986
+#endif  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3987
   values.width = window->rect.width;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3988
   values.height = window->rect.height;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3989
   
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  3990
@@ -3930,6 +3977,11 @@ void
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3991
 meta_window_change_workspace (MetaWindow    *window,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3992
                               MetaWorkspace *workspace)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3993
 {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3994
+#ifdef HAVE_XTSOL  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3995
+  if (!tsol_meta_window_can_move_to_workspace(window, workspace))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3996
+    return;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3997
+#endif
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3998
+    
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  3999
   meta_window_change_workspace_without_transients (window, workspace);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4000
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4001
   meta_window_foreach_transient (window, change_workspace_foreach,
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4002
@@ -4969,16 +5021,17 @@ meta_window_notify_focus (MetaWindow *wi
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4003
               GList* link;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4004
               link = g_list_find (window->screen->active_workspace->mru_list, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4005
                                   window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4006
-              g_assert (link);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4007
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4008
-              window->screen->active_workspace->mru_list = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4009
-                g_list_remove_link (window->screen->active_workspace->mru_list,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4010
-                                    link);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4011
-              g_list_free (link);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4012
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4013
-              window->screen->active_workspace->mru_list = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4014
-                g_list_prepend (window->screen->active_workspace->mru_list, 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4015
-                                window);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4016
+ 	      if (link)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4017
+ 		{
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4018
+ 		  window->screen->active_workspace->mru_list =
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4019
+ 		    g_list_remove_link (window->screen->active_workspace->mru_list,
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4020
+ 					link);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4021
+ 		  g_list_free (link);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4022
+ 		  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4023
+ 		  window->screen->active_workspace->mru_list = 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4024
+ 		    g_list_prepend (window->screen->active_workspace->mru_list,                                 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4025
+ 				    window);		  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4026
+ 		}
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4027
             }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4028
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4029
           if (window->frame)
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4030
@@ -6310,7 +6363,16 @@ meta_window_show_menu (MetaWindow *windo
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4031
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4032
   if (!window->on_all_workspaces)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4033
     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4034
-
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4035
+ #ifdef HAVE_XTSOL      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4036
+       if (layout.current_col > 0 && tsol_meta_window_can_move_to_workspace (window, meta_workspace_get_neighbor (window->screen->active_workspace, META_MOTION_LEFT)))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4037
+         ops |= META_MENU_OP_MOVE_LEFT;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4038
+       if (layout.current_col < layout.cols - 1 && tsol_meta_window_can_move_to_workspace (window, meta_workspace_get_neighbor (window->screen->active_workspace, META_MOTION_RIGHT)))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4039
+         ops |= META_MENU_OP_MOVE_RIGHT;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4040
+       if (layout.current_row > 0 && tsol_meta_window_can_move_to_workspace (window, meta_workspace_get_neighbor (window->screen->active_workspace, META_MOTION_UP)))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4041
+         ops |= META_MENU_OP_MOVE_UP;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4042
+       if (layout.current_row < layout.rows - 1 && tsol_meta_window_can_move_to_workspace (window, meta_workspace_get_neighbor (window->screen->active_workspace, META_MOTION_DOWN)))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4043
+         ops |= META_MENU_OP_MOVE_DOWN;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4044
+ #else      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4045
       if (layout.current_col > 0)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4046
         ops |= META_MENU_OP_MOVE_LEFT;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4047
       if ((layout.current_col < layout.cols - 1) &&
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4048
@@ -6321,6 +6383,7 @@ meta_window_show_menu (MetaWindow *windo
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4049
       if ((layout.current_row < layout.rows - 1) &&
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4050
           ((layout.current_row + 1) * layout.cols + layout.current_col < n_workspaces))
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4051
         ops |= META_MENU_OP_MOVE_DOWN;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4052
+#endif      
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4053
     }
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4054
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4055
   meta_screen_free_workspace_layout (&layout);
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4056
diff -Nrup metacity-2.16.3/src/window.h ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/window.h
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4057
--- metacity-2.16.3/src/window.h	2006-11-02 13:18:50.806354000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4058
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/window.h	2006-11-02 13:21:04.053727000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4059
@@ -30,6 +30,8 @@
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4060
 #include "util.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4061
 #include "stack.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4062
 #include "iconcache.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4063
+#include <pango/pango.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4064
+#include "theme.h"
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4065
 #include <X11/Xutil.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4066
 #include <gdk-pixbuf/gdk-pixbuf.h>
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4067
 
8481
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4068
diff -Nrup metacity-2.16.3/src/workspace.c ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/workspace.c
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4069
--- metacity-2.16.3/src/workspace.c	2006-11-02 13:18:50.807912000 +0100
0e3f1c3d94e1 2006-11-02 Erwann Chenede - <[email protected]>
erwannc
parents: 7488
diff changeset
  4070
+++ ../SUNWgnome-wm-2.16.1/metacity-2.16.3/src/workspace.c	2006-11-02 13:21:04.054822000 +0100
7488
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4071
@@ -263,6 +263,10 @@ meta_workspace_queue_calc_showing  (Meta
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4072
   GList *tmp;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4073
 
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4074
   tmp = workspace->windows;
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4075
+#ifdef HAVE_XTSOL
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4076
+  if (tsol_is_available ())
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4077
+    tmp = tsol_add_all_sticky_non_tp_windows (workspace->screen->display, tmp);
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4078
+#endif /*HAVE_XTSOL*/  
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4079
   while (tmp != NULL)
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4080
     {
78b1d8482af1 2006-06-22 Erwann Chenede - <[email protected]>
erwannc
parents:
diff changeset
  4081
       meta_window_queue_calc_showing (tmp->data);
19085
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  4082
--- theme.h.orig	2006-11-23 16:31:45.339642400 +0000
99c383b79d0f 2006-11-23 Damien Carbery <[email protected]>
dcarbery
parents: 8481
diff changeset
  4083
+++ theme.h	2006-11-23 16:33:45.526709500 +0000