sfsam / Itsycal

Itsycal is a tiny calendar for your Mac's menu bar. http://www.mowglii.com/itsycal
MIT License
3.3k stars 235 forks source link

Events of the day popup stays open even when itsycal is closed #118

Closed Rui-Carvalho closed 5 years ago

Rui-Carvalho commented 5 years ago

Reproducing the problem: 1) Click itsycal 2) Mouse over day with events 3) leave itsycal 4) See the events popup still open even though itsycal is closed.

I'm on MacOS Mojave, in a dual monitor setup, running version: image

Don't know how to reproduce the problem though.

sfsam commented 5 years ago

I've recently gotten a few emails about this too. I haven't heard reports of it in the past I and can't currently reproduce it. I'm trying to determine if it only happens on Mojave. If you think of any way to reproduce, please let me know.

Rui-Carvalho commented 5 years ago

@sfsam some more info for you to help on debugging this.

I think this is related to some mouse over event on days on the calendar. Example: image

See how mouse is over day 27 of December and I can see the events for that day? Then somehow by moving mouse somewhere else the popup for itsycal disappears and by some combination of keys or mouse usage on other programs the events popup for day 27 (which had focus on mouse over) show up alone, hanging there on the screen.

Also, going back to itsycal - clicking on system's toolbar at top - I can see day 27 pre-focused (for no reason).

This is some event picking up either mouse or keys and triggering the popup for days on itsycal. Any mouse events registration clean-up needed? Dunno...

Hope that helps somehow.

sfsam commented 5 years ago

Unfortunately, I still don't know what is triggering the mouseOver event when Itsycal is not in focus. I don't even have a guess at what would cause it. I've been running on Mojave for a while now and still haven't reproduced it, while other people seem to get this issue intermittently. So far, it has only been reported to me on Mojave.

The popups are initially triggered if you hover over over a date that has an event for 1 second.

When you see this issue, has the mouse been at rest near for 1 second where the calendar would be if it were showing? Does it seem to be triggered by any action?

amo42 commented 5 years ago

Hi @sfsam,

I was able to reproduce the behavior a couple of times.

Using a two monitor setup:

Got open Visual Studio Code on the internal monitor on the MacBook Pro, Grammarly on the external. I've double clicked a word on Grammarly, copy the word via cmd+c, move the mouse to Visual Studio Code, click the VSC window and paste via cmd+v. The mouse course was nearly at the position of 2018-12-10, as shown on the screenshot. The mouse rested for the mentioned ~1s before the overlay pops up.

I did not open Itsycal before or in between while switching from one app to the other.

itsycalstatusitem_bug

I can to this over and over again, and every time the bug appeared.

Please not, the bug only shows the overlay, not Itsycal it self - I just opened it, to show you, where the course was pointing at.

Feel free to ask for everything that might helps you (log or what ever)

Best regards Andreas

sfsam commented 5 years ago

@am-webdev Thank you for this detailed report. Can you tell me if you get this behavior with a single monitor using Visual Code Studio?

@Rui-Carvalho Are you using a single monitor when you get this behavior? Are you using Visual Code Studio also? If not, which app is positioned where the Itsycal popup appears?

amo42 commented 5 years ago

@sfsam with only a single monitor (the internal one from my macbook) I was not able produce the bug.

Rui-Carvalho commented 5 years ago

@sfsam I am using a dual monitor as well, so @am-webdev was spot on on that.

Not using Visual Code Studio - I'm on the full JetBrains suite of tools.

I got the popup overlay even in front of the browser windows - Chrome, for that matter.

sfsam commented 5 years ago

Ok, this sounds promising. What I have so far is:

@Rui-Carvalho Do you get the behavior with JetBrains, or just Chrome? I believe VCS is built on Electron which itself is built on Chromium. Given what @am-webdev said, can you reproduce the bug reliably now?

@am-webdev @Rui-Carvalho , how are your monitors arranged and on which monitor is Itsycal showing the bug?

sfsam commented 5 years ago

