FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
tdesktop/Telegram/SourceFiles/calls/calls_instance.h at dev · 0Knowledge/tdesktop · GitHub
0Knowledge
tdesktop
Repository navigation
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
tdesktop
/
Telegram
/
SourceFiles
/
calls
/
calls_instance.h
Copy path
More file actions
More file actions
Latest commit
History
History
History
86 lines (65 loc) · 2.17 KB
Breadcrumbs
tdesktop
/
Telegram
/
SourceFiles
/
calls
/
calls_instance.h
Copy path
File metadata and controls
86 lines (65 loc) · 2.17 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/*
This file is part of Telegram Desktop,
the official desktop application for the Telegram messaging service.
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
#
pragma
once
#
include
"
mtproto/sender.h
"
#
include
"
calls/calls_call.h
"
namespace
Media
{
namespace
Audio
{
class
Track
;
}
//
namespace Audio
}
//
namespace Media
namespace
Calls
{
class
Panel
;
class
Instance
:
private
MTP
::Sender, private Call::Delegate, private base::Subscriber, public base::has_weak_ptr {
public:
Instance
();
void
startOutgoingCall
(not_null<UserData*> user);
void
handleUpdate
(
const
MTPDupdatePhoneCall &update);
void
showInfoPanel
(not_null<Call*> call);
Call*
currentCall
();
base::Observable<Call*> &
currentCallChanged
() {
return
_currentCallChanged;
}
base::Observable<FullMsgId> &
newServiceMessage
() {
return
_newServiceMessage;
}
bool
isQuitPrevent
();
~Instance
();
private:
not_null<Call::Delegate*>
getCallDelegate
() {
return
static_cast
<Call::Delegate*>(
this
);
}
DhConfig
getDhConfig
()
const
override
{
return
_dhConfig;
}
void
callFinished
(not_null<Call*> call)
override
;
void
callFailed
(not_null<Call*> call)
override
;
void
callRedial
(not_null<Call*> call)
override
;
using
Sound = Call::Delegate::Sound;
void
playSound
(Sound sound)
override
;
void
createCall
(not_null<UserData*> user, Call::Type type);
void
destroyCall
(not_null<Call*> call);
void
destroyCurrentPanel
();
void
requestMicrophonePermissionOrFail
(Fn<
void
()> onSuccess)
override
;
void
refreshDhConfig
();
void
refreshServerConfig
();
bool
alreadyInCall
();
void
handleCallUpdate
(
const
MTPPhoneCall &call);
DhConfig _dhConfig;
TimeMs _lastServerConfigUpdateTime =
0
;
mtpRequestId _serverConfigRequestId =
0
;
std::unique_ptr<Call> _currentCall;
std::unique_ptr<Panel> _currentCallPanel;
base::Observable<Call*> _currentCallChanged;
base::Observable<FullMsgId> _newServiceMessage;
std::vector<QPointer<Panel>> _pendingPanels;
std::unique_ptr<Media::Audio::Track> _callConnectingTrack;
std::unique_ptr<Media::Audio::Track> _callEndedTrack;
std::unique_ptr<Media::Audio::Track> _callBusyTrack;
};
Instance &
Current
();
}
//
namespace Calls
Back
|
FazBrowse Home
|
New Git URL