git.y1.nz

SameBoy

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

commit 63a858d7672ba858b1eda2fd21d27295df84151c
parent 1065a40d8f947a0f21609480f47fccca7e05b689
Author: Lior Halphon <LIJI32@gmail.com>
Date:   Fri,  1 Jul 2022 22:46:03 +0300

Fix GBS player's appearance on Big Sur and newer

Diffstat:
MCocoa/Document.m7++++++-
MCocoa/GBS.xib54+++++++++++++++++++++++++++---------------------------
ACocoa/GBS11.xib128+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MCocoa/Next@2x.png0
MCocoa/Previous@2x.png0
MCocoa/Rewind@2x.png0
6 files changed, 161 insertions(+), 28 deletions(-)

diff --git a/Cocoa/Document.m b/Cocoa/Document.m @@ -933,7 +933,12 @@ static unsigned *multiplication_table_for_frequency(unsigned frequency) for (NSView *view in [_mainWindow.contentView.subviews copy]) { [view removeFromSuperview]; } - [[NSBundle mainBundle] loadNibNamed:@"GBS" owner:self topLevelObjects:nil]; + if (@available(macOS 11, *)) { + [[NSBundle mainBundle] loadNibNamed:@"GBS11" owner:self topLevelObjects:nil]; + } + else { + [[NSBundle mainBundle] loadNibNamed:@"GBS" owner:self topLevelObjects:nil]; + } [_mainWindow setContentSize:self.gbsPlayerView.bounds.size]; _mainWindow.styleMask &= ~NSWindowStyleMaskResizable; dispatch_async(dispatch_get_main_queue(), ^{ // Cocoa is weird, no clue why it's needed diff --git a/Cocoa/GBS.xib b/Cocoa/GBS.xib @@ -44,7 +44,7 @@ </textFieldCell> </textField> <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="qxJ-pH-d0y"> - <rect key="frame" x="61.5" y="127" width="39" height="23"/> + <rect key="frame" x="63.5" y="128" width="38" height="23"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> <buttonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" image="Play" imagePosition="only" alignment="center" alternateImage="Pause" state="on" borderStyle="border" focusRingType="none" inset="2" id="3ZK-br-UrS"> <behavior key="behavior" pushIn="YES" changeContents="YES" lightByContents="YES"/> @@ -54,37 +54,14 @@ <action selector="togglePause:" target="-2" id="AUe-I7-nOK"/> </connections> </button> - <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="0yD-Sp-Ilo"> - <rect key="frame" x="19.5" y="127" width="38" height="23"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> - <buttonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" image="Rewind" imagePosition="only" alignment="center" state="on" borderStyle="border" focusRingType="none" inset="2" id="ZIF-TP-Fqn"> - <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> - <font key="font" metaFont="system"/> - </buttonCell> - <connections> - <action selector="changeGBSTrack:" target="-2" id="jug-AS-bW7"/> - </connections> - </button> - <popUpButton focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="I1T-VS-Vse"> - <rect key="frame" x="106" y="127" width="131" height="23"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> - <popUpButtonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" alignment="left" lineBreakMode="truncatingTail" borderStyle="border" focusRingType="none" imageScaling="proportionallyDown" inset="2" id="YJh-dI-A5D"> - <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> - <font key="font" metaFont="menu"/> - <menu key="menu" id="Knp-Ok-Pb4"/> - </popUpButtonCell> - <connections> - <action selector="changeGBSTrack:" target="-2" id="HET-AT-CfQ"/> - </connections> - </popUpButton> <segmentedControl verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="SRS-M5-VVL"> - <rect key="frame" x="240.5" y="127" width="72" height="23"/> + <rect key="frame" x="244.5" y="128" width="68" height="23"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> <segmentedCell key="cell" borderStyle="border" alignment="left" style="texturedRounded" trackingMode="momentary" id="cmq-I8-cFL"> <font key="font" metaFont="system"/> <segments> - <segment toolTip="Previous Track" image="Previous" width="33"/> - <segment toolTip="Next Track" image="Next" width="32" tag="1"/> + <segment toolTip="Previous Track" image="Previous" width="31"/> + <segment toolTip="Next Track" image="Next" width="30" tag="1"/> </segments> </segmentedCell> <connections> @@ -114,6 +91,29 @@ <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/> </textFieldCell> </textField> + <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="0yD-Sp-Ilo"> + <rect key="frame" x="20.5" y="128" width="38" height="23"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <buttonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" image="Rewind" imagePosition="only" alignment="center" state="on" borderStyle="border" focusRingType="none" inset="2" id="ZIF-TP-Fqn"> + <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> + <font key="font" metaFont="system"/> + </buttonCell> + <connections> + <action selector="changeGBSTrack:" target="-2" id="jug-AS-bW7"/> + </connections> + </button> + <popUpButton focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="I1T-VS-Vse"> + <rect key="frame" x="107" y="127" width="131" height="25"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <popUpButtonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" alignment="center" lineBreakMode="truncatingTail" borderStyle="border" focusRingType="none" imageScaling="proportionallyDown" inset="2" id="YJh-dI-A5D"> + <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> + <font key="font" metaFont="menu"/> + <menu key="menu" id="Knp-Ok-Pb4"/> + </popUpButtonCell> + <connections> + <action selector="changeGBSTrack:" target="-2" id="HET-AT-CfQ"/> + </connections> + </popUpButton> </subviews> <point key="canvasLocation" x="67" y="292.5"/> </customView> diff --git a/Cocoa/GBS11.xib b/Cocoa/GBS11.xib @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8"?> +<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="14868" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct"> + <dependencies> + <deployment identifier="macosx"/> + <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14868"/> + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> + </dependencies> + <objects> + <customObject id="-2" userLabel="File's Owner" customClass="Document"> + <connections> + <outlet property="gbsAuthor" destination="gaD-ZH-Beh" id="2i7-BD-bJ2"/> + <outlet property="gbsCopyright" destination="2dl-dH-E3J" id="LnT-Vb-pN6"/> + <outlet property="gbsNextPrevButton" destination="SRS-M5-VVL" id="YEN-01-wRX"/> + <outlet property="gbsPlayPauseButton" destination="qxJ-pH-d0y" id="qk8-8I-9u5"/> + <outlet property="gbsPlayerView" destination="c22-O7-iKe" id="A1w-e5-EQE"/> + <outlet property="gbsRewindButton" destination="0yD-Sp-Ilo" id="FgR-xd-JW5"/> + <outlet property="gbsTitle" destination="H3v-X3-48q" id="DCl-wL-oy8"/> + <outlet property="gbsTracks" destination="I1T-VS-Vse" id="Vk4-GP-RjB"/> + <outlet property="gbsVisualizer" destination="Q3o-bK-DIN" id="1YC-C5-Je6"/> + </connections> + </customObject> + <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/> + <customObject id="-3" userLabel="Application" customClass="NSObject"/> + <customView id="c22-O7-iKe"> + <rect key="frame" x="0.0" y="0.0" width="332" height="221"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <subviews> + <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="H3v-X3-48q"> + <rect key="frame" x="18" y="192" width="296" height="19"/> + <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/> + <textFieldCell key="cell" lineBreakMode="clipping" alignment="center" title="Title" id="BwZ-Zj-sP6"> + <font key="font" metaFont="systemBold" size="16"/> + <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + </textField> + <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="gaD-ZH-Beh"> + <rect key="frame" x="18" y="166" width="296" height="16"/> + <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/> + <textFieldCell key="cell" lineBreakMode="clipping" alignment="center" title="Author" id="IgT-r1-T38"> + <font key="font" metaFont="system"/> + <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + </textField> + <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="qxJ-pH-d0y"> + <rect key="frame" x="57" y="124" width="50" height="32"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <buttonCell key="cell" type="push" bezelStyle="rounded" image="Play" imagePosition="only" alignment="center" alternateImage="Pause" state="on" borderStyle="border" focusRingType="none" inset="2" id="3ZK-br-UrS"> + <behavior key="behavior" pushIn="YES" changeContents="YES" lightByContents="YES"/> + <font key="font" metaFont="system"/> + </buttonCell> + <connections> + <action selector="togglePause:" target="-2" id="AUe-I7-nOK"/> + </connections> + </button> + <popUpButton focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="I1T-VS-Vse"> + <rect key="frame" x="105" y="127" width="141" height="25"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <popUpButtonCell key="cell" type="roundTextured" bezelStyle="texturedRounded" alignment="center" lineBreakMode="truncatingTail" borderStyle="border" focusRingType="none" imageScaling="proportionallyDown" inset="2" id="YJh-dI-A5D"> + <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> + <font key="font" metaFont="menu"/> + <menu key="menu" id="Knp-Ok-Pb4"/> + </popUpButtonCell> + <connections> + <action selector="changeGBSTrack:" target="-2" id="HET-AT-CfQ"/> + </connections> + </popUpButton> + <segmentedControl verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="SRS-M5-VVL"> + <rect key="frame" x="247" y="129" width="68" height="24"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <segmentedCell key="cell" borderStyle="border" alignment="left" style="rounded" trackingMode="momentary" id="cmq-I8-cFL"> + <font key="font" metaFont="system"/> + <segments> + <segment toolTip="Previous Track" image="Previous" width="31"/> + <segment toolTip="Next Track" image="Next" width="30" tag="1"/> + </segments> + </segmentedCell> + <connections> + <action selector="gbsNextPrevPushed:" target="-2" id="roN-Iy-tDQ"/> + </connections> + </segmentedControl> + <box verticalHuggingPriority="750" fixedFrame="YES" boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" id="b9A-cd-ias"> + <rect key="frame" x="0.0" y="117" width="332" height="5"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + </box> + <customView appearanceType="darkAqua" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="tRy-Gw-IaG" customClass="GBOptionalVisualEffectView"> + <rect key="frame" x="0.0" y="24" width="332" height="95"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <subviews> + <customView fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Q3o-bK-DIN" customClass="GBVisualizerView"> + <rect key="frame" x="0.0" y="0.0" width="332" height="95"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + </customView> + </subviews> + </customView> + <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" id="2dl-dH-E3J"> + <rect key="frame" x="18" y="5" width="296" height="14"/> + <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/> + <textFieldCell key="cell" controlSize="small" lineBreakMode="clipping" alignment="center" title="Copyright" id="nM9-oF-OV9"> + <font key="font" metaFont="smallSystem"/> + <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + </textField> + <button focusRingType="none" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="0yD-Sp-Ilo"> + <rect key="frame" x="13" y="124" width="50" height="32"/> + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/> + <buttonCell key="cell" type="push" bezelStyle="rounded" image="Rewind" imagePosition="only" alignment="center" state="on" borderStyle="border" focusRingType="none" inset="2" id="ZIF-TP-Fqn"> + <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/> + <font key="font" metaFont="system"/> + </buttonCell> + <connections> + <action selector="changeGBSTrack:" target="-2" id="jug-AS-bW7"/> + </connections> + </button> + </subviews> + <point key="canvasLocation" x="67" y="292.5"/> + </customView> + </objects> + <resources> + <image name="Next" width="16" height="10"/> + <image name="Pause" width="10" height="10"/> + <image name="Play" width="10" height="10"/> + <image name="Previous" width="16" height="10"/> + <image name="Rewind" width="10" height="10"/> + </resources> +</document> diff --git a/Cocoa/Next@2x.png b/Cocoa/Next@2x.png Binary files differ. diff --git a/Cocoa/Previous@2x.png b/Cocoa/Previous@2x.png Binary files differ. diff --git a/Cocoa/Rewind@2x.png b/Cocoa/Rewind@2x.png Binary files differ.

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