Completed
Last Updated: 23 Oct 2019 08:34 by ADMIN

Hi,

I'm experiencing a bug with the kendo grid. In my project I have a rather complicated website where a kendo grid is loaded depending an multiple criteria which can be chosen by the user through dropdowns and multiselects. Luckily, I could break it down to a simple test website and the bug still is bugging around ;)

Description: Depending on the criteria chosen, the grid loads different data which reach from zero to thousands of data rows. In my example here, it's either zero or 100 data rows (depending on the dropdown, if there is either "Empty" or "Not empty" selected). The grid loads its data if you press the button ok (by calling the Load action on the server). The result is meant to be limited to paging of 25 rows (no user choice wanted)!

Heres the code for the cshtml site:

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Index</title>
</head>
<body>
    <div id="content">
        <div>
            @(Html.Kendo().DropDownList()
                            .Name("test_selector")
                            .DataTextField("Display")
                            .DataValueField("Value")
                            .BindTo(new List<DropDownVM>() {
                                            new DropDownVM()                                                                    {
                                                Display = "Empty",
                                                Value = "empty"
                                            },
                                            new DropDownVM()                                                                    {
                                                Display = "Not empty",
                                                Value = "notEmpty"
                                            }
                            })
            )
        </div>
        <div>
            @(Html.Kendo().Grid<MyProject.ViewModels.Test.TestItem>()
                                            .Name("grid_Test")
                                            .Columns(columns =>
                                            {
                                                columns.Bound(x => x.TestId).Title("TestId").Width(75);
                                                columns.Bound(x => x.TestName).Title("TestName").Width(75);
                                            })
                                            .Sortable()
                                            .Pageable()
                                            .DataSource(dataSource => dataSource
                                                .Ajax()
                                                .PageSize(25)
                                                .Read(read => read.Action("Load", "Test").Data("GetSelectorData"))
                                            )
                                            .AutoBind(false) //Do not load Grid data initially
            )
        </div>
        <div>
            @Html.Kendo().Button().Name("Load").Content("Load")
        </div>
    </div>
    <script type="text/javascript">
        $("#Load").on("click", function (e) {
            var grid = $("#grid_Test");
            grid.data("kendoGrid").dataSource.read();
        });

        function GetSelectorData() {
            var selectorData = {
                type: $('#test_selector').data("kendoDropDownList").value()
            }
            return selectorData;
        }
    </script>
</body>
</html>

And the corresponding controller:


public class TestController : BaseController
    {
        public ActionResult Index()
        {
            return View();
        }

        public ActionResult Load([DataSourceRequest] DataSourceRequest request, string type)
        {
            List<TestItem> result = new List<TestItem>();
            if (type == "notEmpty")
            {
                for (int id = 1; id <= 100; id++)
                    result.Add(CreateTestItem(id));
            }

            request.PageSize = 25;
            return Json(result.ToDataSourceResult(request));
        }

        private TestItem CreateTestItem(int id)
        {
            TestItem result = new TestItem()
            {
                TestId = id,
                TestName = "Name" + id
            };
            return result;
        }
    }

Problem: The scenario described above works actually fine as long as the grid gets at least one data row delivered as DataSourceResult (i.e., result.Count > 0 in the Load method of the controller). The request object in the controller's Load method also shows request.PageSize to be configured to 25. Also, if I choose "Empty" from the dropdown and press the Load-button, the request in the controller will show PageSize = 25. But if I switch the selector to "Not empty" afterwards and press Load, the request will show PageSize = 0! This results in the grid not being paged at all and showing all results on a single page (which leads to serious connectivity problems in my productive project as soon as there are several thousands of data rows).

I tried a quick workaround in the Load method of the controller by setting the PageSize manually back to 25 (which is not wanted of course, but would actually work for me at the moment):


public ActionResult Load([DataSourceRequest] DataSourceRequest request, string type)
        {
            List<TestItem> result = new List<TestItem>();
            if (type == "notEmpty")
            {
                for (int id = 1; id <= 100; id++)
                    result.Add(CreateTestItem(id));
            }

            request.PageSize = 25;
            return Json(result.ToDataSourceResult(request));
        }

