diff --git a/Frameworks/DocumentWindow/src/DocumentWindowController.mm b/Frameworks/DocumentWindow/src/DocumentWindowController.mm index 993897d7..cd7c862b 100644 --- a/Frameworks/DocumentWindow/src/DocumentWindowController.mm +++ b/Frameworks/DocumentWindow/src/DocumentWindowController.mm @@ -86,6 +86,7 @@ static void show_command_error (std::string const& message, oak::uuid_t const& u NSMutableDictionary* _trackedDocuments; NSMutableSet* _stickyDocumentIdentifiers; + NSArray* _documents; scm::info_ptr _projectSCMInfo; std::map _projectSCMVariables; @@ -1640,10 +1641,7 @@ namespace - (NSArray*)documents { - NSMutableArray* res = [NSMutableArray array]; - for(auto doc : _cppDocuments) - [res addObject:doc->document()]; - return res; + return _documents; } - (void)setCppDocuments:(std::vector)newDocuments @@ -1662,6 +1660,11 @@ namespace _cppDocuments = newDocuments; + NSMutableArray* docs = [NSMutableArray array]; + for(auto doc : _cppDocuments) + [docs addObject:doc->document()]; + _documents = docs; + if(_cppDocuments.size()) [self.tabBarView reloadData];