salomvary / soundcleod

SoundCloud for macOS and Windows
https://soundcleod.com
MIT License
960 stars 105 forks source link

Issues with OS X 10.10 (Yosemite) #55

Closed yep closed 10 years ago

yep commented 10 years ago

Since updating to the yosemite beta I encountered strange displaying errors where the top nav bar of the embedded web page scrolls over the page and does not stay fixed at the top.

I was able to fix it for myself by compiling from source with XCode 6 beta, but can still reproduce the problem when downloading the release version from github.

salomvary commented 10 years ago

Thanks for flagging this, will look into providing Yosemite compatible downloads once it's closer to become real..

swrobel commented 10 years ago

I've noticed this as well on DP5. Just wanted to give you one more data point.

swrobel commented 10 years ago

No longer seeing this issue in DP8 :)

chrismessina commented 10 years ago

This is visible in Yosemite 10.10 (14A379b).

gk3 commented 10 years ago

Also having issues in Yosemite 10.10 (14A379a)

salomvary commented 10 years ago

Could someone confirm this build works on Yosemite? https://github.com/salomvary/soundcleod/raw/master/dist/SoundCleod-0.13.1.dmg

joelekstrom commented 10 years ago

It doesn't even launch for me, seems like it quits instantly (crashes? though normally OS X informs me of crashed programs)

salomvary commented 10 years ago

Thanks, looking into it. Will update here.

salomvary commented 10 years ago

Please try https://github.com/salomvary/soundcleod/raw/master/dist/SoundCleod-0.13.3.dmg

joelekstrom commented 10 years ago

The application itself works fine (playing audio etc) but there's still the scrolling issue: skarmavbild 2014-10-20 kl 10 28 49

To me it seems like some inset issue, the bar scrolls down the inverse length that the user scrolls up and vice versa. There is probably an offset used by Soundcloud to calculate the bar position which is no longer reported by the web view in Yosemite.

salomvary commented 10 years ago

Thanks, looks like recompiling with XCode 6 is not enough, will need to intall Yosemite myself. That might take a while.

kogent commented 10 years ago

why not install yosemite in a vm? its a lot safer than messing with your environment before your ready?

opensourceame commented 10 years ago

Just wanted to mention that SoundCleod 0.13 is working fine for me on Yosemite. Controls, scrolling etc. all good.

Sirk commented 10 years ago

Agree with Kelly, 0.13 version seems to fix all the bugs, but you have to install it manually. Souncleod automatic update install 0.11 version of Soundcleod.

Sirk commented 10 years ago

By the way @salomvary, thanks for the work. I use your app everyday for working ;).

joelekstrom commented 10 years ago

Can chime in on the 0.13 solves everything tune :) At least when I compile the last commit myself. The dmg you sent still has the bugs.

natefanaro commented 10 years ago

Same as @Sirk, autoupdate has the same display issue. Reinstalling fixed it.

chrismessina commented 10 years ago

I'm on Yosemite running 0.13.3 and I'm still having scrolling issues.

image

opensourceame commented 10 years ago

I had the scrolling issue once after refreshing the stream, but a couple more refreshes and it was fine. IIRC if you scroll back to the top of the page and refresh then the problem disappears but that should be double checked by someone else.

gshaw commented 10 years ago

I can confirm that this bug is still present in the head branch on 10.10. I turned on the web inspector using defaults write sc.SoundCleod WebKitDeveloperExtras -bool true and restarting to enable Web Inspector on right click in the web view and poked around but can't see anything obvious as to why the layout is broken.

I can confirm that SoundCloud works fine in a dedicated app created by Fluid.app so it should be something simple and not require changes from SoundCloud.com but I'm a bit stumped as of right now.

Edit: SoundClound embedded in a Fluid app is broken as well. This fix will require likely require a DOM manipulation, change from SoundCloud or unknown configuration setting to force WebKit into a legacy mode.

WillChilds-Klein commented 10 years ago

@salomvary, the dmg at https://github.com/salomvary/soundcleod/raw/master/dist/SoundCleod-0.13.3.dmg works great on my 10.10 install. I've been looking for something like this for a while. thanks!!!

jvoostv1 commented 10 years ago

When I try your version, @WillChilds-Klein, I still have the problem after I place it in /Applications. If I run it directly from the dmg, it works fine...

lawitschka commented 10 years ago

The 0.13.3 works for me, no weird scrolling behaviour so far! :+1:

