Grid Column Resizing with "fillspace:true" - first changing the rigth border of column

Hi!

Help me figure out how to make it so that changing the right border of a cell doesn’t change the left border.

Thanks

Error when resizing column width
When set maxColumnWidth for a column, both column boundaries begin changing at once.

  1. This is illogical.
  2. Unable to set a boundary.

see example (column “Released”)
https://snippet.webix.com/wmkm21rl

see video: https://youtu.be/dYOVJukCMdU

If I start changing the right border first… then an error occurs when changing the left column border synchronously.

If I start changing the left border first (not the right), the behavior is expected: only one border changes.

Hello @Alexander_Krakhotko ,

Please replace the maxColumnWidth property with maxWidth .
You can use minWidth and maxWidth as properties for the column configuration. These properties are applied specifically to the individual columns.

minColumnWidth and maxColumnWidth are applied to all columns.

Here is the example: Code Snippet

Thank you very much.
However, if I leave just option the “Width” field in both columns,
dragging the right border also moves the left border, which is unexpected and confusing to the user.

What should I do if:
I need to specify different “Width” values
but I also need a clear column extension?

https://snippet.webix.com/2x7b343e

The behavior you’re experiencing is due to the presence of two columns set with fillspace . When both columns have this configuration, they will adjust their widths automatically based on the available space. This means that when you resize one column, the other column will also adjust its width to fill the remaining space, leading to the confusion you’re seeing.

To simplify the resizing behavior and avoid confusion, it is better to keep only one column with fillspace, ideally the last column. This way, it will take up the remaining space without affecting the others.

If you need the other columns to automatically occupy space during initialization, you can disable fillspace for them after the initial setup.

Please check the example: Code Snippet

This is very unfortunate grid behavior.

In our app, users can:

  1. move columns
  2. show and hide columns
  3. change column width

However, there is a requirement that row columns stretch to full width (for string column).

Previously, we used a other grid (devextreme), and it worked as expected.
Now, we haven’t been able to find a working solution for the Webix.grid :frowning:

Regarding your situation, please note that fillspace is designed to auto-adjust to the available space, which is recalculated when other columns are resized. With that in mind, could you please clarify how the columns should behave for your use case? Specifically, in what scenarios should they fill the available space, and when should they maintain their fixed width?

Since we can enable/disable fillspace and set fixed widths for columns through the API, the behavior can be configured to meet your requirements.

Thank you

I recorded a video for example and clarification.
the example: https://snippet.webix.com/2x7b343e
Video on youtube

#1 First, I drag the border of the “Movie Title” column, and an error occurs: I don’t want the border between the “Votes” and “Released” columns to change.

#2 After I adjust the border between the “Votes” and “Released” columns once, everything works correctly.

I suspect this is error #1—can you fix it?
I want the behavior to immediately follow the same pattern as #2.

Hello
I have the same problem. Additionally I use fixed columns.
See this example Code Snippet
Try to change size for column ‘Votes’ and look at the fixed column on the right.

Hello , @Alexander_Krakhotko ,@sergezaitsev73 ,

This behavior when resizing the last column is due to the way how fillspace is working in our table / grid. Initially, both columns with fillspace:true will attempt to adjust their width to the available space after resizing.

#2 After I adjust the border between the “Votes” and “Released” columns once, everything works correctly.
The behavior will be different here since Votes column width was changed manually by the user ( via the right border of the column ) and it removed the fillspace. The column is now left with only the fixed width.

Your arguments sound reasonable for us, thank you, so we will consider adding a setting to toggle the behaviour ( to keep the default one too ).

As a workaround now I can suggest you to dynamically manage the fillspace setting: Code Snippet - here is a base example that you could use as a starting point .