From 0374623f20e3f7501da4360e9a4e6fb23ead9529 Mon Sep 17 00:00:00 2001 From: Nyall Dawson Date: Wed, 20 Jan 2021 09:47:47 +1000 Subject: [PATCH] [processing] Don't default to input field for optional expression parameters Fixes #41063 --- src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp b/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp index ebe3aa3c0777..a8ea8c08960b 100644 --- a/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp +++ b/src/gui/processing/qgsprocessingwidgetwrapperimpl.cpp @@ -1951,6 +1951,9 @@ QWidget *QgsProcessingExpressionWidgetWrapper::createWidget() mFieldExpWidget->setToolTip( parameterDefinition()->toolTip() ); mFieldExpWidget->setExpressionDialogTitle( parameterDefinition()->description() ); mFieldExpWidget->registerExpressionContextGenerator( this ); + if ( expParam->flags() & QgsProcessingParameterDefinition::FlagOptional ) + mFieldExpWidget->setAllowEmptyFieldName( true ); + connect( mFieldExpWidget, static_cast < void ( QgsFieldExpressionWidget::* )( const QString & ) >( &QgsFieldExpressionWidget::fieldChanged ), this, [ = ]( const QString & ) { emit widgetValueHasChanged( this );