mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 22:54:01 +02:00
Fixed fade effect for input message fields in compose controls.
This commit is contained in:
parent
18ca4a9eeb
commit
991110b84d
4 changed files with 10 additions and 9 deletions
|
@ -441,7 +441,9 @@ bool HasSendText(not_null<const Ui::InputField*> field) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void InitMessageFieldFade(not_null<Ui::InputField*> field) {
|
void InitMessageFieldFade(
|
||||||
|
not_null<Ui::InputField*> field,
|
||||||
|
const style::color &bg) {
|
||||||
class Fade final : public Ui::RpWidget {
|
class Fade final : public Ui::RpWidget {
|
||||||
public:
|
public:
|
||||||
using Ui::RpWidget::RpWidget;
|
using Ui::RpWidget::RpWidget;
|
||||||
|
@ -467,7 +469,7 @@ void InitMessageFieldFade(not_null<Ui::InputField*> field) {
|
||||||
const auto topFade = Ui::CreateChild<Fade>(field.get());
|
const auto topFade = Ui::CreateChild<Fade>(field.get());
|
||||||
const auto bottomFade = Ui::CreateChild<Fade>(field.get());
|
const auto bottomFade = Ui::CreateChild<Fade>(field.get());
|
||||||
|
|
||||||
const auto generateFade = [=] {
|
const auto generateFade = [=, bg = bg->c] {
|
||||||
const auto size = QSize(1, st::historyComposeFieldFadeHeight);
|
const auto size = QSize(1, st::historyComposeFieldFadeHeight);
|
||||||
auto fade = QPixmap(size * style::DevicePixelRatio());
|
auto fade = QPixmap(size * style::DevicePixelRatio());
|
||||||
fade.setDevicePixelRatio(style::DevicePixelRatio());
|
fade.setDevicePixelRatio(style::DevicePixelRatio());
|
||||||
|
@ -476,10 +478,7 @@ void InitMessageFieldFade(not_null<Ui::InputField*> field) {
|
||||||
auto p = QPainter(&fade);
|
auto p = QPainter(&fade);
|
||||||
|
|
||||||
auto gradient = QLinearGradient(0, 1, 0, size.height());
|
auto gradient = QLinearGradient(0, 1, 0, size.height());
|
||||||
gradient.setStops({
|
gradient.setStops({ { 0., bg }, { .9, Qt::transparent } });
|
||||||
{ 0., st::historyComposeField.textBg->c },
|
|
||||||
{ .9, Qt::transparent },
|
|
||||||
});
|
|
||||||
p.setPen(Qt::NoPen);
|
p.setPen(Qt::NoPen);
|
||||||
p.setBrush(gradient);
|
p.setBrush(gradient);
|
||||||
p.drawRect(Rect(size));
|
p.drawRect(Rect(size));
|
||||||
|
|
|
@ -79,7 +79,9 @@ void InitSpellchecker(
|
||||||
|
|
||||||
bool HasSendText(not_null<const Ui::InputField*> field);
|
bool HasSendText(not_null<const Ui::InputField*> field);
|
||||||
|
|
||||||
void InitMessageFieldFade(not_null<Ui::InputField*> field);
|
void InitMessageFieldFade(
|
||||||
|
not_null<Ui::InputField*> field,
|
||||||
|
const style::color &bg);
|
||||||
|
|
||||||
struct InlineBotQuery {
|
struct InlineBotQuery {
|
||||||
QString query;
|
QString query;
|
||||||
|
|
|
@ -401,7 +401,7 @@ HistoryWidget::HistoryWidget(
|
||||||
showPremiumToast(document);
|
showPremiumToast(document);
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
InitMessageFieldFade(_field);
|
InitMessageFieldFade(_field, st::historyComposeField.textBg);
|
||||||
|
|
||||||
_keyboard->sendCommandRequests(
|
_keyboard->sendCommandRequests(
|
||||||
) | rpl::start_with_next([=](Bot::SendCommandRequest r) {
|
) | rpl::start_with_next([=](Bot::SendCommandRequest r) {
|
||||||
|
|
|
@ -1583,7 +1583,7 @@ void ComposeControls::initField() {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
InitMessageFieldFade(_field);
|
InitMessageFieldFade(_field, _st.field.textBg);
|
||||||
_field->setEditLinkCallback(
|
_field->setEditLinkCallback(
|
||||||
DefaultEditLinkCallback(_show, _field, &_st.boxField));
|
DefaultEditLinkCallback(_show, _field, &_st.boxField));
|
||||||
initAutocomplete();
|
initAutocomplete();
|
||||||
|
|
Loading…
Add table
Reference in a new issue