Swiftpack.co - sindresorhus/DockProgress as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by sindresorhus.
sindresorhus/DockProgress v4.1.0
Show progress in your app's Dock icon
⭐️ 1,208
🕓 1 year ago
macOS
.package(url: "https://github.com/sindresorhus/DockProgress.git", from: "v4.1.0")

DockProgress

Show progress in your app's Dock icon

Requirements

macOS 10.15+

Install

Add https://github.com/sindresorhus/DockProgress in the “Swift Package Manager” tab in Xcode.

Latest version: 4.3.1

API

See the API docs.

Usage

Manually set the progress

import DockProgress

foo.onUpdate = { progress in
	DockProgress.progress = progress
}

Specify a Progress instance

import Foundation
import DockProgress

let progress = Progress(totalUnitCount: 1)
progress?.becomeCurrent(withPendingUnitCount: 1)

DockProgress.progressInstance = progress

The given Progress instance is weakly stored. It's up to you to retain it.

Styles

It comes with five styles. PR welcome for more.

Check out the example app in the Xcode project.

You can also draw a custom progress with .custom(drawHandler: (_ rect: CGRect) -> Void).

Bar

import DockProgress

DockProgress.stylesrc="https://raw.github.com/sindresorhus/DockProgress/main/ar

This is the default.

Squircle

import DockProgress

DockProgress.style = .squircle(color: .white.withAlphaComponent(0.5))

By default, it should perfectly fit a macOS 11 and later icon, but there is an inset parameter if you need to make any adjustments.

Circle

import DockProgress

DockProgress.style = .circle(radius: 55, color: .systemBlue)

Badge

import DockProgress

DockProgress.style = .badge(color: .systemBlue, badgeValue: { getDownloadCount() })

Large badgeValue numbers will be written in kilo short notation, for example, 10121k.

**Note:*src="https://raw.github.com/sindresorhus/DockProgress/main/ badgeValue is not meant to be used as a numeric percentage. It's for things like count of downloads, number of files being converted, etc.

Pie

import DockProgress

DockProgress.style = .pie(color: .systemBlue)

Related

GitHub

link
Stars: 1208
Last commit: 3 weeks ago
Advertisement: IndiePitcher.com - Cold Email Software for Startups

Release Notes

3 weeks ago

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics