mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
fix: don't use scheduled messages if not in a full ghost mode
This commit is contained in:
parent
1fc230624d
commit
45461836e1
10 changed files with 32 additions and 31 deletions
|
@ -3661,9 +3661,7 @@ void ApiWrap::sendUploadedPhoto(
|
||||||
Api::RemoteFileInfo info,
|
Api::RemoteFileInfo info,
|
||||||
Api::SendOptions options) {
|
Api::SendOptions options) {
|
||||||
if (const auto item = _session->data().message(localId)) {
|
if (const auto item = _session->data().message(localId)) {
|
||||||
// AyuGram useScheduledMessages
|
if (AyuSettings::isUseScheduledMessages() && !options.scheduled) {
|
||||||
const auto settings = &AyuSettings::getInstance();
|
|
||||||
if (settings->useScheduledMessages && !options.scheduled) {
|
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
@ -3686,9 +3684,7 @@ void ApiWrap::sendUploadedDocument(
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// AyuGram useScheduledMessages
|
if (AyuSettings::isUseScheduledMessages() && !options.scheduled) {
|
||||||
const auto settings = &AyuSettings::getInstance();
|
|
||||||
if (settings->useScheduledMessages && !options.scheduled) {
|
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
@ -3979,8 +3975,7 @@ void ApiWrap::sendBotStart(
|
||||||
message.textWithTags.text += '@' + bot->username();
|
message.textWithTags.text += '@' + bot->username();
|
||||||
}
|
}
|
||||||
|
|
||||||
const auto settings = &AyuSettings::getInstance();
|
if (AyuSettings::isUseScheduledMessages()) {
|
||||||
if (settings->useScheduledMessages) {
|
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
message.action.options.scheduled = current + 12;
|
message.action.options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
@ -4199,9 +4194,7 @@ void ApiWrap::sendMediaWithRandomId(
|
||||||
Api::SendOptions options,
|
Api::SendOptions options,
|
||||||
uint64 randomId,
|
uint64 randomId,
|
||||||
Fn<void(bool)> done) {
|
Fn<void(bool)> done) {
|
||||||
// AyuGram useScheduledMessages
|
if (AyuSettings::isUseScheduledMessages() && !options.scheduled) {
|
||||||
const auto settings = &AyuSettings::getInstance();
|
|
||||||
if (settings->useScheduledMessages && !options.scheduled) {
|
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
@ -4415,9 +4408,7 @@ void ApiWrap::sendAlbumIfReady(not_null<SendingAlbum*> album) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// AyuGram useScheduledMessages
|
if (AyuSettings::isUseScheduledMessages() && !album->options.scheduled) {
|
||||||
const auto settings = &AyuSettings::getInstance();
|
|
||||||
if (settings->useScheduledMessages && !album->options.scheduled) {
|
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
album->options.scheduled = current + 12;
|
album->options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
|
|
@ -551,7 +551,12 @@ void AyuGramSettings::set_voiceConfirmation(bool val) {
|
||||||
voiceConfirmation = val;
|
voiceConfirmation = val;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool get_ghostModeEnabled() {
|
bool isUseScheduledMessages() {
|
||||||
|
const auto settings = &getInstance();
|
||||||
|
return isGhostModeActive() && settings->useScheduledMessages;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool isGhostModeActive() {
|
||||||
return ghostModeEnabled.current();
|
return ghostModeEnabled.current();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -240,7 +240,9 @@ rpl::producer<QString> get_editedMarkReactive();
|
||||||
|
|
||||||
rpl::producer<int> get_showPeerIdReactive();
|
rpl::producer<int> get_showPeerIdReactive();
|
||||||
|
|
||||||
bool get_ghostModeEnabled();
|
bool isGhostModeActive();
|
||||||
|
bool isUseScheduledMessages();
|
||||||
|
|
||||||
rpl::producer<bool> get_ghostModeEnabledReactive();
|
rpl::producer<bool> get_ghostModeEnabledReactive();
|
||||||
|
|
||||||
rpl::producer<bool> get_hideFromBlockedReactive();
|
rpl::producer<bool> get_hideFromBlockedReactive();
|
||||||
|
|
|
@ -57,6 +57,7 @@
|
||||||
#include <QtGui/QClipboard>
|
#include <QtGui/QClipboard>
|
||||||
#include <QtWidgets/QApplication>
|
#include <QtWidgets/QApplication>
|
||||||
|
|
||||||
|
#include "history/view/history_view_context_menu.h"
|
||||||
#include "ui/ui_utility.h"
|
#include "ui/ui_utility.h"
|
||||||
|
|
||||||
namespace MessageHistory {
|
namespace MessageHistory {
|
||||||
|
@ -332,7 +333,6 @@ InnerWidget::InnerWidget(
|
||||||
const Data::Session::ItemVisibilityQuery &query)
|
const Data::Session::ItemVisibilityQuery &query)
|
||||||
{
|
{
|
||||||
return (_history == query.item->history())
|
return (_history == query.item->history())
|
||||||
&& query.item->isAdminLogEntry()
|
|
||||||
&& isVisible();
|
&& isVisible();
|
||||||
}) | rpl::start_with_next([=](
|
}) | rpl::start_with_next([=](
|
||||||
const Data::Session::ItemVisibilityQuery &query)
|
const Data::Session::ItemVisibilityQuery &query)
|
||||||
|
@ -651,6 +651,7 @@ void InnerWidget::restoreState(not_null<SectionMemento*> memento) {
|
||||||
_messageIds = memento->takeMessageIds();
|
_messageIds = memento->takeMessageIds();
|
||||||
_upLoaded = memento->upLoaded();
|
_upLoaded = memento->upLoaded();
|
||||||
_downLoaded = memento->downLoaded();
|
_downLoaded = memento->downLoaded();
|
||||||
|
updateMinMaxIds();
|
||||||
updateSize();
|
updateSize();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1171,6 +1172,13 @@ void InnerWidget::showContextMenu(QContextMenuEvent *e, bool showFromTouch) {
|
||||||
saveDocumentToFile(lnkDocument);
|
saveDocumentToFile(lnkDocument);
|
||||||
}),
|
}),
|
||||||
&st::menuIconDownload);
|
&st::menuIconDownload);
|
||||||
|
|
||||||
|
HistoryView::AddCopyFilename(
|
||||||
|
_menu,
|
||||||
|
lnkDocument,
|
||||||
|
[] { return false; });
|
||||||
|
|
||||||
|
|
||||||
if (lnkDocument->hasAttachedStickers()) {
|
if (lnkDocument->hasAttachedStickers()) {
|
||||||
const auto controller = _controller;
|
const auto controller = _controller;
|
||||||
auto callback = [=]
|
auto callback = [=]
|
||||||
|
|
|
@ -1728,10 +1728,7 @@ bool SendFilesBox::validateLength(const QString &text) const {
|
||||||
void SendFilesBox::send(
|
void SendFilesBox::send(
|
||||||
Api::SendOptions options,
|
Api::SendOptions options,
|
||||||
bool ctrlShiftEnter) {
|
bool ctrlShiftEnter) {
|
||||||
// AyuGram useScheduledMessages
|
if (AyuSettings::isUseScheduledMessages() && !options.scheduled) {
|
||||||
const auto settings = &AyuSettings::getInstance();
|
|
||||||
if (settings->useScheduledMessages && !options.scheduled) {
|
|
||||||
DEBUG_LOG(("[AyuGram] Scheduling files"));
|
|
||||||
const auto sumSize = ranges::accumulate(
|
const auto sumSize = ranges::accumulate(
|
||||||
_list.files,
|
_list.files,
|
||||||
0,
|
0,
|
||||||
|
|
|
@ -490,7 +490,7 @@ void GifsListWidget::selectInlineResult(
|
||||||
}
|
}
|
||||||
|
|
||||||
auto settings = &AyuSettings::getInstance();
|
auto settings = &AyuSettings::getInstance();
|
||||||
if (settings->useScheduledMessages) {
|
if (AyuSettings::isUseScheduledMessages()) {
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1903,7 +1903,7 @@ void StickersListWidget::mouseReleaseEvent(QMouseEvent *e) {
|
||||||
document
|
document
|
||||||
);
|
);
|
||||||
auto options = Api::SendOptions();
|
auto options = Api::SendOptions();
|
||||||
if (settings->useScheduledMessages) {
|
if (AyuSettings::isUseScheduledMessages()) {
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1042,8 +1042,7 @@ HistoryWidget::HistoryWidget(
|
||||||
if (action.replaceMediaOf) {
|
if (action.replaceMediaOf) {
|
||||||
} else if (action.options.scheduled) {
|
} else if (action.options.scheduled) {
|
||||||
cancelReply(lastKeyboardUsed);
|
cancelReply(lastKeyboardUsed);
|
||||||
const auto settings = &AyuSettings::getInstance();
|
if (!AyuSettings::isUseScheduledMessages()) {
|
||||||
if (!settings->useScheduledMessages) {
|
|
||||||
crl::on_main(this, [=, history = action.history]
|
crl::on_main(this, [=, history = action.history]
|
||||||
{
|
{
|
||||||
controller->showSection(
|
controller->showSection(
|
||||||
|
@ -4294,9 +4293,8 @@ Api::SendAction HistoryWidget::prepareSendAction(
|
||||||
}
|
}
|
||||||
|
|
||||||
void HistoryWidget::send(Api::SendOptions options) {
|
void HistoryWidget::send(Api::SendOptions options) {
|
||||||
// AyuGram useScheduledMessages
|
|
||||||
const auto settings = &AyuSettings::getInstance();
|
const auto settings = &AyuSettings::getInstance();
|
||||||
if (settings->useScheduledMessages && !options.scheduled) {
|
if (AyuSettings::isUseScheduledMessages() && !options.scheduled) {
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12;
|
options.scheduled = current + 12;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1817,7 +1817,7 @@ void VoiceRecordBar::stopRecording(StopType type, bool ttlBeforeHide) {
|
||||||
};
|
};
|
||||||
|
|
||||||
auto settings = &AyuSettings::getInstance();
|
auto settings = &AyuSettings::getInstance();
|
||||||
if (settings->useScheduledMessages) {
|
if (AyuSettings::isUseScheduledMessages()) {
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12 + 5;
|
options.scheduled = current + 12 + 5;
|
||||||
}
|
}
|
||||||
|
@ -1909,7 +1909,7 @@ void VoiceRecordBar::requestToSendWithOptions(Api::SendOptions options) {
|
||||||
}
|
}
|
||||||
|
|
||||||
auto settings = &AyuSettings::getInstance();
|
auto settings = &AyuSettings::getInstance();
|
||||||
if (settings->useScheduledMessages) {
|
if (AyuSettings::isUseScheduledMessages()) {
|
||||||
auto current = base::unixtime::now();
|
auto current = base::unixtime::now();
|
||||||
options.scheduled = current + 12 + 5;
|
options.scheduled = current + 12 + 5;
|
||||||
}
|
}
|
||||||
|
|
|
@ -109,7 +109,7 @@ void Tray::rebuildMenu() {
|
||||||
) | rpl::map(
|
) | rpl::map(
|
||||||
[=]
|
[=]
|
||||||
{
|
{
|
||||||
bool ghostModeEnabled = AyuSettings::get_ghostModeEnabled();
|
bool ghostModeEnabled = AyuSettings::isGhostModeActive();
|
||||||
|
|
||||||
return ghostModeEnabled
|
return ghostModeEnabled
|
||||||
? tr::ayu_DisableGhostModeTray(tr::now)
|
? tr::ayu_DisableGhostModeTray(tr::now)
|
||||||
|
@ -119,7 +119,7 @@ void Tray::rebuildMenu() {
|
||||||
std::move(turnGhostModeText),
|
std::move(turnGhostModeText),
|
||||||
[=]
|
[=]
|
||||||
{
|
{
|
||||||
bool ghostMode = AyuSettings::get_ghostModeEnabled();
|
bool ghostMode = AyuSettings::isGhostModeActive();
|
||||||
|
|
||||||
settings->set_ghostModeEnabled(!ghostMode);
|
settings->set_ghostModeEnabled(!ghostMode);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue