bool ICommandHandler <ToggleAllOutliningCommandArgs> .ExecuteCommand(ToggleAllOutliningCommandArgs args, CommandExecutionContext executionContext)
        {
            var outliningManager = outliningManagerService.GetOutliningManager(args.TextView);

            if (outliningManager == null || !outliningManager.Enabled)
            {
                return(false);
            }

            var snapshot     = args.TextView.TextBuffer.CurrentSnapshot;
            var snapshotSpan = new SnapshotSpan(snapshot, 0, snapshot.Length);

            if (outliningManager.GetCollapsedRegions(snapshotSpan).Any())
            {
                outliningManager.ExpandAll(snapshotSpan, collapsed => true);
            }
            else
            {
                outliningManager.CollapseAll(snapshotSpan, collapsed => true);
            }

            args.TextView.Caret.EnsureVisible();

            return(true);
        }
 CommandState ICommandHandler <ToggleAllOutliningCommandArgs> .GetCommandState(ToggleAllOutliningCommandArgs args)
 {
     return(outliningManagerService.GetOutliningManager(args.TextView) is IOutliningManager mgr && mgr.Enabled
         ? CommandState.Available
         : CommandState.Unavailable);
 }