git.y1.nz

SameBoy

Accurate GB/GBC emulator
download: https://git.y1.nz/archives/sameboy.tar.gz
README | Files | Log | Refs | LICENSE

commit b948a1f3fd728c7437dbdc5de5cbaffda97f4873
parent 8215c03d62e550d071186eb3585556adbdd3d163
Author: Lior Halphon <LIJI32@gmail.com>
Date:   Fri,  1 Aug 2025 00:24:14 +0300

Fix Solarium beta 4 regressions

Diffstat:
MCocoa/Document.xib12+++++-------
MCocoa/GBToolbarFieldCell.m8++++++++
ACocoa/GBToolbarPopUpButtonCell.h5+++++
ACocoa/GBToolbarPopUpButtonCell.m17+++++++++++++++++
MCocoa/Preferences.xib8++++----
MCocoa/SolariumFixer.m12++++++++++++
6 files changed, 51 insertions(+), 11 deletions(-)

diff --git a/Cocoa/Document.xib b/Cocoa/Document.xib @@ -381,7 +381,7 @@ <popUpButton key="view" verticalHuggingPriority="750" id="vfJ-vu-gqJ"> <rect key="frame" x="0.0" y="14" width="160" height="25"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES" flexibleMaxY="YES"/> - <popUpButtonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" alignment="left" lineBreakMode="truncatingTail" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="bpD-j9-omo"> + <popUpButtonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" alignment="left" lineBreakMode="truncatingTail" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="bpD-j9-omo" customClass="GBToolbarPopUpButtonCell"> <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> <font key="font" metaFont="message"/> <menu key="menu" id="gTX-6Z-mOH"> @@ -406,7 +406,7 @@ <textField key="view" focusRingType="none" verticalHuggingPriority="750" id="rdV-q6-hc6"> <rect key="frame" x="0.0" y="14" width="64" height="22"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" state="on" borderStyle="bezel" placeholderString="Bank" drawsBackground="NO" id="JCn-Y1-eHS" customClass="GBToolbarFieldCell"> + <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" state="on" borderStyle="bezel" placeholderString="Bank" id="JCn-Y1-eHS" customClass="GBToolbarFieldCell"> <font key="font" metaFont="system"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> </textFieldCell> @@ -680,18 +680,16 @@ <toolbar key="toolbar" implicitIdentifier="7FF8B5E5-F61B-408C-9634-A5D496FE5E70" autosavesConfiguration="NO" allowsUserCustomization="NO" showsBaselineSeparator="NO" displayMode="iconOnly" sizeMode="regular" id="SVR-To-n7n"> <allowedToolbarItems> <toolbarItem implicitItemIdentifier="NSToolbarFlexibleSpaceItem" id="hnI-48-dYt"/> - <toolbarItem implicitItemIdentifier="B9D3CF98-8020-4389-9372-F99361440794" label="" paletteLabel="" id="fmK-Jl-Koj"> + <toolbarItem implicitItemIdentifier="B9D3CF98-8020-4389-9372-F99361440794" label="" paletteLabel="" sizingBehavior="auto" id="fmK-Jl-Koj"> <nil key="toolTip"/> - <size key="minSize" width="100" height="25"/> - <size key="maxSize" width="268" height="25"/> <segmentedControl key="view" verticalHuggingPriority="750" id="Aul-vO-dCK"> <rect key="frame" x="0.0" y="14" width="268" height="25"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <autoresizingMask key="autoresizingMask"/> <segmentedCell key="cell" borderStyle="border" alignment="left" style="texturedSquare" trackingMode="selectOne" id="HhR-ky-5NN"> <font key="font" metaFont="system"/> <segments> <segment label="Tileset" selected="YES"/> - <segment label="Tilemap" tag="1"/> + <segment label="Tilemap"/> <segment label="Objects"/> <segment label="Palettes"/> </segments> diff --git a/Cocoa/GBToolbarFieldCell.m b/Cocoa/GBToolbarFieldCell.m @@ -21,6 +21,14 @@ ((void(*)(id, SEL, id))imp)(self, _cmd, textObj); } +- (void)resetSearchButtonCell +{ +} + +- (void)resetCancelButtonCell +{ +} + // We only need this hack on Solarium, avoid regressions + (instancetype)allocWithZone:(struct _NSZone *)zone { diff --git a/Cocoa/GBToolbarPopUpButtonCell.h b/Cocoa/GBToolbarPopUpButtonCell.h @@ -0,0 +1,5 @@ +#import <Cocoa/Cocoa.h> + +@interface GBToolbarPopUpButtonCell : NSPopUpButtonCell + +@end diff --git a/Cocoa/GBToolbarPopUpButtonCell.m b/Cocoa/GBToolbarPopUpButtonCell.m @@ -0,0 +1,17 @@ +#import "GBToolbarPopUpButtonCell.h" + +@implementation GBToolbarPopUpButtonCell + +-(void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView +{ + [super drawInteriorWithFrame:CGRectInset(cellFrame, 5, 0) inView:controlView]; +} + ++ (instancetype)allocWithZone:(struct _NSZone *)zone +{ + if (@available(macOS 26.0, *)) { + return [super allocWithZone:zone]; + } + return (id)[NSPopUpButtonCell allocWithZone:zone]; +} +@end diff --git a/Cocoa/Preferences.xib b/Cocoa/Preferences.xib @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> -<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="24093.7" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct"> +<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="24112" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct"> <dependencies> <deployment identifier="macosx"/> - <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="24093.7"/> + <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="24112"/> <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> </dependencies> <objects> @@ -1236,7 +1236,7 @@ <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" heightSizable="YES"/> <clipView key="contentView" drawsBackground="NO" id="5Al-aC-tq8"> <rect key="frame" x="1" y="1" width="158" height="280"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> + <autoresizingMask key="autoresizingMask"/> <subviews> <tableView focusRingType="none" verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" selectionHighlightStyle="sourceList" columnResizing="NO" multipleSelection="NO" emptySelection="NO" autosaveColumns="NO" id="ZVn-bk-duk"> <rect key="frame" x="0.0" y="0.0" width="158" height="280"/> @@ -1540,7 +1540,7 @@ <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <clipView key="contentView" id="4U7-cB-J7O"> <rect key="frame" x="1" y="1" width="479" height="203"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> + <autoresizingMask key="autoresizingMask"/> <subviews> <tableView focusRingType="none" verticalHuggingPriority="750" allowsExpansionToolTips="YES" tableStyle="fullWidth" alternatingRowBackgroundColors="YES" columnReordering="NO" columnResizing="NO" multipleSelection="NO" autosaveColumns="NO" typeSelect="NO" rowHeight="24" rowSizeStyle="large" id="XQa-0K-gl3"> <rect key="frame" x="0.0" y="0.0" width="479" height="203"/> diff --git a/Cocoa/SolariumFixer.m b/Cocoa/SolariumFixer.m @@ -109,6 +109,11 @@ @implementation NSToolbarItem (SolariumFixer) +static CGSize minSizeHook(id self, SEL _cmd) +{ + return CGSizeMake(8, 0); +} + - (void)awakeFromNib { if (@available(macOS 26.0, *)) { @@ -153,4 +158,11 @@ } } ++ (void)load +{ + if (@available(macOS 26.0, *)) { + method_setImplementation(class_getInstanceMethod(objc_getClass("NSToolbarFlexibleSpaceItem"), @selector(minSize)), + (void *)minSizeHook); + } +} @end

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.