Unfortunately, this doesn't work either. The paging will be back on again and there will be only 25 data rows loaded in the grid but there is only one single page no matter how many data rows are loaded (see attached screenshot).

Do you know about this? Unfortunately I couldn't find any help for this problem so far.

Greetings!

Unplanned
Last Updated: 26 Mar 2024 09:16 by nidhin
Created by: nidhin
Comments: 0
Category: Grid
Type: Bug Report
1

Bug report

A hidden template column that is not included in the ColumnMenu appears after showing another column

Reproduction of the problem

  • Use the following declaration for the columns:
              .Columns(columns =>
              {
                  //Hidden template column
                  columns.Template(x =>
                  {
                      int rptIndex = Model.IndexOf(x);
                      string namePrefix = "Grid[" + rptIndex + "].";
                      Html.Hidden(namePrefix + "Id", x.Id, new { @readonly = "readonly" });
                      Html.Hidden(namePrefix + "Name", x.Name, new { @readonly = "readonly" });
                  }).Hidden().IncludeInMenu(false);

                  columns.Bound(x => x.Id).Width(120).Hidden(true);
                  columns.Bound(x => x.Name).Width(200);
                  columns.Bound(x => x.ReportingDateOriginal).Width(500).HtmlAttributes(new { id = "reporting-date-original" })
                    .Filterable(f => f.UI(GridFilterUIRole.DateTimePicker).Cell(c => c.Template("dateFilter")));
                  columns.Bound(x => x.Test1).Width(200).Hidden(true);
                  columns.Bound(x => x.TimezoneOffset).Width(200).HtmlAttributes(new { id = "reporting-date-offset" });
                  columns.Bound(x => x.Test2).Width(200).Hidden(true);
                  columns.Bound(x => x.ReportingDateAdjusted).Width(500).HtmlAttributes(new { id = "reporting-date-adjusted" })
                    .Filterable(f => f.UI(GridFilterUIRole.DateTimePicker).Cell(c => c.Template("dateFilter")));
                  columns.Bound(x => x.Test3).Width(200);
                  columns.Bound(x => x.Test4).Width(200).Hidden(true);
                  columns.Bound(x => x.Test5).Width(200);
              })
  • Show the Id column

Current behavior

The first time instead of the Id, the template column appears.

Expected/desired behavior

The Id column should appear and the template column should remain hidden.

Environment

  • Kendo UI version: 2024.1.130
  • Browser: [all]
Declined
Last Updated: 05 Aug 2019 14:38 by ADMIN
Created by: Christian
Comments: 1
Category: Grid
Type: Feature Request
1

It would be nice, if you can create a build-in property or function to create icon-only buttons/commands in a grid.

Actually it requires some workaround to realize this.

 

This Example create an edit button with the k-button-icontext class, but i want only an k-button-icon button. The destroy button gets the button name as default text.

@(Html.Kendo().Grid<WidgetDashboard.Models.Widget.WidgetData>()
    .Name("adminWidgetGrid")
    .Columns(columns =>
    {
        columns.Bound(p => p.Name).Width(150);
        columns.Bound(p => p.Active).Width(75);
        columns.Command(command => { command.Edit().Text(" "); command.Destroy().Text(""); }).Width(300);
    })
    //.ToolBar(toolbar => toolbar.Create())
    .Editable(editable => editable.Mode(GridEditMode.InLine))
    .Pageable(p => p.Refresh(true))
    .Sortable()
    .Scrollable()
    .Resizable(r => r.Columns(true))
    .HtmlAttributes(new { style = "height:450px; width: 100%" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        //.Events(events => events.Error("error_handler"))
        .Model(model => model.Id(p => p.ID))
        .Create(update => update.Action("Admin_Create", "Dashboard", new { id = Model.DashboardId }))
        .Read(read => read.Action("Admin_Read", "Dashboard", new { id = Model.DashboardId }))
        .Update(update => update.Action("Admin_Update", "Dashboard", new { id = Model.DashboardId }))
        .Destroy(update => update.Action("Admin_Destroy", "Dashboard", new { id = Model.DashboardId }))
    )
)

 

Alternative it would be ok if the correct css class is given when an empty string is specified.

 

Thank you

Christian

Completed
Last Updated: 04 Jun 2024 06:04 by ADMIN
Release 2024 Q1

Bug report

Reproduction of the problem

  1. Compare the rendering of the "Next Page", "Last Page", "Previous Page" and "First Page" buttons in RTL between the MVC Grid and the jQuery and Core Grids:

https://demos.telerik.com/aspnet-mvc/grid/right-to-left-support
https://demos.telerik.com/kendo-ui/grid/right-to-left-support
https://demos.telerik.com/aspnet-core/grid/right-to-left-support

Current behavior

Incorrect rendering of the buttons.

Expected/desired behavior

Buttons rendered consistently with the jQuery and Core Grids.

Environment

  • Kendo UI version: 2023.3.1010
  • jQuery version: x.y
  • Browser: [all]
Completed
Last Updated: 19 Jan 2023 13:12 by ADMIN
Created by: Manu
Comments: 1
Category: Grid
Type: Bug Report
1

Hello,

since I updated Telerik UI for ASP.net MVC from version 2019.1.220 to 2019.2.514, the paging part of the grid doesn't display as expected in IE11 with compatibility with IE9  (<meta http-equiv="x-ua-compatible" content="IE=9">)

If I remove the compatibility with IE9, it's ok, but I need it to support older computer.  

version 2019.1.220: 

version 2019.2.514:

 

 Is there a solution to display it correctly?

Thank you very much and best regards.

 

Emmanuel Tharin

Completed
Last Updated: 12 Jan 2024 15:40 by ADMIN
Release 2024 Q1

Bug report

Regression introduced in R3 2023 SP1
If an initially hidden column is shown with the showColumn API method, the column header remains hidden because of the k-hidden class that remains in the th element.

Reproduction of the problem

  1. Click on the button above the Grid in the example below
<input type="button" name="btn1" value="Show the hidden columns" onclick="btn1Click()" />
<br />
<br />

@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("Grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).Hidden(true);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Hidden(true);
    })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Grid"))
    )
)

<script>
    function btn1Click() {
        var grid = $("#Grid").data("kendoGrid");

        grid.showColumn("ShipCity");
        grid.showColumn("OrderDate");
    }
</script>

Current behavior

The hidden columns are shown but their headers remain hidden.

As a workaround, the k-hidden class can be removed from the column header, after showing the column:

grid.showColumn("ShipCity");
$(".k-grid .k-header[data-field='ShipCity']").removeClass("k-hidden");

Expected/desired behavior

The columns and their headers are shown.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [all ]
Completed
Last Updated: 17 Jan 2024 12:53 by ADMIN
Release 2024 Q1
Created by: Prashanth
Comments: 0
Category: Grid
Type: Bug Report
1

The issue is present only when a field in the model has been updated. When an invalid value is attempted to be saved, the validation is triggered. Upon pressing the Esc key, the dirty indicator should not be shown.

The expected behavior would be to not show the dirty indicator at all as the value has been returned to the initial one. Furthermore, the indicator is not positioned in the left top corner but immediately above the value.

Steps to replicate:

1. Change the value of any field.

2. Navigate to a field which has validation.

3. Set an invalid value in order to trigger the validation, respectively show a validation message.

4. Press Esc to undo the change.

5. The dirty indicator is shown and mispositioned.

Dojo sample:

https://dojo.telerik.com/iHoRaWIg

Short video demonstration:

https://screencast-o-matic.com/watch/cqhbjKTeK2

Unplanned
Last Updated: 30 May 2024 14:27 by Shawn

### Bug report

When there is an initially hidden column in the Grid with multi-column headers, the hiding/showing of columns through the ColumnMenu does not work correctly.

### Reproduction of the problem

1) Hide a column in the Grid with the Hidden(true) option.

2) Hide a column through the Grid column menu.

3) The header of the column that is hidden is added to the previous visible column.

4) Show the same column through the column menu - it does not render back as expected.

The issue is caused by the a mismatch in the column group header rendering:

  • Group header:
    • aria-haspopup="dialog" is missing;
    • data-title="{group name}" is missing;
    • the title in the group header must be rendered as:

<span class="k-cell-inner"><span class="k-link"><span class="k-column-title">Product Information</span></span></span>
  • Header:
    • aria-haspopup="menu" is missing;

 

### Environment

* **Telerik UI for ASP.NET MVC version 2024.2.514

Completed
Last Updated: 28 Aug 2023 10:28 by ADMIN
Created by: Nina
Comments: 0
Category: Grid
Type: Bug Report
0

Bug report

Not reproducible with the UI for ASP.NET Core Grid helper.

Reproduction of the problem

  1. Set the Total option of the DataSource in a Grid:
.DataSource(dataSource => dataSource
    .Ajax()
    .PageSize(15)
    .Read(read => read.Action("Orders_Read", "Grid"))
    .Total(50)
)
  1. Compare the rendering of the pager "next page" and "last page" buttons with the Total option set and without it.

Current behavior

The "next page" and "last page" buttons in the Grid's pager are rendered as anchor Html elements, when Total is set in the DataSource. When it is not set, the buttons are rendered as button Html elements.

Expected/desired behavior

The rendering of the pager buttons should be consistent and they should render as button Html elements.

Environment

  • Kendo UI version: 2023.1.425
  • jQuery version: x.y
  • Browser: [all]
In Development
Last Updated: 11 Jun 2024 11:51 by ADMIN
Scheduled for 2024 Q3 (Aug)

Bug report

Reproduction of the problem

  1. Initialize a Grid with the following Filter and ColumnMenu configuration:
@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns => {
        columns.Bound(p => p.OrderID).Filterable(false).Width(100);
        columns.Bound(p => p.ShipCity).Width(100);
        columns.Bound(p => p.ShipCity).Width(150);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Width(140);
    })
    .Sortable()
    .Filterable(f => f.Extra(true)
        .Messages(message => message.Equals("Равно"))
        .Messages(message => message.Filter("Приложи"))
        .Messages(message => message.Clear("Изчисти"))
        .Messages(message => message.Info("Покажи записи които:"))
        .Messages(message => message.And("и"))
        .Messages(message => message.Or("или"))
        .Messages(message => message.AdditionalOperator("fdfdfd"))
        .Messages(message => message.IsFalse("Активни  "))
        .Messages(message => message.IsTrue("Неактивни   "))
    )
    .ColumnMenu()
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Model(model => model.Id(p => p.OrderID))
        .Read(read => read.Action("Orders_Read", "Grid"))
     )
)

Or use this REPL example: https://netcorerepl.telerik.com/QSYflePv05yaqnLZ07

The issue is also reproducible with the ColumnMenu set the following way:

.ColumnMenu(cm => cm
        .Messages(message => message.Columns("Колони"))
        .Messages(message => message.ColumnSettings("Насторйки"))
        .Messages(message => message.Filter("Филтър"))
        .Messages(message => message.SortAscending("Сортирай възходящ ред"))
        .Messages(message => message.SortDescending("Сортирай низходящ ред"))
    )

Current behavior

The filter menu messages are not set.

filter-menu-messages

Expected/desired behavior

The filter menu messages are set regardless of whether a ColumnMenu is enabled or not.

Environment

  • Kendo UI version: 2024.1.314
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 23 Apr 2024 17:52 by Amit Sighn

### Bug report

When the Grid uses an external DataSource, the aggregates are undefined within the ClientGroupFooterTemplate().

### Reproduction of the problem

Use the following REPL sample that demonstrates the issue:

https://netcorerepl.telerik.com/mIkyQnvB382bsiFt24