EDIT: just had the weird scrolling again... :(

vedranjaic commented 10 years ago

Weird scrolling persists in 0.13.3 for me...

krebbl commented 10 years ago

Persists also for me... As a workaround I now use the Chrome extension Streamkeys for enabling media hotkeys with the soundcloud site.

yep commented 10 years ago

I can confirm that d1b36fe fixes the issue for me. Thanks!

Now that swipe to go back does no longer work, maybe simply add a keyboard shortcut for that?

salomvary commented 10 years ago

Cmd + left/right

yep commented 10 years ago

You're right - it wasn't listed in the menu so I did not know about it.

salomvary commented 10 years ago

Good call, should create a menu entry for navigation.

salomvary commented 10 years ago

Someone please confirm this release candidate works on Yosemite: https://github.com/salomvary/soundcleod/raw/release-0.14/dist/SoundCleod.dmg

joelekstrom commented 10 years ago

Can confirm the scrolling bug is fixed on Yosemite.

AlexAxthelm commented 10 years ago

I can also confirm on Yosemite.

salomvary commented 10 years ago

Removing DHSwipeWebView (it does the swipe back-forward navigation) fixed the issue. I have no idea if it's a bug in DHSwipeWebView or a weird side effect, loading soundcloud.com in the DHSwipeWebView example app did not reproduce the issue.

joelekstrom commented 10 years ago

Was it an old version of DHSwipeWebView maybe?

Anyway, removing this also removes the "standard" back gesture on magic mouse, which is sort of bothering. We might want to search for an alternate solution here.

krebbl commented 10 years ago

Still happens for me with 0.14. See screenshot: bildschirmfoto 2014-11-06 um 13 57 51

salomvary commented 10 years ago

@krebbl are you 100% sure it's 0.14? :(

krebbl commented 10 years ago

this was right after the update. I've now restarted the application and it seems to work. will let you know if I can reproduce it.

axeff commented 10 years ago

Also got the issue back. bildschirmfoto 2014-11-06 um 14 25 46

yep commented 10 years ago

Update: Sorry, I have to correct myself, the issue still appears. But my impression is that it happens less often.

MatisseHack commented 10 years ago

I'm still having issues as well. It definitely happens less often, but it has happened several times.

The problem also used to go away after reloading the page, but now the "floating" navigation bar stays frozen on the screen after reloading (meaning there are then two navigation bars, one frozen, one not). Restarting the app is the only way to fix this.

Loving the ability to control play/pause with my headphones though :)

chrismessina commented 10 years ago

After rebooting, I'm seeing this issue again. Le sigh.

image

salomvary commented 10 years ago

Sad :(

No idea for easy fix, little time for sophisticated ones atm. Any volunteers?

scosman commented 10 years ago

try [self.webview setWantsLayer:YES];. Worked for me in another project.

Source: https://bugs.webkit.org/show_bug.cgi?id=137851#c2

gshaw commented 10 years ago

@scosman that appears to have fixed it. Running a local build so far with no issues. Hopefully PR #69 gets merged and a new release can be made shortly. Until then here is a release build with the fix applied.

axeff commented 10 years ago

I can confirm that this build seems to have fixed the issue, although it seems a little more flickery since removing DHSwipeWebView (d1b36fe).

salomvary commented 10 years ago

will try the solution by @scosman

salomvary commented 10 years ago

@gshaw @scosman tried setWantsLayer:YES, header is still flickering a lot but it doesn't seem to detach from the top at least. Sadly, the fix also brought flickering to Mavericks.

As an alternative option, I'm experimenting with disabling elastic scroll on WebView.

scosman commented 10 years ago

@salomvary there is still some flicker, but it's hugely reduced. Try comparing them side by side. I don't think disabling elastic scroll will work (we have that in our project, and still see the issue).

It's slightly ugly, but you can just use the hack on the impacted version of OSX:

    // Workaround for a bug in OSX 10.10 - fixed elements do not work
    // https://bugs.webkit.org/show_bug.cgi?id=137851#c2
    if ([[NSProcessInfo processInfo] respondsToSelector:@selector(operatingSystemVersion)])
    {
        // TODO - put an upper limit on this fix once this bug is fixed in OSX since it introduces some flicker
        NSOperatingSystemVersion operatingSystemVersion = [[NSProcessInfo processInfo] operatingSystemVersion];
        if (operatingSystemVersion.majorVersion == 10 && operatingSystemVersion.minorVersion == 10)
        {
            [self.webview setWantsLayer:YES];
        }
    }
salomvary commented 10 years ago

@scosman I had the same observation. Will use your OSX version sniffing snippet, thanks!

Independent from the flickering issue, I'm still thinking of killing the elastic scroll.

salomvary commented 10 years ago

Just released 0.15, it should improve the situation.