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,15 +74,9 @@ | ||
74 | <description></description> | 74 | <description></description> |
75 | </key> | 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 | <description></description> | 80 | <description></description> |
87 | </key> | 81 | </key> |
88 | 82 |
schemas/windows/application.gschema.xml.in
@@ -74,15 +74,9 @@ | @@ -74,15 +74,9 @@ | ||
74 | <description></description> | 74 | <description></description> |
75 | </key> | 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 | <description></description> | 80 | <description></description> |
87 | </key> | 81 | </key> |
88 | 82 |
src/objects/window/window.c
@@ -221,28 +221,43 @@ | @@ -221,28 +221,43 @@ | ||
221 | // Create header's action buttons | 221 | // Create header's action buttons |
222 | // https://wiki.gnome.org/Initiatives/GnomeGoals/GearIcons | 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 | static const gchar * end_actions[] = { | 261 | static const gchar * end_actions[] = { |
247 | "menu.open-menu", | 262 | "menu.open-menu", |
248 | }; | 263 | }; |