Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sonoma API improvements #135

Open
NattyNarwhal opened this issue Jun 8, 2023 · 4 comments
Open

Sonoma API improvements #135

NattyNarwhal opened this issue Jun 8, 2023 · 4 comments
Labels
enhancement New feature or request refactor Code cleanup

Comments

@NattyNarwhal
Copy link
Member

NattyNarwhal commented Jun 8, 2023

  • Use modern NSTableView customization API
  • Change NSButton styles
  • Anchor NSPopovers to toolbar items
  • Review new NSMenu selection modes
  • Review clipToBounds behaviours
  • Symbol bounce
  • #Preview macro
  • Use inspector split view
    • May be annoying with how we construct the split view and still using nibs for toolbar instead of delegate
  • TipKit?
    • Maybe require more SwiftUI
  • Composite Core Data types
  • Staged migration API, deferred migrations

Refs:

@NattyNarwhal NattyNarwhal added enhancement New feature or request refactor Code cleanup labels Jun 8, 2023
@NattyNarwhal
Copy link
Member Author

NattyNarwhal commented Dec 2, 2023

I think the way to handle the inspector separation with traditional nibs is making an item in the palette for NSToolbarInspectorTrackingSeparatorItemIdentifier, like we have for NSToolbarSidebarTrackingSeparatorItemIdentifier

@NattyNarwhal
Copy link
Member Author

I'm going to have to be adjust the main window nib too, default toolbar button metrics changed to be a bit longer...

@NattyNarwhal
Copy link
Member Author

I think the toolbar button metrics change if you customize the toolbar.

The font size on the time fields also looks wrong.

@NattyNarwhal
Copy link
Member Author

diff --git a/Submariner/SBDatabaseController.m b/Submariner/SBDatabaseController.m
index c78b8bb..1d1b434 100644
--- a/Submariner/SBDatabaseController.m
+++ b/Submariner/SBDatabaseController.m
@@ -531,7 +531,11 @@ - (IBAction)toggleVolume:(id)sender {
     if (volumePopover.shown) {
         [volumePopover close];
     } else {
-        [volumePopover showRelativeToRect: boundary ofView: view preferredEdge:NSMaxYEdge];
+        if (@available(macOS 14, *)) {
+            [volumePopover showRelativeToToolbarItem: volumeToolbarItem];
+        } else {
+            [volumePopover showRelativeToRect: boundary ofView: view preferredEdge:NSMaxYEdge];
+        }
     }
 }
 

This works, but you can't set the edge it comes from, which means it's a bit awkward as it'll appear above the toolbar item.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request refactor Code cleanup
Projects
None yet
Development

No branches or pull requests

1 participant