No description
Find a file
leyoda a7cd859317
Some checks are pending
Continuous Integration / formatting (push) Waiting to run
Continuous Integration / linting (push) Waiting to run
yoda: fisheye magnification for dock hover (phase B v2 / c)
Replaces the binary 1.3× hover with a true gaussian bell curve — the
hovered icon still peaks at ~1.35×, but the ±1 neighbours also bulge
noticeably, ±2 a bit, and ±3+ relax to 1.0×. Footprint ~5 icons wide,
matching the macOS Dock fisheye feel.

Implementation in fn icon_scale_for(id):
- Reads the hovered icon's and the current icon's bounds from
  self.rectangles (already populated by the existing RectangleTracker
  subscription — no new plumbing).
- Distance = |this_center - hovered_center| along the panel's long axis
  (horizontal for Top/Bottom anchors, vertical for Left/Right).
- sigma = hovered_extent * 1.4 so the bell's half-width matches one
  icon width (neighbors clearly pulled, far icons untouched).
- scale = 1.0 + PEAK * exp(-(d/sigma)²) with PEAK = 0.35.
- Falls back to binary 1.35×/1.0× when rectangle data isn't populated
  yet (first render / resize) — visibly responsive even before the
  tracker catches up.

No widget signature changes vs v1, just a smarter formula. All five
as_icon call sites already pass the result of icon_scale_for so this
update propagates everywhere.

Still on the TODO list: smooth animation (b). Right now icon→icon
transitions snap instantly; a smoothed_hover_center + tick subscription
would lerp it. Deferred to a follow-up commit.
2026-04-24 13:13:52 +02:00
.github Add pull request template 2026-02-13 12:35:27 -07:00
cosmic-app-list yoda: fisheye magnification for dock hover (phase B v2 / c) 2026-04-24 13:13:52 +02:00
cosmic-applet-a11y i18n: translation updates from weblate 2026-04-12 18:50:17 +02:00
cosmic-applet-audio update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-battery update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-bluetooth update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-input-sources update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-minimize update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-network wip: update libcosmic 2026-04-16 15:27:25 -06:00
cosmic-applet-notifications update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-power i18n: translation updates from weblate 2026-04-12 18:50:17 +02:00
cosmic-applet-status-area update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-tiling update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-time update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applet-workspaces update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-applets i18n: translate desktop entries with xdgen (#1328) 2026-03-02 11:33:29 -07:00
cosmic-applets-config feat(battery): add option to show charge percentage next to the icon (#994) 2026-02-02 14:47:38 -07:00
cosmic-panel-app-button/data i18n: translate desktop entries with xdgen (#1328) 2026-03-02 11:33:29 -07:00
cosmic-panel-button update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
cosmic-panel-launcher-button/data i18n: translate desktop entries with xdgen (#1328) 2026-03-02 11:33:29 -07:00
cosmic-panel-workspaces-button/data i18n: translate desktop entries with xdgen (#1328) 2026-03-02 11:33:29 -07:00
data i18n(bg): update desktop info 2025-11-09 11:27:31 +01:00
debian chore: update dependencies and debian changelog 2026-01-13 15:33:04 -05:00
i18n i18n: translation updates from weblate 2026-04-12 18:50:17 +02:00
.gitignore status-area: Seperate daemon for status notifier daemon 2026-02-02 10:36:16 -08:00
Cargo.lock update libcosmic after reexports are removed 2026-04-16 15:27:25 -06:00
Cargo.toml chore: updates after iced-rebase 2026-03-31 22:34:59 +02:00
flake.lock feat: updated flake.nix and fixed error due to crane api change 2025-05-20 17:01:17 +02:00
flake.nix chore: bump versions to 1.0.0 2025-12-30 08:34:00 +01:00
justfile fix(justfile): wrong path to localized desktop entries 2026-03-18 11:12:40 -04:00
LICENSE license 2022-05-26 11:59:09 -04:00
rust-toolchain.toml applet overlap 2025-11-11 16:49:48 -05:00