Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    HTMLFlow in Window issues

    I'm opening a window to display a video player. Because the video player is heavily Javascript dependent I am loading a "page" HTMLFlow object inside the window. I am encountering the following issues with the window:

    1. The window is not draggable even though I have canDragReposition = true
    2. The HTMLFlow object does not render to the full height of the Window in Firefox, the actual iFrame is rendered about 150-200 pixels high.
    3. When the window is closed, the iFrame/HTMLFlow objects are not removed from the DOM. If the video is playing when the window is closed, you can continue to hear the audio.

    Please let me know how I can allow dragging of the window and how to ensure the disposal of the iFrame/HTMLFlow objects.

    Paul

    Code:
    function MovePlayerPreview(){
        var url = ScreenerEditForm.getValue("url");
        var Title = ScreenerEditForm.getValue("title");
        var pageURL = "/browse/MovePreviewer.aspx?Screenername=" + Title + "&ScreenerURL=" + url;
        isc.Window.create({
                title: Title,
                left: 20,
                top: 20,
                width: 550,
                height: 550,
    //            closeClick: function(parms){ 
    //                    //destroy the iframe and window here
    //                 },
                showHeader: true,
                canDragReposition: true,
                canDragResize: true,  
                items: [
                   isc.HTMLFlow.create({
                        width: "100%",
                        height: "100%",
                        contentsType:"page",
                        contentsURL: pageURL
                   })      
                ]
            });
    }

    #2
    1. is mysterious. In a quick test this is not the case when loading eg google.com. Can you confirm? If so, is it possible to provide the actual page being loaded?

    2. is a known Firefox bug specific to standards mode:

    http://www.google.com/search?q=firefox+iframe+100%25+height

    SmartClient 6.1 has a workaround - in the meantime you could remove the standard mode <DOCTYPE> (SmartClient works in both quirks and standards mode)

    3. closeClick normally just hide()s. call this.destroy() from closeClick to destroy the Window - or are you saying that didn't work?

    Comment


      #3
      I changed the doctype for the page to:

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

      This fixed the dragging issue AND the iFrame size in Firefox. The only issue now is that there is something wrong with the iFrame in Firefox. It is not actually displaying the player object. But this is a specialized player from MoveNetworks for high bandwidth video. So I don't know if it's a smrtclient issue at all.

      Please let me know if you have gotten feedback from anyone else trying to display video in an HTMLFlow in a window. Or if you think any other DOCTYPE's may have an effect.

      Thanks

      Paul

      (this.destroy() worked fine to dispose of the window and iFrame, thanks)

      Comment


        #4
        Hi Paul,

        Sorry for the delay in getting back to you..

        Every use case of embedding a video player in a SmartClient application that we know off has just used <OBJECT> tags inside a Canvas or HTMLFlow rather than an IFrame containing a video player.

        Have you figure out what's wrong with the player in the IFRAME? Are there JavaScript errors happening?

        Comment


          #5
          No JS errors show up.

          The reason for the iFrame is the player itself. It comes from www.movenetworks.com. This player is great for fat streams and have a nice variable bit rate so the video starts to play right away with no caching. Also, the stream is encrypted and allows us to send information about the user through a tunnel to Move Networks where they store demographics/Media Player information.


          The player itself is not just an object. The player interacts with the page DOM with Javascript. Hence the reason for the iFrame. The page loads about 5 JS Libraries and a fairly complex DOM for the player wrapper to control volume, time code slider, etc... So loading it with smartclient on the page load will just mess things up. I will keep trying, thanks.

          Comment

          Working...
          X