Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • videolan/vlc
  • chouquette/vlc
  • bakiewicz.marek122/vlc
  • devnexen/vlc
  • rohanrajpal/vlc
  • blurrrb/vlc
  • gsoc/gsoc2019/darkapex/vlc
  • b1ue/vlc
  • fkuehne/vlc
  • magsoft/vlc
  • chub/vlc
  • cramiro9/vlc
  • robUx4/vlc
  • rom1v/vlc
  • akshayaky/vlc
  • tmk907/vlc
  • akymaster/vlc
  • govind.sharma/vlc
  • psilokos/vlc
  • xjbeta/vlc
  • jahan/vlc
  • 1480c1/vlc
  • amanchande/vlc
  • aaqib/vlc
  • rist/vlc
  • apol/vlc
  • mindfreeze/vlc
  • alexandre-janniaux/vlc
  • sandsmark/vlc
  • jagannatharjun/vlc
  • gsoc/gsoc2020/matiaslgonzalez/vlc
  • gsoc/gsoc2020/jagannatharjun/vlc
  • mstorsjo/vlc
  • gsoc/gsoc2020/vedenta/vlc
  • gsoc/gsoc2020/arnav-ishaan/vlc
  • gsoc/gsoc2020/andreduong/vlc
  • fuzun/vlc
  • gsoc/gsoc2020/vatsin/vlc
  • gsoc/gsoc2020/sagid/vlc
  • yaron/vlc
  • Phoenix/vlc
  • Garf/vlc
  • ePiratWorkarounds/vlc
  • tguillem/vlc
  • jnqnfe/vlc
  • mdc/vlc
  • Vedaa/vlc
  • rasa/vlc
  • quink/vlc
  • yealo/vlc
  • aleksey_ak/vlc
  • ePirat/vlc
  • ilya.yanok/vlc
  • asenat/vlc
  • m/vlc
  • bunjee/vlc
  • BLumia/vlc
  • sagudev/vlc
  • hamedmonji30/vlc
  • nullgemm/vlc
  • DivyamAhuja/vlc
  • thesamesam/vlc
  • dag7/vlc
  • snehil101/vlc
  • haasn/vlc
  • jbk/vlc
  • ValZapod/vlc
  • mfkl/vlc
  • WangChuan/vlc
  • core1024/vlc
  • GhostVaibhav/vlc
  • dfuhrmann/vlc
  • davide.prade/vlc
  • tmatth/vlc
  • Courmisch/vlc
  • zouya/vlc
  • hpi/vlc
  • EwoutH/vlc
  • aleung27/vlc
  • hengwu0/vlc
  • saladin/vlc
  • ashuio/vlc
  • richselwood/vlc
  • verma16Ayush/vlc
  • chemicalflash/vlc
  • PoignardAzur/vlc
  • huangjieNT/vlc
  • Blake-Haydon/vlc
  • AnuthaDev/vlc
  • gsoc/gsoc2021/mpd/vlc
  • nicolas_lequec/vlc
  • sambassaly/vlc
  • thresh/vlc
  • bonniegong/vlc
  • myaashish/vlc
  • stavros.vagionitis/vlc
  • ileoo/vlc
  • louis-santucci/vlc
  • cchristiansen/vlc
  • sabyasachi07/vlc
  • AbduAmeen/vlc
  • ashishb0410/vlc
  • urbanhusky/vlc
  • davidepietrasanta/vlc
  • riksleutelstad/vlc
  • jeremyVignelles/vlc
  • komh/vlc
  • iamjithinjohn/vlc
  • JohannesKauffmann/vlc2
  • kunglao/vlc
  • natzberg/vlc
  • jill/vlc
  • cwendling/vlc
  • adufou/vlc
  • ErwanAirone/vlc
  • HasinduDilshan10/vlc
  • vagrantc/vlc
  • rafiv/macos-bigsur-icon
  • Aymeriic/vlc
  • saranshg20/vlc
  • metzlove24/vlc
  • linkfanel/vlc
  • Ds886/vlc
  • metehan-arslan/vlc
  • Skantes/vlc
  • kgsandundananjaya96/vlc
  • mitchcapper/vlc
  • advaitgupta/vlc
  • StefanBruens/vlc
  • ratajs/vlc
  • T.M.F.B.3761/vlc
  • m222059/vlc
  • casemerrick/vlc
  • joshuaword2alt/vlc
  • sjwaddy/vlc
  • dima/vlc
  • Ybalrid/vlc
  • umxprime/vlc
  • eschmidt/vlc
  • vannieuwenhuysenmichelle/vlc
  • badcf00d/vlc
  • wesinator/vlc
  • louis/vlc
  • xqq/vlc
  • EmperorYP7/vlc
  • NicoLiam/vlc
  • loveleen/vlc
  • rofferom/vlc
  • rbultje/vlc
  • TheUnamed/vlc
  • pratiksharma341/vlc
  • Saurab17/vlc
  • purist.coder/vlc
  • Shuicheng/vlc
  • mdrrubel292/vlc
  • silverbleu00/vlc
  • metif12/vlc
  • asher-m/vlc
  • jeffk/vlc
  • Brandonbr1/vlc
  • beautyyuyanli/vlc
  • rego21/vlc
  • muyangren907/vlc
  • collectionbylawrencejason/vlc
  • evelez/vlc
  • GSMgeeth/vlc
  • Oneric/vlc
  • TJ5/vlc
  • XuanTung95/vlc
  • darrenjenny21/vlc
  • Trenly/vlc
  • RockyTDR/vlc
  • mjakubowski/vlc
  • caprica/vlc
  • ForteFrankie/vlc
  • seannamiller19/vlc
  • junlon2006/vlc
  • kiwiren6666/vlc
  • iuseiphonexs/vlc
  • fenngtun/vlc
  • Rajdutt999/vlc
  • typx/vlc
  • leon.vitanos/vlc
  • robertogarci0938/vlc
  • gsoc/gsoc2022/luc65r/vlc-mpd
  • skeller/vlc
  • MCJack123/vlc
  • luc65r/vlc-mpd
  • popov895/vlc
  • claucambra/vlc
  • brad/vlc
  • matthewmurua88/vlc
  • Tomas8874/vlc
  • philenotfound/vlc
  • makita-do3/vlc
  • LZXCorp/vlc
  • mar0x/vlc
  • senojetkennedy0102/vlc
  • shaneb243/vlc
  • ahmadbader/vlc
  • rajduttcse26/vlc-audio-filters
  • Juniorzito8415/vlc
  • achernyakov/vlc
  • lucasjetgroup/vlc
  • pupdoggy666/vlc
  • gmde9363/vlc
  • alexnwayne/vlc
  • bahareebrahimi781/vlc
  • hamad633666/vlc
  • umghof3112/vlc
  • joe0199771874/vlc
  • Octocats66666666/vlc
  • jjm_223/vlc
  • btech10110.19/vlc
  • sunnykfc028/vlc-audio-filters
  • loic/vlc
  • nguyenminhducmx1/vlc
  • JanekKrueger/vlc
  • bstubbington2/vlc
  • rcombs/vlc
  • Ordissimo/vlc
  • king7532/vlc
  • noobsauce101/vlc
  • schong0525/vlc
  • myQwil/vlc
  • apisbg91/vlc
  • geeboy0101017/vlc
  • kim.faughey/vlc
  • nurupo/vlc
  • yyusea/vlc
  • 0711235879.khco/vlc
  • ialo/vlc
  • iloveyeye2/vlc
  • gdtdftdqtd/vlc
  • leandroconsiglio/vlc
  • AndyHTML2012/vlc
  • ncz/vlc
  • lucenticus/vlc
  • knr1931/vlc
  • kjoonlee/vlc
  • chandrakant100/vlc-qt
  • johge42/vlc
  • polter/vlc
  • hexchain/vlc
  • Tushwrld/vlc
  • mztea928/vlc
  • jbelloncastro/vlc
  • alvinhochun/vlc
  • ghostpiratecrow/vlc
  • ujjwaltwitx/vlc
  • alexsonarin06/vlc
  • adrianbon76/vlc
  • altsod/vlc
  • damien.lucas44/vlc
  • dmytrivtaisa/vlc
  • utk202/vlc
  • aaxhrj/vlc
  • thomas.hermes/vlc
  • structurenewworldorder/vlc
  • slomo/vlc
  • wantlamy/vlc
  • musc.o3cminc/vlc
  • thebarshablog/vlc
  • kerrick/vlc
  • kratos142518/vlc
  • leogps/vlc
  • vacantron/vlc
  • luna_koly/vlc
  • Ratio2/vlc
  • anuoshemohammad/vlc
  • apsun/vlc
  • aaa1115910/vlc
  • alimotmoyo/vlc
  • Ambossmann/vlc
  • Sam-LearnsToCode/vlc
  • Chilledheart/vlc
  • Labnann/vlc
  • ktcoooot1/vlc
  • mohit-marathe/vlc
  • johnddx/vlc
  • manstabuk/vlc
  • Omar-ahmed314/vlc
  • vineethkm/vlc
  • 9Enemi86/vlc
  • radoslav.m.panteleev/vlc
  • ashishami2002/vlc
  • Corbax/vlc
  • firnasahmed/vlc
  • pelayarmalam4/vlc
  • c0ff330k/vlc
  • shikhindahikar/vlc
  • l342723951/vlc
  • christianschwandner/vlc
  • douniwan5788/vlc
  • 7damian7/vlc
  • ferdnyc/vlc
  • f.ales1/vlc
  • pandagby/vlc
  • BaaBaa/vlc
  • jewe37/vlc
  • w00drow/vlc
  • russelltg/vlc
  • ironicallygod/vlc
  • soumyaDghosh/vlc
  • linzihao1999/vlc
  • deyayush6/vlc
  • mibi88/vlc
  • newabdallah10/vlc
  • jhorbincolombia/vlc
  • rimvihaqueshupto/vlc
  • andrewkhon98/vlc
  • fab78/vlc
  • lapaz17/vlc
  • amanna13/vlc
  • mdakram28/vlc
  • 07jw1980/vlc
  • sohamgupta/vlc
  • Eson-Jia1/vlc
  • Sumou/vlc
  • vikram-kangotra/vlc
  • chalice191/vlc
  • olivercalder/vlc
  • aaasg4001/vlc
  • zipdox/vlc
  • kwizart/vlc
  • Dragon-S/vlc
  • jdemeule/vlc
  • gabriel_lt/vlc
  • locutusofborg/vlc
  • sammirata/vlc-librist
  • another/vlc
  • Benjamin_Loison/vlc
  • ahmedmoselhi/vlc
  • petergaal/vlc
  • huynhsontung/vlc
  • dariusmihut/vlc
  • tvermaashutosh/vlc
  • buti/vlc
  • Niram7777/vlc
  • rohan-here/vlc
  • balaji-sivasakthi/vlc
  • rlindner81/vlc
  • Kakadus/vlc
  • djain/vlc
  • ABBurmeister/vlc
  • craighuggins/vlc
  • orbea/vlc
  • maxos/vlc
  • aakarshmj/vlc
  • kblaschke/vlc
  • ankitm/vlc
  • advait-0/vlc
  • mohak2003/vlc
  • yselkowitz/vlc
  • AZM999/vlc-azm
  • andrey.turkin/vlc
  • Disha-Baghel/vlc
  • nowrep/vlc
  • Apeng/vlc
  • Choucroute_melba/vlc
  • autra/vlc
  • eclipseo/vlc
  • fhuber/vlc
  • olafhering/vlc
  • sdasda7777/vlc
  • 1div0/vlc
  • skosnits/vlc-extended-playlist-support
  • dnicolson/vlc
  • Timshel/vlc
  • octopols/vlc
  • MangalK/vlc
  • nima64/vlc
  • misawai/vlc
  • Alexander-Wilms/vlc
  • Maxime2/vlc-fork-for-visualizer
  • ww/vlc
  • jeske/vlc
  • sgross-emlix/vlc
  • morenonatural/vlc
  • freakingLovesVLC/vlc
  • borisgolovnev/vlc
  • mpromonet/vlc
  • diogo.simao-marques/vlc
  • masstock/vlc
  • pratikpatel8982/vlc
  • hugok79/vlc
  • longervision/vlc
  • abhiudaysurya/vlc
  • rishabhgarg/vlc
  • tumic/vlc
  • cart/vlc
  • shubham442/vlc
  • Aditya692005/vlc
  • sammirata/vlc4
  • syrykh/vlc
  • Vvorcun/macos-new-icon
  • AyaanshC/vlc
  • nasso/vlc
  • Quark/vlc
  • sebastinas/vlc
  • rhstone/vlc
  • talregev/vlc
  • Managor/vlc
  • abdsaber000/vlc
  • falbrechtskirchinger/vlc
