Permalink
Browse files

Fixed bug where Classifier wouldn't detect that the new underline span

it was being asked to highlight was identical to the old.  This caused
it to send out spurious (and fairly constant) layouts.  In addition
to the perf implications, this caused two annoying bugs:

1) You couldn't ctrl-click on an underlined token when there was a marker of
   some sort over the text (breakpoint, highlight-matching-identifier, etc.)
2) If you were trying to activate a smart tag with ctrl+. the smart tag would
   open and then immediately close.
  • Loading branch information...
1 parent f7fbdb3 commit 96f6e928d11aacd4076ee6c7278413cda46debeb Noah Richards committed Jan 12, 2010
Showing with 4 additions and 1 deletion.
  1. +3 −0 Classifier.cs
  2. +1 −1 GoToDefMouseHandler.cs
View
@@ -98,6 +98,9 @@ public void SetUnderlineSpan(SnapshotSpan? span)
if (!oldSpan.HasValue && !_underlineSpan.HasValue)
return;
+ else if (oldSpan.HasValue && _underlineSpan.HasValue && oldSpan == _underlineSpan)
+ return;
+
if (!_underlineSpan.HasValue)
{
this.SendEvent(oldSpan.Value);
View
@@ -287,4 +287,4 @@ bool DispatchGoToDef()
#endregion
}
-}
+}

0 comments on commit 96f6e92

Please sign in to comment.