1. Group the Grid by the "Freight" column.

2. An error is thrown in the browser console: "Uncaught ReferenceError: sum is not defined".

3. The aggregates=["sum"] is missing in the column options in the Grid initialization script;

"columns":[{"title":"Order ID","field":"OrderID","filterable":false,"encoded":true},{"title":"Freight","groupFooterTemplate":"Sum: #=sum#","field":"Freight","filterable":{"messages":{"title":"Show items with value that"},"checkAll":false},"encoded":true},{"title":"Ship City","width":"150px","field":"ShipCity","filterable":{"messages":{"title":"Show items with value that"},"checkAll":false},"encoded":true}]

When the DataSource is defined within the Grid configuration, the aggregate is displayed as expected.

### Expected/desired behavior

The "sum" aggregate must be displayed within the group footer template of the column when the Grid is grouped.

### Workaround

Define the DataSource in the Grid configuration or update the Grid settings by using the setOptions() method when the page is loaded:

<script>
    $(document).ready(function () {
        var grid = $("#grid").data("kendoGrid");
        if (grid) {
            let gridColumns = grid.columns;
            if (!gridColumns[1].aggregates) { // update [1] with the index of the column that has a group footer template. For example, "1" is the 2nd Grid column
                gridColumns[1].aggregates = ["sum"];
                grid.setOptions({ columns: gridColumns });
            }
        }
    });
</script>

### Environment

* **Telerik UI for ASP.NET Core/MVC: 2024.1.319
* **Browser: [all]

Unplanned
Last Updated: 18 Jul 2022 05:02 by Curt

Bug report

Reproduction of the problem

Dojo example: https://dojo.telerik.com/InUYAheR/4
Drag and drop a row from Grid2 to Grid1 by following the steps below:

  1. Click and hold down the mouse button within a Grid2 row, just before its ID value or a little after it.
  2. Drag the row to Grid1 and drop it over row 3 or row 4.

Current behavior

Grid1's first row values get updated, instead of the drop target row values. This is because e.target in the DropTarget's "drop" event does not return the actual target you drop over.
If you click and drag in the middle of the Grid2 row, drag it and drop it over a row in Grid1, the drag and drop functionality works as expected: e.target returns the correct target.

Expected/desired behavior

e.target should consistently return the target you drop over, regardless of where in the dragged row you have clicked.

Environment

  • Kendo UI version: 2022.2.621
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 06 Feb 2024 16:12 by Garry

Bug report

The rendering (structure and order of elements) of the th element of a column, for which a HeaderTemplate is set, does not match the Kendo UI Grid's rendering in a similar scenario. Prerequisites: HeaderTemplate, Sortable, Filterable enabled. For more context, see Ticket ID: 1639834.

Reproduction of the problem

Check the rendering of the header of the second column:

@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("grid2")
    .Columns(columns => {
        columns.Bound(p => p.OrderID).Filterable(false).Width(100);
        columns.Bound(p => p.Freight).HeaderTemplate("<span class='k-link'>My Template</span>");
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Width(140);
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).Width(150);
    })
    .Sortable()
    .Filterable()
    .Pageable()
    .Scrollable()
    .HtmlAttributes(new { style = "height:430px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Grid"))
     )
)

Current behavior

The content of the th is the following:

<a aria-hidden="true" class="k-grid-filter-menu k-grid-header-menu">
    ...
</a>
<span class="k-link">
    ...
</span>

Expected/desired behavior

The th content should be rendered as follows:

<span class='k-cell-inner'>
    <span class='k-link'>
        ...
    </span>
    <a aria-hidden='true' class='k-grid-filter-menu k-grid-header-menu'>
        ...
    </a>
</span>

It should match the Kendo UI Grid's rendering: https://dojo.telerik.com/oTalIGir/8

Environment

  • Kendo UI version: 2024.1.130
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 09 Jan 2024 11:49 by Simon

Bug report

The Grid cell does not enter edit mode on double tap on iOS in Chrome and Edge. Works correctly in Safari.

