| 1170 | } |
| 1171 | |
| 1172 | void MainWidget::setChatBackground( |
| 1173 | const Data::WallPaper &background, |
| 1174 | QImage &&image) { |
| 1175 | using namespace Window::Theme; |
| 1176 | |
| 1177 | if (isReadyChatBackground(background, image)) { |
| 1178 | setReadyChatBackground(background, std::move(image)); |
| 1179 | return; |
| 1180 | } |
| 1181 | |
| 1182 | _background = std::make_unique<SettingBackground>(background); |
| 1183 | if (const auto document = _background->data.document()) { |
| 1184 | _background->dataMedia = document->createMediaView(); |
| 1185 | _background->dataMedia->thumbnailWanted( |
| 1186 | _background->data.fileOrigin()); |
| 1187 | } |
| 1188 | _background->data.loadDocument(); |
| 1189 | checkChatBackground(); |
| 1190 | |
| 1191 | const auto tile = Data::IsLegacy1DefaultWallPaper(background); |
| 1192 | Window::Theme::Background()->downloadingStarted(tile); |
| 1193 | } |
| 1194 | |
| 1195 | bool MainWidget::isReadyChatBackground( |
| 1196 | const Data::WallPaper &background, |
no test coverage detected