Actually, a user who emailed said they mostly use Safari and SublimeText, so maybe not related to Chromium.

Rui-Carvalho commented 5 years ago

I am having a really hard time replicating the bug. Haven't found a path to replication yet. As soon as I do will give you more info.

I have a dual monitor, I use multiple Desktop arrangements in each monitor. Can't remember in which monitor the bug shows up (but from top of my head, having to guess, would be the Mac's laptop one).

Sorry can't give much more clues for now, my head's deep into deploying crucial project covering so many techs.

Thanks for digging into this.

sfsam commented 5 years ago

@Rui-Carvalho Thank you, I appreciate all your help.

amo42 commented 5 years ago

@sfsam I've got the external monitor on the left side. The was shown on the internal monitor. As Itsycal is within the top bar. Itsycal is on both monitors. But the primary one is the external. If you would like, I can send you an Google Hangout event for the next days and share my screen to reproduce the behavior together.

cunneen commented 5 years ago

I can reproduce this reliably on dual monitors and Mojave.

itsycal ghost

sfsam commented 5 years ago

@am-webdev Sorry I missed you message. If you could set up the screen sharing to show me this behavior, I think that would be helpful. I now have 2 monitors. The left one is the external monitor, the right is my MacBook. The left external monitor is the primary screen. But I still haven't been able to reproduce.

cunneen commented 5 years ago

I just tried again today and am having trouble reproducing it. I feel your pain: intermittent bugs are the worst.

jessejoe commented 5 years ago

I'm able to reproduce this consistently. My steps:

  1. Have an external monitor connected
  2. Click to open Itsycal, must have many events so that if you'd hover on a particular day you'd see events
  3. Click the menubar on the external monitor - this causes itsycal to "close"
  4. Click focus back on the main monitor, in my case Chrome
  5. Hover in the area where Itsycal was, days with events will pop-up

See this video to see me reproducing it - https://streamable.com/u5p2e

In each case I'm following the above steps except for the last one where I click Chrome to close Itsycal which does not cause the issue. I'm able to repeat this every time.

adamweeks commented 5 years ago

Another dual-monitor user reporting in here to confirm the same issue. Haven't seen in in single monitor use.

vincentardern commented 5 years ago

Another user with the same issue. Also dual monitor.

turowicz commented 5 years ago

This also happens randomly when using chrome and clicking only chrome things, without any itsycal interaction. Suddenly a summary of events appears and it's required to open & close the calendar to make it disappear.

sfsam commented 5 years ago

I've made a version of Itsycal that I'm hoping people can test and see if it stops the random popups from happening. If you do try it out, could you please let me know?

Please be sure to quit your current version of Itsycal before running this one. To move the test version to your /Applications folder and have it co-exist with the current version, you'll have to rename it to something like Itsycal-test.app since Itsycal.app will already be in there.

https://s3.amazonaws.com/itsycal/Itsycal-0.11.13-no-popups-1.zip

jessejoe commented 5 years ago

@sfsam I'm trying this version and so far my steps to reproduce above are not working! I'll keep running it and post back if I notice any other popups, but so far so good. Thanks!

adamweeks commented 5 years ago

@sfsam been working for me as well! No popups!

amo42 commented 5 years ago

Hi @sfsam From my side I can confirm it as well. No more popups with the fixed version. Thanks for thank.

Rui-Carvalho commented 5 years ago

@sfsam seems this really fixed the error. I've been using it for bit more than a week now, and even on 2 different Macbook Pros running macOS Mojave, dual monitor and single monitor setups. All fine in all flows that used to trigger the bug - although cannot pin-point 100% accurately what the flows looked like, but I am definitely sure I would have covered them by now, since I've repeated all actions through and through that statistically would have produced the bug if it would still be there.

Thank you for your efforts. PS: tried a donation via Square but seems to not allow international transfers (I'm in UK, you're in US)... and I totally hate Paypal. Let me know if you have any other way for donations. Cheers.

sfsam commented 5 years ago

I'm going to close this as I believe it is now fixed in version 0.11.14. Thank you to everyone for your help.