1. 25 4月, 2015 1 次提交
  2. 14 4月, 2015 1 次提交
  3. 10 4月, 2015 1 次提交
  4. 04 3月, 2015 1 次提交
    • D
      Better handle dismissed rename tracking sessions · 499a46f5
      David Poeschl 提交于
      Fixes #540 "Stale rename entries in the lightbulb menu"
      
      Prior to this change, dismissed rename tracking sessions continued to
      provide codefixes which would silently fail when invoked, without
      completing the rename operation.
      
      With this change, we now do the following when rename tracking is
      manually dismissed:
      
      - Trigger the diagnostic service to reanalyze the document, thus
      removing the rename tracking diagnostic.
      - Stop providing a codefix when requested
      - Show a dialog if a cached codefix is invoked explaining that the
      rename was not performed.
      
      Here are the there user scenarios:
      
      1. The user dismisses rename tracking
      
          - The lightbulb will continue to show in the margin, regardless of
      whether any codefix/refactoring is actually still available.
      
      2. The user expands the lightbulb without it ever having been expanded
      before.
      
          - In this case, we are queried for fixes and will not return any, so
      either the lightbulb will disappear or it will contain other relevant
      codefixes/refactorings at that position, excluding rename.
      
      3. The user expands the lightbulb after it was previously expanded.
      
          - Our fix was already cached, so we can only give a reasonable message
      when it is invoked.
      
      Once #885 is fixed, we can instead implement IDiagnosticUpdateSource and
      avoid forcing diagnostic reanalysis.
      499a46f5
  5. 24 2月, 2015 1 次提交
    • D
      Use TriggerDiagnosticDescriptor in RenameTracking · 50ef7ff5
      David Poeschl 提交于
      Fixes #466 "Use a 'TriggerDiagnosticDescriptor' for the rename tracking
      diagnostic"
      
      Updates the RenameTrackingDiagnosticAnalyzer to use a
      TriggerDiagnosticDescriptor, which prevents the diagnostic title from
      appearing in the preview area of the lightbulb. We now pass the
      RenameFrom and RenameTo names as part of the Diagnostic's property bag
      and construct the localized codefix title based on these in the codefix
      itself.
      50ef7ff5
  6. 20 2月, 2015 1 次提交
    • D
      Prevent CodeActions commits during Inline Renames · b21230ad
      David Poeschl 提交于
      Fix #554: This fixes a crash that was caused by invoking a lightbulb
      item that caused an Inline Rename session to launch when there's already
      an inline rename session active. We now check for inline rename sessions
      during lightbulb commit. If an inline rename session is active, we halt
      the lightbulb commit and tell the user to complete their rename session.
      
      This only prevents one (but probably the most frequent) manifestation of
      a larger problem in which rename is trying to perform a series of
      changes to the workspace that can be interrupted by some other feature
      applying its changes to the workspace. This larger design problem is
      tracked as #681.
      b21230ad
  7. 27 1月, 2015 1 次提交