[PR #21] [MERGED] Add native macOS menu-bar application shell #21

Closed
opened 2026-10-23 18:09:19 +02:00 by jayanezj · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/jayanezj/traccar-client-macos/pull/21
Author: @jayanezj
Created: 10/23/2026
Status: ✅ Merged
Merged: 10/23/2026
Merged by: @jayanezj

Base: main ← Head: feature/1-native-shell


📝 Commits (1)

  • 0bc6c33 feat: add native macOS menu-bar application shell (#1)

📊 Changes

28 files changed (+695 additions, -0 deletions)

View changed files

➕ .gitignore (+48 -0)
➕ Artwork/AppIcon.svg (+11 -0)
➕ Artwork/README.md (+13 -0)
➕ LICENSE (+202 -0)
➕ README.md (+43 -0)
➕ TraccarClient.xcodeproj/project.pbxproj (+33 -0)
➕ TraccarClient.xcodeproj/xcshareddata/xcschemes/TraccarClient.xcscheme (+22 -0)
➕ TraccarClient/Application/TraccarClientApp.swift (+29 -0)
➕ TraccarClient/Interface/SettingsView.swift (+34 -0)
➕ TraccarClient/Interface/TrackingMenu.swift (+45 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json (+68 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_128x128.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_16x16.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_256x256.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_32x32.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png (+0 -0)
➕ TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_512x512.png (+0 -0)

...and 8 more files

📄 Description

Adds the native SwiftUI application shell for Apple Silicon Macs running macOS 15 or later. The app starts paused, exposes Settings, About and Quit from the menu bar, and keeps tracking and position/SOS actions disabled until their implementation.

Includes the shared Xcode scheme, Debug/Release configurations, ad hoc signing, Apache-2.0 license, external-output build script and SVG-derived application/menu-bar icons. The organized .gitignore excludes local build output, user state and secrets while retaining shared schemes, artwork, assets and lockfiles.

Validation

  • Debug and Release builds passed with Xcode 27.1, Swift 6 language mode and SDK macOS 27.0.
  • Strict ad hoc signature checks passed; binaries contain arm64 and minimum macOS 15.0 metadata.
  • Manually verified paused state, disabled actions, Settings reopen, About, Quit and the integrated icon on macOS 27.0.1.
  • Verified icon dimensions, exact green color, transparent cutout and compiled asset resources.
  • Verified 18 excluded and 10 retained path cases for .gitignore; staged diff passed whitespace checks.

Runtime testing on macOS 15 and DMG/Gatekeeper checks remain in their planned issues. GitHub Actions CI is introduced in #2; this PR does not claim hosted test coverage.

Closes #1.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/jayanezj/traccar-client-macos/pull/21 **Author:** [@jayanezj](https://github.com/jayanezj) **Created:** 10/23/2026 **Status:** ✅ Merged **Merged:** 10/23/2026 **Merged by:** [@jayanezj](https://github.com/jayanezj) **Base:** `main` ← **Head:** `feature/1-native-shell` --- ### 📝 Commits (1) - [`0bc6c33`](https://github.com/jayanezj/traccar-client-macos/commit/0bc6c3317b9ec4d01a57f0b6add805212bc93ab9) feat: add native macOS menu-bar application shell (#1) ### 📊 Changes **28 files changed** (+695 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `.gitignore` (+48 -0) ➕ `Artwork/AppIcon.svg` (+11 -0) ➕ `Artwork/README.md` (+13 -0) ➕ `LICENSE` (+202 -0) ➕ `README.md` (+43 -0) ➕ `TraccarClient.xcodeproj/project.pbxproj` (+33 -0) ➕ `TraccarClient.xcodeproj/xcshareddata/xcschemes/TraccarClient.xcscheme` (+22 -0) ➕ `TraccarClient/Application/TraccarClientApp.swift` (+29 -0) ➕ `TraccarClient/Interface/SettingsView.swift` (+34 -0) ➕ `TraccarClient/Interface/TrackingMenu.swift` (+45 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json` (+68 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_128x128.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_128x128@2x.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_16x16.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_16x16@2x.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_256x256.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_256x256@2x.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_32x32.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_32x32@2x.png` (+0 -0) ➕ `TraccarClient/Resources/Assets.xcassets/AppIcon.appiconset/icon_512x512.png` (+0 -0) _...and 8 more files_ </details> ### 📄 Description Adds the native SwiftUI application shell for Apple Silicon Macs running macOS 15 or later. The app starts paused, exposes Settings, About and Quit from the menu bar, and keeps tracking and position/SOS actions disabled until their implementation. Includes the shared Xcode scheme, Debug/Release configurations, ad hoc signing, Apache-2.0 license, external-output build script and SVG-derived application/menu-bar icons. The organized `.gitignore` excludes local build output, user state and secrets while retaining shared schemes, artwork, assets and lockfiles. ## Validation - Debug and Release builds passed with Xcode 27.1, Swift 6 language mode and SDK macOS 27.0. - Strict ad hoc signature checks passed; binaries contain arm64 and minimum macOS 15.0 metadata. - Manually verified paused state, disabled actions, Settings reopen, About, Quit and the integrated icon on macOS 27.0.1. - Verified icon dimensions, exact green color, transparent cutout and compiled asset resources. - Verified 18 excluded and 10 retained path cases for `.gitignore`; staged diff passed whitespace checks. Runtime testing on macOS 15 and DMG/Gatekeeper checks remain in their planned issues. GitHub Actions CI is introduced in #2; this PR does not claim hosted test coverage. Closes #1. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
jayanezj added this to the M1 - Foundation and CI milestone 2026-10-23 18:09:19 +02:00
jayanezj added the pull-request label 2026-10-23 18:09:19 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jayanezj/traccar-client-macos#21