Reproduction of the problem

  1. Run this dojo example on iOS in Chrome or Edge: https://dojo.telerik.com/idOVAZiP/3
  2. Double tap a cell to edit its value

Current behavior

The cell does not enter edit mode.

Expected/desired behavior

The cell enters edit mode.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [iOS Chrome, iOS Edge]
Completed
Last Updated: 14 May 2024 13:19 by ADMIN
Release 2024 Q2 (May)

Bug report

Reproducible in MVC with a custom toolbar tool that has a ClientTemplate.

Reproduction of the problem

  1. Configure the Grid for incell editing and a custom command with a template to its toolbar configuration
@(Html.Kendo().Grid<TelerikMvcApp2.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity);
    })
    .ToolBar(toolbar =>
    {
        toolbar.Save();
        toolbar.Spacer();
        toolbar.Custom().ClientTemplate("<span>test</span>");
    })
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .Editable(editable => editable.Mode(GridEditMode.InCell))
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Model(model => model.Id(p => p.OrderID))
        .Read(read => read.Action("Orders_Read", "Grid"))
        .Create("Orders_Create", "Grid")
        .Update("Orders_Update", "Grid")
    )
)

Current behavior

Duplication of the "Cancel" button.

Expected/desired behavior

A single "Cancel" button is rendered in the toolbar.

Environment

  • Kendo UI version: 2024.1.130
  • jQuery version: x.y
  • Browser: [all]
Completed
Last Updated: 15 Jan 2024 08:47 by ADMIN
Release 2024 Q1

Bug report

The ClientGroupFooterTemplate and ClientFooterTemplate configuration lead to an invalid template error when strict CSP mode is enabled. There are no corresponding methods that accept a TemplateHandler.

Reproduction of the problem

@(Html.Kendo().Grid<TelerikMvcApp3.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false);
        columns.Bound(p => p.Freight);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}");
        columns.Bound(p => p.ShipName);
        columns.Bound(p => p.ShipCity).ClientGroupFooterTemplate("Total:").ClientFooterTemplate("Team Total");
    })
    .Groupable()
    .Pageable()
    .Sortable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Home"))
    )
)


@(Html.Kendo().DeferredScriptFile())

Current behavior

JS exceptions on initializing the Grid and on attempting to group it by ShipCity.

Expected/desired behavior

CSP compatible templates.

Environment

  • Kendo UI version: 2023.3.1114
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 21 May 2024 14:26 by Abhi

Bug report

There are multiple differences in the theme files. In the theme file added by the NuGet browser-specific styles are missing and calc values differ. Likely the issue is due to autoprefixer and postcss-calc being used in the kendo-themes repo: https://github.com/telerik/kendo-themes/blob/develop/postcss.config.js
and not being used in theme compilation logic in the kendo repo:
https://github.com/telerik/kendo/blob/production/gulpfile.js#L55C38-L55C39
https://github.com/telerik/kendo/blob/master/build/gulp/sass.js

Reproduction of the problem

  1. In an ASP.NET MVC app install the Telerik.UI.for.AspNet.Mvc NuGet package.
  2. The NuGet package adds the kendo theme files to the MyApp\Content\kendo\2024.2.514
  3. Open the classic-silver.css file added by the NuGet package and compare it to the file hosted on the CDN: https://kendo.cdn.telerik.com/themes/8.0.1/classic/classic-silver.css

Current behavior

There are multiple differences similar to the exemplary ones posted below:

Example 1:
CDN line 33994:

.k-menu-vertical > .k-menu-item > .k-menu-link > .k-menu-expand-arrow {
    margin-inline-start: var(--kendo-spacing-2, 0.5rem);
    margin-inline-end: calc(var(--kendo-spacing-2, 0.5rem)*2*-1 + -16px - var(--kendo-spacing-2, 0.5rem)/2*-1);
}

NuGet:

.k-menu-vertical > .k-menu-item > .k-menu-link > .k-menu-expand-arrow {
    margin-inline-start: var(--kendo-spacing-2, 0.5rem);
    margin-inline-end: calc( -1 * (calc( var(--kendo-spacing-2, 0.5rem) * 2 + 16px) - var(--kendo-spacing-2, 0.5rem)/2));
}

Note the difference in the margin-inline-end value.

Example 2:
CDN line 36510:

.k-progressbar-vertical .k-progress-status {
    -ms-writing-mode: tb-lr;
        writing-mode: vertical-lr;
}

NuGet:

.k-progressbar-vertical .k-progress-status {
    writing-mode: vertical-lr;
}

Expected/desired behavior

The theme files distributed through CDN and NuGet should be identical.

Environment

  • Kendo UI version: 2024.2.514
  • jQuery version: x.y
  • Browser: [all ]
Unplanned
Last Updated: 24 Jun 2024 15:40 by Łukasz

Bug report

The specific here is the disabled Sortable configuration. With Sortable enabled, the rendering on the header content is correct.
Similar issue: #6955

Reproduction of the problem

  1. Initialize a Grid without setting Sortable:
@(Html.Kendo().Grid<TelerikMvcApp1.Models.OrderViewModel>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(p => p.OrderID).Filterable(false).Width(200);
        columns.Bound(p => p.Freight).Width(200);
        columns.Bound(p => p.OrderDate).Format("{0:MM/dd/yyyy}").Width(200);
        columns.Bound(p => p.ShipName).Width(200);
        columns.Bound(p => p.ShipCity).Width(200);
    })
    .Pageable()
    .Scrollable()
    .Filterable()
    .HtmlAttributes(new { style = "height:550px;" })
    .DataSource(dataSource => dataSource
        .Ajax()
        .PageSize(20)
        .Read(read => read.Action("Orders_Read", "Grid"))
    )
)
  1. Inspect the rendering of a column header

Current behavior

The column name is nested directly in the th element, instead of being wrapped in additional elements like in the Kendo UI for jQuery Grid or in the Grid for ASP.NET Core.

Expected/desired behavior

The column name should be wrapped in additional span elements with classes k-cell-inner, k-link, k-column-title:

<span class="k-cell-inner">
    <span class="k-link">
        <span class="k-column-title">Ship Name</span>
    </span>
    ... anchor element...
</span>

Environment

  • Kendo UI version: 2024.2.514
  • jQuery version: x.y
  • Browser: [all]
Completed
Last Updated: 05 Feb 2024 12:19 by ADMIN
Release R1.2024-Increment.1(15.Nov.2023)

Bug report

Prerequisites: reordering a non-locked column before a locked column. There could be one or more locked columns.
This behavior appeared in v2021.3.1207.

Reproduction of the problem

Dojo example: https://dojo.telerik.com/UhExAXIv/5

  1. Click, hold and slowly drag the header of the OrderDate column over the locked ID column.
  2. Attempt to reorder the OrderDate column before the ID column.

Current behavior

The reorder hint appears only when you hover the left border of the ID cell. This makes dropping the header at the right spot difficult, since you have to be very precise and if you are too fast, you have to re-adjust the mouse cursor position right on top of the left border of the cell.

Expected/desired behavior

The reorder hint should appear when mouse cursor enters the boundaries of the target cell. For example, slowly drag ShipCity before ShipCountry. Note how the reorder hint appears once you enter the boundaries of the ShipCountry cell and you don't have to drag all the way to ShipCountry's left border.

Environment

  • Kendo UI version: 2023.2.829
  • jQuery version: x.y
  • Browser: [all]
Unplanned
Last Updated: 08 May 2023 14:52 by Dejan

Bug report

The attributes handler overload does not get executed when the column is initially marked as hidden.

Reproduction of the problem

  1. Open the following dojo.
  2. Change the hidden property of the ContactTitle field to true.

Current behavior

The attributes handler is not executed when the column is hidden.

Expected/desired behavior

The attributes handler should be executed when the column is hidden.

Environment

  • Kendo UI version: 2023.1.425
  • Browser: [all]