Skip to content
This repository has been archived by the owner on May 29, 2019. It is now read-only.

www.polymer-project.org unusable in firefox (ubuntu) #795

Closed
ebidel opened this issue Dec 3, 2014 · 17 comments
Closed

www.polymer-project.org unusable in firefox (ubuntu) #795

ebidel opened this issue Dec 3, 2014 · 17 comments

Comments

@ebidel
Copy link
Contributor

ebidel commented Dec 3, 2014

From @matthewfranglen on December 3, 2014 13:1

Steps to replicate this issue:

Using Firefox 28 or 33 on Ubuntu:

  1. Visit the polymer elements documentation and click on the links in the left hand navigation.
  2. Visit the page for an individual element and attempt to dismiss the popup or navigate to another element.
  3. Visit the polymer designer tool.

Expected results:

When visiting the polymer elements documentation I expect to be able to use the navigation.

When visiting the documentation for an individual element I expect to be able to dismiss the demonstration. I also expect to be able to navigate to other elements.

When visiting the designer tool I expect to see more than a blank page.

Observed results:

The polymer elements documentation navigation links are entirely unresponsive. The console shows:

Use of getUserData() or setUserData() is deprecated.  Use WeakMap or element.dataset instead. requestNotifier.js:53
"%cWelcome to Polymer!
%cweb components are the <bees-knees>" "font-size:1.5em;color:#4558c9;" "color:#d61a7f;font-size:1em;" app.js:361

The individual polymer element demo appears in a dialog and cannot be dismissed. The navigation links to other elements are entirely unresponsive. The console shiows:

Use of getUserData() or setUserData() is deprecated.  Use WeakMap or element.dataset instead. requestNotifier.js:53
The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must to be declared in the document or in the transfer protocol. demo.html
Loading mixed (insecure) display content on a secure page "http://www.polymer-project.org/images/logos/p-logo-16.png"[Learn More] browser.js:11952
Use of getUserData() or setUserData() is deprecated.  Use WeakMap or element.dataset instead. requestNotifier.js:53

The learn more link goes to https://developer.mozilla.org/en-US/docs/Security/MixedContent

The polymer design page is entirely blank. The console shows:

