Skip to content

Commit fb92db8

Browse files
committed
Use body element as dropdownParent for tomselect elements
This improves UX
1 parent 2b28aa8 commit fb92db8

File tree

7 files changed

+11
-4
lines changed

7 files changed

+11
-4
lines changed

assets/controllers/elements/attachment_autocomplete_controller.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ export default class extends Controller {
4242
selectOnTab: true,
4343
//This a an ugly solution to disable the delimiter parsing of the TomSelect plugin
4444
delimiter: 'VERY_L0NG_D€LIMITER_WHICH_WILL_NEVER_BE_ENCOUNTERED_IN_A_STRING',
45+
dropdownParent: 'body',
4546
render: {
4647
item: (data, escape) => {
4748
return '<span>' + escape(data.label) + '</span>';

assets/controllers/elements/part_select_controller.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export default class extends Controller {
1616
searchField: ["name", "description", "category", "footprint"],
1717
valueField: "id",
1818
labelField: "name",
19+
dropdownParent: 'body',
1920
preload: "focus",
2021
render: {
2122
item: (data, escape) => {
@@ -71,4 +72,4 @@ export default class extends Controller {
7172
//Destroy the TomSelect instance
7273
this._tomSelect.destroy();
7374
}
74-
}
75+
}

assets/controllers/elements/select_controller.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ export default class extends Controller {
4444
allowEmptyOption: true,
4545
selectOnTab: true,
4646
maxOptions: null,
47+
dropdownParent: 'body',
4748

4849
render: {
4950
item: this.renderItem.bind(this),
@@ -108,4 +109,4 @@ export default class extends Controller {
108109
//Destroy the TomSelect instance
109110
this._tomSelect.destroy();
110111
}
111-
}
112+
}

assets/controllers/elements/select_multiple_controller.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export default class extends Controller {
2929
this._tomSelect = new TomSelect(this.element, {
3030
maxItems: 1000,
3131
allowEmptyOption: true,
32+
dropdownParent: 'body',
3233
plugins: ['remove_button'],
3334
});
3435
}
@@ -39,4 +40,4 @@ export default class extends Controller {
3940
this._tomSelect.destroy();
4041
}
4142

42-
}
43+
}

assets/controllers/elements/static_file_autocomplete_controller.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ export default class extends Controller {
5050
valueField: 'text',
5151
searchField: 'text',
5252
orderField: 'text',
53+
dropdownParent: 'body',
5354

5455
//This a an ugly solution to disable the delimiter parsing of the TomSelect plugin
5556
delimiter: 'VERY_L0NG_D€LIMITER_WHICH_WILL_NEVER_BE_ENCOUNTERED_IN_A_STRING',

assets/controllers/elements/structural_entity_select_controller.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ export default class extends Controller {
5454
maxItems: 1,
5555
delimiter: "$$VERY_LONG_DELIMITER_THAT_SHOULD_NEVER_APPEAR$$",
5656
splitOn: null,
57+
dropdownParent: 'body',
5758

5859
searchField: [
5960
{field: "text", weight : 2},

assets/controllers/elements/tagsinput_controller.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ export default class extends Controller {
4343
selectOnTab: true,
4444
createOnBlur: true,
4545
create: true,
46+
dropdownParent: 'body',
4647
};
4748

4849
if(this.element.dataset.autocomplete) {
@@ -73,4 +74,4 @@ export default class extends Controller {
7374
//Destroy the TomSelect instance
7475
this._tomSelect.destroy();
7576
}
76-
}
77+
}

0 commit comments

Comments
 (0)