Completed
Last Updated: 29 Jun 2016 12:15 by ADMIN
ADMIN
Created by: Georgi Tunev
Comments: 0
Category: UI for ASP.NET AJAX
Type: Feature Request
3

			
Completed
Last Updated: 04 May 2015 11:46 by Elena
Completed
Last Updated: 17 Mar 2015 07:52 by ADMIN
Completed
Last Updated: 22 Dec 2015 15:32 by Kyle
Completed
Last Updated: 12 Nov 2014 14:02 by ADMIN
Completed
Last Updated: 03 Feb 2016 16:56 by ADMIN
Completed
Last Updated: 11 Mar 2014 17:04 by Bruce
Created by: Bruce
Comments: 2
Category: UI for ASP.NET AJAX
Type: Feature Request
3
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.
Completed
Last Updated: 29 Jan 2015 12:19 by truecare
Completed
Last Updated: 09 Mar 2015 06:25 by ADMIN
Completed
Last Updated: 20 Oct 2015 21:33 by ADMIN
ADMIN
Created by: Pavlina
Comments: 2
Category: UI for ASP.NET AJAX
Type: Feature Request
3

			
Completed
Last Updated: 08 Jun 2017 18:06 by Kaka
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.
Completed
Last Updated: 26 May 2016 11:52 by Mbott
There  is a JS error thrown in IE8 when the SlidingPanes are loaded. The error message is "Invalid procedure call or argument".
Completed
Last Updated: 12 Jul 2023 15:23 by ADMIN
ADMIN
Created by: Pavlina
Comments: 6
Category: UI for ASP.NET AJAX
Type: Bug Report
3

			
Completed
Last Updated: 30 Jun 2022 04:09 by ADMIN
ADMIN
Created by: Nikolay
Comments: 3
Category: UI for ASP.NET AJAX
Type: Bug Report
3
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>
Completed
Last Updated: 01 Jun 2017 12:30 by ADMIN
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>
Completed
Last Updated: 10 Sep 2020 09:56 by ADMIN
Release R1 2017 SP1
ADMIN
Created by: Peter Milchev
Comments: 1
Category: UI for ASP.NET AJAX
Type: Bug Report
3

			
Completed
Last Updated: 18 May 2017 15:48 by Vicky Johnson
ADMIN
Created by: Vessy
Comments: 2
Category: UI for ASP.NET AJAX
Type: Bug Report
3
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>
Completed
Last Updated: 10 Sep 2020 09:54 by ADMIN
Release R1 2018
Completed
Last Updated: 05 Nov 2018 08:54 by Smit
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);
                    }
                }
            }