parent
819ce06dfb
commit
e9196bbbb5
|
@ -2999,10 +2999,15 @@ void OverlayWidget::switchToPip() {
|
||||||
_streamed->instance.shared(),
|
_streamed->instance.shared(),
|
||||||
closeAndContinue,
|
closeAndContinue,
|
||||||
[=] { _pip = nullptr; });
|
[=] { _pip = nullptr; });
|
||||||
|
if (isHidden()) {
|
||||||
|
clearBeforeHide();
|
||||||
|
clearAfterHide();
|
||||||
|
} else {
|
||||||
close();
|
close();
|
||||||
if (const auto window = Core::App().activeWindow()) {
|
if (const auto window = Core::App().activeWindow()) {
|
||||||
window->activate();
|
window->activate();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void OverlayWidget::playbackToggleFullScreen() {
|
void OverlayWidget::playbackToggleFullScreen() {
|
||||||
|
@ -4365,9 +4370,8 @@ void OverlayWidget::applyHideWindowWorkaround() {
|
||||||
#endif // USE_OPENGL_OVERLAY_WIDGET
|
#endif // USE_OPENGL_OVERLAY_WIDGET
|
||||||
}
|
}
|
||||||
|
|
||||||
void OverlayWidget::setVisibleHook(bool visible) {
|
// #TODO unite and check
|
||||||
if (!visible) {
|
void OverlayWidget::clearBeforeHide() {
|
||||||
applyHideWindowWorkaround();
|
|
||||||
_sharedMedia = nullptr;
|
_sharedMedia = nullptr;
|
||||||
_sharedMediaData = std::nullopt;
|
_sharedMediaData = std::nullopt;
|
||||||
_sharedMediaDataKey = std::nullopt;
|
_sharedMediaDataKey = std::nullopt;
|
||||||
|
@ -4386,13 +4390,9 @@ void OverlayWidget::setVisibleHook(bool visible) {
|
||||||
_controlsOpacity = anim::value(1, 1);
|
_controlsOpacity = anim::value(1, 1);
|
||||||
_groupThumbs = nullptr;
|
_groupThumbs = nullptr;
|
||||||
_groupThumbsRect = QRect();
|
_groupThumbsRect = QRect();
|
||||||
}
|
}
|
||||||
OverlayParent::setVisibleHook(visible);
|
|
||||||
if (visible) {
|
|
||||||
QCoreApplication::instance()->installEventFilter(this);
|
|
||||||
} else {
|
|
||||||
QCoreApplication::instance()->removeEventFilter(this);
|
|
||||||
|
|
||||||
|
void OverlayWidget::clearAfterHide() {
|
||||||
clearStreaming();
|
clearStreaming();
|
||||||
destroyThemePreview();
|
destroyThemePreview();
|
||||||
_radial.stop();
|
_radial.stop();
|
||||||
|
@ -4401,6 +4401,19 @@ void OverlayWidget::setVisibleHook(bool visible) {
|
||||||
_themeApply.destroyDelayed();
|
_themeApply.destroyDelayed();
|
||||||
_themeCancel.destroyDelayed();
|
_themeCancel.destroyDelayed();
|
||||||
_themeShare.destroyDelayed();
|
_themeShare.destroyDelayed();
|
||||||
|
}
|
||||||
|
|
||||||
|
void OverlayWidget::setVisibleHook(bool visible) {
|
||||||
|
if (!visible) {
|
||||||
|
applyHideWindowWorkaround();
|
||||||
|
clearBeforeHide();
|
||||||
|
}
|
||||||
|
OverlayParent::setVisibleHook(visible);
|
||||||
|
if (visible) {
|
||||||
|
QCoreApplication::instance()->installEventFilter(this);
|
||||||
|
} else {
|
||||||
|
QCoreApplication::instance()->removeEventFilter(this);
|
||||||
|
clearAfterHide();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -210,6 +210,9 @@ private:
|
||||||
void playbackPauseMusic();
|
void playbackPauseMusic();
|
||||||
void switchToPip();
|
void switchToPip();
|
||||||
|
|
||||||
|
void clearBeforeHide();
|
||||||
|
void clearAfterHide();
|
||||||
|
|
||||||
void assignMediaPointer(DocumentData *document);
|
void assignMediaPointer(DocumentData *document);
|
||||||
void assignMediaPointer(not_null<PhotoData*> photo);
|
void assignMediaPointer(not_null<PhotoData*> photo);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue