* own_window_type dock patch (thanks Morgan).
authorBrenden Matthews <brenden1@rty.ca>
Tue, 29 Apr 2008 21:31:04 +0000 (21:31 +0000)
committerBrenden Matthews <brenden1@rty.ca>
Tue, 29 Apr 2008 21:31:04 +0000 (21:31 +0000)
git-svn-id: https://conky.svn.sourceforge.net/svnroot/conky/trunk/conky1@1115 7f574dfc-610e-0410-a909-a81674777703

AUTHORS
ChangeLog
README
doc/config_settings.xml
doc/conky.1
src/conky.c
src/conky.h
src/linux.c
src/x11.c

diff --git a/AUTHORS b/AUTHORS
index e284f7a..6f5a141 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -200,6 +200,9 @@ Miroslav Lichvar <lichvarm at gmail dot com>
 Moncelier Camille <pixdamix at users dot sourceforge dot net>
   METAR patch
 
+Morgan Veyret <patzy at appart dot kicks-ass dot net>
+  own_window_type dock patch
+
 Nattfodd <Nattfodd@gmail.com>
   Fixed top_mem dupes
 
index 83d6ef7..5b3153b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 # $Id$
 
+2008-04-29
+       * own_window_type dock patch (thanks Morgan).
+
 2008-04-12
        * Added patch for the following (thanks larsko):
                * New $loadgraph to show a graph of load averages,
diff --git a/README b/README
index 7ad19b4..c7b86c8 100644 (file)
--- a/README
+++ b/README
@@ -360,9 +360,9 @@ CONFIGURATION SETTINGS
 
 
        own_window_type
-             if own_window is yes, you may specify type  normal,  desktop  or
-             override (default: normal).  Desktop windows are special windows
-             that have no window decorations;  are  always  visible  on  your
+             if own_window is yes, you may specify type normal, desktop, dock
+             or override (default: normal).  Desktop windows are special win-
+             dows that have no window decorations; are always visible on your
              desktop;  do not appear in your pager or taskbar; and are sticky
              across all workspaces.  Override windows are not under the  con-
              trol of the window manager. Hints are ignored. This type of win-
index 360433a..1292fb0 100644 (file)
        <varlistentry>
                <term><command><option>own_window_type</option></command></term>
                <listitem>
-                       if own_window is yes, you may specify type normal, desktop or override (default: normal).
+                       if own_window is yes, you may specify type normal, desktop, dock or override (default: normal).
                        Desktop windows are special windows that have no window decorations; are always visible
                        on your desktop; do not appear in your pager or taskbar; and are sticky across all workspaces.
                        Override windows are not under the control of the window manager.  Hints are ignored. This type
index 602f439..a0adf2e 100644 (file)
@@ -340,7 +340,7 @@ Boolean, set pseudo-transparency?
 
 .TP 
 \fB\*(T<\fBown_window_type\fR\*(T>\fR
-if own_window is yes, you may specify type normal, desktop or override (default: normal).
+if own_window is yes, you may specify type normal, desktop, dock or override (default: normal).
 Desktop windows are special windows that have no window decorations; are always visible
 on your desktop; do not appear in your pager or taskbar; and are sticky across all workspaces.
 Override windows are not under the control of the window manager. Hints are ignored. This type
index d48609d..f38c6f5 100644 (file)
@@ -8387,6 +8387,8 @@ static void load_config_file(const char *f)
                                        window.type = TYPE_NORMAL;
                                } else if (strncmp(value, "desktop", 7) == 0) {
                                        window.type = TYPE_DESKTOP;
+                               } else if (strncmp(value, "dock", 7) == 0) {
+                                       window.type = TYPE_DOCK;
                                } else if (strncmp(value, "override", 8) == 0) {
                                        window.type = TYPE_OVERRIDE;
                                } else {
index 04d4652..bcbc5a6 100644 (file)
@@ -453,6 +453,7 @@ char *tmpstring2;
 #ifdef OWN_WINDOW
 enum _window_type {
        TYPE_NORMAL = 0,
+       TYPE_DOCK,
        TYPE_DESKTOP,
        TYPE_OVERRIDE
 };
index fc4bffc..ecaac57 100644 (file)
@@ -263,6 +263,7 @@ int interface_up(const char *dev)
                                break;
                        }
                        /* otherwise we are good */
+                       free(conf.ifc_buf);
                        close(fd);
                        return 1;
                }
index f71ca45..6c721ae 100644 (file)
--- a/src/x11.c
+++ b/src/x11.c
@@ -282,6 +282,11 @@ void init_window(int own_window, int w, int h, int set_trans, int back_colour,
                                                fprintf(stderr, "Conky: window type - desktop\n");
                                                fflush(stderr);
                                                break;
+                                       case TYPE_DOCK:
+                                               prop = ATOM(_NET_WM_WINDOW_TYPE_DOCK);
+                                               fprintf(stderr, "Conky: window type - dock\n");
+                                               fflush(stderr);
+                                               break;
                                        case TYPE_NORMAL:
                                        default:
                                                prop = ATOM(_NET_WM_WINDOW_TYPE_NORMAL);