diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..914c1a4 --- /dev/null +++ b/.clang-format @@ -0,0 +1,4 @@ +BasedOnStyle: LLVM +UseTab: Always +TabWidth: 4 +IndentWidth: 4 diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..5576f63 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,38 @@ +--- +name: Bug report +about: Something in mango isn't working correctly +title: "" +labels: "A: bug" +assignees: "" +--- + +## Info + + + + +mango version: +wlroots version: + +## Crash track +1.you need to build mango by enable asan flag. +```bash +meson build -Dprefix=/usr -Dasan=true +`` +2.run mango in tty. +```bash +export ASAN_OPTIONS="detect_leaks=1:halt_on_error=0:log_path=/home/xxx/asan.log" +mango + +``` + +3.after mango crash,paste the log file `/home/xxx/asan.log` here. + +## Description + + diff --git a/.github/ISSUE_TEMPLATE/enhancement-idea.md b/.github/ISSUE_TEMPLATE/enhancement-idea.md new file mode 100644 index 0000000..0ac096d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/enhancement-idea.md @@ -0,0 +1,10 @@ +--- +name: Enhancement idea +about: Suggest a feature or improvement +title: '' +labels: 'A: enhancement' +assignees: '' + +--- + + diff --git a/.github/workflows/lock.yml b/.github/workflows/lock.yml new file mode 100644 index 0000000..ad1080a --- /dev/null +++ b/.github/workflows/lock.yml @@ -0,0 +1,31 @@ +name: Lock Threads + +on: + schedule: + - cron: "30 12 * * *" + workflow_dispatch: + +concurrency: + group: lock + +jobs: + lock: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + discussions: write + steps: + - uses: dessant/lock-threads@v5 + with: + issue-inactive-days: "30" + issue-comment: > + I'm going to lock this issue because it has been closed for _30 days_. ⏳ + + This helps our maintainers find and focus on the active issues. + If you have found a problem that seems similar to this, please file a new + issue and complete the issue template so we can capture all the details + necessary to investigate further. + pr-inactive-days: "30" + discussion-inactive-days: "30" + process-only: "issues,prs,discussions" diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml new file mode 100644 index 0000000..43e8bad --- /dev/null +++ b/.github/workflows/stale.yml @@ -0,0 +1,28 @@ +name: Close manually marked stale issues +on: + schedule: + - cron: "30 12 * * *" # 每天 UTC 12:30 运行 + +jobs: + close-issues: + runs-on: ubuntu-latest + permissions: + issues: write + pull-requests: write + steps: + - uses: actions/stale@v9 + with: + # 禁用自动标记 stale(仅手动标记的 issue 会被处理) + days-before-issue-stale: -1 + # 手动标记后,14 天后关闭 + days-before-issue-close: 7 + # 使用的标签(必须和你手动添加的标签一致) + stale-issue-label: "stale" + # 自动关闭时自动加上的标签 + close-issue-label: "automatic-closing" + # 关闭时的提示信息 + close-issue-message: "Sorry,this issue was closed because it was marked as stale and had no activity for 7 days." + # 禁用 PR 处理 + days-before-pr-stale: -1 + days-before-pr-close: -1 + repo-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7681f94 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +/.cache +/.vscode +/result +config.h +mango +mango.o +util.o +*-protocol.h +*-protocol.c +*-protocol.o diff --git a/README.md b/README.md index d1370b3..d512f39 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,299 @@ -# Mango Wayland Compositor Nixpup Fork -![MangoWC Logo](https://codeberg.org/nixpup/MangoWC/raw/branch/main/mangowc_logo.png) +# Mango Wayland Compositor +
+ MangoWC Logo +
-# Demo - +This project's development is based on [dwl](https://codeberg.org/dwl/dwl/). + + +1. **Lightweight & Fast Build** + + - _Mango_ is as lightweight as _dwl_, and can be built completely within a few seconds. Despite this, _Mango_ does not compromise on functionality. + +2. **Feature Highlights** + - In addition to basic WM functionality, Mango provides: + - Excellent xwayland support. + - Base tags not workspaces (supports separate window layouts for each tag) + - Smooth and customizable complete animations (window open/move/close, tag enter/leave,layer open/close/move) + - Excellent input method support (text input v2/v3) + - Flexible window layouts with easy switching (scroller, master-stack, monocle,center-master, etc.) + - Rich window states (swallow, minimize, maximize, unglobal, global, fakefullscreen, overlay, etc.) + - Simple yet powerful external configuration(support shortcuts hot-reload) + - Sway-like scratchpad and named scratchpad + - Ipc support(get/send message from/to compositor by external program) + - Hycov-like overview + - Window effects from scenefx (blur, shadow, corner radius, opacity) + +Master-Stack Layout + +https://github.com/user-attachments/assets/a9d4776e-b50b-48fb-94ce-651d8a749b8a + +Scroller Layout + +https://github.com/user-attachments/assets/c9bf9415-fad1-4400-bcdc-3ad2d76de85a + +Layer animation + +https://github.com/user-attachments/assets/014c893f-115c-4ae9-8342-f9ae3e9a0df0 + + +# Our discord +[mangowc](https://discord.gg/CPjbDxesh5) + +# Supported layouts + +- tile +- scroller +- monocle +- grid +- deck +- center_tile +- vertical_tile +- vertical_grid +- vertical_scroller + +# Installation + +## Dependencies + +- glibc +- wayland +- wayland-protocols +- libinput +- libdrm +- libxkbcommon +- pixman +- git +- meson +- ninja +- libdisplay-info +- libliftoff +- hwdata +- seatd +- pcre2 +- xorg-xwayland +- libxcb + +## Arch Linux +The package is in the Arch User Repository and is availble for manual download [here](https://aur.archlinux.org/packages/mangowc-git) or through a AUR helper like yay: +```bash +yay -S mangowc-git -# New Features -This build of MangoWC supports *vertical stacking* within the *scroller* layout, similar to how the Niri Wayland Compositor and Window Manager works. This means by binding the following actions in your `~/.config/mango/config.conf`: ``` -bind=Alt,comma,stack_with_left -bind=Alt,period,unstack -bind=Alt,t,revert_size -``` -You can automatically split/resize the window to the left of the currently selected window, and then move/tile the currently selected window below the window to its left via the `stack_with_left` option. Removing a window from a stack is triggered by the `unstack` action, and with the `revert_size` action you can revert a window to its original size, meaning it gets resized back to using the full vertical screen size, and gets re-integrated into the scroller layout. -## [Original MangoWC Repository](https://github.com/DreamMaoMao/mangowc) \ No newline at end of file +## Gentoo Linux +The package is in the community-maintained repository called GURU. +First, add GURU repository: + +```bash +emerge --ask --verbose eselect-repository +eselect repository enable guru +emerge --sync guru +``` + +Then, add `gui-libs/scenefx` and `gui-wm/mangowc` to the `package.accept_keywords`. + +Finally, install the package: + +```bash +emerge --ask --verbose gui-wm/mangowc +``` + +## Fedora Linux +The package is in the third-party Terra repository. +First, add the [Terra Repository](https://terra.fyralabs.com/). + +Then, install the package: + +```bash +dnf install mangowc +``` + +## Other + +```bash +git clone -b 0.19.2 https://gitlab.freedesktop.org/wlroots/wlroots.git +cd wlroots +meson build -Dprefix=/usr +sudo ninja -C build install + +git clone -b 0.4.1 https://github.com/wlrfx/scenefx.git +cd scenefx +meson build -Dprefix=/usr +sudo ninja -C build install + +git clone https://github.com/DreamMaoMao/mangowc.git +cd mangowc +meson build -Dprefix=/usr +sudo ninja -C build install +``` + +## Suggested Tools + +### Hybrid component +- [dms-shell](https://github.com/AvengeMedia/DankMaterialShell) + +### Independent component +- Application launcher (rofi, bemenu, wmenu, fuzzel) +- Terminal emulator (foot, wezterm, alacritty, kitty, ghostty) +- Status bar (waybar, eww, quickshell, ags), waybar is preferred +- Wallpaper setup (swww, swaybg) +- Notification daemon (swaync, dunst,mako) +- Desktop portal (xdg-desktop-portal, xdg-desktop-portal-wlr, xdg-desktop-portal-gtk) +- Clipboard (wl-clipboard, wl-clip-persist, cliphist) +- Gamma control/night light (wlsunset, gammastep) +- Miscellaneous (xfce-polkit, wlogout) + +## Some Common Default Keybindings + +- alt+return: open foot terminal +- alt+space: open rofi launcher +- alt+q: kill client +- alt+left/right/up/down: focus direction +- super+m: quit mango + +## My Dotfiles + +### Daily +- Dependencies + +```bash +yay -S rofi foot xdg-desktop-portal-wlr swaybg waybar wl-clip-persist cliphist wl-clipboard wlsunset xfce-polkit swaync pamixer wlr-dpms sway-audio-idle-inhibit-git swayidle dimland-git brightnessctl swayosd wlr-randr grim slurp satty swaylock-effects-git wlogout sox +``` + +### Dms +- Dependencies +```bash +yay -S foot xdg-desktop-portal-wlr swaybg wl-clip-persist cliphist wl-clipboard sway-audio-idle-inhibit-git brightnessctl grim slurp satty matugen-bin dms-shell-git + +``` +- use my dms config + +```bash +git clone -b dms https://github.com/DreamMaoMao/mango-config.git ~/.config/mango +``` +- use my daily config + +```bash +git clone https://github.com/DreamMaoMao/mango-config.git ~/.config/mango +``` + + +## Config Documentation + +Refer to the repo wiki [wiki](https://github.com/DreamMaoMao/mango/wiki/) + +or the website docs [docs](https://mangowc.vercel.app/docs) + +# NixOS + Home-manager + +The repo contains a flake that provides a NixOS module and a home-manager module for mango. +Use the NixOS module to install mango with other necessary components of a working Wayland environment. +Use the home-manager module to declare configuration and autostart for mango. + +Here's an example of using the modules in a flake: + +```nix +{ + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + home-manager = { + url = "github:nix-community/home-manager"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + flake-parts.url = "github:hercules-ci/flake-parts"; + mango = { + url = "github:DreamMaoMao/mango"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + }; + outputs = + inputs@{ self, flake-parts, ... }: + flake-parts.lib.mkFlake { inherit inputs; } { + debug = true; + systems = [ "x86_64-linux" ]; + flake = { + nixosConfigurations = { + hostname = inputs.nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = [ + inputs.home-manager.nixosModules.home-manager + + # Add mango nixos module + inputs.mango.nixosModules.mango + { + programs.mango.enable = true; + } + { + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + backupFileExtension = "backup"; + users."username".imports = + [ + ( + { ... }: + { + wayland.windowManager.mango = { + enable = true; + settings = '' + # see config.conf + ''; + autostart_sh = '' + # see autostart.sh + # Note: here no need to add shebang + ''; + }; + } + ) + ] + ++ [ + # Add mango hm module + inputs.mango.hmModules.mango + ]; + }; + } + ]; + }; + }; + }; + }; +} +``` + +# Packaging mango + +To package mango for other distributions, you can check the reference setup for: + +- [nix](https://github.com/DreamMaoMao/mangowc/blob/main/nix/default.nix) +- [arch](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=mangowc-git). +- [gentoo](https://data.gpo.zugaina.org/guru/gui-wm/mangowc) + +You might need to package `scenefx` for your distribution, check availability [here](https://github.com/wlrfx/scenefx.git). + +If you encounter build errors when packaging `mango`, feel free to create an issue and ask a question, but +Read The Friendly Manual on packaging software in your distribution first. + +# Thanks to These Reference Repositories + +- https://gitlab.freedesktop.org/wlroots/wlroots - Implementation of Wayland protocol + +- https://github.com/dqrk0jeste/owl - Basal window animation + +- https://codeberg.org/dwl/dwl - Basal dwl feature + +- https://github.com/swaywm/sway - Sample of Wayland protocol + +- https://github.com/wlrfx/scenefx - Make it simple to add window effect. + + +# Sponsor +At present, I can only accept sponsorship through an encrypted connection. +If you find this project helpful to you, you can offer sponsorship in the following ways. + +image + + +Thanks to the following friends for their sponsorship of this project + +[@tonybanters](https://github.com/tonybanters) diff --git a/config.conf b/config.conf index 2413b3b..6cbb3a2 100644 --- a/config.conf +++ b/config.conf @@ -1,38 +1,7 @@ -# Autostart -exec-once=wl-paste --watch cliphist store -exec-once=dex --autostart environment mango -exec-once=swaybg -i /home/puppy/Pictures/gruvbox_pokemon_marnie_wp_dark.png -m fill -exec-once=gammastep -l 52.520008:13.404954 -t 4000:4000 -exec-once=dunst -exec-once=noctalia-shell -exec-once=vicinae server - -# Environment -env=GBM_BACKEND,nvidia-drm -env=__GLX_VENDOR_LIBRARY_NAME,nvidia -env=DISPLAY,:0 -env=XDG_CURRENT_DESKTOP,mango -env=XDG_SESSION_TYPE,wayland -env=QT_QPA_PLATFORM,wayland -env=QT_QPA_PLATFORMTHEME,qt5ct -env=QT_WAYLAND_DISABLE_WINDOWDECORATION,1 -env=MOZ_ENABLE_WAYLAND,1 -env=NIXOS_OZONE_WL,1 -env=ELECTRON_OZONE_PLATFORM_HINT,wayland -env=OZONE_PLATFORM,wayland -env=GDK_BACKEND,wayland -env=WINDOW_MANAGER,mango -env=SDL_VIDEODRIVER,wayland - -# Input -xkb_rules_layout=us -xkb_rules_options=caps:ctrl_modifier,ctrl:swapcaps -repeat_rate=25 -repeat_delay=600 -numlockon=0 +# More option see https://github.com/DreamMaoMao/mango/wiki/ # Window effect -blur=1 +blur=0 blur_layer=0 blur_optimized=1 blur_params_num_passes = 2 @@ -42,7 +11,7 @@ blur_params_brightness = 0.9 blur_params_contrast = 0.9 blur_params_saturation = 1.2 -shadows = 1 +shadows = 0 layer_shadows = 0 shadow_only_floating = 1 shadows_size = 10 @@ -54,7 +23,7 @@ shadowscolor= 0x000000ff border_radius=6 no_radius_when_single=0 focused_opacity=1.0 -unfocused_opacity=0.8 +unfocused_opacity=1.0 # Animation Configuration(support type:zoom,slide) # tag_animation_direction: 1-horizontal,0-vertical @@ -118,13 +87,19 @@ snap_distance=30 cursor_size=24 drag_tile_to_tile=1 +# keyboard +repeat_rate=25 +repeat_delay=600 +numlockon=0 +xkb_rules_layout=us + # Trackpad # need relogin to make it apply disable_trackpad=0 tap_to_click=1 tap_and_drag=1 drag_lock=1 -trackpad_natural_scrolling=1 +trackpad_natural_scrolling=0 disable_while_typing=1 left_handed=0 middle_button_emulation=0 @@ -133,7 +108,6 @@ swipe_min_threshold=1 # mouse # need relogin to make it apply mouse_natural_scrolling=0 -sloppyfocus=1 # Appearance gappih=5 @@ -144,8 +118,8 @@ scratchpad_width_ratio=0.8 scratchpad_height_ratio=0.9 borderpx=4 rootcolor=0x201b14ff -bordercolor=0x1d1f21ff -focuscolor=0xff2a54ff +bordercolor=0x444444ff +focuscolor=0xc9b890ff maximizescreencolor=0x89aa61ff urgentcolor=0xad401fff scratchpadcolor=0x516c93ff @@ -154,53 +128,51 @@ overlaycolor=0x14a57cff # layout support: # tile,scroller,grid,deck,monocle,center_tile,vertical_tile,vertical_scroller -tagrule=id:1,layout_name:scroller +tagrule=id:1,layout_name:tile tagrule=id:2,layout_name:tile -tagrule=id:3,layout_name:monocle -tagrule=id:4,layout_name:deck -tagrule=id:5,layout_name:grid -tagrule=id:6,layout_name:center_tile -tagrule=id:7,layout_name:vertical_tile +tagrule=id:3,layout_name:tile +tagrule=id:4,layout_name:tile +tagrule=id:5,layout_name:tile +tagrule=id:6,layout_name:tile +tagrule=id:7,layout_name:tile tagrule=id:8,layout_name:tile tagrule=id:9,layout_name:tile +# Key Bindings +# key name refer to `xev` or `wev` command output, +# mod keys name: super,ctrl,alt,shift,none + # reload config -bind=Alt+Shift,r,reload_config +bind=SUPER,r,reload_config # menu and terminal -bind=Alt,f,spawn,vicinae open -bind=Alt+Shift,Return,spawn,kitty +bind=Alt,space,spawn,rofi -show drun +bind=Alt,Return,spawn,foot # exit -#bind=Alt+Shift,x,quit -bind=Alt+Shift,x,spawn,~/.scripts/mango-exit.sh -bind=ALT+Shift,q,killclient, +bind=SUPER,m,quit +bind=ALT,q,killclient, # switch window focus -bind=Alt,Tab,focusstack,next +bind=SUPER,Tab,focusstack,next bind=ALT,Left,focusdir,left bind=ALT,Right,focusdir,right bind=ALT,Up,focusdir,up bind=ALT,Down,focusdir,down # swap window -bind=Alt+SHIFT,Up,exchange_client,up -bind=Alt+SHIFT,Down,exchange_client,down -bind=Alt+SHIFT,Left,exchange_client,left -bind=Alt+SHIFT,Right,exchange_client,right - -# scroller stack operations -bind=Alt,comma,stack_with_left -bind=Alt,period,unstack -bind=Alt,t,revert_size +bind=SUPER+SHIFT,Up,exchange_client,up +bind=SUPER+SHIFT,Down,exchange_client,down +bind=SUPER+SHIFT,Left,exchange_client,left +bind=SUPER+SHIFT,Right,exchange_client,right # switch window status -bind=ALT,g,toggleglobal, -bind=SUPER,Space,toggleoverview, -bind=Super,Space,togglefloating -bind=Alt+Shift,a,togglemaximizescreen, -bind=Alt+Shift,f,togglefullscreen, -bind=SUPER+Shift,f,togglefakefullscreen, +bind=SUPER,g,toggleglobal, +bind=ALT,Tab,toggleoverview, +bind=ALT,backslash,togglefloating, +bind=ALT,a,togglemaximizescreen, +bind=ALT,f,togglefullscreen, +bind=ALT+SHIFT,f,togglefakefullscreen, bind=SUPER,i,minimized, bind=SUPER,o,toggleoverlay, bind=SUPER+SHIFT,I,restore_minimized @@ -208,60 +180,52 @@ bind=ALT,z,toggle_scratchpad # scroller layout bind=ALT,e,set_proportion,1.0 - -# Applications -bind=ALT+Shift,e,spawn,emacs-wayland -bind=Alt,d,spawn,firefox -bind=SUPER,e,spawn,thunar -bind=SUPER,t,spawn,marker -bind=SUPER,l,spawn,hyprlock -bind=SUPER,f,spawn,sherlock -bind=Alt,a,spawn,hyprshot -m region --clipboard-only +bind=ALT,x,switch_proportion_preset, # switch layout -bind=Alt,space,switch_layout +bind=SUPER,n,switch_layout # tag switch bind=SUPER,Left,viewtoleft,0 -bind=CTRL+Super+Shift,Left,viewtoleft_have_client,0 +bind=CTRL,Left,viewtoleft_have_client,0 bind=SUPER,Right,viewtoright,0 -bind=CTRL+SUPER+Shift,Right,viewtoright_have_client,0 +bind=CTRL,Right,viewtoright_have_client,0 bind=CTRL+SUPER,Left,tagtoleft,0 bind=CTRL+SUPER,Right,tagtoright,0 -bind=Alt,1,view,1,0 -bind=Alt,2,view,2,0 -bind=Alt,3,view,3,0 -bind=Alt,4,view,4,0 -bind=Alt,5,view,5,0 -bind=Alt,6,view,6,0 -bind=Alt,7,view,7,0 -bind=Alt,8,view,8,0 -bind=Alt,9,view,9,0 +bind=Ctrl,1,view,1,0 +bind=Ctrl,2,view,2,0 +bind=Ctrl,3,view,3,0 +bind=Ctrl,4,view,4,0 +bind=Ctrl,5,view,5,0 +bind=Ctrl,6,view,6,0 +bind=Ctrl,7,view,7,0 +bind=Ctrl,8,view,8,0 +bind=Ctrl,9,view,9,0 # tag: move client to the tag and focus it # tagsilent: move client to the tag and not focus it # bind=Alt,1,tagsilent,1 -bind=Alt+Shift,1,tag,1,0 -bind=Alt+Shift,2,tag,2,0 -bind=Alt+Shift,3,tag,3,0 -bind=Alt+Shift,4,tag,4,0 -bind=Alt+Shift,5,tag,5,0 -bind=Alt+Shift,6,tag,6,0 -bind=Alt+Shift,7,tag,7,0 -bind=Alt+Shift,8,tag,8,0 -bind=Alt+Shift,9,tag,9,0 +bind=Alt,1,tag,1,0 +bind=Alt,2,tag,2,0 +bind=Alt,3,tag,3,0 +bind=Alt,4,tag,4,0 +bind=Alt,5,tag,5,0 +bind=Alt,6,tag,6,0 +bind=Alt,7,tag,7,0 +bind=Alt,8,tag,8,0 +bind=Alt,9,tag,9,0 # monitor switch -bind=alt+shift,ctrl,Left,focusmon,left -bind=alt+shift,ctrl,Right,focusmon,right +bind=alt+shift,Left,focusmon,left +bind=alt+shift,Right,focusmon,right bind=SUPER+Alt,Left,tagmon,left bind=SUPER+Alt,Right,tagmon,right # gaps bind=ALT+SHIFT,X,incgaps,1 bind=ALT+SHIFT,Z,incgaps,-1 -bind=ALT+SHIFT,G,togglegaps +bind=ALT+SHIFT,R,togglegaps # movewin bind=CTRL+SHIFT,Up,movewin,+0,-50 @@ -277,9 +241,9 @@ bind=CTRL+ALT,Right,resizewin,+50,+0 # Mouse Button Bindings # NONE mode key only work in ov mode -mousebind=ALT,btn_left,moveresize,curmove +mousebind=SUPER,btn_left,moveresize,curmove mousebind=NONE,btn_middle,togglemaximizescreen,0 -mousebind=ALT,btn_right,moveresize,curresize +mousebind=SUPER,btn_right,moveresize,curresize mousebind=NONE,btn_left,toggleoverview,1 mousebind=NONE,btn_right,killclient,0 @@ -287,9 +251,7 @@ mousebind=NONE,btn_right,killclient,0 axisbind=SUPER,UP,viewtoleft_have_client axisbind=SUPER,DOWN,viewtoright_have_client + # layer rule layerrule=animation_type_open:zoom,layer_name:rofi layerrule=animation_type_close:zoom,layer_name:rofi - -# Window Rules -windowrule=tags:2,appid:vesktop diff --git a/demo.mp4 b/demo.mp4 deleted file mode 100644 index 2d44799..0000000 Binary files a/demo.mp4 and /dev/null differ diff --git a/mangowc_logo.png b/mangowc_logo.png deleted file mode 100644 index 974ab3f..0000000 Binary files a/mangowc_logo.png and /dev/null differ diff --git a/nix/default.nix b/nix/default.nix index 52b2627..6085565 100644 --- a/nix/default.nix +++ b/nix/default.nix @@ -35,10 +35,6 @@ stdenv.mkDerivation { (lib.mesonBool "asan" debug) ]; - preConfigure = '' - rm -rf build - ''; - nativeBuildInputs = [ meson ninja diff --git a/result b/result deleted file mode 120000 index 479baac..0000000 --- a/result +++ /dev/null @@ -1 +0,0 @@ -/nix/store/znxl3gxcqpx3bh1wdhhv7w5n2xxq05w2-mango-nightly \ No newline at end of file diff --git a/src/dispatch/bind_declare.h b/src/dispatch/bind_declare.h index a19a57c..1e6f3d3 100644 --- a/src/dispatch/bind_declare.h +++ b/src/dispatch/bind_declare.h @@ -68,10 +68,9 @@ int32_t toggle_trackpad_enable(const Arg *arg); int32_t setoption(const Arg *arg); int32_t disable_monitor(const Arg *arg); int32_t enable_monitor(const Arg *arg); +int32_t toggle_monitor(const Arg *arg); int32_t expand_client_left(const Arg *arg); int32_t collapse_client_right(const Arg *arg); int32_t stack_with_left(const Arg *arg); int32_t unstack(const Arg *arg); int32_t revert_size(const Arg *arg); - -int32_t toggle_monitor(const Arg *arg); \ No newline at end of file diff --git a/src/layout/horizontal.h b/src/layout/horizontal.h index 6126574..15f8f7a 100644 --- a/src/layout/horizontal.h +++ b/src/layout/horizontal.h @@ -252,8 +252,7 @@ void scroller(Monitor *m) { int32_t cur_gappih = enablegaps ? m->gappih : 0; int32_t cur_gappoh = enablegaps ? m->gappoh : 0; int32_t cur_gappov = enablegaps ? m->gappov : 0; - int32_t cur_gappiv = enablegaps ? m->gappiv : 0; - + int32_t cur_gappiv = enablegaps ? m->gappiv : 0; cur_gappih = smartgaps && m->visible_scroll_tiling_clients == 1 ? 0 : cur_gappih; @@ -890,4 +889,4 @@ void tgmix(Monitor *m) { grid(m); return; } -} \ No newline at end of file +} diff --git a/thumbnail.png b/thumbnail.png deleted file mode 100644 index 987ddd4..0000000 Binary files a/thumbnail.png and /dev/null differ