Use of getUserData() or setUserData() is deprecated.  Use WeakMap or element.dataset instead. requestNotifier.js:53
SecurityError: The operation is insecure. data:%0A%20%20%20%20Polymer('github-element'%2C%20%7B%0A%20%20%20%20%20%20token%3A%20null%2C%0A%20%20%20%20%20%20message%3A%20''%2C%0A%20%20%20%20%20%20signedIn%3A%20false%2C%0A%20%20%20%20%20%20signingIn%3A%20false%2C%0A%0A%20%20%20%20%20%20ready%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20if%20(!this.token)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.token%20%3D%20window.localStorage%5B'github-element-token'%5D%20%7C%7C%20''%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20signingInChanged%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20this.%24%5B'signIn-screen'%5D.style.display%20%3D%20this.signingIn%20%3F%20'block'%20%3A%20'none'%3B%0A%20%20%20%20%20%20%20%20if%20(this.signingIn)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.%24%5B'github-token'%5D.focus()%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20tokenChanged%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20if%20(this.token)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.signedIn%20%3D%20true%3B%0A%20%20%20%20%20%20%20%20%20%20window.localStorage%5B'github-element-token'%5D%20%3D%20this.token%3B%0A%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.signedIn%20%3D%20false%3B%0A%20%20%20%20%20%20%20%20%20%20window.localStorage.clear()%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20this.github%20%3D%20new%20Github(%7Btoken%3A%20this.token%7D)%3B%0A%20%20%20%20%20%20%20%20%2F*%0A%20%20%20%20%20%20%20%20if%20(!this.signedIn)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.signIn()%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20*%2F%0A%20%20%20%20%20%20%20%20this.fire('token-changed')%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20toast%3A%20function(message)%20%7B%0A%20%20%20%20%20%20%20%20this.message%20%3D%20message%3B%0A%20%20%20%20%20%20%20%20this.fire('github-toast'%2C%20message)%3B%0A%20%20%20%20%20%20%20%20%2F*%0A%20%20%20%20%20%20%20%20if%20(this.message)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.clearMessage(3000)%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20*%2F%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20clearMessage%3A%20function(delay)%20%7B%0A%20%20%20%20%20%20%20%20if%20(this.messageTimeout)%20%7B%0A%20%20%20%20%20%20%20%20%20%20clearTimeout(this.messageTimeout)%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20if%20(delay%20%3D%3D%3D%20undefined)%20%7B%0A%20%20%20%20%20%20%20%20%20%20delay%20%3D%203000%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20this.messageTimeout%20%3D%20setTimeout(function()%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.message%20%3D%20''%3B%0A%20%20%20%20%20%20%20%20%7D.bind(this)%2C%20delay)%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20save%3A%20function(description%2C%20publicGist%2C%20files%2C%20callback)%20%7B%0A%20%20%20%20%20%20%20%20if%20(!this.github)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.toast('No%20GitHub%20connection%20was%20established.')%3B%0A%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20var%20gist%20%3D%20this.github.getGist()%3B%0A%20%20%20%20%20%20%20%20gist.create(%7B%0A%20%20%20%20%20%20%20%20%20%20'description'%3A%20description%2C%0A%20%20%20%20%20%20%20%20%20%20'public'%3A%20publicGist%2C%0A%20%20%20%20%20%20%20%20%20%20'files'%3A%20files%2C%0A%20%20%20%20%20%20%20%20%20%20%7D%2C%20function(error%2C%20response)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(!error)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20window.location.hash%20%3D%20response.id%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.fire('files-saved'%2C%20response)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Saved%20files%20to%20%3Ca%20href%3D%22'%20%2B%20response.html_url%20%2B%20'%22%3E'%20%20%2B%20response.html_url%20%2B%20'%3C%2Fa%3E')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(error.error%20%3D%3D%20401)%20%7B%20%2F%2F%20unauthorized%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.token%20%3D%20''%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Please%20sign%20in%20using%20a%20valid%20GitHub%20token.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20if%20(error.error%20%3D%3D%20403)%20%7B%20%2F%2F%20forbidden%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Sorry%2C%20too%20much%20anonymous%20GitHub%20activity!%20'%20%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'Please%20either%20sign%20in%20or%20try%20again%20later.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20console.error(error)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(callback)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20callback(error%2C%20response)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D.bind(this))%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20update%3A%20function(id%2C%20description%2C%20publicGist%2C%20files%2C%20callback)%20%7B%0A%20%20%20%20%20%20%20%20if%20(!this.github)%20%7B%0A%20%20%20%20%20%20%20%20%20%20this.toast('No%20GitHub%20connection%20was%20established.')%3B%0A%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%20%20%20%20%20%20%20%20var%20gist%20%3D%20this.github.getGist(id)%3B%0A%20%20%20%20%20%20%20%20gist.update(%7B%0A%20%20%20%20%20%20%20%20%20%20'description'%3A%20description%2C%0A%20%20%20%20%20%20%20%20%20%20'files'%3A%20files%2C%0A%20%20%20%20%20%20%20%20%20%20%7D%2C%20function(error%2C%20response)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(!error)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20window.location.hash%20%3D%20response.id%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.fire('files-updated'%2C%20response)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Saved%20files%20to%20%3Ca%20href%3D%22'%20%2B%20response.html_url%20%2B%20'%22%3E'%20%20%2B%20response.html_url%20%2B%20'%3C%2Fa%3E')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20(error.error%20%3D%3D%20401)%20%7B%20%2F%2F%20unauthorized%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.token%20%3D%20''%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Please%20sign%20in%20using%20a%20valid%20GitHub%20token.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20if%20(error.error%20%3D%3D%20403)%20%7B%20%2F%2F%20forbidden%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Sorry%2C%20too%20much%20anonymous%20GitHub%20activity!%20'%20%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'Please%20either%20sign%20in%20or%20try%20again%20later.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20if%20(error.error%20%3D%3D%20404)%20%7B%20%2F%2F%20not%20found%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('The%20animation%20was%20not%20updated%20because%20it%20could%20'%20%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'not%20be%20found%20on%20GitHub.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20console.error(error)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(callback)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20callback(error%2C%20response)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D.bind(this))%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20load%3A%20function(id%2C%20callback)%20%7B%0A%20%20%20%20%20%20%20%20if%20(!this.github)%20%7B%0A%20%20%20%20%20%20%20%20%20%20return%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20var%20gist%20%3D%20this.github.getGist(id)%3B%0A%20%20%20%20%20%20%20%20gist.read(function(error%2C%20response)%20%7B%0A%20%20%20%20%20%20%20%20%20%20if%20(!error)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20this.fire('files-loaded'%2C%20response.files)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Loaded%20files%20from%20'%20%2B%20response.html_url)%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20(error.error%20%3D%3D%20401)%20%7B%20%2F%2F%20unauthorized%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.token%20%3D%20''%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Please%20sign%20in%20using%20a%20valid%20GitHub%20token.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20if%20(error.error%20%3D%3D%20403)%20%7B%20%2F%2F%20forbidden%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('Sorry%2C%20too%20much%20anonymous%20GitHub%20activity!%20'%20%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'Please%20either%20sign%20in%20or%20try%20again%20later.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20if%20(error.error%20%3D%3D%20404)%20%7B%20%2F%2F%20not%20found%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20this.toast('The%20animation%20was%20not%20loaded%20because%20it%20could%20not%20'%20%2B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20'be%20found%20on%20GitHub.')%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%20else%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20console.error(error)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20if%20(callback)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20callback(error%2C%20response)%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D.bind(this))%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20signIn%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20this.signingIn%20%3D%20true%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20signOut%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20this.token%20%3D%20''%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20confirm%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20this.token%20%3D%20this.%24%5B'github-token'%5D.value%3B%0A%20%20%20%20%20%20%20%20this.signingIn%20%3D%20false%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20cancel%3A%20function()%20%7B%0A%20%20%20%20%20%20%20%20this.signingIn%20%3D%20false%3B%0A%20%20%20%20%20%20%7D%2C%0A%0A%20%20%20%20%20%20checkKeyCode%3A%20function(e)%20%7B%0A%20%20%20%20%20%20%20%20if%20(e.keyCode%20%3D%3D%2013)%20%7B%20%2F%2F%20'Enter'%0A%20%20%20%20%20%20%20%20%20%20this.confirm()%3B%0A%20%20%20%20%20%20%20%20%7D%20else%20if%20(e.keyCode%20%3D%3D%2027)%20%7B%20%2F%2F%20'Escape'%0A%20%20%20%20%20%20%20%20%20%20this.cancel()%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D)%3B%0A%20%20%0A%2F%2F%23%20sourceURL%3Dhttps%3A%2F%2Fwww.polymer-project.org%2Ftools%2Fdesigner%2Fcomponents%2Fgithub-elements%2Fgithub-elements.html.js%0A:10
"Exception caught during observer callback: [Exception... "The operation is insecure."  code: "18" nsresult: "0x80530012 (SecurityError)"  location: "<unknown>"]" polymer.js:12

Copied from original issue: Polymer/polymer#991

@ebidel
Copy link
Contributor Author

ebidel commented Dec 3, 2014

All of these pages work fine for me in FF 30, Mac. Can you verify on another platform. We've had other problems with FF Unbuntu in the past with gesture stuff. Seems they've gotten plenty wrong :(

@matthewfranglen
Copy link

It's difficult for me to get access to a Mac / Windows machine to do this on. I may be able to come up with Vagrant instructions that demonstrate the problem this weekend.

@arthurevans
Copy link

For #2, note that the demos don't appear in a popup. I think the design is causing a bit of confusion here -- the content area for the demos (which scrolls over the header) looks a little like a popup. Clicking the left-hand links should navigate to a new demo, however.

Also, the demos should really have a link back to the docs. Otherwise, there's no way to return to the docs except the Back button, or to find the docs, if you navigated in via the demo.

@arthurevans
Copy link

Do you have AdBlock installed? I see a couple of bugs on Firefox Linux that mention the error message, but they both have to do with the AdBlock extension:

https://bugzilla.mozilla.org/show_bug.cgi?id=919387

It's just possible the issue is related to AdBlock (although it does not occur on FF Mac with AdBlock Plus). It's also possible that both AdBlock and the Polymer website are triggering the same bug in FF for Linux.

If you do have AdBlock installed, could you try the page again with extensions disabled (or in a fresh user profile) to see if it's related to the extension?

Thanks for your help!

@matthewfranglen
Copy link

I launched firefox with a new profile which had no addons on it. The results:

  1. Still present
  2. Still present
  3. Not present!

So the designer issue is caused by an addon that I have. I do use Adblock Edge so that sounds like a likely candidate.

@matthewfranglen
Copy link

The addon causing issues with the polymer designer was cookie controller.

I had to allow cookies for polymer-project.org, which also allows DOM local storage. I suspect this is the problem because no cookies for polymer project have been created.

The designer now suffers from the same flaw as the other two issues:

  • I cannot click on the tab headings or the palette entries
  • I can click on the buttons at the top of the screen

Addons do not relate to this because the behaviour is the same in the new profile.

@matthewfranglen
Copy link

Firefox has recently updated to 34.0, the issues are still present.

@ebidel ebidel changed the title www.polymer-project.org unusable in firefox www.polymer-project.org unusable in firefox (ubuntu) Dec 8, 2014
@pvergara
Copy link

pvergara commented Dec 9, 2014

FF 34 on ubuntu:
"Welcome to Polymer!
" "web components are the " app.js:360
mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create webcomponents.min.js:14
"Attributes on code-explainer-section were data bound prior to Polymer upgrading the element. This may result in incorrect binding types." polymer.js:9820

@ebidel
Copy link
Contributor Author

ebidel commented Dec 9, 2014

None of those warnings should be fatal errors.

@arthurevans
Copy link

OK, I believe #1 and #2 are related to an issue with polymer-gestures, and should be fixed as soon as we can get the site redeployed with a new version.

@Samureus
Copy link

Samureus commented Dec 9, 2014

If it helps with #3, I just opened the designer with FF Ubuntu 34.0, none of the right side toolbars work (Properties/Styles/Palette/Tree), and I have the following error repeated several times in the console:

"Exception caught during observer callback: .makeSingleAnimation@data:text/javascript;charset=utf-8 [... lots of garbage cut off]

which points to line 12 of /tools/designer/components/polymer/polymer.js

(pasting in what looks like a call-stack below, sorry noob here)
x.prototype.report_() polymer.js:12
D.prototype<.check_() polymer.js:12
a.Platform.performMicrotaskCheckpoint() polymer.js:12
b/<() polymer.js:13
c() polymer.js:13
n() webcomponents.js:11
t() webcomponents.js:11

FWIW the source for that file does have version 0.5.1 in the header. I disabled Ubuntu Firefox Modifications Add-on (the only add-on) and tried again, same issue.

@arthurevans
Copy link

Fix for at least the first two problems is going to require a new release of polymer. Please stand by.

@arthurevans
Copy link

All three of these issues appear to be fixed in Polymer 0.5.2, and on the latest site. Tested in FF 34 on Trusty. If you see any regressions, please let me know!

@Samureus
Copy link

Yep, all 3 issues are fixed, you rock, thanks!

@matthewfranglen
Copy link

Confirmed! Great stuff, thank you.

@pvergara
Copy link

Everything ok. It works!!!. Thanks.

2014-12-12 10:58 GMT+01:00 matthewfranglen [email protected]:

Confirmed! Great stuff, thank you.


Reply to this email directly or view it on GitHub
#795 (comment).

@craftgear
Copy link

Updating Polymer components to 0.5.2 and disabling AdBlock Plus make it work again.
Thanks @arthurevans !

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants