Exemple #1
0
        public override void OnIdle(bool periodic)
        {
            if (IsDisposed)
            {
                return;
            }

            foreach (var prj in ProjectInfo.Projects)
            {
                prj.Engine.OnIdle();
                prj.ProcessDelayedMethodCompilerMessages();
            }

            if (periodic)
            {
                var maxTime = TimeSpan.FromSeconds(0.05);
                var timer   = Stopwatch.StartNew();

                AsyncWorker.DispatchResponses();

                while (timer.Elapsed < maxTime && AsyncWorker.DoSynchronously())
                {
                    ;
                }
            }
            //if (LastActiveTextView == null)
            //  return;

            //Source src = GetSource(LastActiveTextView);

            //if (src != null && src.LastParseTime == int.MaxValue)
            //  src.LastParseTime = 0;

            SynchronizeDropdowns();

            //base.OnIdle(periodic);
        }