Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request adds a new option
Show tabbar
to the options menu. (Also fixes a crash withMongoWorker
)When the tabbar is disabled, a single left click on a collection displays it's contents in the main window.
This is usefull if Robomongo is just used to browse through a database since double clicking a collection will open the tree view children beneath the collection, making the tree view on the left side more and more cluttered.
The
Show tabbar
option is on by default which will result in the same behaviour as traditionally Robomongo has.I made this addition primarily because I found Robomongo a bit unplesant when just browsing though collections. I had to double click collections to display them which would also open their subtree in the tree view, so I had to make an additional click to collapse the subtree again. Then after a while I would get quite a lot of taps on the top because I never closed the tabs because clicking on the items in tree view was just more intuitive for me then searching for the collection in the tabbar.
I know that the tabbar is important, so this PR will leave the tabbar on by default. But this PR adds the option to turn the tabbar off and enable a simpler and more intuitive way to use Robomongo for simple use cases.
This PR also fixes a bug in
MongoWorker
. When closing aMongoShell
(By closing a Tab), some objects where destroyed while the thread would still try to send messages to them, resulting in a crash. There where also some problems associated with the deletion of theQThread
object, the parent object of theQThread
was wrongfully set to theMongoWorker
(should be the other way around if anything) resulting in the deletion of locked mutexes which in some cases also caused a crash.A crash can be reproduced when connecting to a server and very quickly opening a collection and immediately closing it's tab and quickly repeating with different collections. I used the keyboard shortcut to close the tabs. Localhost will also be too fast, I'm connected to a Amazon server which takes about 1-2 seconds to load a collection.