Skip to content

Commit 55da698

Browse files
DomClarkPhysSong
authored andcommitted
Fix X11 embedding on Qt4
1 parent 1220374 commit 55da698

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

plugins/VstEffect/VstEffectControlDialog.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ VstEffectControlDialog::VstEffectControlDialog( VstEffectControls * _ctl ) :
6464

6565
if (embed_vst) {
6666
if (! m_plugin->pluginWidget()) {
67-
m_plugin->createUI(nullptr);
67+
m_plugin->createUI(this);
6868
}
6969
m_pluginWidget = m_plugin->pluginWidget();
7070
}

plugins/vestige/vestige.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,12 @@ class VstInstrumentPlugin : public VstPlugin
107107
void createUI( QWidget *parent ) override
108108
{
109109
Q_UNUSED(parent);
110-
VstPlugin::createUI( nullptr );
111110
if ( embedMethod() != "none" ) {
112111
m_pluginSubWindow.reset(new vstSubWin( gui->mainWindow()->workspace() ));
112+
VstPlugin::createUI( m_pluginSubWindow.get() );
113113
m_pluginSubWindow->setWidget(pluginWidget());
114+
} else {
115+
VstPlugin::createUI( nullptr );
114116
}
115117
}
116118

plugins/vst_base/VstPlugin.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -656,6 +656,10 @@ void VstPlugin::createUI( QWidget * parent )
656656
#ifdef LMMS_BUILD_LINUX
657657
if (m_embedMethod == "xembed" )
658658
{
659+
if (parent)
660+
{
661+
parent->setAttribute(Qt::WA_NativeWindow);
662+
}
659663
QX11EmbedContainer * embedContainer = new QX11EmbedContainer( parent );
660664
connect(embedContainer, SIGNAL(clientIsEmbedded()), this, SLOT(handleClientEmbed()));
661665
embedContainer->embedClient( m_pluginWindowID );
@@ -671,8 +675,6 @@ void VstPlugin::createUI( QWidget * parent )
671675
container->setWindowTitle( name() );
672676

673677
m_pluginWidget = container;
674-
675-
container->setFixedSize( m_pluginGeometry );
676678
}
677679

678680
bool VstPlugin::eventFilter(QObject *obj, QEvent *event)

0 commit comments

Comments
 (0)