Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
Robert Fischer committed Dec 5, 2014
2 parents a98473b + efe6924 commit 760410d
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 1 deletion.
6 changes: 5 additions & 1 deletion NGVolumeControl/NGVolumeControl.xcodeproj/project.pbxproj
Expand Up @@ -145,7 +145,7 @@
9BCC745614FCCE8C004F30FF /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0600;
ORGANIZATIONNAME = "NOUS Wissensmanagement GmbH";
};
buildConfigurationList = 9BCC745914FCCE8C004F30FF /* Build configuration list for PBXProject "NGVolumeControl" */;
Expand Down Expand Up @@ -188,8 +188,10 @@
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
Expand Down Expand Up @@ -222,8 +224,10 @@
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
Expand Down
14 changes: 14 additions & 0 deletions NGVolumeControl/NGVolumeControl/NGVolumeControl.m
Expand Up @@ -22,6 +22,7 @@ @interface NGVolumeControl ()
@property (nonatomic, strong) UIView *sliderView;
@property (nonatomic, strong) NGVolumeSlider *slider;
@property (nonatomic, assign) float systemVolume;
@property (nonatomic, assign) float currentSystemVolume;
@property (nonatomic, readonly) BOOL sliderVisible;

@property (nonatomic, assign) CGPoint touchStartPoint;
Expand Down Expand Up @@ -101,6 +102,8 @@ - (id)initWithFrame:(CGRect)frame {

CGPathRelease(path);
}

self.currentSystemVolume = self.systemVolume;

// observe changes to system volume (volume buttons)
[[NSNotificationCenter defaultCenter] addObserver:self
Expand Down Expand Up @@ -388,7 +391,13 @@ - (void)customizeSlider:(UISlider *)slider {

- (void)setSystemVolume:(float)systemVolume {
MPMusicPlayerController *musicPlayer = [MPMusicPlayerController iPodMusicPlayer];

if ([self.volumeDelegate respondsToSelector:@selector(volumeControl:didChangeOldVolume:toNewVolume:)]) {
[self.volumeDelegate volumeControl:self didChangeOldVolume:musicPlayer.volume toNewVolume:systemVolume];
}

musicPlayer.volume = systemVolume;
self.currentSystemVolume = systemVolume;
}

- (float)systemVolume {
Expand Down Expand Up @@ -544,6 +553,11 @@ - (void)updateUI {

- (void)systemVolumeChanged:(NSNotification *)notification {
// we update the UI when the system volume changed (volume buttons)
if ([self.volumeDelegate respondsToSelector:@selector(volumeControl:didChangeOldVolume:toNewVolume:)]) {
float newVolume = [notification.userInfo[@"AVSystemController_AudioVolumeNotificationParameter"] floatValue];
[self.volumeDelegate volumeControl:self didChangeOldVolume:self.currentSystemVolume toNewVolume:newVolume];
self.currentSystemVolume = newVolume;
}
[self updateUI];
}

Expand Down
1 change: 1 addition & 0 deletions NGVolumeControl/NGVolumeControl/NGVolumeControlDelegate.h
Expand Up @@ -20,5 +20,6 @@
- (void)volumeControlDidExpand:(NGVolumeControl *)volumeControl;
- (void)volumeControlWillShrink:(NGVolumeControl *)volumeControl;
- (void)volumeControlDidShrink:(NGVolumeControl *)volumeControl;
- (void)volumeControl:(NGVolumeControl *)volumeControl didChangeOldVolume:(float)oldVolume toNewVolume:(float)newVolume;

@end

0 comments on commit 760410d

Please sign in to comment.