405 results
Show changes
Commits on Source (2)
Showing with 120 additions and 53 deletions
......@@ -235,7 +235,7 @@ void CompositorVideo::commonWindowDisable()
}
bool CompositorVideo::commonGUICreateImpl(QWindow* window, CompositorVideo::Flags flags)
bool CompositorVideo::commonGUICreateImpl(QWindow* window, QWidget* rootWidget, CompositorVideo::Flags flags)
{
assert(m_mainCtx);
......@@ -253,9 +253,9 @@ bool CompositorVideo::commonGUICreateImpl(QWindow* window, CompositorVideo::Flag
m_videoWindowHandler->setWindow( window );
#ifdef _WIN32
m_interfaceWindowHandler = std::make_unique<InterfaceWindowHandlerWin32>(m_intf, m_mainCtx, window);
m_interfaceWindowHandler = std::make_unique<InterfaceWindowHandlerWin32>(m_intf, m_mainCtx, window, rootWidget);
#else
m_interfaceWindowHandler = std::make_unique<InterfaceWindowHandler>(m_intf, m_mainCtx, window);
m_interfaceWindowHandler = std::make_unique<InterfaceWindowHandler>(m_intf, m_mainCtx, window, rootWidget);
#endif
m_mainCtx->setHasAcrylicSurface(flags & CompositorVideo::HAS_ACRYLIC);
......@@ -267,9 +267,9 @@ bool CompositorVideo::commonGUICreateImpl(QWindow* window, CompositorVideo::Flag
return true;
}
bool CompositorVideo::commonGUICreate(QWindow* window, QmlUISurface* qmlSurface, CompositorVideo::Flags flags)
bool CompositorVideo::commonGUICreate(QWindow* window, QWidget* rootWidget, QmlUISurface* qmlSurface, CompositorVideo::Flags flags)
{
bool ret = commonGUICreateImpl(window, flags);
bool ret = commonGUICreateImpl(window, rootWidget, flags);
if (!ret)
return false;
ret = m_ui->setup(qmlSurface->engine());
......@@ -279,9 +279,9 @@ bool CompositorVideo::commonGUICreate(QWindow* window, QmlUISurface* qmlSurface,
return true;
}
bool CompositorVideo::commonGUICreate(QWindow* window, QQuickView* qmlView, CompositorVideo::Flags flags)
bool CompositorVideo::commonGUICreate(QWindow* window, QWidget* rootWidget, QQuickView* qmlView, CompositorVideo::Flags flags)
{
bool ret = commonGUICreateImpl(window, flags);
bool ret = commonGUICreateImpl(window, rootWidget, flags);
if (!ret)
return false;
ret = m_ui->setup(qmlView->engine());
......
......@@ -119,13 +119,13 @@ protected:
void commonWindowDisable();
protected:
bool commonGUICreate(QWindow* window, QmlUISurface* , CompositorVideo::Flags flags);
bool commonGUICreate(QWindow* window, QQuickView* , CompositorVideo::Flags flags);
bool commonGUICreate(QWindow* window, QWidget* rootWidget, QmlUISurface* , CompositorVideo::Flags flags);
bool commonGUICreate(QWindow* window, QWidget* rootWidget, QQuickView* , CompositorVideo::Flags flags);
void commonGUIDestroy();
void commonIntfDestroy();
private:
bool commonGUICreateImpl(QWindow* window, CompositorVideo::Flags flags);
bool commonGUICreateImpl(QWindow* window, QWidget* rootWidget, CompositorVideo::Flags flags);
protected slots:
virtual void onSurfacePositionChanged(const QPointF&) {}
......
......@@ -270,7 +270,7 @@ bool CompositorDirectComposition::makeMainInterface(MainCtx* mainCtx)
if (!ret)
return false;
ret = commonGUICreate(m_rootWindow, m_uiSurface.get(), CompositorVideo::CAN_SHOW_PIP);
ret = commonGUICreate(m_rootWindow, nullptr, m_uiSurface.get(), CompositorVideo::CAN_SHOW_PIP);
if (!ret)
return false;
......
......@@ -54,7 +54,7 @@ bool CompositorDummy::makeMainInterface(MainCtx* mainCtx)
m_qmlWidget->setFlag(Qt::FramelessWindowHint);
m_qmlWidget->setResizeMode(QQuickView::SizeRootObjectToView);
m_intfWindowHandler = std::make_unique<InterfaceWindowHandler>(m_intf, m_mainCtx, m_qmlWidget.get());
m_intfWindowHandler = std::make_unique<InterfaceWindowHandler>(m_intf, m_mainCtx, m_qmlWidget.get(), nullptr);
MainUI* ui = new MainUI(m_intf, m_mainCtx, m_qmlWidget.get(), m_qmlWidget.get());
ui->setup(m_qmlWidget->engine());
......
......@@ -143,7 +143,7 @@ bool CompositorWin7::makeMainInterface(MainCtx* mainCtx)
m_qmlWindowHWND = (HWND)m_qmlView->winId();
commonGUICreate(m_qmlView.get(), m_qmlView.get(), CompositorVideo::CAN_SHOW_PIP);
commonGUICreate(m_qmlView.get(), nullptr, m_qmlView.get(), CompositorVideo::CAN_SHOW_PIP);
return true;
}
......
......@@ -185,7 +185,7 @@ bool CompositorX11::makeMainInterface(MainCtx* mainCtx)
CompositorVideo::Flags flags = CompositorVideo::CAN_SHOW_PIP;
if (m_renderWindow->hasAcrylic())
flags |= CompositorVideo::HAS_ACRYLIC;
commonGUICreate(m_interfaceWindow, m_qmlView.get(), flags);
commonGUICreate(m_interfaceWindow, m_renderWindow.get(), m_qmlView.get(), flags);
m_renderWindow->setInterfaceWindow(m_qmlView.get());
m_renderWindow->setVideoWindow(m_videoWidget->windowHandle());
......
......@@ -25,10 +25,11 @@
#include <QQmlProperty>
InterfaceWindowHandler::InterfaceWindowHandler(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QObject *parent)
InterfaceWindowHandler::InterfaceWindowHandler(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QWidget* widget, QObject *parent)
: QObject(parent)
, p_intf(_p_intf)
, m_window(window)
, m_widget(widget)
, m_mainCtx(mainCtx)
{
assert(m_window);
......@@ -96,18 +97,13 @@ InterfaceWindowHandler::InterfaceWindowHandler(qt_intf_t *_p_intf, MainCtx* main
#endif
connect(m_mainCtx, &MainCtx::requestInterfaceMaximized,
m_window, &QWindow::showMaximized);
this, &InterfaceWindowHandler::setInterfaceMaximized);
connect(m_mainCtx, &MainCtx::requestInterfaceNormal,
m_window, &QWindow::showNormal);
this, &InterfaceWindowHandler::setInterfaceNormal);
connect(m_mainCtx, &MainCtx::requestInterfaceMinimized,
m_window, [this]()
{
// taking OR with the current state, we preserve the current state
// so with next active request, we restore window in it's pre-minimized state
m_window->setWindowStates(m_window->windowStates() | Qt::WindowMinimized);
});
this, &InterfaceWindowHandler::setInterfaceMinimized);
m_window->installEventFilter(this);
}
......@@ -124,9 +120,18 @@ InterfaceWindowHandler::~InterfaceWindowHandler()
#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
void InterfaceWindowHandler::updateCSDWindowSettings()
{
m_window->hide(); // some window managers don't like to change frame window hint on visible window
m_window->setFlag(Qt::FramelessWindowHint, m_mainCtx->useClientSideDecoration());
m_window->show();
if (m_widget)
{
m_widget->hide(); // some window managers don't like to change frame window hint on visible window
m_widget->setWindowFlag(Qt::FramelessWindowHint, m_mainCtx->useClientSideDecoration());
m_widget->show();
}
else
{
m_window->hide(); // some window managers don't like to change frame window hint on visible window
m_window->setFlag(Qt::FramelessWindowHint, m_mainCtx->useClientSideDecoration());
m_window->show();
}
}
#endif
......@@ -156,7 +161,7 @@ bool InterfaceWindowHandler::eventFilter(QObject*, QEvent* event)
oldState & Qt::WindowFullScreen &&
m_maximizedView )
{
m_window->showMaximized();
setInterfaceMaximized();
return false;
}
......@@ -277,15 +282,15 @@ void InterfaceWindowHandler::toggleWindowVisibility()
{
case QWindow::Hidden:
/* If hidden, show it */
m_window->show();
m_window->requestActivate();
setInterfaceShown();
requestActivate();
break;
case QWindow::Minimized:
m_window->showNormal();
m_window->requestActivate();
setInterfaceNormal();
requestActivate();
break;
default:
m_window->hide();
setInterfaceHiden();
break;
}
}
......@@ -298,19 +303,19 @@ void InterfaceWindowHandler::setInterfaceVisible(bool visible)
switch ( m_window->visibility() )
{
case QWindow::Hidden:
m_window->show();
setInterfaceShown();
break;
case QWindow::Minimized:
m_window->showNormal();
setInterfaceNormal();
break;
default:
break;
}
m_window->requestActivate();
requestActivate();
}
else
{
m_window->hide();
setInterfaceHiden();
}
}
......@@ -328,8 +333,11 @@ void InterfaceWindowHandler::setInterfaceFullScreen( bool fs )
void InterfaceWindowHandler::setRaise()
{
m_window->requestActivate();
m_window->raise();
requestActivate();
if (m_widget)
m_widget->raise();
else
m_window->raise();
}
void InterfaceWindowHandler::setBoss()
......@@ -337,14 +345,63 @@ void InterfaceWindowHandler::setBoss()
THEMPL->pause();
if( m_mainCtx->getSysTray() )
{
m_window->hide();
setInterfaceHiden();
}
else
{
m_window->showMinimized();
setInterfaceMinimized();
}
}
void InterfaceWindowHandler::setInterfaceHiden()
{
if (m_widget)
m_widget->hide();
else
m_window->hide();
}
void InterfaceWindowHandler::setInterfaceShown()
{
if (m_widget)
m_widget->show();
else
m_window->show();
}
void InterfaceWindowHandler::setInterfaceMinimized()
{
if (m_widget)
m_widget->showMinimized();
else
m_window->showMinimized();
}
void InterfaceWindowHandler::setInterfaceMaximized()
{
if (m_widget)
m_widget->showMaximized();
else
m_window->showMaximized();
}
void InterfaceWindowHandler::setInterfaceNormal()
{
if (m_widget)
m_widget->showNormal();
else
m_window->showNormal();
}
void InterfaceWindowHandler::requestActivate()
{
if (m_widget)
m_widget->activateWindow();
else
m_window->requestActivate();
}
void InterfaceWindowHandler::setInterfaceAlwaysOnTop( bool on_top )
{
WindowStateHolder::holdOnTop(m_window, WindowStateHolder::INTERFACE, on_top);
......
......@@ -28,7 +28,7 @@ class InterfaceWindowHandler : public QObject
{
Q_OBJECT
public:
explicit InterfaceWindowHandler(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QObject *parent = nullptr);
explicit InterfaceWindowHandler(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QWidget* widget, QObject *parent = nullptr);
virtual ~InterfaceWindowHandler();
public slots:
......@@ -40,11 +40,17 @@ protected slots:
virtual void setInterfaceAlwaysOnTop( bool on_top );
virtual void toggleWindowVisibility();
virtual void setInterfaceVisible(bool);
virtual void setInterfaceHiden();
virtual void setInterfaceShown();
virtual void setInterfaceMinimized();
virtual void setInterfaceMaximized();
virtual void setInterfaceNormal();
virtual void setRaise();
virtual void setBoss();
void requestActivate();
virtual bool eventFilter(QObject*, QEvent* event) override;
signals:
......@@ -63,7 +69,11 @@ private:
protected:
qt_intf_t* p_intf = nullptr;
//some compositor uses a Window as the base interface, some uses a widget
//when a widget is used, perform window operation on it
QWindow* m_window = nullptr;
QWidget* m_widget = nullptr;
MainCtx* m_mainCtx = nullptr;
bool m_hasPausedWhenMinimized = false;
......
......@@ -505,8 +505,8 @@ void MainCtxWin32::reloadPrefs()
// InterfaceWindowHandlerWin32
InterfaceWindowHandlerWin32::InterfaceWindowHandlerWin32(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QObject *parent)
: InterfaceWindowHandler(_p_intf, mainCtx, window, parent)
InterfaceWindowHandlerWin32::InterfaceWindowHandlerWin32(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QWidget* widget, QObject *parent)
: InterfaceWindowHandler(_p_intf, mainCtx, window, widget, parent)
#if QT_CLIENT_SIDE_DECORATION_AVAILABLE
, m_CSDWindowEventHandler(new CSDWin32EventHandler(mainCtx->useClientSideDecoration(),
......@@ -530,12 +530,12 @@ void InterfaceWindowHandlerWin32::toggleWindowVisibility()
{
case QWindow::Hidden:
/* If hidden, show it */
m_window->show();
m_window->requestActivate();
setInterfaceShown();
requestActivate();
break;
case QWindow::Minimized:
m_window->showNormal();
m_window->requestActivate();
setInterfaceMinimized();
requestActivate();
break;
default:
{
......@@ -556,9 +556,9 @@ void InterfaceWindowHandlerWin32::toggleWindowVisibility()
{
}
if( !hwnd || !GetWindowInfo( hwnd, &wi ) || (wi.dwExStyle&WS_EX_TOPMOST) )
m_window->hide();
setInterfaceHiden();
else
m_window->requestActivate();
requestActivate();
}
break;
}
......
......@@ -70,7 +70,7 @@ class InterfaceWindowHandlerWin32 : public InterfaceWindowHandler, public QAbstr
{
Q_OBJECT
public:
explicit InterfaceWindowHandlerWin32(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QObject *parent = nullptr);
explicit InterfaceWindowHandlerWin32(qt_intf_t *_p_intf, MainCtx* mainCtx, QWindow* window, QWidget* widget, QObject *parent = nullptr);
virtual ~InterfaceWindowHandlerWin32();
virtual void toggleWindowVisibility() override;
......
......@@ -40,9 +40,9 @@ Row {
}
CSDWindowButton {
iconTxt: (MainCtx.intfMainWindow.visibility & Window.Maximized) ? VLCIcons.window_restore :VLCIcons.window_maximize
iconTxt: (MainCtx.intfMainWindow.visibility === Window.Maximized) ? VLCIcons.window_restore :VLCIcons.window_maximize
onClicked: {
if (MainCtx.intfMainWindow & Window.Maximized) {
if (MainCtx.intfMainWindow.visibility === Window.Maximized) {
MainCtx.requestInterfaceNormal()
} else {
MainCtx.requestInterfaceMaximized()
......