mirror of
https://github.com/racecarparts/MuteUnmuteMic.git
synced 2026-04-16 18:55:41 +02:00
Added support to select the input volume to toggle when user presses the status bar icon.
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
#import "AppDelegate.h"
|
||||
|
||||
#define MAX_VOLUME 75
|
||||
#define MAX_VOLUME 70
|
||||
|
||||
@interface AppDelegate ()
|
||||
{
|
||||
NSStatusItem *menuItem;
|
||||
BOOL muted;
|
||||
int inputVolumeToUnmute;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -19,6 +20,7 @@
|
||||
|
||||
- (void)initDefaults {
|
||||
muted = NO;
|
||||
inputVolumeToUnmute = MAX_VOLUME;
|
||||
}
|
||||
|
||||
- (void)configureStatusBar {
|
||||
@@ -47,8 +49,11 @@
|
||||
|
||||
- (void)toggleMute {
|
||||
muted = !muted;
|
||||
|
||||
int volume = muted ? 0 : MAX_VOLUME;
|
||||
[self updateInputVolume];
|
||||
}
|
||||
|
||||
- (void)updateInputVolume {
|
||||
int volume = muted ? 0 : inputVolumeToUnmute;
|
||||
NSString *source = [NSString stringWithFormat:@"set volume input volume %d", volume];
|
||||
NSAppleScript *script = [[NSAppleScript alloc] initWithSource:source];
|
||||
|
||||
@@ -56,6 +61,7 @@
|
||||
|
||||
NSString *imageName = muted ? @"mic_off" : @"mic_on";
|
||||
menuItem.image = [NSImage imageNamed:imageName];
|
||||
|
||||
}
|
||||
|
||||
- (void)showMenu {
|
||||
@@ -63,4 +69,15 @@
|
||||
}
|
||||
|
||||
|
||||
- (IBAction)didSetVolumeInput:(NSMenuItem *)sender {
|
||||
|
||||
for (NSMenuItem *item in sender.menu.itemArray) {
|
||||
item.state = 0;
|
||||
}
|
||||
sender.state = 1;
|
||||
|
||||
inputVolumeToUnmute = [sender.title intValue];
|
||||
[self updateInputVolume];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -19,6 +19,50 @@
|
||||
<customObject id="YLy-65-1bz" customClass="NSFontManager"/>
|
||||
<menu id="d1i-xa-wlo">
|
||||
<items>
|
||||
<menuItem title="Input Volume" id="w4W-DI-DEg">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<menu key="submenu" title="Input Volume" autoenablesItems="NO" id="iVL-f8-mAL">
|
||||
<items>
|
||||
<menuItem title="100" id="NOm-DS-Fei">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="I1n-CB-cYw"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="90" tag="5" id="cSh-2l-eG8">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="b1z-78-Fgk"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="80" tag="5" id="OoN-lP-2Ll">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="itM-AQ-plW"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="70" state="on" id="ZNu-ZY-zwa">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="Ykp-jU-4Cw"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="60" id="XY7-OS-7P1">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="dqL-Vx-3KL"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="50" id="MrJ-HJ-Wld">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="didSetVolumeInput:" target="Voe-Tx-rLC" id="PVQ-c8-lcy"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
</items>
|
||||
</menu>
|
||||
</menuItem>
|
||||
<menuItem isSeparatorItem="YES" id="e5f-y4-vmV"/>
|
||||
<menuItem title="Quit" id="kX5-as-WCF">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.1</string>
|
||||
<string>1.3</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
|
||||
Reference in New Issue
Block a user