Legacy mode

Prior to Polypane 5.0.0 all panes ran in a shared javascript context by default, and panes could be isolated by turning on "isolate panes". Since 5.0.0 this is now the default mode, and the shared context mode can be accessed by turning on Legacy mode.

Legacy mode can be faster in certain situations, at the expense of not offering emulation options and certain JavaScript API's responding differently. In legacy mode there is a single Chromium devtools that can access all panes simultaneously (but it won't change elements in all panes at the same time, for that use the Elements panel).

Console for a single pane

In Legacy mode the devtools work for all panes at the same time. What if you want to target a single pane in the console? You can change the javascript context by clicking the dropdown that says "top". In this dropdown you will see your URL once for each pane. Hover over one and you'll see the pane it applies to highlighted. When your pane is selected in this dropdown, the javascript context changes to the page.

Devtools extensions do not work in this mode.

Known issues

Legacy mode has a few restrictions that should not impact any design work, but will affect certain JavaScript interactions.

Content security policies (CSP)

Legacy mode does not adhere to Content Security Policies and is therefore not recommended to be used for regular web browsing.

document.domain can not be set

Legacy mode can not show any page that tries to set document.domain.

SSO/oAuth/redirecting logins do not always work correctly

SSO and oAuth logins like those of Google or Microsoft don't always work correctly in Legacy mode. Switching to the default mode and using full browser mode or focus mode usually works in these situations. After you've done this, the session will be shared with all panes so you can switch back to multiple panels and turn Legacy mode on again. You'll be logged in on all panes.

An easy way is to use the side browser to log in.

Polypane will show a popup if it detects an SSO login in Legacy mode and suggest to do this for you.

Because all panes share a session, you will be logged in in all of them.

Frameworks with CSRF protection

Because Legacy Mode shows a site in multiple panes in a shared context, any framework that uses unique tokens per request is going to have an issue dealing with multiple panes with different tokens. This means for example that frameworks like Django, Ruby on Rails or Laravel will give an error in Polypane. Django and Ruby on Rails will give you a CSRF token error and Laravel will return a 419 error. Polypane will show a popup if it detects a CSRF token on the page.

Switching to the default mode and using full browser mode or focus mode usually works in these situations. After you've done this, the session will be shared with all panes so you can switch back to multiple panels and turn Legacy mode on again. You'll be logged in on all panes.

Popups

Popups (using window.open) are disabled in this mode.

Is your question not answered?
Ask via Twitter, Slack or our contact form

Build your next project with Polypane

  • Try all plans, all features
  • On Mac, Window and Linux
  • 14-day free trial – no credit card needed
Start free trialView pricing
Polypane screenshot