• Stars
    star
    191
  • Rank 202,877 (Top 4 %)
  • Language
    Swift
  • License
    MIT License
  • Created over 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A macOS utility that makes window management a breeze

Hummingbird

Hummingbird is a macOS app to allow easy moving and resizing of windows by pressing modifier keys and moving your mouse pointer. Windows do not require focus, nor do you need to find the window edges.

Hold down a modifier key combination like โŒƒโŒฅ (control + option) and move you mouse pointer over a window to "grab" it anywhere to move it. Similarly, hold down another modifier key combination to resize the window as if you were dragging from the bottom right window corner from within anywhere in the window.

Hummingbird brings the move and resize behaviour known from Unix window managers to macOS.

Watch the video

In the video above, holding fn and ctrl while moving the mouse moves the window, and holding alt in addition allows the window to be resized simply by moving the mouse pointer. This is great for mouse users but is particularly helpful when using a trackpad, where clicking and holding can be a harder gesture to perform precisely.

Installation

Or use Homebrew:

brew tap finestructure/Hummingbird
brew install finestructure/hummingbird/hummingbird

Hummingbird has been tested on macOS 10.14 Mojave and 10.15 Catalina but it should run on earlier macOS versions as well (macOS 10.11 or higher).

Usage

  • After launching, Hummingbird is accessible via a menu bar item:

  • However, on first use you will need to grant permissions for Accessibility Access. This is required so Hummingbird can move and resize windows. You will see an alert directing you to System Preferences:

  • In System Preferences / Security & Privacy / Privacy, please authenticate and make sure the entry for "Hummingbird" under "Accessibility" is checked as indicated below.

  • You can configure the move and resize keyboard shortcuts in Hummingbird's preferences:

Supporting development

Hummingbird is open source but if you'd like to support the app or simply don't want to bother building it yourself, please head over to https://hbird.app to download the commercial version. It comes with a 14 day free trial and you can purchase a license through the website or from within the app.

Every sale helps me to keep working on Hummingbird and if you find it useful, please spread the word!

Known Limitations

Hummingbird is using the macOS Accessibility APIs in order to discover windows and update their position and size. Some apps seem to be creating windows that don't participate in this mechanism and therefore are invisible to Hummingbird. See issue #5 for more details in what apps might be affected.

Contributing

Contributions welcome!

Credits: Easy Move+Resize by Daniel Marcotte

This project is a fork of the original project by Daniel Marcotte. His project uses mouse click based tracking, which I modified to use mouse moving instead.

Daniel suggested to fork and rename the project to avoid confusion.

More Repositories

1

Arena

A command line tool to create Swift Playground projects with SPM package dependencies
Swift
678
star
2

CoPilot

Swift
275
star
3

Gala

Create SwiftUI preview variants for macOS, iOS, tvOS, and watchOS with ease
Swift
87
star
4

Historian

History viewer and transmitter for Composable Architecture apps
Swift
55
star
5

Rester

A command line tool to test (REST) APIs
Swift
42
star
6

blogpost-prometheus

Source code for blog post 'Monitoring with Prometheus, Grafana & Docker'
Dockerfile
19
star
7

PFCompArch

This is an example project for the "Composable Architecture" introduced by pointfree.co
Swift
14
star
8

ImageAttributesPublishPlugin

A Publish plugin to add support for image attributes
Swift
8
star
9

DiffMatchPatch

Swift package for Googleโ€™s Diff Match Patch
Objective-C
7
star
10

CRabbitMQ

A swift package manager wrapper for rabbitmq-c
C
6
star
11

ValueCodable

A Value struct to decode arbitrary data
Swift
6
star
12

autotm

Script that automatically switches between several configured time machine backup servers
Ruby
6
star
13

homebrew-tap

Ruby
3
star
14

Sms2Mail

Upload iPhone SMS (text messages) to an IMAP mail account
Python
3
star
15

Parser

Library to create composable parsers, based on pointfree.co's series on Parsing
Swift
3
star
16

CompArch

SwiftUI State-Action-Reducer architecture based on pointfree.co series
Swift
2
star
17

RabbitMQ

ObjC Framework wrapper for rabbitmq-c
C
2
star
18

couchdb-migration

Python
2
star
19

HistoryTransceiver

Swift
2
star
20

AsyncTest

SenTestCase+Async category and usage example
Objective-C
2
star
21

HastyHare

Swift wrapper for RabbitMQ C client rabbitmq-c
Swift
2
star
22

swift-pg-extras

Commands providing shortcuts to common Postgres introspection queries (Swift port of heroku-pg-extras)
Swift
2
star
23

homebrew-Hummingbird

Cask for Hummingbird
Ruby
2
star
24

sswg-package-lists

1
star
25

debug-2227

Swift
1
star
26

Hourglass-Mobile

Objective-C
1
star
27

vapor-lockup-repro

Test project to reproduce a lockup in Vapor
Swift
1
star
28

daws-test

Test project for WebSocketActors
Swift
1
star
29

SASPopupButton

Objective-C
1
star
30

Graf

Objective-C
1
star
31

MiteTime

Ruby
1
star
32

GrafServer

Python
1
star
33

Shooter

SpriteKit mini-game in swift (converted from Objective-C) with a Christmas theme
Swift
1
star
34

Sono

Sonography for iPad
Objective-C
1
star
35

Whiteboard

Objective-C
1
star
36

Tracker

Ruby
1
star
37

HeadPhoneJack

Swift
1
star
38

swift-package-collection-model

Swift
1
star
39

Capio

Capacity Management Front-end
JavaScript
1
star
40

GrafWeb

Graf web front-end
JavaScript
1
star
41

hummingbird-lockup-repro

Swift
1
star
42

Anjin

Sales rep application
Objective-C
1
star
43

builder-test-project

Test project for SPI builder
Swift
1
star
44

AbsReader

Objective-C
1
star
45

Sally

EK/VK Calculator
Objective-C
1
star
46

Hourglass

Objective-C
1
star
47

fs-html

A Swift DSL to generate HTML for use in server side swift projects - or anywhere you want to write type checked HTML.
Swift
1
star
48

LongRunningLazyInit

Objective-C
1
star
49

CouchStore2

Objective-C
1
star
50

Rester-sitemap

Swift script to create a restfile from sitemap.xml for use with Rester
Swift
1
star
51

jenkins-email-templates

1
star
52

dependencies-hang-repro

Swift
1
star
53

elme

Objective-C
1
star
54

Persequor

Ruby
1
star
55

pg-perf-regression

Swift
1
star