mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2026-07-25 06:54:43 +00:00
Added ability to forward poll without description.
This commit is contained in:
@@ -2323,6 +2323,18 @@ Storage::SharedMediaTypesMask MediaPoll::sharedMediaTypes() const {
|
||||
.added(Storage::SharedMediaType::Poll);
|
||||
}
|
||||
|
||||
ItemPreview MediaPoll::toPreview(ToPreviewOptions options) const {
|
||||
const auto caption = (options.hideCaption || options.ignoreMessageText)
|
||||
? TextWithEntities()
|
||||
: Dialogs::Ui::DialogsPreviewText(options.translated
|
||||
? parent()->translatedText()
|
||||
: parent()->originalText());
|
||||
const auto type = u"\xD83D\xDCCA "_q + _poll->question.text;
|
||||
return {
|
||||
.text = WithCaptionNotificationText(type, caption),
|
||||
};
|
||||
}
|
||||
|
||||
TextWithEntities MediaPoll::notificationText() const {
|
||||
return TextWithEntities()
|
||||
.append(QChar(0xD83D))
|
||||
|
||||
@@ -635,6 +635,7 @@ public:
|
||||
PollData *poll() const override;
|
||||
Storage::SharedMediaTypesMask sharedMediaTypes() const override;
|
||||
|
||||
ItemPreview toPreview(ToPreviewOptions options) const override;
|
||||
TextWithEntities notificationText() const override;
|
||||
QString pinnedTextSubstring() const override;
|
||||
TextForMimeData clipboardText() const override;
|
||||
|
||||
@@ -655,13 +655,23 @@ HistoryItem::HistoryItem(
|
||||
|
||||
const auto dropText = fields.ignoreForwardCaptions
|
||||
&& _media
|
||||
&& (_media->photo() || _media->document())
|
||||
&& !_media->webpage();
|
||||
setText(dropText
|
||||
? TextWithEntities()
|
||||
: dropForwardInfo
|
||||
? DropDisallowedCustomEmoji(history->peer, original->originalText())
|
||||
: original->originalText());
|
||||
&& (_media->allowsEditCaption() || _media->poll());
|
||||
const auto forwardText = [&] {
|
||||
if (dropText) {
|
||||
return TextWithEntities();
|
||||
}
|
||||
const auto &text = original->originalText();
|
||||
if (!text.text.isEmpty()) {
|
||||
return dropForwardInfo
|
||||
? DropDisallowedCustomEmoji(history->peer, text)
|
||||
: TextWithEntities(text);
|
||||
}
|
||||
if (const auto media = original->media()) {
|
||||
return media->consumedMessageText();
|
||||
}
|
||||
return TextWithEntities();
|
||||
}();
|
||||
setText(forwardText);
|
||||
|
||||
if (fields.groupedId) {
|
||||
setGroupId(MessageGroupId::FromRaw(
|
||||
|
||||
@@ -1315,8 +1315,10 @@ int ItemsForwardCaptionsCount(const HistoryItemsList &list) {
|
||||
auto result = 0;
|
||||
for (const auto &item : list) {
|
||||
if (const auto media = item->media()) {
|
||||
if (!item->originalText().text.isEmpty()
|
||||
&& media->allowsEditCaption()) {
|
||||
const auto hasCaption = !item->originalText().text.isEmpty()
|
||||
|| !media->consumedMessageText().text.isEmpty();
|
||||
if (hasCaption
|
||||
&& (media->allowsEditCaption() || media->poll())) {
|
||||
++result;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user