Peter b317aab568 Add 'submodules/TelegramUI/' from commit 'fa3ac0b61a27c8dd3296518a15891a6f9750cbf2'
git-subtree-dir: submodules/TelegramUI
git-subtree-mainline: 5c1613d1048026b9e00a6ce753775cef87eb53fa
git-subtree-split: fa3ac0b61a27c8dd3296518a15891a6f9750cbf2
2019-06-11 19:00:46 +01:00

42 lines
1.0 KiB
Swift

import Foundation
import UIKit
import SwiftSignalKit
import MediaPlayer
import LegacyComponents
class VolumeButtonsListener: NSObject {
private let handler: PGCameraVolumeButtonHandler
private var disposable: Disposable?
init(shouldBeActive: Signal<Bool, NoError>, valueChanged: @escaping () -> Void) {
var impl: (() -> Void)?
self.handler = PGCameraVolumeButtonHandler(upButtonPressedBlock: {
impl?()
}, upButtonReleasedBlock: {}, downButtonPressedBlock: {
impl?()
}, downButtonReleasedBlock: {})
super.init()
impl = { [weak self] in
valueChanged()
}
self.disposable = (shouldBeActive
|> deliverOnMainQueue).start(next: { [weak self] value in
guard let strongSelf = self else {
return
}
strongSelf.handler.enabled = value
})
}
deinit {
self.handler.enabled = false
self.disposable?.dispose()
}
}