Swiftgram/submodules/TelegramUI/Sources/VolumeButtons.swift
Peter Iakovlev e9a4a9347a Revert "Rename directories [skip ci]"
This reverts commit 789438a27450dcbdee6065ebf096198ed3b90fec
2020-03-01 10:06:51 +00: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 = {
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()
}
}