Setting the Reoderable.Rows.ClickMoveClick() API configuration explicitly to false
results in an error when using the HTML Helper wrappers.
Setting the Reoderable.Rows.ClickMoveClick() explicitly to false
throws the following error:
Setting the Reoderable.Rows.ClickMoveClick() explicitly to false
should not throw an error.
### Bug report
The click event of the SplitButton in the Toolbar does not trigger when displayed in the overflow menu.
**Regression introduced with R1 2023**
### Reproduction of the problem
1. Open the ToolBar Events demo.
2. Resize the Toolbar to render the SplitButton in the overflow menu.
3. Open the overflow menu and click a specified SplitButton item.
### Current behavior
The "splitButtonClickHandler" handler does not fire.
### Expected/desired behavior
The SplitButton click event must fire when the button is rendered in the Toolbar overflow menu.
### Environment
* **Kendo UI version: 2024.2.514
* **Browser: [all]
Scheduler Adaptive Rendering in Month View shows wrong year when the selected month is switched from December to January
Next
button to select the next monthThe year doesn't get update properly when the selected Month is switched from December to January
The correct year must be shown in the Scheduler's .k-scheduler-navigation element.
### Bug report
The ContextMenu does not show when the mouse is moved normally. It will show only when the mouse is moved very slowly.
### Reproduction of the problem
1. Create a Grid with a custom column command.
2. Define a ContextMenu that will be displayed when the custom column command is clicked.
3. Click over a specified column command - the ContextMenu opens.
4. Move the mouse over another row and click the custom column command - the ContextMenu does not open.
A Dojo sample for reproduction: https://dojo.telerik.com/aYiVUzum
### Current behavior
The ContextMenu does not open over every item as expected.
### Expected/desired behavior
The ContextMenu must open when clicking each item.
#### The issue is a regression starting with 2023.1.314 version
### Workaround
Add the following script before the ContextMenu initialization:
<script>
function contains(parent, child) {
try {
return $.contains(parent, child);
} catch (e) {
return false;
}
}
kendo.ui.ContextMenu.fn.open = function (x, y) {
var OPEN = "open",
ACTIVATE = "activate",
DOCUMENT_ELEMENT = $(document.documentElement),
NS = ".kendoMenu";
var that = this;
x = $(x)[0];
if (contains(that.element[0], $(x)[0]) || that._itemHasChildren($(x))) { // call parent open for children elements
kendo.ui.Menu.fn.open.call(that, x);
} else {
if (that._triggerEvent({ item: that.element, type: OPEN }) === false) {
if (that.popup.visible() && that.options.filter) {
that.popup.close(true);
that.popup.element.parent().kendoStop(true);
}
if (!that._triggerFocusOnActivate) {
that._triggerFocusOnActivate = that._focusMenu.bind(that);
}
that.bind(ACTIVATE, that._triggerFocusOnActivate);
if (y !== undefined) {
var overflowWrapper = that._overflowWrapper();
if (overflowWrapper) {
var offset = overflowWrapper.offset();
x -= offset.left;
y -= offset.top;
}
that.popup.wrapper.hide();
that._configurePopupScrolling(x, y);
that.popup.open(x, y);
} else {
that.popup.options.anchor = (x ? x : that.popup.anchor) || that.target;
that.popup.element.parent().kendoStop(true);
that._configurePopupScrolling();
that.popup.open();
}
DOCUMENT_ELEMENT.off(that.popup.downEvent, that.popup._mousedownProxy);
DOCUMENT_ELEMENT
.on(kendo.support.mousedown + NS + that._marker, that._closeProxy);
}
}
return that;
};
</script>
### Environment
* **Kendo UI version: 2023.1.314
* **Browser: [all]
### Bug report
The "confirmation" attribute of the editable tag does not accept a string.
### Reproduction of the problem
Add a confirmation text as a string in the "confirmation" attribute, as per the example below:
<kendo-grid name="grid">
...
<editable mode="popup" confirmation="Are you sure you want to hide this invoice?" />
</kendo-grid>
A REPL sample for reproduction: https://netcorerepl.telerik.com/moEqPSFo32PrwW4d01
### Expected/desired behavior
The "confirmation" option must accept a string.
### Environment
* **Telerik UI for ASP.NET Core version: 2024.2.514
* **Browser: [all]
### Bug report
The DropDownTree TagHelper does not serialize the "Value" and "Id" properties when it is configured for local data binding (using the "bind-to" option).
### Reproduction of the problem
1) Use the following DropDownTree TagHelper configuration:
//Controller
public IActionResult Index()
{
List<DropDownTreeItemModel> ddtData = new List<DropDownTreeItemModel>()
{
new DropDownTreeItemModel() { Id = "1", Text = "Option 1", Value = "S1" },
new DropDownTreeItemModel() { Id = "2", Text = "Option 2", Value = "S2",
Items = new List<DropDownTreeItemModel>()
{
new DropDownTreeItemModel() { Id = "3", Text = "Option 3", Value = "S3" }
}
}
};
ViewBag.StateTreeListData = ddtData;
return View();
}
// View
<kendo-dropdowntree name="StateLocationDropDownTree" style="width: 100%"
height="500px"
auto-width="true"
bind-to="(IEnumerable<DropDownTreeItemModel>)ViewBag.StateTreeListData">
</kendo-dropdowntree>
2) When the DropDownTree is loaded, inspect its initialization script - the "value" and "id" properties are "null".
### Expected/desired behavior
The "Id" and "Value" properties must be serialized as the rest of the DropDownTreeItemModel properties.
### Environment
* **Telerik UI for ASP.NET Core version: 2024.2.514
* **Browser: [all]
### Bug report
Adding the [Authorize(Roles = "Admin, User")] attribute at Controller or Actions within the Controller does not show the Menu items.
### Reproduction of the problem
1. Create an application with authorization and add "Admin" and "User" roles.
2. Add the [Authorize(Roles = "Admin, User")] attribute to a specified Action method within the Controller:
public class HomeController : Controller
{
public IActionResult Index()
{
return View();
}
[Authorize(Roles = "Admin, User")]
public IActionResult Security_Information()
{
return View();
}
}
3. Add a Menu:
@(Html.Kendo().Menu()
.Name("htmlhelperMenu")
.SecurityTrimming(true)
.Items(menu =>
{
menu.Add().Text("Home").Action("Index", "Home");
menu.Add().Text("Security Information").Action("Security_Information", "Home");
})
)
<kendo-menu name="taghelperMenu">
<items>
<menu-item text="View Inventory">
<sub-items>
<menu-item text="Home" asp-controller="Home" asp-action="Index"></menu-item>
<menu-item text="Security Information" asp-controller="Home" asp-action="Security_Information"></menu-item>
</sub-items>
</menu-item>
</items>
</kendo-menu>
3. The "Security Information" Menu item is not visible when the user is logged as "Admin" or as "User".
### Expected/desired behavior
The "Security Information" Menu item should be visible when the [Authorize(Roles = "Admin, User")] attribute is added to the respective Action/Controller and the user is logged as "Admin" or as "User".
### Environment
* **Telerik UI for ASP.NET Core version: 2023.2.606
* **Browser: [all]
### Bug report
The Column.Exportable option is not correctly serialized and cannot be used to export hidden columns.
### Reproduction of the problem
1. Set Column.Exportable(true) and Column.Hidden(true).
2. Export the grid and see that the column is not present in the exported file.
### TicketID:
1543405
### Environment
* **Kendo UI version:** 2021.3.1109
* **jQuery version:** 1.12.4
* **Browser:** [all]
### Bug report
The options of the MultiSelect are not serialized when used in Template component.
### Reproduction of the problem
1. Open the following REPL sample: https://netcorerepl.telerik.com/mIOgYfFU47fvuM5N17
2. Review the MultiSelect that is initialized into the Grid's toolbar and notice that its options are not serialized.
### Current behavior
The Template component does not serialize the options of the MultiSelect.
### Expected/desired behavior
The Template component must serialize all options for the MultiSelect.
### Environment
* **Telerik UI for ASP.NET Core version: 2024.2.514
* **Browser: [all]
### Bug report
When the deferred scripts are created, the script source points at the root of the application instead of the application's root directory.
### Reproduction of the problem
Enable the global deferred initialization and call the @(Html.Kendo().DeferredScriptFile()) method.
The rendered script tag is: <script src="/kendo-deferred-scripts-XXXX.js"></script>
But it must be: <script src="/MyWebsite/kendo-deferred-scripts-XXXX.js"></script>
### Solution:
If you add a tilde in the Url.Content(), the generated script file must be located as expected:
public HtmlString DeferredScriptFile(string nonce = "")
{
...
var scriptResult= hasDeferredScritps ? $@"<script src=""{urlHelper.Content("~/kendo-deferred-scripts-" + guid + ".js")}"" {(string.IsNullOrEmpty(nonce) ? "" : "nonce=" + '"' + nonce + '"')}></script>" : "";
var styleResult = hasDeferredStyles ? $@"<link href=""{urlHelper.Content("~/kendo-deferred-styles-" + guid + ".css")}"" {(string.IsNullOrEmpty(nonce) ? "" : "nonce=" + '"' + nonce + '"')} rel=""stylesheet""></link>" : "";
return new HtmlString(scriptResult + System.Environment.NewLine + styleResult);
}
### Environment
* **Telerik UI for ASP.NET Core version: 2023.3.1114
* **Browser:** [all]
When tabbing in a batch editable Grid cells do not enter edit mode.
This is a regression introduced with v 2023.2.606.
The corresponding Unit Price is focused, but an editor is not generated
The cell should enter edit mode, as with v2023.1.425 - dojo
Menu popup container closes on hover when scrollable
is enabled.
This is a regression introduced with v2023.2.606.
Popup container closes on hover and subitems cannot be selected.
Popup container should not close on hover.
Regression introduced with 2023.2.606
The menu dropdown does not respect hoverDelay and it remains open on initial expansion.
If the mouse/cursor doesn't hover over the menu item for the entirety of the hover-delay duration, the menu item opens.
If the mouse/cursor doesn't hover over the menu item for the entirety of the hover-delay duration, the menu item should not open. This behavior can be exhibited with versions prior to 2023.2.606.
For example:
https://dojo.telerik.com/iyAfaVUR
PanelBar TagHelper's expanded attribute does not expand the item.
The PanelBar Item TagHelper's expanded attribute does not expand the item.
The PanelBar Item TagHelper's expanded attribute does not expand the item.
When using the following configuration an error is thrown, thus making it unable to set the Grid columns:
<kendo-filemanager name="filemanager" upload-url="@Url.Action("Upload", "FileManagerData")">
<views>
<grid>
<columns>
<column field="name"></column>
</columns>
</grid>
</views>
</kendo-filemanager>
TabStrip is not CSP compliant when the Selected() API configuration is enabled.
Selected()
API configuration for one of the items@(Html.Kendo().TabStrip()
.Name("tabstrip")
.Items(items =>
{
items.Add().Text("Details")
.Selected(true)
.LoadContentFrom("Details", "Home", Model);
})
)
Setting the Select()
API configuration will lead to the following Content Security Policy Header Report Error.
Refused to apply inline style because it violates the following Content Security Policy directive: "default-src 'self'". Note that 'style-src' was not explicitly set, so 'default-src' is used as a fallback.
Setting the Select()
API configuration should not lead to a Content Security Policy Header Report Error.
Currently, the ContainerHeader TagHelper allows setting the following set of attributes for templates.
It would be beneficial to incorporate a Template TagHelper option that can be set for the TileLayout ContainerHeader. Similar to how it is for the ContainerBody TagHelper
<kendo-tilelayout name="tilelayout">
<containers>
<container col-span="1" row-span="1">
<container-body-template>
<div>Test</div>
</container-body-template>
</container>
</containers>
</kendo-tilelayout>
E.g:
<kendo-tilelayout name="tilelayout">
<containers>
<container col-span="1" row-span="1">
<container-header>
<container-header-template>
<span class="k-card-title">Locations</span>
<kendo-button name="someBtn">Some BTN</kendo-button>
</container-header-template>
</container-header>
...
</container>
</containers>
</kendo-tilelayout>
This would also improve the CSP compatibility of the component, as the configuration will prevent the inclusion of inline scripts.
Upload TagHelper's settings are not serialized when used in the Template component
The Upload TagHelper's settings are not serialized when used in the Template component.
The Upload TagHelper's settings should be serialized when used in the Template component.
The form is not serialized correctly when declared in the Template component
The Form is not serialized correctly when declared in the Template component.
The Form should be serialized correctly when declared in the Template component.
CheckBox is not serialized correctly when declared in the Template component.
The CheckBox is not serialized correctly when declared in the Template component.
The CheckBox should be serialized correctly when declared in the Template component.