Instead of pages like this, which exist for every control and aren't very helpful: http://www.telerik.com/help/aspnet-ajax/scheduler-appearance-skins.html I think the skins page should actually render the control and allow developers/designers to select a skin from a drop down to properly demonstrate how the control appears in that skin. The logic behind this is somewhat similar to the property explorer pages. As with the property explorer pages, the RenderMode should also be selectable from the proposed skin page because it affects the way the skin is rendered. Without this feature I find myself starting a test page, typing in a skin name, save changes, load page, new skin name... repeat, repeat. Please add this feature to make this process a whole lot easier.
The issue is reproducible when an is added in from of the white space, when adding a subsequent white space after a word. The caret is repositioned at the start of the next tag, if such does not exists, it goes to the end of the line.
There is a JS error thrown in IE8 when the SlidingPanes are loaded. The error message is "Invalid procedure call or argument".
Deleting of a table by delete or backspace key does not work when the selection contains only the table. Steps to reproduce: 1. Set the following content <p>test p1</p> <table> <tbody> <tr> <td>test</td> <td>test</td> </tr> </tbody> </table> <p>test p2</p> 2. Select the table only and press delete or backspace key Actual: Only the content has been deleted. Expected: The table and its content to be deleted. Workaround: <telerik:RadEditor ID="RadEditor1" runat="server"> </telerik:RadEditor> <script type="text/javascript"> (function () { var $T = Telerik.Web.UI; var utils = $T.Editor.Utils; var isTableSelected = function (selected) { if (utils.isTag(selected, "table")) { return true; } var table = utils.getElementParentByTag(selected, "TABLE"); return table && !!utils.getElementParentByCondition(selected, function (current) { return utils.isAncestorOrSelf(table, current) && utils.isSingleChild(current); }); }; // Fix for delete table by delete or backspace key var formatFragments = $T.Editor.DeleteSelectionCommand.prototype.formatFragments; $T.Editor.DeleteSelectionCommand.prototype.formatFragments = function (fragments) { var cmd = this; var selected = cmd.get_editor().getSelectedElement(); if (isTableSelected(selected) && fragments.length) { var table = utils.isTag(selected, "table") ? selected : utils.getElementParentByTag(selected, "TABLE"); var $table = $telerik.$(table); var data = $table.find("th,td"); var firstCell = data.first().get(0); var lastCell = data.last().get(0); var firstFragment = fragments[0]; var lastFragment = fragments[fragments.length - 1]; var firstSelected = firstFragment.nodes[0]; var lastSelected = lastFragment.nodes[lastFragment.nodes.length - 1]; if ((firstSelected == firstCell || firstSelected == firstCell.firstChild || cmd.isMarker(firstCell.firstChild)) && (lastSelected == lastCell || lastSelected == lastCell.lastChild)) { $table.find("." + cmd.getMarkersCssClass()).insertBefore(table); $telerik.$(table).remove(); return; } } formatFragments.call(cmd, fragments); }; // Fix for select and delete a table by the DomInspector in Chrome var Modules = $T.Editor.Modules; if (Modules && Modules.RadEditorDomInspector) { var removeSelectedElement = Modules.RadEditorDomInspector.prototype.removeSelectedElement; Modules.RadEditorDomInspector.prototype.removeSelectedElement = function (element) { if (isTableSelected(element)) { element = utils.isTag(element, "table") ? element : utils.getElementParentByTag(element, "TABLE"); } removeSelectedElement.call(this, element); }; } })(); </script>
When zoom is applied in IE browser and button coordinates are not an integer RadImageButton tries to convert them to an integer on the server on postback and fails. Workaround: <telerik:RadImageButton runat="server" ID="rib1" Width="50" Height="50" OnClick="rib1_Click" Image-Url="~/images/myImage.png"></telerik:RadImageButton> <script> Telerik.Web.UI.Button.ImageCoordsFunctionality.prototype._calculateCoords = function (e) { var container = this._ui.element; var pos = $telerik.getLocation(container); var scroll = $telerik.getScrollOffset(container, true); return new Telerik.Web.UI.Point(parseInt(e.clientX + scroll.x - pos.x), parseInt(e.clientY - pos.y + scroll.y)); } </script>
RadCombobox with allowed custom text is transperant in Silk in Classic Render mode. Video: https://www.screencast.com/t/tgubeklglq Code to reproduce: <div style="width: 300px; background-color: red"> <h2>Allow custom text</h2> <telerik:RadComboBox RenderMode="Classic" ID="RadComboBox1" runat="server" Width="100%" AllowCustomText="true" Skin="Silk"> <Items> <telerik:RadComboBoxItem Text="RadComboBoxItem1" /> <telerik:RadComboBoxItem Text="RadComboBoxItem2" /> <telerik:RadComboBoxItem Text="RadComboBoxItem3" /> </Items> </telerik:RadComboBox> </div>
After having a filter applied, filter value is not cleared when FilterOption was set to "NoFilter". The following client-side logic would clear the textbox values before the filtering is applied if filter options are set to "NoFilter" function onCommand(sender, args) { if (args.get_commandName() == "HeaderContextMenuFilter") { var firstTextBox = $("[id$='HCFMRTBFirstCond']")[0].control; var firstFilterOption = args.get_commandArgument().split("|")[1]; var secondTextBox = $("[id$='HCFMRTBSecondCond']")[0].control; var secondFilterOption = args.get_commandArgument().split("|")[3]; if (firstFilterOption.includes("NoFilter") && firstTextBox.get_value() != "") { args.set_cancel(true); var value = firstTextBox.get_value(); firstTextBox.clear(); var newArg = args.get_commandArgument().replace("|" + value + "|?", "||?"); args.get_tableView().fireCommand(args.get_commandName(), newArg); } if (secondFilterOption.includes("NoFilter") && secondTextBox.get_value() != "") { args.set_cancel(true); var value = firstTextBox.get_value(); secondTextBox.clear(); var newArg = args.get_commandArgument().replace("|" + value + "|?", "||?"); args.get_tableView().fireCommand(args.get_commandName(), newArg); } } }