Social Fixer 10.1 Fixes News Feed “More Stories” Bug

logo_detailed_2005Version 10.1 of Social Fixer fixes a bug (caused by a Facebook code change) which prevented more stories from being loaded into the news feed.

download55
Install the 10.1 update by going to SocialFixer.com

What's Fixed

A code change by Facebook caused the News Feed to stop loading more posts when scrolled to the bottom, and clicking “More Stories” did not work. I have also added a new option at the top of the “Advanced” tab of Social Fixer options to completely disable its handling of the More Stories loading, in case this happens again. You should never need to use it. It’s there as a safety valve, just in case something like this happens again.

A TECHNICAL EXPLANATION

If you’re curious about exactly what the problem is and why Social Fixer controls the post loading, read on. If not, you can ignore the rest. Smile 

Facebook automatically loads more posts into the news feed when you scroll to the bottom of the page. Or, more accurately, whenever the little “More Stories” box at the bottom is visible on the screen.

The problem is that Social Fixer allows you to hide posts using filters or marking them as read, or to move them to tabs. So sometimes, the news feed may actually appear without any posts, causing the “More Stories” box to push to the top. This causes Facebook to think it needs to load more stories. Facebook never expects the news feed to be empty, so it doesn’t even handle this case correctly!

This could lead to a big loop of Facebook trying to load more stories. As it pulls more in and they are hidden or tabbed, the More Stories box is still visible, so it loads even more stories, sometimes locking up your browser as it loads potentially hundreds of posts. Facebook just doesn’t know how to behave when the news feed doesn’t have any visible posts in it.

So, I hook into their post loading code and put in some control. I only let them load 5 pages of more stories before I stop the process and put up a message in the footer saying that Social Fixer has stopped the loading of more stories. You can click on the More Stories link to load another 5 pages if you wish. But I put that stopper in there to prevent people from having their browser lock up, which is a result of Facebook’s code not knowing what to do when Social Fixer manipulates the news feed.

THE JAVASCRIPT DETAILS

For anyone who really wants the dirty explanation, here it is! This is Facebook’s code that triggers a More Stories load, in LitestandStreamLoader.attachNewPager():

function (wb){ya&&z.dedupeHide(s.getStreamRoot(),s.getStoriesSelector(),va);this.loadMoreUnseenStoriesIfNeeded();ia=wb;ia&&mb(false);}

See “this.load…”? That’s the problem. It’s referencing itself to call another method on itself, which it didn’t do before. When I called this function from my code, I just did:

_attachNewPager(gb);

So, “this” didn’t hold the right value. The fix is to call it like this:

_attachNewPager.call(LitestandStreamLoader,gb);

Now, the “this” value is correct, and their internal code fires correctly. This is something I should have coded correctly to begin with, but because their code didn’t require it before I didn’t notice it.

Questions? Problems? Need Support?

The Support Team and the Social Fixer user community can help you out in the Social Fixer Support Group, located here: http://SocialFixer.com/support/

Please, Donate_ **to support development!_

Matt Kruse, developer of Social Fixer