<20.10.31.12.54> after dreaming about writing a wayland compositor im now actually looking at how

                    _                 _
__      ____ _ _   _| | __ _ _ __   __| |
\ \ /\ / / _` | | | | |/ _` | '_ \ / _` |
\ V  V / (_| | |_| | | (_| | | | | (_| |
 \_/\_/ \__,_|\__, |_|\__,_|_| |_|\__,_|
              |___/

I've had a cool idea for a desktop metaphor that I've wanted to use as an
underlying paradigm for a window manager. Creating a window manager in X might
be more quick and doable, but I already have a decent understanding of what
this involves. Creating a Wayland compositor, on the other hand, is a totally
new area for me that -- after getting past that first learning curve -- will
not doubt reward me for my patience.

The idea is this:
- No concept of workspaces. Instead we have one 'desktop' which is very much
  like the top of a desk.
- Windows are laid out like papers and objects on your desk: the perimeters of
  viewports are not (necessarily) fixed to positions relative to the windows.
- Mouse-driven dragging, resizing (conventional) and resizing (zoom in/out)
  will be a top priority in terms of usability.
- Keybindings will allow for easy placement of the viewport/windows in more
  conventional means, such as tiling to the current viewport (and full
  screening), jumping focus across windows etc.
- Zooming in/out viewport will also provide a nice way to see everything
  that's going on.
- Extra functions will provide useful tools, such as auto-organising of all
  windows in a row in case they get messed around too much or something.

The best way to picture this is if you have used inkscape or MS powerpoint:
imagine each window is a rectangle shape drawn on the page. They can be moved
dragged and resized, and the viewport can zoom in and out to wherever you want
to focus on a given rectangle.

Here are some useful links I have found so far that I am reading:
- https://wayland.freedesktop.org/architecture.html
- https://github.com/michaelforney/swc
- https://github.com/michaelforney/velox
- https://drewdevault.com/2018/02/17/Writing-a-Wayland-compositor-1.html
- https://github.com/eyelash/tutorials/tree/master/wayland-compositor


---------------------------------------------------
Some sleepy music: https://alexiaavina.bandcamp.com
---------------------------------------------------


[Sat Oct 31 13:55:04 2020] -- powered by smtpd(1)