config: rename window-append-new-tab to window-new-tab-position

This commit is contained in:
Mitchell Hashimoto
2024-01-12 09:50:47 -08:00
parent 2aa1874f94
commit 81b9a6b623
2 changed files with 17 additions and 10 deletions

View File

@ -108,13 +108,9 @@ pub fn init(self: *Tab, window: *Window, parent_: ?*CoreSurface) !void {
c.gtk_box_append(self.box, gl_area_widget);
// Add the notebook page (create tab).
const parent_page_idx = parent_page_idx: {
// If this option is enabled we append the new tab to the end of the notebook.
if (window.app.config.@"window-append-new-tabs") {
break :parent_page_idx c.gtk_notebook_get_n_pages(window.notebook);
}
// Otherwise we add it after the current tab.
break :parent_page_idx c.gtk_notebook_get_current_page(window.notebook) + 1;
const parent_page_idx = switch (window.app.config.@"window-new-tab-position") {
.current => c.gtk_notebook_get_current_page(window.notebook) + 1,
.end => c.gtk_notebook_get_n_pages(window.notebook),
};
const page_idx = c.gtk_notebook_insert_page(

View File

@ -656,9 +656,14 @@ keybind: Keybinds = .{},
/// Currently only supported on macOS.
@"window-step-resize": bool = false,
/// Append new tabs to the end of the tab list instead of right after the
/// current tab.
@"window-append-new-tabs": bool = false,
/// The position where new tabs are created. Valid values:
///
/// - "current" - Insert the new tab after the currently focused tab,
/// or at the end if there are no focused tabs.
/// - "end" - Insert the new tab at the end of the tab list.
///
/// This configuration currently only works with GTK.
@"window-new-tab-position": WindowNewTabPosition = .current,
/// When enabled, the full GTK titlebar is displayed instead of your window
/// manager's simple titlebar. The behavior of this option will vary with your
@ -2899,6 +2904,12 @@ pub const WindowSaveState = enum {
always,
};
/// See window-new-tab-position
pub const WindowNewTabPosition = enum {
current,
end,
};
/// See grapheme-width-method
pub const GraphemeWidthMethod = enum {
wcswidth,