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 | }; | ... | ... |