Uploaded image for project: 'Titanium SDK/CLI'
  1. Titanium SDK/CLI
  2. TIMOB-19259

iOS: WebView loses the DOM on a subsequent "open" of the containing window

    Details

    • Type: Bug
    • Status: Open
    • Priority: None
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: iOS
    • Labels:
    • Environment:

      Appcelerator SDK 4.1.0.GA.
      iOS 8.*
      iPhone 5

      Description

      The WebView used to keep its DOM across multiple open-close cycles of the containing window. We could even remove the WebView instance from one window and add it to another window, without losing the DOM. This was a great feature for performance. Somewhere between 3.4.1.GA and 4.1.0.GA, this behavior changed. Now, the WebView reloads on each open of the containing Window. I think this was done to fire the "load" event on the WebView on each window.open().

      If you set the HTML of the WebView, as opposed to setting its URL, then the WebView tries to load an empty local URL on subsequent window.open(), with just the App's directory, and fails.

      To recreate this issue:

      1. Create a master-detail app from the template
      2. Replace DetailView.js with the attached file:

      Run and click on a master row. The detail window will show the details. Go back and click another master row.

      [Please keep the old behavior *_as an option_*. We should be able to keep the WebView instance across multiple open-close cycles without losing its DOM. We should even be able to move the WebView instance across windows.]

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              gopireddy Gopi Reddy
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:

                Backbone Issue Sync

                • Titanium SDK/CLI <> Titanium Mobile
                  Synced with:
                  TIMOB-20173
                  Sync status:
                  ERROR
                  Last received:
                  Last sent:

                  Git Source Code