When initializing my kendo grid with the option "groupable: true" on a Galaxy S2 GT-I9100 mobile phone, android version 4.1.2 (don't know for other phone types or OS versions), the whole grid becomes frozen (no scrolling, extremely slow for other operations like paging).
Note that the groupable option enabled works perfectly inside the device simulator and on a Google Nexus simulator.
Could you please investigate and provide a workaround & internal release fix ASAP? It is extremely annoying.
Thanks
7 Answers, 1 is accepted
Could you provide more details about the scenario and the OS version of the test device? Is it possible to provide code snippets that demonstrate the Grid and its DataSource configuration so I can examine them?
Looking forward to your reply.
Regards,
Alexander Valchev
Telerik
We are not able to scroll on the iPhone or iPad (or Chrome's emulator for these devices) when the Grid is set to groupable. When will it be fixed? Is there a known set of devices where this problem occurs? Is there a best practice work around? Thanks
@(Html.Kendo().Grid<xxx.Shared.Entity.Models.Contracts.ContractListItemVM>()
.Name("contractListGrid")
.HtmlAttributes(new { data_grid_storage_key = "contractlist-grid-options", data_grid_persist_options = true })
.Columns(columns =>
{
columns.Bound(p => p.ContractIDCoalesced)
.Width(100)
.HtmlAttributes(new { style = "text-align:right" })
.HeaderHtmlAttributes(new { style = "text-align:right" })
.ClientTemplate(Html.ActionLink("#= ContractIDCoalesced #", "TransactionSummary", "Home", new { contractOid = "#= ContractOid #" }, new { }).ToHtmlString());
columns.Bound(c => c.AmountFinanced)
.Width(100)
.Format("{0:C}")
.HtmlAttributes(new { style = "text-align:right" })
.HeaderHtmlAttributes(new { style = "text-align:right" });
})
.DataSource(dataSource => dataSource
.Ajax()
.Events(events => events.Error("Verdant.grid.errorHandler").Change("Verdant.grid.onGridDataSourceChange"))
.Read(read => read.Action("ContractList_GetData", "Contract").Data("Verdant.grid.sendAntiForgery"))
.PageSize(20)
.ServerOperation(false)
)
.Pageable(pageable => pageable.PageSizes(new int[] { 10, 20, 50, 100, 999 }))
.Sortable()
.Groupable()
.Filterable()
.Events(e => e.FilterMenuInit("Verdant.grid.onFilterMenuInit"))
.Excel(excel => excel
.FileName("Contract List Export.xlsx")
.Filterable(true)
.AllPages(true)
.ProxyURL(Url.Action("ExportExcel", "Grid"))
)
)
</div>
Hi, John,
The Kendo UI Grid in the provided snippet is not set as Scrollable() and scrolling is false by default for the UI for ASP.NET MVC and Core grid. I tested our online demos and the scrolling and grid with groupable work well on iOS 13.1.2.
https://demos.telerik.com/aspnet-mvc/grid
Can you provide the following information:
- Kendo version and if you are using MVC or Core
- iOS version and browser (version needed if not Safari)
- iPhone/iPad model (the genuine devices, not emulations)
Look forward to hearing back from you.
Regards,
Alex Hajigeorgieva
Progress Telerik
Hi Alex,
Thanks for responding. We want to use paging and not scrolling within the grid. So the grid itself should not have the capability to scroll. On the iPhone 8 using Safari, the page shows the first 6 rows of the grid. If I try to scroll down to see the other rows, I put my finger on the yellow highlight and swipe up, but it does nothing other than highlight the row that was touched. The page will not scroll. I am able to scroll up and down the page by swiping on any area outside of the grid (like the page heading).
When we turn off .Groupable(), it works as desired.
It also works fine when using Chrome on my Droid phone.
KENDO VERSION 2019.2.514.545
ASP.NET CORE
IPHONE 8 - Version 13.1.2 / SAFARI
Thanks
John
Hi, John,
Thank you very much for the additional information.
The reason that this is happening is the experimental "pointer events" that Apple released since iOS 13 which are on by default. You can verify this by going to Settings/Safari/Advanced/Experimental Features and turning off the switch for pointer events.
I have logged an issue in our repository and you may follow its progress here:
https://github.com/telerik/kendo-ui-core/issues/5327
In addition to that, as a small token of appreciation for helping us improve, I have also updated your Telerik points
Finally, you can add Scrollable() to the grid configuration and continue using paging while we fix this. Please accept our apology for the inconvenience.
Kind Regards,
Alex Hajigeorgieva
Progress Telerik
Thanks Alex. We've implemented .Scrollable() on a couple grids and it fixed the iOS issue. Just to point out to others if they have the same scenario, .Scrollable() caused issues with column widths and made the grid full screen width. To fix this, we needed to readjust all the column widths to fit better and then wrap the grid with a <DIV> with a width equal to the sum of all the column widths plus a little more for the scroll bar.
No follow up needed. Thanks again, John
Hi, John,
We found that this workaround also helps in most cases, so I wanted to let you know:
if(kendo.support.browser.safari) {
kendo.support.pointers = false;
}
https://dojo.telerik.com/UqABaWob
Kind
Regards,
Alex Hajigeorgieva
Progress Telerik