forked from extern/egroupware
Et2Select: Fix change event got fired too early
If fix_bad_value() made a change, that was triggering change event before Et2App.et2_ready() had been called
This commit is contained in:
parent
8b83ed85d3
commit
78333613fa
@ -20,7 +20,7 @@
|
||||
<row class="th">
|
||||
<nextmatch-sortheader label="Name" id="name"/>
|
||||
<nextmatch-sortheader label="Description" id="description"/>
|
||||
<nextmatch-filterheader label="Application" id="app" options=","/>
|
||||
<nextmatch-filterheader label="Application" id="app"/>
|
||||
<nextmatch-accountfilter label="Owner" id="owner" options="all,both"/>
|
||||
<nextmatch-filterheader label="Private" id="access" options="All"/>
|
||||
<nextmatch-header align="center" label="Icon" id="icon"/>
|
||||
|
@ -106,11 +106,14 @@ export const Et2widgetWithSelectMixin = <T extends Constructor<LitElement>>(supe
|
||||
{
|
||||
super.updated(changedProperties);
|
||||
|
||||
// If the ID changed (or was just set) find the select options
|
||||
if(changedProperties.has("id"))
|
||||
// If the ID changed (or was just set) and select_options wasn't, find the new select options
|
||||
if(changedProperties.has("id") && !changedProperties.has("select_options"))
|
||||
{
|
||||
const options = find_select_options(this, {}, this._xmlOptions);
|
||||
if (options.length) this.select_options = options;
|
||||
if(options.length)
|
||||
{
|
||||
this.select_options = options;
|
||||
}
|
||||
}
|
||||
|
||||
// Add in actual option tags to the DOM based on the new select_options
|
||||
@ -120,7 +123,7 @@ export const Et2widgetWithSelectMixin = <T extends Constructor<LitElement>>(supe
|
||||
this._renderOptions();
|
||||
|
||||
// This is needed to display initial load value in some cases, like infolog nm header filters
|
||||
if(this.handleMenuSlotChange)
|
||||
if(this.handleMenuSlotChange && !this.hasUpdated)
|
||||
{
|
||||
this.handleMenuSlotChange();
|
||||
}
|
||||
|
@ -3627,7 +3627,7 @@ export class et2_nextmatch_header_bar extends et2_DOMWidget implements et2_INext
|
||||
}
|
||||
}
|
||||
// Legacy: Add in 'All' option for cat_id, if not provided.
|
||||
if(name == 'cat_id' && options != null && (typeof options[''] == 'undefined' && typeof options[0] != 'undefined' && options[0].value != ''))
|
||||
if(name == 'cat_id' && (options == null || options != null && (typeof options[''] == 'undefined' && typeof options[0] != 'undefined' && options[0].value != '')))
|
||||
{
|
||||
widget_options.empty_label = this.egw().lang('All categories');
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user