Conversation
Add `Shellbee/Shared/Compat/iOS26Compat.swift` with helpers that keep
native iOS 26 styling (Liquid Glass, minimized search toolbar, indefinite
bounce) and fall back to iOS 17 equivalents. Migrate all call sites.
Split `MainTabView` into `Tab { }` (iOS 18) vs classic `.tabItem` (iOS 17)
and force opaque `UITabBar` appearance on iOS 17/18 so the tab bar no
longer fades transparent at the scroll edge. `MeshGradient` falls back to
`LinearGradient`. Replace `arrow.trianglehead.2.clockwise` (SF Symbols 6)
with `arrow.triangle.2.circlepath`. Replace widget `.repeat(.continuous)`
with `.repeating`.
Refs #49
…anges Refs #52: redesign Activity rows, log detail header, home Recent Events card, and group compact card to share one aesthetic — device image avatar with category corner badge, severity title color, no chevrons. Refs #53: attribute bridge/response/* and <device>/action publishes to the right device or group. Resolves payload.data.id / data.to / data.friendly_name and falls back to scanning payload.error for known device names. Fixes the payload extractor that was truncating JSON at embedded single quotes. Refs #54: filter elapsed and empty-string transitions from diffs, format filter_age / device_age as durations, drop the full-payload snapshot under state-change diffs, scope the device-state card to actual exposes, and stop truncating long string values in BeautifulRow. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Drop .controlSize(.small) on the ProgressView so the spinner matches the surrounding arrow.up.circle glyph it replaces. Fixes #55 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Visual + functional overhaul of the Activity log surface, plus iOS 17 baseline and a small toolbar polish.
bridge/response/device/...and<device>/action-style publishes now resolve to the real device/group (viapayload.data.id/data.to/data.friendly_name, falling back to scanningpayload.errorfor a known device name when responses fail). Fixed the payload extractor that was truncating JSON at embedded single quotes ('office_remote',didn't).elapsed, dropped empty-string transitions, formattedfilter_age/device_ageas durations (4 moinstead of177242), removed the duplicate full-payload snapshot under state-change diffs, and scoped the device-state card to actual device exposes so bridge errors show only the hero card.ProgressViewno longer renders smaller than the glyph it replaces.Issues closed
Commits
bae5cc6Lower deployment target to iOS 1758217beBump MARKETING_VERSION to 1.5.07c3ff21Logs: redesign rows + detail, attribute bridge events, clean state changes47c38e9Bulk OTA toolbar spinner: use default sizeTest plan
bridge/response/...; remote button presses produce one row, not threefilter_agereads as4 monot177242