This is in fact a bug of https://commons.wikimedia.org/wiki/MediaWiki:Gadget-LanguageSelect.js, but will post here too as Phabricator is more visible.
When using scripts that reload the page via Ajax (such as Convenient-Discussions and DiscussionTools) the language selection isn't preformed on reload as it does on initiual load, and all the language versions get displayed instead of only the selected one.
In the first case, for example, when loading the page using Convenient Discussions and then reloading (using the refresh button of the navigation panel on the left of the page), this is showninstead of this
The first idea is to replace $(document).ready with mw.hook('wikipage.content').add. But that would probably be not enough: 'wikipage.content' hook can be fired for pieces of DOM other than #mw-content-text (so, the init method should probably take $content as its first parameter and then use). It can also fire more than once (which is, well, why we need it), so the container element created by the gadget could be created many times.