Jump to content
11 posts in this topic

Recommended Posts

Hello everyone, i made an app called LaunchBack..which bring back Launchpad in Tahoe and beyond..it should also work in M Series macs..(NOT tested)

App Link: https://github.com/vbored/Launchback

@Max.1974 you should test this for us in the M series macs/golden gate.. Kindly.

 

Spoiler

sSShfic.png

 

 

Edited by ichelash
  • Like 3
Link to comment
https://www.insanelymac.com/forum/topic/362966-launchback-app/
Share on other sites

7 minutes ago, miliuco said:

@ichelash

I can tell you that it works on a M4. A bit glitchy, slow slides between pages, sometimes an icon overlaps another one when moving pages, but it runs.

Thanks for the feedback...🫡..will work on those issues.

  • Like 2
1 hour ago, ichelash said:

Hello everyone, i made an app called LaunchBack..which bring back Launchpad in Tahoe and beyond..it should also work in M Series macs..(NOT tested)

App Link: https://github.com/vbored/Launchback

@Max.1974 you should test this for us in the M series macs/golden gate.. Kindly.

Looks like the real thing, only it’s a pity there’s no scroll wheel (middle button)! But still, respect! 👍

  • Like 4
11 minutes ago, MakAsrock said:

Looks like the real thing, only it’s a pity there’s no scroll wheel (middle button)! But still, respect! 👍

Thanks man..still work in progress..i just want to old launchpad back 🤣..the scroll wheel is there..working fixing noted bugs..

This?

\Screenshot2026-07-10at16_16_09.png.d7ae31d634c22fb576897f4cc639b2dd.png

Edited by ichelash
  • Like 3
2 hours ago, miliuco said:

@ichelash

I can tell you that it works on a M4. A bit glitchy, slow slides between pages, sometimes an icon overlaps another one when moving pages, but it runs.

Try this release: https://github.com/vbored/Launchback/releases/tag/Beta

  • Like 3

@ichelash  

 

Hello, my friend! How are you all doing? I really liked the app—congratulations on your initiative, and thank you for creating it. I'd like to mention that when using Apple's Magic Mouse, the horizontal swipe gesture to switch from one window to another is slow to respond. Thank you very much!!

 

CapturadeTela2026-07-12s07_33_20.thumb.png.a160f6b290620f8a3455555c616f2bd8.png

  • Like 1

@ichelash 

My friend, I made a few changes, and now the Magic Mouse scrolling works perfectly. I’m sharing the project with you—I uploaded it to MediaFire. I’m not very good at creating forks, sorry about that. Here is the link to the modified project so you can improve it however you see fit. Thank you for the app!

 

https://www.mediafire.com/file/krhzwm0o9j7xfdi/Launchback-main.zip/file

 

 # # # 



Change Report — LaunchBack

Date: 07/12/2026  
Requested by: User  
Executed by: GitHub Copilot (Claude Sonnet 4.6)

1. GridView.swift — Magic Mouse Lag

Problem: The Magic Mouse sends scroll events with a momentum phase (inertia after lifting the finger). The native `ScrollView` continued processing those events even after snapping to the target page, causing visible drift/lag during page transitions.

Fix: Added the `ScrollWheelPager` struct and integrated it into the `ScrollView`'s `.background` (in a `ZStack` alongside the existing `MouseDragPager`).

How it works:

- Intercepts `.scrollWheel` events via `NSEvent.addLocalMonitorForEvents`
- Accumulates `scrollingDeltaX` during the real gesture phase (`.changed`)
- When the delta crosses 30pt, changes the page programmatically (once per gesture)
- Consumes all momentum-phase events (`event.momentumPhase != []`) by returning `nil` — the `ScrollView` never receives the deceleration ticks
- Normalizes the delta for Magic Mouse 1 (`hasPreciseScrollingDeltas == false`), which reports in "lines" rather than pixels

Files changed: GridView.swift

2. AppQueryEngine.swift — Swift Concurrency Errors

Problem (3 build errors):

- `Call to main actor-isolated instance method 'refresh(query:into:)' in a synchronous nonisolated context`
- `Capture of 'query' with non-Sendable type 'NSMetadataQuery' in a '@Sendable' closure`

The `NotificationCenter.addObserver` and `Timer.scheduledTimer` closures are `@Sendable`, but:

1. Captured the local variable `query: NSMetadataQuery` (a non-Sendable type)
2. Called the `@MainActor`-isolated method `refresh(query:into:)` from a non-isolated context

Fix: All three occurrences replaced with `MainActor.assumeIsolated { }` — safe because `queue: .main` and the Timer both guarantee execution on the main thread. Inside the block, `self.query` (stored property) is read instead of capturing the local variable, eliminating the Sendable issue.

Files changed: AppQueryEngine.swift

3. LaunchpadOverlayWindow.swift — Swift Concurrency Errors

Problem (3 build errors):

- `Main actor-isolated property 'hostingView' can not be referenced/mutated from a Sendable closure`
- `Main actor-isolated property 'onRequestDismiss' can not be mutated from a Sendable closure`

The `completionHandler` of `NSAnimationContext.runAnimationGroup` is `@Sendable`, but was mutating `@MainActor`-isolated properties (`hostingView`, `onRequestDismiss`).

Fix: Completion handler body wrapped in `MainActor.assumeIsolated { }` — safe because AppKit animation completion handlers always execute on the main thread.

Files changed: LaunchpadOverlayWindow.swift

4. make_app_bundle.sh — Binary Path

Problem: The script expected the universal binary at `.build/apple/Products/Release/LaunchBack`, but the Swift toolchain on this system outputs to LaunchBack.

Fix: Replaced the hardcoded path check with a sequential probe that tries both `.build/apple/` and out — compatible with both toolchain versions.

Files changed: make_app_bundle.sh

5. Pending Warning (not changed)

`Sources/LaunchBack/WallpaperBackground.swift:234` — `CGWindowListCreateImage` deprecated in macOS 14. This is not a build error (warning only). The correct replacement is `ScreenCaptureKit` (async API), which would require significant refactoring of the existing synchronous call chain. A dedicated future migration is recommended.

Final result: Build successful  — `LaunchBack.app` Universal (arm64 + x86_64), ad-hoc signed, with icon.

 

 

  • Like 3
×
×
  • Create New...