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
403 results
Show changes
Commits on Source (6)
Showing
with 91 additions and 25 deletions
......@@ -107,7 +107,7 @@ void ExpertPrefsTable::contextMenuEvent( QContextMenuEvent *event )
ExpertPrefsTableItem *item = myModel()->itemAt( index );
QMenu *menu = new QMenu();
QMenu *menu = new QMenu(this);
menu->setAttribute(Qt::WA_DeleteOnClose);
if( CONFIG_CLASS( item->getType() ) == CONFIG_ITEM_BOOL )
......
......@@ -1508,7 +1508,7 @@ bool KeySelectorControl::eventFilter( QObject *obj, QEvent *e )
#ifndef QT_NO_CONTEXTMENU
if( obj == table && e->type() == QEvent::ContextMenu )
{
tableContextMenuEvent( static_cast<QContextMenuEvent*>(e) );
tableContextMenuEvent( table, static_cast<QContextMenuEvent*>(e) );
return true;
}
#endif
......@@ -1538,7 +1538,7 @@ bool KeySelectorControl::eventFilter( QObject *obj, QEvent *e )
}
#ifndef QT_NO_CONTEXTMENU
void KeySelectorControl::tableContextMenuEvent( QContextMenuEvent *event )
void KeySelectorControl::tableContextMenuEvent( QWidget *widget, QContextMenuEvent *event )
{
KeyTableItem *item = static_cast<KeyTableItem *>( this->table->currentItem() );
if( !item || item->isHidden() )
......@@ -1570,7 +1570,8 @@ void KeySelectorControl::tableContextMenuEvent( QContextMenuEvent *event )
unreachable();
}
QMenu *menu = new QMenu();
assert(widget);
QMenu *menu = new QMenu(widget);
menu->setAttribute(Qt::WA_DeleteOnClose);
QAction *modify = new QAction( qtr( "&Modify" ), this->table );
......
......@@ -435,7 +435,7 @@ public:
protected:
bool eventFilter( QObject *, QEvent * ) override;
#ifndef QT_NO_CONTEXTMENU
void tableContextMenuEvent( QContextMenuEvent * );
void tableContextMenuEvent( QWidget *, QContextMenuEvent * );
#endif
void changeVisibility( bool ) override;
void unset( KeyTableItem *, enum ColumnIndex );
......
......@@ -660,7 +660,7 @@ void MainCtx::createSystray()
sysTray = new QSystemTrayIcon( iconVLC, this );
sysTray->setToolTip( qtr( "VLC media player" ));
systrayMenu = std::make_unique<QMenu>( qtr( "VLC media player") );
systrayMenu = std::make_unique<VLCMenu>( qtr( "VLC media player"), p_intf );
systrayMenu->setIcon( iconVLC );
VLCMenuBar::updateSystrayMenu( this, p_intf, true );
......
......@@ -181,6 +181,7 @@ FocusScope {
id: contextMenu
model: root.model
ctx: MainCtx
}
PlaylistMedia
......
......@@ -700,7 +700,7 @@ void VLCMenuBar::PopupMenuStaticEntries( QMenu *menu )
/* Video Tracks and Subtitles tracks */
QMenu* VLCMenuBar::VideoPopupMenu( qt_intf_t *p_intf, bool show )
{
QMenu* menu = new QMenu();
QMenu* menu = new VLCMenu(p_intf);
VideoMenu(p_intf, menu);
if( show )
menu->popup( QCursor::pos() );
......@@ -710,7 +710,7 @@ QMenu* VLCMenuBar::VideoPopupMenu( qt_intf_t *p_intf, bool show )
/* Audio Tracks */
QMenu* VLCMenuBar::AudioPopupMenu( qt_intf_t *p_intf, bool show )
{
QMenu* menu = new QMenu();
QMenu* menu = new VLCMenu(p_intf);
AudioMenu(p_intf, menu);
if( show )
menu->popup( QCursor::pos() );
......@@ -720,7 +720,7 @@ QMenu* VLCMenuBar::AudioPopupMenu( qt_intf_t *p_intf, bool show )
/* Navigation stuff, and general menus ( open ), used only for skins */
QMenu* VLCMenuBar::MiscPopupMenu( qt_intf_t *p_intf, bool show )
{
QMenu* menu = new QMenu();
QMenu* menu = new VLCMenu(p_intf);
menu->addSeparator();
PopupMenuPlaylistEntries( menu, p_intf );
......@@ -740,7 +740,7 @@ QMenu* VLCMenuBar::MiscPopupMenu( qt_intf_t *p_intf, bool show )
QMenu* VLCMenuBar::PopupMenu( qt_intf_t *p_intf, bool show )
{
/* */
QMenu* menu = new QMenu();
QMenu* menu = new VLCMenu(p_intf);
input_item_t* p_input = THEMIM->getInput();
QAction *action;
bool b_isFullscreen = false;
......
......@@ -27,9 +27,33 @@
#include "qt.hpp"
#include "custom_menus.hpp"
#include "widgets/native/qvlcframe.hpp"
#include <QObject>
class VLCMenu : public QMenu
{
Q_OBJECT
public:
explicit VLCMenu(qt_intf_t* p_intf) : QMenu()
{
assert(p_intf);
if (isWindow())
QVLCDialog::setWindowTransientParent(this, nullptr, p_intf);
}
explicit VLCMenu(const QString& title, qt_intf_t* p_intf) : VLCMenu(p_intf)
{
setTitle(title);
}
explicit VLCMenu(const QString &title, QWidget *parent) : QMenu(title, parent)
{
assert(parent); // use VLCMenu(qt_intf_t* p_intf) if parent is null pointer
}
};
class VLCMenuBar : public QObject
{
Q_OBJECT
......
......@@ -68,7 +68,8 @@ namespace
void StringListMenu::popup(const QPoint &point, const QVariantList &stringList)
{
QMenu *m = new QMenu;
assert(m_ctx);
QMenu *m = new VLCMenu(m_ctx->getIntf());
m->setAttribute(Qt::WA_DeleteOnClose);
for (int i = 0; i != stringList.size(); ++i)
......@@ -87,7 +88,8 @@ void StringListMenu::popup(const QPoint &point, const QVariantList &stringList)
void SortMenu::popup(const QPoint &point, const bool popupAbovePoint, const QVariantList &model)
{
m_menu = std::make_unique<QMenu>();
assert(m_ctx);
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
connect( m_menu.get(), &QMenu::aboutToShow, this, [this]() {
m_shown = true;
......@@ -198,7 +200,7 @@ void QmlGlobalMenu::popup(QPoint pos)
if (!p_intf)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
QMenu* submenu;
connect( m_menu.get(), &QMenu::aboutToShow, this, [this]() {
......@@ -438,7 +440,7 @@ bool QmlMenuPositioner::eventFilter(QObject * object, QEvent * event)
if (m_ctx == nullptr || m_player == nullptr)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
connect(m_menu.get(), &QMenu::aboutToHide, this, &QmlBookmarkMenu::aboutToHide);
connect(m_menu.get(), &QMenu::aboutToShow, this, &QmlBookmarkMenu::aboutToShow);
......@@ -521,10 +523,11 @@ bool QmlMenuPositioner::eventFilter(QObject * object, QEvent * event)
/* Q_INVOKABLE */ void QmlProgramMenu::popup(const QPoint & position, bool above)
{
assert(m_ctx);
if (m_player == nullptr)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
connect(m_menu.get(), &QMenu::aboutToHide, this, &QmlProgramMenu::aboutToHide);
connect(m_menu.get(), &QMenu::aboutToShow, this, &QmlProgramMenu::aboutToShow);
......@@ -574,7 +577,8 @@ bool QmlMenuPositioner::eventFilter(QObject * object, QEvent * event)
/* Q_INVOKABLE */ void QmlTrackMenu::popup(const QPoint & position)
{
m_menu = std::make_unique<QMenu>();
assert(m_ctx);
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
beforePopup(m_menu.get());
......@@ -648,6 +652,8 @@ PlaylistListContextMenu::PlaylistListContextMenu(QObject * parent)
void PlaylistListContextMenu::popup(const QModelIndexList & selected, QPoint pos, QVariantMap)
{
assert(m_ctx);
if (!m_model)
return;
......@@ -656,7 +662,7 @@ void PlaylistListContextMenu::popup(const QModelIndexList & selected, QPoint pos
for (const QModelIndex & modelIndex : selected)
ids.push_back(m_model->data(modelIndex, MLPlaylistListModel::PLAYLIST_ID));
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
MediaLib * ml = m_model->ml();
......@@ -701,6 +707,8 @@ PlaylistMediaContextMenu::PlaylistMediaContextMenu(QObject * parent) : QObject(p
void PlaylistMediaContextMenu::popup(const QModelIndexList & selected, QPoint pos,
QVariantMap options)
{
assert(m_ctx);
if (!m_model)
return;
......@@ -709,7 +717,7 @@ void PlaylistMediaContextMenu::popup(const QModelIndexList & selected, QPoint po
for (const QModelIndex& modelIndex : selected)
ids.push_back(m_model->data(modelIndex, MLPlaylistModel::MEDIA_ID));
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
MediaLib * ml = m_model->ml();
......@@ -770,10 +778,12 @@ NetworkMediaContextMenu::NetworkMediaContextMenu(QObject* parent)
void NetworkMediaContextMenu::popup(const QModelIndexList& selected, QPoint pos)
{
assert(m_ctx);
if (!m_model)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
QAction* action;
action = m_menu->addAction( qtr("Add and play") );
......@@ -825,10 +835,12 @@ NetworkDeviceContextMenu::NetworkDeviceContextMenu(QObject* parent)
void NetworkDeviceContextMenu::popup(const QModelIndexList& selected, QPoint pos)
{
assert(m_ctx);
if (!m_model)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
QAction* action;
action = m_menu->addAction( qtr("Add and play") );
......@@ -850,10 +862,12 @@ PlaylistContextMenu::PlaylistContextMenu(QObject* parent)
void PlaylistContextMenu::popup(int selectedIndex, QPoint pos )
{
assert(m_ctx);
if (!m_controler || !m_model || !m_selectionModel)
return;
m_menu = std::make_unique<QMenu>();
m_menu = std::make_unique<VLCMenu>(m_ctx->getIntf());
QAction* action;
QList<QUrl> selectedUrlList;
......
......@@ -52,7 +52,7 @@ class PlaylistListModel;
public: \
inline void set##name( type data) { m_##name = data; } \
inline type get##name() const { return m_##name; } \
private: \
protected: \
type m_##name = defaultValue;
......@@ -60,6 +60,8 @@ class StringListMenu : public QObject
{
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public:
using QObject::QObject;
......@@ -74,6 +76,8 @@ class SortMenu : public QObject
{
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
Q_PROPERTY(bool shown READ isShown NOTIFY shownChanged FINAL)
public:
......@@ -101,8 +105,6 @@ class SortMenuVideo : public SortMenu
{
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
protected: // SortMenu reimplementation
void onPopup(QMenu * menu) override;
......@@ -232,6 +234,7 @@ class QmlProgramMenu : public QObject
{
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
SIMPLE_MENU_PROPERTY(PlayerController *, player, nullptr)
public:
......@@ -278,6 +281,8 @@ class QmlTrackMenu : public QObject
{
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public: // Enums
enum Action
{
......@@ -330,6 +335,8 @@ protected: // QmlTrackMenu implementation
class PlaylistListContextMenu : public QObject {
Q_OBJECT
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
SIMPLE_MENU_PROPERTY(MLPlaylistListModel *, model, nullptr)
public:
PlaylistListContextMenu(QObject * parent = nullptr);
......@@ -343,6 +350,7 @@ private:
class PlaylistMediaContextMenu : public QObject {
Q_OBJECT
SIMPLE_MENU_PROPERTY(MLPlaylistModel *, model, nullptr)
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public:
PlaylistMediaContextMenu(QObject * parent = nullptr);
......@@ -357,6 +365,7 @@ private:
class NetworkMediaContextMenu : public QObject {
Q_OBJECT
SIMPLE_MENU_PROPERTY(NetworkMediaModel*, model, nullptr)
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public:
NetworkMediaContextMenu(QObject* parent = nullptr);
......@@ -369,6 +378,7 @@ private:
class NetworkDeviceContextMenu : public QObject {
Q_OBJECT
SIMPLE_MENU_PROPERTY(NetworkDeviceModel*, model, nullptr)
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public:
NetworkDeviceContextMenu(QObject* parent = nullptr);
public slots:
......@@ -382,6 +392,7 @@ class PlaylistContextMenu : public QObject {
SIMPLE_MENU_PROPERTY(vlc::playlist::PlaylistListModel*, model, nullptr)
SIMPLE_MENU_PROPERTY(vlc::playlist::PlaylistController*, controler, nullptr)
SIMPLE_MENU_PROPERTY(ListSelectionModel*, selectionModel, nullptr)
SIMPLE_MENU_PROPERTY(MainCtx *, ctx, nullptr)
public:
PlaylistContextMenu(QObject* parent = nullptr);
......
......@@ -169,6 +169,7 @@ Widgets.PageLoader {
contextMenu: NetworkMediaContextMenu {
model: mediaModel
ctx: MainCtx
}
Navigation.cancelAction: function() {
......
......@@ -207,6 +207,8 @@ T.Control {
StringListMenu {
id: popup
ctx: MainCtx
function show() {
const model = control._menuModel.map(function (modelData) {
return modelData.display
......
......@@ -111,6 +111,7 @@ Widgets.PageLoader {
id: contextMenu
model: deviceModel
ctx: MainCtx
}
}
}
......@@ -150,6 +151,7 @@ Widgets.PageLoader {
contextMenu: NetworkMediaContextMenu {
model: mediaModel
ctx: MainCtx
}
}
}
......
......@@ -254,6 +254,7 @@ RowLayout {
id: menuSubtitle
player: Player
ctx: MainCtx
onTriggered: {
if (action === QmlSubtitleMenu.Open) {
......@@ -271,6 +272,8 @@ RowLayout {
QmlAudioMenu {
id: menuAudio
ctx: MainCtx
onTriggered: {
if (action === QmlSubtitleMenu.Open) {
DialogsProvider.loadAudioFile()
......
......@@ -43,6 +43,7 @@ Widgets.IconToolButton {
id: menu
player: Player
ctx: MainCtx
onAboutToShow: root.requestLockUnlockAutoHide(true)
onAboutToHide: root.requestLockUnlockAutoHide(false)
......
......@@ -134,6 +134,7 @@ T.Pane {
model: root.model
selectionModel: root.selectionModel
controler: MainPlaylistController
ctx: MainCtx
onJumpToCurrentPlaying: listView.positionViewAtIndex( MainPlaylistController.currentIndex, ItemView.Center)
}
......
......@@ -100,6 +100,8 @@ QtObject {
readonly property StringListMenu _menu: StringListMenu {
id: menu
ctx: MainCtx
onSelected: (index, _) => {
root._executeAction(index)
}
......
......@@ -120,7 +120,10 @@ Widgets.IconToolButton {
// Children
SortMenu { id: sortMenu }
SortMenu {
id: sortMenu
ctx: MainCtx
}
}