<?xml version="1.0" encoding="UTF-8"?>
<schemalist>
    <schema id="org.gnome.shell.extensions.forge" path="/org/gnome/shell/extensions/forge/">
        <!-- Main Settings -->
        <key type="b" name="focus-border-toggle">
            <default>true</default>
            <summary>Show window border on focused window</summary>
        </key>

        <key type="u" name="focus-border-size">
            <default>3</default>
            <summary>The focused border's current thickness</summary>
        </key>

        <key type="s" name="focus-border-color">
            <default>'rgba(236, 94, 94, 1)'</default>
            <summary>The focused border's current color</summary>
        </key>

        <key type="b" name="split-border-toggle">
            <default>true</default>
            <summary>Show split direction border on focused window</summary>
        </key>

        <key type="s" name="split-border-color">
            <default>'rgba(255, 246, 108, 1)'</default>
            <summary>The focused border's current color</summary>
        </key>

        <key type="u" name="window-gap-size">
            <default>4</default>
            <summary>
                The size of the gap between windows in the workarea
            </summary>
        </key>

        <key type="u" name="resize-amount">
            <default>15</default>
            <summary>
                The window resize increment/decrement in pixels
            </summary>
        </key>

        <key type="u" name="window-gap-size-increment">
            <default>1</default>
            <summary>
                The size increment of the gaps. size-increment * gap-size
            </summary>
        </key>

        <key type="b" name="window-gap-hidden-on-single">
            <default>false</default>
            <summary>Hide gap when single window toggle</summary>
        </key>

        <key type="s" name="primary-layout-mode">
            <default>'tiling'</default>
            <summary>Layout modes: stacking, tiling</summary>
        </key>

        <key type="b" name="tiling-mode-enabled">
            <default>true</default>
            <summary>Tiling mode on/off</summary>
        </key>

        <key type="b" name="quick-settings-enabled">
            <default>true</default>
            <summary>Forge quick settings toggle</summary>
        </key>

        <key type="s" name="workspace-skip-tile">
            <default>''</default>
            <summary>Skips tiling on the provided workspace indices</summary>
        </key>

        <key type="b" name="stacked-tiling-mode-enabled">
            <default>true</default>
            <summary>Stacked tiling mode on/off</summary>
        </key>

        <key type="b" name="tabbed-tiling-mode-enabled">
            <default>true</default>
            <summary>Tabbed tiling mode on/off</summary>
        </key>

        <!-- Development Settings -->
        <key type="u" name="log-level">
            <default>0</default>
            <summary>
                Provide log4j-like logging levels:
                0 - OFF
                1 - FATAL
                2 - ERROR
                3 - WARN
                4 - INFO
                5 - DEBUG
                6 - TRACE
                7 - ALL
            </summary>
        </key>
        <key type="b" name="logging-enabled">
            <default>false</default>
            <summary>Enable logging</summary>
        </key>

        <key type="s" name="css-updated">
            <default>''</default>
            <summary>Timestamp when css is last updated. Also triggers reload of St</summary>
        </key>

        <key type="u" name="css-last-update">
            <default>1</default>
        </key>

        <key type="s" name="dnd-center-layout">
            <default>'tabbed'</default>
            <summary>
                The default center layout when dragging/dropping a window.
                The values are `tabbed` and `stacked`.
            </summary>
        </key>
        <key type="b" name="move-pointer-focus-enabled">
            <default>false</default>
            <summary>Move the pointer when focusing or swapping via kbd</summary>
        </key>
        <key type="b" name="focus-on-hover-enabled">
            <default>false</default>
            <summary>Focus switches to the window under the pointer.</summary>
        </key>
        <key type="b" name="float-always-on-top-enabled">
            <default>true</default>
            <summary>Floating windows toggle always-on-top</summary>
        </key>
        <key type="b" name="auto-exit-tabbed">
            <default>true</default>
            <summary>Exit tabbed tiling mode when only a single tab remains</summary>
        </key>
        <key type="b" name="auto-split-enabled">
            <default>true</default>
            <summary>Enable auto split or quarter-tiling based based on smaller side</summary>
        </key>
        <key type="b" name="preview-hint-enabled">
            <default>true</default>
            <summary>Whether to show preview hint DND</summary>
        </key>
        <key type="b" name="showtab-decoration-enabled">
            <default>true</default>
            <summary>Whether to show the tab decoration or not</summary>
        </key>

        <key type="u" name="window-overrides-reload-trigger">
            <default>0</default>
            <summary>Timestamp to trigger window overrides reload</summary>
        </key>

    </schema>
    <schema id="org.gnome.shell.extensions.forge.keybindings" path="/org/gnome/shell/extensions/forge/keybindings/">
        <!-- Keybinding Settings -->
        <key type="as" name="focus-border-toggle">
            <default><![CDATA[['<Super>x']]]></default>
            <summary>Toggle the focused window's border</summary>
        </key>

        <key type="as" name="window-gap-size-increase">
            <default><![CDATA[['<Ctrl><Super>plus']]]></default>
            <summary>Increase the size of gaps between windows/cons</summary>
        </key>

        <key type="as" name="window-gap-size-decrease">
            <default><![CDATA[['<Ctrl><Super>minus']]]></default>
            <summary>Decrease the size of gaps between windows/cons</summary>
        </key>

        <key type="as" name="con-split-layout-toggle">
            <default><![CDATA[['<Super>g']]]></default>
            <summary>Toggle split layout: horizontal or vertical</summary>
        </key>

        <key type="as" name="con-split-horizontal">
            <default><![CDATA[['<Super>z']]]></default>
            <summary>Split a container horizontally</summary>
        </key>

        <key type="as" name="con-split-vertical">
            <default><![CDATA[['<Super>v']]]></default>
            <summary>Split a container vertically</summary>
        </key>

        <key type="as" name="con-stacked-layout-toggle">
            <default><![CDATA[['<Shift><Super>s']]]></default>
            <summary>Toggle stacked layout</summary>
        </key>

        <key type="as" name="con-tabbed-layout-toggle">
            <default><![CDATA[['<Shift><Super>t']]]></default>
            <summary>Toggle tabbed layout</summary>
        </key>

        <key type="as" name="con-tabbed-showtab-decoration-toggle">
            <default><![CDATA[['<Ctrl><Alt>y']]]></default>
            <summary>Toggle showing the tab decoration layout</summary>
        </key>

        <key type="as" name="window-swap-left">
            <default><![CDATA[['<Ctrl><Super>h']]]></default>
            <summary>Swap window left</summary>
        </key>

        <key type="as" name="window-swap-down">
            <default><![CDATA[['<Ctrl><Super>j']]]></default>
            <summary>Swap window down</summary>
        </key>

        <key type="as" name="window-swap-up">
            <default><![CDATA[['<Ctrl><Super>k']]]></default>
            <summary>Swap window up</summary>
        </key>

        <key type="as" name="window-swap-right">
            <default><![CDATA[['<Ctrl><Super>l']]]></default>
            <summary>Swap window right</summary>
        </key>

        <key type="as" name="window-move-left">
            <default><![CDATA[['<Shift><Super>h']]]></default>
            <summary>Move window left</summary>
        </key>

        <key type="as" name="window-move-down">
            <default><![CDATA[['<Shift><Super>j']]]></default>
            <summary>Move window down</summary>
        </key>

        <key type="as" name="window-move-up">
            <default><![CDATA[['<Shift><Super>k']]]></default>
            <summary>Move window up</summary>
        </key>

        <key type="as" name="window-move-right">
            <default><![CDATA[['<Shift><Super>l']]]></default>
            <summary>Move window right</summary>
        </key>

        <key type="as" name="window-focus-left">
            <default><![CDATA[['<Super>h']]]></default>
            <summary>Move window left</summary>
        </key>

        <key type="as" name="window-focus-down">
            <default><![CDATA[['<Super>j']]]></default>
            <summary>Move window down</summary>
        </key>

        <key type="as" name="window-focus-up">
            <default><![CDATA[['<Super>k']]]></default>
            <summary>Move window up</summary>
        </key>

        <key type="as" name="window-focus-right">
            <default><![CDATA[['<Super>l']]]></default>
            <summary>Move window right</summary>
        </key>

        <key type="as" name="window-toggle-float">
          <default><![CDATA[['<Super>c']]]></default>
            <summary>Toggle window float</summary>
        </key>

        <key type="as" name="window-toggle-always-float">
            <default><![CDATA[['<Shift><Super>c']]]></default>

        </key>

        <key type="as" name="workspace-active-tile-toggle">
            <default><![CDATA[['<Shift><Super>w']]]></default>
            <summary>Toggle active workspace tiling</summary>
        </key>

        <key type="as" name="prefs-open">
            <default><![CDATA[['<Super>Period']]]></default>
            <summary>Open the extension's preferences</summary>
        </key>

        <key type="as" name="prefs-tiling-toggle">
            <default><![CDATA[['<Super>w']]]></default>
                <summary>Toggle tiling mode on/off</summary>
        </key>

        <key type="s" name="mod-mask-mouse-tile">
            <default>'None'</default>
            <summary>
                Mod mask to allow window tiling via drag-drop. None means it will tile immediately.
                Options are Super, Ctrl, Shift, Alt, and None
            </summary>
        </key>

        <key type="as" name="window-swap-last-active">
            <default><![CDATA[['<Super>Return']]]></default>
            <summary>Swap the last active window with the current one</summary>
        </key>

        <key type="as" name="window-snap-one-third-right">
          <default><![CDATA[['<Ctrl><Alt>g']]]></default>
        </key>

        <key type="as" name="window-snap-two-third-right">
          <default><![CDATA[['<Ctrl><Alt>t']]]></default>
        </key>

        <key type="as" name="window-snap-one-third-left">
          <default><![CDATA[['<Ctrl><Alt>d']]]></default>
        </key>

        <key type="as" name="window-snap-two-third-left">
          <default><![CDATA[['<Ctrl><Alt>e']]]></default>
        </key>

        <key type="as" name="window-snap-center">
          <default><![CDATA[['<Ctrl><Alt>c']]]></default>
        </key>

        <key type="as" name="window-resize-left-increase">
          <default><![CDATA[['<Ctrl><Super>y']]]></default>
        </key>

        <key type="as" name="window-resize-left-decrease">
            <default><![CDATA[['<Ctrl><Shift><Super>o']]]></default>
        </key>

        <key type="as" name="window-resize-bottom-increase">
          <default><![CDATA[['<Ctrl><Super>u']]]></default>
        </key>

        <key type="as" name="window-resize-bottom-decrease">
            <default><![CDATA[['<Ctrl><Shift><Super>i']]]></default>
        </key>

        <key type="as" name="window-resize-top-increase">
          <default><![CDATA[['<Ctrl><Super>i']]]></default>
        </key>

        <key type="as" name="window-resize-top-decrease">
            <default><![CDATA[['<Ctrl><Shift><Super>u']]]></default>
        </key>

        <key type="as" name="window-resize-right-increase">
          <default><![CDATA[['<Ctrl><Super>o']]]></default>
        </key>

        <key type="as" name="window-resize-right-decrease">
            <default><![CDATA[['<Ctrl><Shift><Super>y']]]></default>
        </key>
    </schema>
</schemalist>
