Skip to content
This repository was archived by the owner on Nov 30, 2018. It is now read-only.

google chrome cluster F on InfoWinow #960

Closed
nmccready opened this issue Dec 3, 2014 · 33 comments
Closed

google chrome cluster F on InfoWinow #960

nmccready opened this issue Dec 3, 2014 · 33 comments
Assignees
Labels
Milestone

Comments

@nmccready
Copy link
Contributor

So it appears google chrome version 39 has fixed our CSS repaint woes.. However our repaint fix now breaks google maps on firefox and on the latest chrome.

Lovely art:
screen shot 2014-12-03 at 4 11 28 pm

screen shot 2014-12-03 at 5 02 45 pm

@nmccready nmccready added the bug label Dec 3, 2014
@nmccready nmccready added this to the 2.0.12 milestone Dec 3, 2014
@nmccready
Copy link
Contributor Author

Will we need something like this https://github.com/ded/bowser or is it provided in angular?

@nmccready
Copy link
Contributor Author

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

are you thinking something like
chorme && chrome.version <= 39

@nmccready
Copy link
Contributor Author

Changing

        showWindow: =>
          if @gWin?
            show = =>
              @scope.$evalAsync =>
                unless @gWin.isOpen()
                  maybeMarker = @getGmarker()
                  pos = @gWin.getPosition() if @gWin? and @gWin.getPosition?
                  pos = maybeMarker.getPosition() if maybeMarker
                  maybeAnchor = @getGmarker()
                  return unless pos
                  @gWin.open @mapCtrl, maybeAnchor
                  isOpen = @gWin.isOpen()
                  @scope.$evalAsync =>
                    ChromeFixes.maybeRepaint @gWin.content
                  @model.show = isOpen if @model.show != isOpen

to

        showWindow: =>
          if @gWin?
            show = =>
                unless @gWin.isOpen()
                  maybeMarker = @getGmarker()
                  pos = @gWin.getPosition() if @gWin? and @gWin.getPosition?
                  pos = maybeMarker.getPosition() if maybeMarker
                  maybeAnchor = @getGmarker()
                  return unless pos
                  @gWin.open @mapCtrl, maybeAnchor
                  isOpen = @gWin.isOpen()
                  @model.show = isOpen if @model.show != isOpen

works

@nmccready
Copy link
Contributor Author

@aesnyder yup

@nmccready
Copy link
Contributor Author

Where do you download older versions of chrome?

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

from my research you cant, client has 38 and one of my devs on my team as well...

@nmccready
Copy link
Contributor Author

@nmccready
Copy link
Contributor Author

not sure if it is safe

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

what is "safe" anyways?

@nmccready
Copy link
Contributor Author

lol, yeah try out either one. Got the command to install an older chrome w/ cask? Vs point and click on the url fomr uptodown

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

I opened it from the dmg, and it showed up 39 when i clicked 'about'

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

looking for cask command now

@nmccready
Copy link
Contributor Author

yeah dmg didnt work, but thats cayse chrome is using the same "Application Support Directory"

@nmccready
Copy link
Contributor Author

IE cache

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

meh, cant get an oldversion from cask either

@nmccready
Copy link
Contributor Author

firing up my ubuntu vm, maybe it is on an older

@nmccready
Copy link
Contributor Author

ehh, im just gonna pull in bowser and make an angular service. We can unit test it and cross fingers and then drink heavily.

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

down

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

oh wait, i think browserstack would work

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

our subscription lapsed...

@nmccready
Copy link
Contributor Author

Does your one developer still have 38? Can he verify that the InfoWindows still work with evalAsync without defer?

@nmccready
Copy link
Contributor Author

Wow Browserstack rocks. Anyways 38 has same problem maybe GoogleMaps fixed this? Not sure.

@nmccready
Copy link
Contributor Author

Same with 37 so looks like something we fixed or broke not sure. Can we do this without bowser?

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

yeah my dev saw that with evalAsync in 38

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

im not sure how its fixed, which makes me reticent to say that it is fixed

@nmccready
Copy link
Contributor Author

Does evalAsync return a promise? How do we know when it is done? Both of these functions are ( or were) returning $evalAsync. To me it seems there is a problem with the creation not completing before showWindow actually happens.

@nmccready
Copy link
Contributor Author

Looks like we started having repaint issue after, 27c2d27

I am gonna try removing the evalAsyncs and see if that issue works. I think the evalAsync in createGWin may be causing problems.

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

that might be the case, it doest return a promise but my understanding is that the callback will only execute after the dom has been manipulated by angular... in my mind kind of like animation frame

@aesnyder
Copy link

aesnyder commented Dec 3, 2014

though as i read it this may not be correct, when called from a controller it happens before the view is rendered. i believe that the maybeRepaint should actually be triggered after render to get the height to render properly...

@nmccready nmccready added PR'd and removed in progress labels Dec 4, 2014
@nmccready
Copy link
Contributor Author

@aesnyder has got chrome 38 to reproduce the original error reliably via browserstack, so this is most deff a chrome issue. Looks like we will pull in bowser to deal with it.

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

No branches or pull requests

2 participants