Skip to content

DevRoamer/FancyTiling

Repository files navigation

Fancy Tiling - GNOME Extension

GNOME

Fancy Zones clone for GNOME 45.

Features

  • Multiple layouts
  • Multiple zones
  • Move window to zone by mouse drag
  • Merge zones by mouse distance
  • Overlay customization
  • Layout editor (WIP)
  • Different layout for multiple monitores (WIP)
  • Keyboard shortcuts (WIP)
  • Restore window to last zone (WIP)

Preview

Usage

At the moment the activation key is the Ctrl-key. Start dragging a window and press Ctrl, release mouse button while holding Ctrl will move the window in the selected zone.

Requierments

  • git
  • make
  • gnome-shell-extension-tool

Manual Installation (for testers & enthusiasts)

So, if you have all requierments installed you can proceed as follows.

  1. Clone the repository via the git-clone command and change to the FancyTiling directory:
git clone https://github.com/DevRoamer/FancyTiling.git
cd fancy-tiling
  1. If you have already installed FancyTiling, then please remove the existing installation via:
make uninstall
  1. Install it via:
make install
  1. Enable or disable the extension via:
make enable
make disable
  1. Logout from the current GNOME session and login again for the changes to take effect.

Customize zones (only for early releases)

To customize layout in early releases you need to edit the gschema file or use dconf and set

/org/gnome/shell/extensions/ft/layouts

The default layout config:

{
    "layouts": {
        "2x2": {                      /// layout name
            "zones": {                
                "1":[0,0,0.5,0.5],    /// zone name with 4 float values 
                "2":[0.5,0,1,0.5],    /// (0-1 -> 0 = left/top, 1 = right/bottom)
                "3":[0,0.5,0.5,1],    /// values are for [left, top, right, bottom]
                "4":[0.5,0.5,1,1]
            }
        },
        "2-1-2": {
            "zones": {
                "LeftTop":     [0,0,0.3,0.5],
                "LeftBottom":  [0,0.5,0.3,1],
                "Center":      [0.3,0,0.7,1],
                "RightTop":    [0.7,0,1,0.5],
                "RightBottom": [0.7,0.5,1,1]
            }
        }
    }
}

Compile and install after editing the gschema -> Logout and login.