Restriction Zone problem in Q3 SP1

6 posts, 1 answers
  1. Andreas
    Andreas avatar
    137 posts
    Member since:
    May 2008

    Posted 16 Nov 2015 Link to this post

    Hi,

    After upgrading to Q3 SP1 (from Q3), windows can't be moved all the way to the right and bottom of a restriction zone when using ligthweight render mode!

    This did work in the Q3 release.

    It also works if setting to Classic mode...

    It seems like the padding and border of the window isn't taken care of in this case...

    Sample:

    <%@ Page Language="vb" AutoEventWireup="false" CodeBehind="window.aspx.vb" Inherits="TestaTredjepartWeb.window" %>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
            <asp:ScriptManager ID="s" runat="server">
            </asp:ScriptManager>
            <div>
                <asp:Panel ID="pnlRestrictionZone" runat="server" Style="width: 700px; height: 500px; background-color: blue">
                    <telerik:RadWindowManager ID="RadWindowManager1" runat="server">
                        <Windows>
                            <telerik:RadWindow ID="RadWindow1" runat="server" VisibleOnPageLoad="true" AutoSize="true" RenderMode="Lightweight" Title="Hello" NavigateUrl="http://www.telerik.com" VisibleStatusbar="false" RestrictionZoneID="pnlRestrictionZone">
                            </telerik:RadWindow>
                        </Windows>
                    </telerik:RadWindowManager>
                </asp:Panel>
            </div>
        </form>
    </body>
    </html>

     

    In the sample above, try move the window all the way to the right of the restriction zone, you will notice that there will be an extra space left (same as total padding and border of the window)!

    Regards
    Andreas

  2. Marin Bratanov
    Admin
    Marin Bratanov avatar
    3600 posts

    Posted 16 Nov 2015 Link to this post

    Hello Andreas,

    Could you try setting the RenderMode to the window manager and not to the RadWindow only? The current code loads both the classic and Lightweight stylesheets at the same time which causes the issue, and this must be avoided as explained here: http://docs.telerik.com/devtools/aspnet-ajax/controls/window/mobile-support/render-modes.

    I just tried the following and I had no issues:

    <asp:Panel ID="pnlRestrictionZone" runat="server" Style="width: 700px; height: 500px; background-color: blue">
        <telerik:RadWindowManager ID="RadWindowManager1" runat="server" RenderMode="Lightweight">
            <Windows>
                <telerik:RadWindow ID="RadWindow1" runat="server" VisibleOnPageLoad="true" AutoSize="true"  Title="Hello" NavigateUrl="http://www.telerik.com" VisibleStatusbar="false" RestrictionZoneID="pnlRestrictionZone">
                </telerik:RadWindow>
            </Windows>
        </telerik:RadWindowManager>
    </asp:Panel>

    Regards,

    Marin Bratanov
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
  3. UI for ASP.NET Ajax is Ready for VS 2017
  4. Andreas
    Andreas avatar
    137 posts
    Member since:
    May 2008

    Posted 16 Nov 2015 in reply to Marin Bratanov Link to this post

    Hi,

    I tried your code, but I get the issue remains...

    Regards
    Andreas
  5. Marin Bratanov
    Admin
    Marin Bratanov avatar
    3600 posts

    Posted 16 Nov 2015 Link to this post

    Hi,

    Does this happen on this blank simple page or does the issue still occur in your larger project? If it is the former, could you open a ticket where you can send us a sample we can investigate? If it is the latter, can you confirm there are no other RadWindowManager/RadWindow instances with varying RenderMode values?

    Regards,

    Marin Bratanov
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
  6. Andreas
    Andreas avatar
    137 posts
    Member since:
    May 2008

    Posted 16 Nov 2015 in reply to Marin Bratanov Link to this post

    Hi,

    It still happens in both cases. There are no instances with varying RenderMode.

    Doing the following prototype (changed to Q3 measuring code), helps in both cases:

    Telerik.Web.UI.Widgets.Draggable.prototype._calcConstraints = function (delta, position, constraints)
            {
                var $ = $telerik.$;
     
                var result = delta;
                //CHANGED THIS **********************************************************************************************************
                //Otherwise window can't be moved all the way to the right or bottom of screen
                //var elementWidth = this._element.offsetWidth;
                //var elementHeight = this._element.offsetHeight;
                var elementWidth = $(this._element).width();
                var elementHeight = $(this._element).height();
                //**********************************************************************************************************************
                 
                if ((constraints.maxX != null && position.x + elementWidth > constraints.maxX) ||
                    (constraints.minX != null && position.x < constraints.minX) ||
                    (constraints.maxY != null && position.y + elementHeight > constraints.maxY) ||
                    (constraints.minY != null && position.y < constraints.minY)
                    )
                    return { x: 0, y: 0 };
     
                if (delta.x < 0)
                    result.x = constraints.minX !== null && !isNaN(constraints.minX) ?
                        Math.max(delta.x, constraints.minX - position.x) :
                        delta.x;
                else
                    result.x = constraints.maxX !== null && !isNaN(constraints.maxX) ?
                        Math.min(delta.x, constraints.maxX - position.x - elementWidth) :
                        delta.x;
     
                if (delta.y < 0)
                    result.y = constraints.minY !== null && !isNaN(constraints.minY) ?
                        Math.max(delta.y, constraints.minY - position.y) :
                        delta.y;
                else
                    result.y = constraints.maxY !== null && !isNaN(constraints.maxY) ?
                        Math.min(delta.y, constraints.maxY - position.y - elementHeight) :
                        delta.y;
     
                return result;
            };

    Regards
    Andreas
  7. Answer
    Marin Bratanov
    Admin
    Marin Bratanov avatar
    3600 posts

    Posted 17 Nov 2015 Link to this post

    Hello Andreas,

    Thank you for taking the time to research this. I am logging this issue for fixing and you can track it here: http://feedback.telerik.com/Project/108/Feedback/Details/175343-radwindow-cannot-be-dragged-all-the-way-to-the-bottom-right-in-a-restriction-zone. I have also updated your Telerik points for your report.

    Regards,

    Marin Bratanov
    Telerik
    Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Feedback Portal and vote to affect the priority of the items
Back to Top
UI for ASP.NET Ajax is Ready for VS 2017