From: Daniel Déchelotte <[email protected]>

This function is not used for now, but will be for drawers
---
 src/defaults.h  |    3 +++
 src/wdefaults.c |   31 +++++++++++++++++++++++++++++++
 2 files changed, 34 insertions(+)

diff --git a/src/defaults.h b/src/defaults.h
index a2b9f24..2f82fd6 100644
--- a/src/defaults.h
+++ b/src/defaults.h
@@ -54,4 +54,7 @@ char *get_icon_filename(WScreen *scr, char *winstance, char 
*wclass, char *comma
 int wDefaultGetStartWorkspace(WScreen *scr, char *instance, char *class);
 void wDefaultChangeIcon(WScreen *scr, char *instance, char* class, char *file);
 RImage *get_rimage_from_file(WScreen *scr, char *file_name, int max_size);
+
+void wDefaultPurgeInfo(WScreen *scr, char *instance, char *class);
+
 #endif /* WMDEFAULTS_H_ */
diff --git a/src/wdefaults.c b/src/wdefaults.c
index 0e7d6cd..ce9af5f 100644
--- a/src/wdefaults.c
+++ b/src/wdefaults.c
@@ -597,6 +597,37 @@ void wDefaultChangeIcon(WScreen * scr, char *instance, 
char *class, char *file)
        WMPLSetCaseSensitive(False);
 }
 
+void wDefaultPurgeInfo(WScreen *scr, char *instance, char *class)
+{
+       WMPropList *value, *key, *dict;
+       char *buffer;
+
+       if (!AIcon) { /* Unnecessary precaution */
+               init_wdefaults();
+       }
+
+       WMPLSetCaseSensitive(True);
+
+       buffer = wmalloc(strlen(class) + strlen(instance) + 2);
+       sprintf(buffer, "%s.%s", instance, class);
+       key = WMCreatePLString(buffer);
+
+       dict = WMGetFromPLDictionary(WDWindowAttributes->dictionary, key);
+
+       if (dict) {
+               value = WMGetFromPLDictionary(dict, AIcon);
+               if (value) {
+                       WMRemoveFromPLDictionary(dict, AIcon);
+               }
+               WMRemoveFromPLDictionary(WDWindowAttributes->dictionary, key);
+               UpdateDomainFile(WDWindowAttributes);
+       }
+
+       wfree(buffer);
+       WMReleasePropList(key);
+       WMPLSetCaseSensitive(False);
+}
+
 /* --------------------------- Local ----------------------- */
 
 static int getBool(WMPropList * key, WMPropList * value)
-- 
1.7.10.4


-- 
To unsubscribe, send mail to [email protected].

Reply via email to