Skip to content

EdgeSnap 0.1 beta

Pre-release
Pre-release

Choose a tag to compare

@kaffeine1 kaffeine1 released this 29 Aug 13:58
· 124 commits to main since this release

Drag a window against a screen edge or corner and it fills that half or
quarter of the screen, the way Windows and macOS do. Two windows side by
side share a seam that can be dragged to re-balance them. Docks are
detected and never covered.

This is a first public release, and a beta. It does what it says on
two machines - one AmigaOS 4.1 FE and one MorphOS 3.20 - and nowhere
else yet. That is what the 0.1 is for.

Installing

Unpack the archive and double-click Install. It recognises the
system, puts edgesnap.library in LIBS:, the commodity in C:, the
preferences window in SYS:Prefs/, and one line in S:User-Startup so
that snapping is simply there from the next boot. Updating is just
installing again: the running copy is stopped and replaced, no reboot.

Using it

  • Drag a window's title bar until the pointer touches an edge or
    corner; a frame shows where it will land. Release and it snaps.
  • Grab the seam between two tiled windows - the pointer becomes a double
    arrow - and drag: both are resized together.
  • ctrl alt cursor left/right/up snap the active window,
    ctrl alt cursor down puts it back.
  • Settings are in SYS:Prefs/EdgeSnap, native on each system:
    ReAction on AmigaOS 4, MUI on MorphOS. Change something and EdgeSnap
    follows immediately, without being restarted.
  • Exchange enables, disables or removes it, as with any commodity.

Two version numbers

EdgeSnap is 0.1; edgesnap.library says 2.2. That is not a mistake: a
library's version is its interface, not its product. While EdgeSnap is
below 1.0, treat that interface as not frozen
- methods are only ever
appended, never moved or removed, but names and arguments may still
change. If you build on it, say which version you built against.

What is verified, and what is not

Verified on both systems: install, drag and snap, hotkeys, dock
awareness, the seam and its double arrow, the preferences window
including save and live reload.

Not verified: anything on hardware other than those two machines, other
screen sizes, other MUI and ReAction themes, docks other than AmiDock
and Ambient's panel. If EdgeSnap covers your dock, misses your seam, or
draws something odd with transparency switched on, that is exactly the
report worth having.

Building it

Cross-compilers in containers, host tests in plain C89:

make -f Makefile.host test      # the portable core, six suites
scripts/build-os4.sh            # AmigaOS 4 commodity
scripts/build-morphos.sh        # MorphOS commodity

See docs/DESIGN.md for the architecture and for what
was learned the hard way on each system.