annotate finch/libgnt/gntws.c @ 22717:979a81468e19

All SNACs on FLAP channel 2 except in the auth family are now sent through flap_connection_send_snac() instead of flap_connection_send(). This allows them to be tallied into the rate limiting calculations and to be throttled as necessary to prevent rate limiting violations. This does fix the instantaneous disconnection seen with the addition of ICQ Status Notes support for people with many ICQ contacts with status notes on their buddy list. Unfortunately, we still request the ICQ Status Note many times per contact, so such people now may be rate limited for a significant period of time as they connect.
author Evan Schoenberg <evan.s@dreskin.net>
date Thu, 24 Apr 2008 11:10:03 +0000
parents 9187d331aebe
children bec28e60aff6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
1 #include <gmodule.h>
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
2
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
3 #include "gntbox.h"
17707
3c3fc1432a01 Let windows know when the workspace they are in is being hidden/shown
Richard Nelson <wabz@pidgin.im>
parents: 17702
diff changeset
4 #include "gntwidget.h"
3c3fc1432a01 Let windows know when the workspace they are in is being hidden/shown
Richard Nelson <wabz@pidgin.im>
parents: 17702
diff changeset
5 #include "gntwindow.h"
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
6 #include "gntwm.h"
17707
3c3fc1432a01 Let windows know when the workspace they are in is being hidden/shown
Richard Nelson <wabz@pidgin.im>
parents: 17702
diff changeset
7 #include "gntws.h"
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
8
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
9 static void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
10 widget_hide(gpointer data, gpointer nodes)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
11 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
12 GntWidget *widget = GNT_WIDGET(data);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
13 GntNode *node = g_hash_table_lookup(nodes, widget);
17707
3c3fc1432a01 Let windows know when the workspace they are in is being hidden/shown
Richard Nelson <wabz@pidgin.im>
parents: 17702
diff changeset
14 if (GNT_IS_WINDOW(widget))
3c3fc1432a01 Let windows know when the workspace they are in is being hidden/shown
Richard Nelson <wabz@pidgin.im>
parents: 17702
diff changeset
15 gnt_window_workspace_hiding(GNT_WINDOW(widget));
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
16 hide_panel(node->panel);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
17 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
18
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
19 static void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
20 widget_show(gpointer data, gpointer nodes)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
21 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
22 GntNode *node = g_hash_table_lookup(nodes, data);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
23 GNT_WIDGET_UNSET_FLAGS(GNT_WIDGET(data), GNT_WIDGET_INVISIBLE);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
24 if (node) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
25 show_panel(node->panel);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
26 gnt_wm_copy_win(GNT_WIDGET(data), node);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
27 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
28 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
29
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
30 void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
31 gnt_ws_draw_taskbar(GntWS *ws, gboolean reposition)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
32 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
33 static WINDOW *taskbar = NULL;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
34 GList *iter;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
35 int n, width = 0;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
36 int i;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
37
18421
e16d097c5739 Allow executing another application (eg. PAGER) that will use the same
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18416
diff changeset
38 if (gnt_is_refugee())
e16d097c5739 Allow executing another application (eg. PAGER) that will use the same
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18416
diff changeset
39 return;
e16d097c5739 Allow executing another application (eg. PAGER) that will use the same
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18416
diff changeset
40
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
41 if (taskbar == NULL) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
42 taskbar = newwin(1, getmaxx(stdscr), getmaxy(stdscr) - 1, 0);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
43 } else if (reposition) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
44 int Y_MAX = getmaxy(stdscr) - 1;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
45 mvwin(taskbar, Y_MAX, 0);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
46 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
47
21250
9187d331aebe Add gnt_color_pair, which will replace color codes with 'appropriate' text
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18421
diff changeset
48 wbkgdset(taskbar, '\0' | gnt_color_pair(GNT_COLOR_NORMAL));
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
49 werase(taskbar);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
50
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
51 n = g_list_length(ws->list);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
52 if (n)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
53 width = getmaxx(stdscr) / n;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
54
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
55 for (i = 0, iter = ws->list; iter; iter = iter->next, i++) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
56 GntWidget *w = iter->data;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
57 int color;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
58 const char *title;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
59
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
60 if (w == ws->ordered->data) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
61 /* This is the current window in focus */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
62 color = GNT_COLOR_TITLE;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
63 } else if (GNT_WIDGET_IS_FLAG_SET(w, GNT_WIDGET_URGENT)) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
64 /* This is a window with the URGENT hint set */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
65 color = GNT_COLOR_URGENT;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
66 } else {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
67 color = GNT_COLOR_NORMAL;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
68 }
21250
9187d331aebe Add gnt_color_pair, which will replace color codes with 'appropriate' text
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18421
diff changeset
69 wbkgdset(taskbar, '\0' | gnt_color_pair(color));
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
70 if (iter->next)
21250
9187d331aebe Add gnt_color_pair, which will replace color codes with 'appropriate' text
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18421
diff changeset
71 mvwhline(taskbar, 0, width * i, ' ' | gnt_color_pair(color), width);
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
72 else
21250
9187d331aebe Add gnt_color_pair, which will replace color codes with 'appropriate' text
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18421
diff changeset
73 mvwhline(taskbar, 0, width * i, ' ' | gnt_color_pair(color), getmaxx(stdscr) - width * i);
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
74 title = GNT_BOX(w)->title;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
75 mvwprintw(taskbar, 0, width * i, "%s", title ? title : "<gnt>");
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
76 if (i)
21250
9187d331aebe Add gnt_color_pair, which will replace color codes with 'appropriate' text
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18421
diff changeset
77 mvwaddch(taskbar, 0, width *i - 1, ACS_VLINE | A_STANDOUT | gnt_color_pair(GNT_COLOR_NORMAL));
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
78 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
79 wrefresh(taskbar);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
80 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
81
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
82 static void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
83 gnt_ws_init(GTypeInstance *instance, gpointer class)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
84 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
85 GntWS *ws = GNT_WS(instance);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
86 ws->list = NULL;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
87 ws->ordered = NULL;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
88 ws->name = NULL;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
89 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
90
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
91 void gnt_ws_add_widget(GntWS *ws, GntWidget* wid)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
92 {
18223
5023ad94ebc9 Notify a window when it loses focus because another window was moved to
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18075
diff changeset
93 GntWidget *oldfocus;
5023ad94ebc9 Notify a window when it loses focus because another window was moved to
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18075
diff changeset
94 oldfocus = ws->ordered ? ws->ordered->data : NULL;
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
95 ws->list = g_list_append(ws->list, wid);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
96 ws->ordered = g_list_prepend(ws->ordered, wid);
18223
5023ad94ebc9 Notify a window when it loses focus because another window was moved to
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18075
diff changeset
97 if (oldfocus)
5023ad94ebc9 Notify a window when it loses focus because another window was moved to
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18075
diff changeset
98 gnt_widget_set_focus(oldfocus, FALSE);
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
99 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
100
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
101 void gnt_ws_remove_widget(GntWS *ws, GntWidget* wid)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
102 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
103 ws->list = g_list_remove(ws->list, wid);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
104 ws->ordered = g_list_remove(ws->ordered, wid);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
105 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
106
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
107 void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
108 gnt_ws_set_name(GntWS *ws, const gchar *name)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
109 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
110 g_free(ws->name);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
111 ws->name = g_strdup(name);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
112 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
113
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
114 void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
115 gnt_ws_hide(GntWS *ws, GHashTable *nodes)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
116 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
117 g_list_foreach(ws->ordered, widget_hide, nodes);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
118 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
119
18416
93c5c785a811 Fix some focus issues.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18223
diff changeset
120 void gnt_ws_widget_hide(GntWidget *widget, GHashTable *nodes)
93c5c785a811 Fix some focus issues.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18223
diff changeset
121 {
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
122 widget_hide(widget, nodes);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
123 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
124
18416
93c5c785a811 Fix some focus issues.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18223
diff changeset
125 void gnt_ws_widget_show(GntWidget *widget, GHashTable *nodes)
93c5c785a811 Fix some focus issues.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 18223
diff changeset
126 {
17699
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
127 widget_show(widget, nodes);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
128 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
129
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
130 void
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
131 gnt_ws_show(GntWS *ws, GHashTable *nodes)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
132 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
133 GList *l;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
134 for (l = g_list_last(ws->ordered); l; l = g_list_previous(l))
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
135 widget_show(l->data, nodes);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
136 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
137
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
138 GType
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
139 gnt_ws_get_gtype(void)
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
140 {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
141 static GType type = 0;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
142
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
143 if(type == 0) {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
144 static const GTypeInfo info = {
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
145 sizeof(GntWSClass),
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
146 NULL, /* base_init */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
147 NULL, /* base_finalize */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
148 NULL,
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
149 /*(GClassInitFunc)gnt_ws_class_init,*/
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
150 NULL,
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
151 NULL, /* class_data */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
152 sizeof(GntWS),
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
153 0, /* n_preallocs */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
154 gnt_ws_init, /* instance_init */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
155 NULL /* value_table */
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
156 };
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
157
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
158 type = g_type_register_static(GNT_TYPE_BINDABLE,
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
159 "GntWS",
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
160 &info, 0);
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
161 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
162
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
163 return type;
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
164 }
97802d3f3f1f Forgot these...
Richard Nelson <wabz@pidgin.im>
parents:
diff changeset
165
18075
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
166 GntWS *gnt_ws_new(const char *name)
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
167 {
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
168 GntWS *ws = GNT_WS(g_object_new(GNT_TYPE_WS, NULL));
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
169 ws->name = g_strdup(name ? name : "(noname)");
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
170 return ws;
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
171 }
34e011c8ed2b F9 to create a new workspace.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17707
diff changeset
172
17702
596c970076df Alt+s to see the list of workspaces and windows.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17699
diff changeset
173 const char * gnt_ws_get_name(GntWS *ws)
596c970076df Alt+s to see the list of workspaces and windows.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17699
diff changeset
174 {
596c970076df Alt+s to see the list of workspaces and windows.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17699
diff changeset
175 return ws->name;
596c970076df Alt+s to see the list of workspaces and windows.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17699
diff changeset
176 }
596c970076df Alt+s to see the list of workspaces and windows.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 17699
diff changeset
177