New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

/036-custom-input-control/ invalidates too often on Edge #1637

Closed
bborgesr opened this Issue Mar 30, 2017 · 10 comments

Comments

Projects
None yet
3 participants
@bborgesr
Contributor

bborgesr commented Mar 30, 2017

I'm pretty sure I'm using the word "invalidate" wrong in here. The issue is that on Edge, this app (https://winston.shinyapps.io/036-custom-input-control/) looks like:

screen shot 2017-03-30 at 2 18 37 am

Whereas in Chrome, it looks like:

screen shot 2017-03-30 at 2 18 59 am

I.e. in Edge, whenever we change states from one column to the other, the verbatimTextOutput changes correctly but then immediately "invalidates" until we make a change (which results in the same thing - it comes back to life, updates correctly, and immediately invalidates again)

@bborgesr

This comment has been minimized.

Contributor

bborgesr commented Mar 30, 2017

@wch

This comment has been minimized.

Collaborator

wch commented Mar 30, 2017

Very strange. I just tested 098-plot-interaction-article-3 locally with Edge, and I can get the same problem. Even though it grays out, it still seems to work.

@bborgesr

This comment has been minimized.

Contributor

bborgesr commented Mar 30, 2017

Yeah, it happened for a bunch of apps... After those two, I stopped making a note of it, since it's obviously the same bug and either of those can serve as a repro. It's not a terrible bug, because it does work "correctly," but it's definitely strange...

@wch

This comment has been minimized.

Collaborator

wch commented Mar 30, 2017

I think this may be a problem in Edge itself. What I see happening is that the recalculating class gets added to the text output and then removed very quickly. But sometimes the browser doesn't seem to update the appearance when the class is removed. This happens in maybe 1 out of 10 cases for me.

@wch

This comment has been minimized.

Collaborator

wch commented Mar 30, 2017

I think this has to do with how Edge handles CSS transitions. If you load https://winston.shinyapps.io/098-plot-interaction-article-3/ and run this code at the JS in other browsers, no visible changes will happen to the plot. This code adds the recalculating class, then removes it in 200ms. In the CSS rule for .recalculating, there's a 250ms delay before it fades to gray, but before that happens, the class gets removed:

$('#plot1').addClass('recalculating');
setTimeout(function() { $('#plot1').removeClass('recalculating'); }, 200);

However, in Edge, what happens is that it grays out and stays that way. So with Edge, when you add a CSS class with a transition, it looks like it will do the transition even if the class is removed before the transition starts. I'm not sure if this is a bug or a feature.

@wch

This comment has been minimized.

Collaborator

wch commented Mar 30, 2017

This is my attempt to reproduce the weird behavior in Edge with a simplified example, but it doesn't seem to work: https://jsfiddle.net/winstonchang/pbbnLm4o/

@jcheng5

This comment has been minimized.

Member

jcheng5 commented Mar 30, 2017

With your jsfiddle example, it does the transition and stays transparent iff I don't move my mouse off the button.

@jcheng5

This comment has been minimized.

Member

jcheng5 commented Mar 30, 2017

@bborgesr Are all the apps that repro'd this, ones that you interact with a plot (click or brush)?

jcheng5 added a commit that referenced this issue Mar 30, 2017

@jcheng5 jcheng5 self-assigned this Mar 30, 2017

@jcheng5 jcheng5 added the review label Mar 30, 2017

@bborgesr

This comment has been minimized.

Contributor

bborgesr commented Mar 30, 2017

@jcheng5: no, for example, the first app I mentioned (see issue description) is just moving things around... Let me see if your fix (#1640) solves it

@bborgesr

This comment has been minimized.

Contributor

bborgesr commented Mar 30, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment