Commit e6ad71bbb343aedec6175b2487e495a515545b5d
1 parent
6f18dd3d
Exists in
master
and in
4 other branches
Adjustments in the header bar actions.
Showing
3 changed files
with
35 additions
and
32 deletions
Show diff stats
schemas/linux/application.gschema.xml.in
... | ... | @@ -74,15 +74,9 @@ |
74 | 74 | <description></description> |
75 | 75 | </key> |
76 | 76 | |
77 | - <key name="header-start-action-names" type="s"> | |
78 | - <default>'win.disconnect,win.reconnect,win.file.transfer,win.print'</default> | |
79 | - <summary>The actions in the first block of the header bar</summary> | |
80 | - <description></description> | |
81 | - </key> | |
82 | - | |
83 | - <key name="header-end-action-names" type="s"> | |
84 | - <default>'menu.open-menu'</default> | |
85 | - <summary>The actions in the last block of the header bar</summary> | |
77 | + <key name="header-action-names" type="s"> | |
78 | + <default>'win.disconnect,win.reconnect,win.file.transfer,win.print:menu.open-menu'</default> | |
79 | + <summary>The actions in the header bar</summary> | |
86 | 80 | <description></description> |
87 | 81 | </key> |
88 | 82 | ... | ... |
schemas/windows/application.gschema.xml.in
... | ... | @@ -74,15 +74,9 @@ |
74 | 74 | <description></description> |
75 | 75 | </key> |
76 | 76 | |
77 | - <key name="header-start-action-names" type="s"> | |
78 | - <default>'win.disconnect,win.reconnect,win.file.transfer,win.print'</default> | |
79 | - <summary>The actions in the first block of the header bar</summary> | |
80 | - <description></description> | |
81 | - </key> | |
82 | - | |
83 | - <key name="header-end-action-names" type="s"> | |
84 | - <default>'menu.open-menu'</default> | |
85 | - <summary>The actions in the last block of the header bar</summary> | |
77 | + <key name="header-action-names" type="s"> | |
78 | + <default>'win.disconnect,win.reconnect,win.file.transfer,win.print:menu.open-menu'</default> | |
79 | + <summary>The actions in the header bar</summary> | |
86 | 80 | <description></description> |
87 | 81 | </key> |
88 | 82 | ... | ... |
src/objects/window/window.c
... | ... | @@ -221,28 +221,43 @@ |
221 | 221 | // Create header's action buttons |
222 | 222 | // https://wiki.gnome.org/Initiatives/GnomeGoals/GearIcons |
223 | 223 | { |
224 | - g_autofree gchar * left = g_settings_get_string(settings, "header-start-action-names"); | |
225 | - g_autofree gchar * right = g_settings_get_string(settings, "header-end-action-names"); | |
224 | + g_autofree gchar * header_actions = g_settings_get_string(settings, "header-action-names"); | |
225 | + gchar ** header_blocks = g_strsplit(header_actions,":",-1); | |
226 | 226 | |
227 | - gchar ** elements; | |
227 | + if(g_strv_length(header_blocks) >= 2) { | |
228 | 228 | |
229 | - // First the left side actions. | |
230 | - elements = g_strsplit(left,",",-1); | |
231 | - for(ix=0;elements[ix];ix++) { | |
232 | - gtk_header_bar_pack_start(header, pw3270_header_button_new_from_builder(GTK_WIDGET(window),builder,elements[ix])); | |
233 | - } | |
234 | - g_strfreev(elements); | |
229 | + gchar ** elements; | |
230 | + | |
231 | + // First the left side actions. | |
232 | + elements = g_strsplit(header_blocks[0],",",-1); | |
233 | + for(ix=0;elements[ix];ix++) { | |
234 | + gtk_header_bar_pack_start(header, pw3270_header_button_new_from_builder(GTK_WIDGET(window),builder,elements[ix])); | |
235 | + } | |
236 | + g_strfreev(elements); | |
237 | + | |
238 | + // And then, the right side actions; | |
239 | + elements = g_strsplit(header_blocks[1],",",-1); | |
240 | + for(ix=0;elements[ix];ix++) { | |
241 | + gtk_header_bar_pack_end(header, pw3270_header_button_new_from_builder(GTK_WIDGET(window),builder,elements[ix])); | |
242 | + } | |
243 | + g_strfreev(elements); | |
235 | 244 | |
236 | - // And then, the right side actions; | |
237 | - elements = g_strsplit(right,",",-1); | |
238 | - for(ix=0;elements[ix];ix++) { | |
239 | - gtk_header_bar_pack_end(header, pw3270_header_button_new_from_builder(GTK_WIDGET(window),builder,elements[ix])); | |
240 | 245 | } |
241 | - g_strfreev(elements); | |
246 | + | |
247 | + g_strfreev(header_blocks); | |
242 | 248 | |
243 | 249 | } |
244 | 250 | |
245 | 251 | /* |
252 | + { | |
253 | + g_autofree gchar * left = g_settings_get_string(settings, "header-start-action-names"); | |
254 | + g_autofree gchar * right = g_settings_get_string(settings, "header-end-action-names"); | |
255 | + | |
256 | + | |
257 | + } | |
258 | + */ | |
259 | + | |
260 | + /* | |
246 | 261 | static const gchar * end_actions[] = { |
247 | 262 | "menu.open-menu", |
248 | 263 | }; | ... | ... |