Yes, having tried pretty well all the big names (on Windows) and I have been using MLO for about a year now. It has a huge learning curve and after much blood, sweat and tears what it boils down to is that despite being enormously configurable in most ways MLO does not handle actionable status (e.g. Active, SomedayMaybe, Waiting, Soon, Later, Paused etc) very well. There is no data field at the task level for any such "status", and any fields that you might use for such a purpose (e.g. Flag) do not Inherit there values from Parent tasks. This makes MLO almost unusable to me and although I have spent a quite a lot of time trying to convince the MLO developers about the need for such a thing they have point-blank refused to develop in this direction.
Another nice web application is Nirvana, which in addition the usual GTD statuses, unlike GTDNext (see below) it has an extra list (i.e. actionable status) that I find extremely useful called "Later". However although it looks nice and feels simple and is moderately nice to look at, it is "flat" and won't allow multi-level projects. And after a while that drives me nuts.
I recommend you checkout at GTDNext which, like MLO has unlimited hierarchies and like Nirvana has a much more sensible GTD-friendly interface that requires much less configuration than MLO and way fewer clicks to us once set up. That said, GTDNext still feels like work in progress to me because the all-important hotkeys are still slightly limited. In particular assigning Contexts to tasks is much still harder than it should be. (And this is close to a deal-breaker for me because if it is not absolutely trivia to allocate Contexts to tasks, I tend to find that I often simply don't bother with Contexts which can be is a slight disaster to my GTD discipline.)
For a while I thought ResultsManager (as above) on MindManager 2017 might be the answer. It's an extremely clever idea in that it scans mindmaps (as many as maps as you like) looking for tasks, creates a database of results, and then spits out these results into either the same mindmap or a separate mindmap. But for me it ResultsManager on MM2017 was a fail though because (bizarrely) the sort order of the of results paid absolutely no attention to the sort order of tasks within the original mindmaps. This was a deal-breaker because when you have a lot of results and they arrive in a random order this makes the results that ResultsManager creates become much harder to read. For me this is a total disaster because I like to use the sort of tasks within a map as an informal proxy for urgency, which is data which is then lost which is just a disaster. So, close but no cigar.