Hi,

I absolutely agree with Greg. In fact before I read his email I was digging
into DataGrid and my initial thought was - when I set rowHeight = NaN - My
rows should be adjusted automatically by the browser - why it does not
happen? This is exactly because of that:

In browser I think things would be a lot easier if the
> internal 'lists' were managed as a single list of native rows instead of
> composed columns of lists for DataGrids (specifically in the browser).


Carlos do you think it would be good to change that implementation in the
way as Greg is proposing ? Do you have time to work on that ?

Thanks,
Piotr

czw., 30 kwi 2020 o 20:48 Greg Dove <[email protected]> napisał(a):

> For the variable rowHeight - that works fine for individual lists, but for
> datagrid that needs to match across the corresponding renderers for each
> item in the other columns, I did not check to see how that part works.
>
> I haven't looked at the current Jewel implementation of DataGrid yet, but I
> do think that in general we have a lot of 'Flex'/swf thinking in the way
> things work for DataGrid support, and I am not sure it is the best way for
> browsers. I understand the need for this in emulation components, but
> perhaps even the implementation there is not important if the external api
> remains the same. In browser I think things would be a lot easier if the
> internal 'lists' were managed as a single list of native rows instead of
> composed columns of lists for DataGrids (specifically in the browser).
> Columns could probably be managed then by custom uid-style classes for
> styling of their parts of the 'rows'.
>
> I think this probably covers off things like variable row height more
> height easily, and makes hover/selection at row level etc easier. And
> things like snapping the scrolling to the renderers (via native snap-to
> support for scroll snapping iiuc) should be much easier also I think. Do I
> have time to work on this ? No - definitely not anytime real soon. But I
> had been thinking about it after digging into internals of DataGrid
> recently.
>
>
>
>
>
>
> On Fri, May 1, 2020 at 3:52 AM Alex Harui <[email protected]>
> wrote:
>
> > I haven't looked at Jewel's Lists in detail, but if they have switched to
> > scenario 2 (virtual rendering is probably a good default), then there are
> > assumptions in the beads about fixed rowHeight.  But to handle 5, you
> would
> > start with the earlier beads that did 1 and forget virtual rendering for
> > now.  Then you should be able to not worry about fixed rowheight any more
> > since our vertical layouts for containers certainly handle different
> > children heights.  The beads for 5 should just set a width and let the
> > browser layout the children as blocks.
> >
> > HTH,
> > -Alex
> >
> > On 4/30/20, 8:47 AM, "Piotr Zarzycki" <[email protected]>
> wrote:
> >
> >     I thought I do understand what do you mean, but now I'm confused.
> > Where do
> >     you see complexity ? In amount of rows and calculations what height
> of
> > the
> >     rows are ?
> >
> >     czw., 30 kwi 2020 o 17:44 Alex Harui <[email protected]>
> > napisał(a):
> >
> >     > IMO, there are various tricks to handle a few thousand rows if the
> >     > renderers are simple.  For example, feeding in rows with a timer.
> > If the
> >     > computer can handle the memory required for a few thousand
> renderers
> > the
> >     > main issue is the time to create and render for the first time.
> >     >
> >     > It is when you get out to 10,000 rows or the renderers are
> > complex/slow
> >     > that it doesn't make sense to keep every renderer in memory and
> > that's why
> >     > the complexity goes up.
> >     >
> >     > Also, schedule-wise, you might start with 5 now and then take more
> > time to
> >     > work on 7 or 8.
> >     >
> >     > HTH,
> >     > -Alex
> >     >
> >     > On 4/30/20, 8:33 AM, "Piotr Zarzycki" <[email protected]>
> > wrote:
> >     >
> >     >     Hi Alex,
> >     >
> >     >     It's hard to say, cause we are heavily using DataGrid in whole
> >     > application.
> >     >     Each view contains some list. We have for example now view
> called
> >     >     "Correspondence" where in theory could be hundreds rows or
> maybe
> > even
> >     >     thousands.
> >     >
> >     >     Thanks,
> >     >     Piotr
> >     >
> >     >     czw., 30 kwi 2020 o 17:27 Alex Harui <[email protected]
> >
> >     > napisał(a):
> >     >
> >     >     > Piotr,  how many rows of data are there?
> >     >     >
> >     >     > IMO, there are multiple scenarios of increasing complexity.
> > That's
> >     > one of
> >     >     > the reasons we have beads in Royale.  The vast majority of
> our
> > work
> >     > so far
> >     >     > has been to handle the simpler scenarios.  The ones I can
> > think of
> >     > are:
> >     >     >
> >     >     > 1) few rows, fixed height, pixel scrolling
> >     >     > 2) lots of rows, fixed height, pixel scrolling
> >     >     > 3) lots of rows, fixed height, row scrolling
> >     >     > 4) few rows, fixed height, row scrolling
> >     >     > 5) few rows, variable height, pixel scrolling
> >     >     > 6) few rows, variable height, row scrolling
> >     >     > 7) lots of rows, variable height, row scrolling
> >     >     > 8) lots of rows, variable height, pixel scrolling
> >     >     >
> >     >     > We've done 1 & 2 as beads.  5 should be not-too-hard
> although I
> >     > certainly
> >     >     > be wrong about that.  If you can live with 5, then see if you
> > and/or
> >     > Carlos
> >     >     > and other volunteers can come up with the beads for it.
> There
> > is a
> >     > big
> >     >     > jump in complexity after 5, especially 7 & 8.
> >     >     >
> >     >     > HTH,
> >     >     > -Alex
> >     >     >
> >     >     > On 4/30/20, 6:54 AM, "Piotr Zarzycki" <
> > [email protected]>
> >     > wrote:
> >     >     >
> >     >     >     Just for the reference when you setup variableRowHeight =
> > true
> >     > in flex
> >     >     >     DataGrid looks like that -
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fibb.co%2FD7K9dLs&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601470020&amp;sdata=mxY02yHzRs6gD2hSLm0kB3SD75DMVu7ZywB9r5N99jA%3D&amp;reserved=0
> >     >     >
> >     >     >     czw., 30 kwi 2020 o 15:51 Piotr Zarzycki <
> >     > [email protected]>
> >     >     >     napisał(a):
> >     >     >
> >     >     >     > Hi Carlos,
> >     >     >     >
> >     >     >     > I also do not see any other option than generate each
> > height
> >     > of the
> >     >     > row
> >     >     >     > based on the largest height in each row. It is
> > definitely not
> >     > an
> >     >     > option to
> >     >     >     > force people use rowHeight - That model definitely fail
> > in our
> >     >     > application
> >     >     >     > where there are different portion of text in rows. One
> > row
> >     > will have
> >     >     > 30
> >     >     >     > height the second one 45 because there more text to
> > display
> >     > and so
> >     >     > on.
> >     >     >     >
> >     >     >     > Right now Jewel DataGrid doesn't have
> variableRowHeight.
> > To me
> >     > it
> >     >     > should
> >     >     >     > in some form appear and if:
> >     >     >     >
> >     >     >     >  variableRowHeight = true - Row height is being
> > calculated
> >     >     > dynamically.
> >     >     >     > Each row can have different height. Setup rowHeight
> when
> > that
> >     > option
> >     >     > is
> >     >     >     > true won't have affect.
> >     >     >     >   variableRowHeight = false - default state. Setup
> > rowHeight
> >     > has some
> >     >     >     > effect. Each row has some predefined default height ex.
> > 35.
> >     >     >     >
> >     >     >     > Thoughts ?
> >     >     >     >
> >     >     >     > Thanks,
> >     >     >     > Piotr
> >     >     >     >
> >     >     >     > pt., 10 kwi 2020 o 17:35 Carlos Rovira <
> >     > [email protected]>
> >     >     >     > napisał(a):
> >     >     >     >
> >     >     >     >>  Hi Piotr,
> >     >     >     >>
> >     >     >     >> I was taking a look at the issue. Some initial
> thoughts:
> >     >     >     >>
> >     >     >     >> List has "variableRowHeight: true" (defined in Theme)
> > and
> >     > rowHeight
> >     >     > =
> >     >     >     >> NaN; by
> >     >     >     >> default
> >     >     >     >> (as we can see in first List example in TDJ. We can
> have
> >     > different
> >     >     > heights
> >     >     >     >> for each item renderer, while second example has
> > rowHeight
> >     > defined
> >     >     > and
> >     >     >     >> that
> >     >     >     >> makes all items has the same height (Side note: Here
> > there's
> >     > a bug
> >     >     > since
> >     >     >     >> defining rowHeight should remove "variableRowHeight",
> > since
> >     > both
> >     >     > should be
> >     >     >     >> mutually exclusive).
> >     >     >     >>
> >     >     >     >> In DataGrid, we have lots of Lists becoming columns.
> So
> > to
> >     > make DG
> >     >     > work as
> >     >     >     >> List I think we need to sync all rows to match the
> > bigger
> >     > height per
> >     >     >     >> renderer in all lists.
> >     >     >     >>
> >     >     >     >> I think there's no other way to do this.
> >     >     >     >>
> >     >     >     >> If not, other options is to avoid DG have
> > "variableRowHeight"
> >     > and
> >     >     > force
> >     >     >     >> people to use "rowHeight".
> >     >     >     >>
> >     >     >     >> I don't remember what Flex allow to do here, but maybe
> > is
> >     > something
> >     >     > to
> >     >     >     >> discuss a bit to see what could be the best for Royale
> > Jewel
> >     >     > DataGrid.
> >     >     >     >>
> >     >     >     >> Thanks
> >     >     >     >>
> >     >     >     >> Carlos
> >     >     >     >>
> >     >     >     >>
> >     >     >     >>
> >     >     >     >>
> >     >     >     >> El vie., 10 abr. 2020 a las 15:45, Piotr Zarzycki (<
> >     >     >     >> [email protected]>) escribió:
> >     >     >     >>
> >     >     >     >> > Hi Carlos,
> >     >     >     >> >
> >     >     >     >> > We have switched in our application to DataGrid.
> > There are
> >     >     > unfortunately
> >     >     >     >> > some custom adjustment to have it properly working,
> > but we
> >     > can
> >     >     > move
> >     >     >     >> forward
> >     >     >     >> > with that.
> >     >     >     >> > However I have found something which I believe
> should
> > be
> >     > fixed
> >     >     > sooner
> >     >     >     >> than
> >     >     >     >> > later.
> >     >     >     >> >
> >     >     >     >> > When rowHeight is not set and there are different
> > amount of
> >     > data
> >     >     > in data
> >     >     >     >> > grid cells rows are being cut and data are not
> > displaying
> >     > fully.
> >     >     > I have
> >     >     >     >> > pushed to TourDeJewel example which shows the issue.
> >     >     >     >> >
> >     >     >     >> > Thanks,
> >     >     >     >> > --
> >     >     >     >> >
> >     >     >     >> > Piotr Zarzycki
> >     >     >     >> >
> >     >     >     >> > Patreon: *
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601470020&amp;sdata=OLCnePTZVRIRvyE8zuqPy2j7MXc7lz6VSTe4ayiHP3I%3D&amp;reserved=0
> >     >     >     >> > <
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601470020&amp;sdata=OLCnePTZVRIRvyE8zuqPy2j7MXc7lz6VSTe4ayiHP3I%3D&amp;reserved=0
> >     >     > >*
> >     >     >     >> >
> >     >     >     >>
> >     >     >     >>
> >     >     >     >> --
> >     >     >     >> Carlos Rovira
> >     >     >     >>
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fabout.me%2Fcarlosrovira&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601470020&amp;sdata=QJ%2FYFb%2BWXPhfQEL5j7IrLKYXu76rNmxf1iJqOJnPUKc%3D&amp;reserved=0
> >     >     >     >>
> >     >     >     >
> >     >     >     >
> >     >     >     > --
> >     >     >     >
> >     >     >     > Piotr Zarzycki
> >     >     >     >
> >     >     >     > Patreon: *
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     >     >     > <
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     >     > >*
> >     >     >     >
> >     >     >
> >     >     >
> >     >     >     --
> >     >     >
> >     >     >     Piotr Zarzycki
> >     >     >
> >     >     >     Patreon: *
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     >     >     <
> >     >     >
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     >     > >*
> >     >     >
> >     >     >
> >     >     >
> >     >
> >     >     --
> >     >
> >     >     Piotr Zarzycki
> >     >
> >     >     Patreon: *
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     >     <
> >     >
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     > >*
> >     >
> >     >
> >     >
> >
> >     --
> >
> >     Piotr Zarzycki
> >
> >     Patreon: *
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> >     <
> >
> https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.patreon.com%2Fpiotrzarzycki&amp;data=02%7C01%7Caharui%40adobe.com%7Ccf24bde1653745f5aa5608d7ed1dcef2%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637238584601480015&amp;sdata=VXf%2Fe%2FkkDMzvO6SqAi%2B84UPRkhLN%2FC6NplNRCrArUIU%3D&amp;reserved=0
> > >*
> >
> >
> >
>


-- 

Piotr Zarzycki

Patreon: *https://www.patreon.com/piotrzarzycki
<https://www.patreon.com/piotrzarzycki>*

Reply via email to