Skip to content

Commit 07b0a6b

Browse files
authored
Temporarily converging CodeLens and LineLens monikers into Lens
1 parent 27da93e commit 07b0a6b

39 files changed

+273
-352
lines changed

docs/tooling-features.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ Most of the syntax operations require an entire document's source text or parse
4242
|---------|---------------|---------------|-----------------|
4343
| Most code fixes | Current document's typecheck data | Set (1 or more) of suggested text replacements | S-M |
4444
| Semantic classification | Current document's typecheck data | Spans of text with semantic classification type for all constructs in a document | S-L |
45-
| Code lenses | Current document's typecheck data and top-level declarations (for showing signatures); graph of all projects that reference the current one (for showing references) | Signature data for each top-level construct; spans of text for each reference to a top-level construct with navigation information | S-XL |
45+
| Lenses | Current document's typecheck data and top-level declarations (for showing signatures); graph of all projects that reference the current one (for showing references) | Signature data for each top-level construct; spans of text for each reference to a top-level construct with navigation information | S-XL |
4646
| Code generation / refactorings | Current document's typecheck data and/or current resolved symbol/symbols | Text replacement(s) | S-L |
4747
| Code completion | Current document's typecheck data and currently-resolved symbol user is typing at | List of all symbols in scope that are "completable" based on where completion is invoked | S-L |
4848
| Editor tooltips | Current document's typecheck data and resolved symbol where user invoked a tooltip | F# tooltip data based on inspecting a type and its declarations, then pretty-printing them | S-XL |

vsintegration/src/FSharp.Editor/Common/Constants.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ module internal Guids =
8383

8484
[<Literal>]
8585
/// "00BE7FD9-8145-4A2E-A1BF-3BAF0F4F47DD"
86-
let codeLensOptionPageIdString = "00BE7FD9-8145-4A2E-A1BF-3BAF0F4F47DD"
86+
let lensOptionPageIdString = "00BE7FD9-8145-4A2E-A1BF-3BAF0F4F47DD"
8787

8888
[<Literal>]
8989
/// "8FDA964A-263D-4B4E-9560-29897535217C"

vsintegration/src/FSharp.Editor/FSharp.Editor.fsproj

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@
126126
<Compile Include="Build\SetGlobalPropertiesForSdkProjects.fs" />
127127
<Compile Include="AutomaticCompletion\BraceCompletionSessionProvider.fsi" />
128128
<Compile Include="AutomaticCompletion\BraceCompletionSessionProvider.fs" />
129-
<Compile Include="CodeLens\AbstractCodeLensDisplayService.fs" />
130-
<Compile Include="CodeLens\FSharpCodeLensService.fs" />
131-
<Compile Include="CodeLens\CodeLensProvider.fs" />
129+
<Compile Include="Lens\LensDisplayService.fs" />
130+
<Compile Include="Lens\LensService.fs" />
131+
<Compile Include="Lens\LensProvider.fs" />
132132
</ItemGroup>
133133

134134
<ItemGroup>

vsintegration/src/FSharp.Editor/FSharp.Editor.resx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@
178178
<value>Advanced</value>
179179
</data>
180180
<data name="6013" xml:space="preserve">
181-
<value>CodeLens</value>
181+
<value>Lens</value>
182182
</data>
183183
<data name="6014" xml:space="preserve">
184184
<value>Formatting</value>

vsintegration/src/FSharp.Editor/LanguageService/LanguageService.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ type internal FSharpSettingsFactory
198198
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.CodeFixesOptionPage>, "F#", null, "Code Fixes", "6010")>]
199199
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.LanguageServicePerformanceOptionPage>, "F#", null, "Performance", "6011")>]
200200
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.AdvancedSettingsOptionPage>, "F#", null, "Advanced", "6012")>]
201-
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.CodeLensOptionPage>, "F#", null, "CodeLens", "6013")>]
201+
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.LensOptionPage>, "F#", null, "Lens", "6013")>]
202202
[<ProvideLanguageEditorOptionPage(typeof<OptionsUI.FormattingOptionPage>, "F#", null, "Formatting", "6014")>]
203203
[<ProvideFSharpVersionRegistration(FSharpConstants.projectPackageGuidString, "Microsoft Visual F#")>]
204204
// 64 represents a hex number. It needs to be greater than 37 so the TextMate editor will not be chosen as higher priority.
Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ open System.Threading
1212
open System.Windows
1313
open System.Collections.Generic
1414

15-
type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self =
15+
type LensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self =
1616

1717
// Add buffer changed event handler
1818
do (
@@ -21,7 +21,7 @@ type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self
2121
)
2222

2323
/// <summary>
24-
/// Enqueing an unit signals to the tagger that all visible line lens must be layouted again,
24+
/// Enqueing an unit signals to the tagger that all visible lens must be layouted again,
2525
/// to respect single line changes.
2626
/// </summary>
2727
member val RelayoutRequested : Queue<_> = Queue() with get
@@ -46,7 +46,7 @@ type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self
4646
/// Text view for accessing the adornment layer.
4747
member val View: IWpfTextView = view
4848

49-
member val CodeLensLayer = view.GetAdornmentLayer "LineLens"
49+
member val LensLayer = view.GetAdornmentLayer "Lens"
5050

5151
/// Tracks the recent first + last visible line numbers for adornment layout logic.
5252
member val RecentFirstVsblLineNmbr = 0 with get, set
@@ -154,30 +154,30 @@ type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self
154154
self.RelayoutRequested.Enqueue(())
155155
with e ->
156156
#if DEBUG
157-
logErrorf "Error in line lens provider: %A" e
157+
logErrorf "Error in lens provider: %A" e
158158
#else
159159
ignore e
160160
#endif
161161

162-
/// Public non-thread-safe method to add line lens for a given tracking span.
163-
/// Returns an UIElement which can be used to add Ui elements and to remove the line lens later.
164-
member self.AddCodeLens (trackingSpan:ITrackingSpan) =
165-
if trackingSpan.TextBuffer <> buffer then failwith "TrackingSpan text buffer does not equal with CodeLens text buffer"
162+
/// Public non-thread-safe method to add lens for a given tracking span.
163+
/// Returns an UIElement which can be used to add Ui elements and to remove the lens later.
164+
member self.AddLens (trackingSpan:ITrackingSpan) =
165+
if trackingSpan.TextBuffer <> buffer then failwith "TrackingSpan text buffer does not equal with Lens text buffer"
166166
let Grid = self.AddTrackingSpan trackingSpan
167167
self.RelayoutRequested.Enqueue(())
168168
Grid :> UIElement
169169

170-
/// Public non-thread-safe method to remove line lens for a given tracking span.
171-
member self.RemoveCodeLens (trackingSpan:ITrackingSpan) =
170+
/// Public non-thread-safe method to remove lens for a given tracking span.
171+
member self.RemoveLens (trackingSpan:ITrackingSpan) =
172172
if self.UiElements.ContainsKey trackingSpan then
173173
let Grid = self.UiElements.[trackingSpan]
174174
Grid.Children.Clear()
175175
self.UiElements.Remove trackingSpan |> ignore
176176
try
177-
self.CodeLensLayer.RemoveAdornment(Grid)
177+
self.LensLayer.RemoveAdornment(Grid)
178178
with e ->
179179
#if DEBUG
180-
logExceptionWithContext(e, "Removing line lens")
180+
logExceptionWithContext(e, "Removing lens")
181181
#else
182182
ignore e
183183
#endif
@@ -200,16 +200,16 @@ type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self
200200
logWarningf "No tracking span is accociated with this line number %d!" lineNumber
201201
#endif
202202

203-
member self.AddUiElementToCodeLens (trackingSpan:ITrackingSpan, uiElement:UIElement) =
203+
member self.AddUiElementToLens (trackingSpan:ITrackingSpan, uiElement:UIElement) =
204204
let Grid = self.UiElements.[trackingSpan]
205205
Grid.Children.Add uiElement |> ignore
206206

207-
member self.AddUiElementToCodeLensOnce (trackingSpan:ITrackingSpan, uiElement:UIElement)=
207+
member self.AddUiElementToLensOnce (trackingSpan:ITrackingSpan, uiElement:UIElement)=
208208
let Grid = self.UiElements.[trackingSpan]
209209
if uiElement |> Grid.Children.Contains |> not then
210-
self.AddUiElementToCodeLens (trackingSpan, uiElement)
210+
self.AddUiElementToLens (trackingSpan, uiElement)
211211

212-
member self.RemoveUiElementFromCodeLens (trackingSpan:ITrackingSpan, uiElement:UIElement) =
212+
member self.RemoveUiElementFromLens (trackingSpan:ITrackingSpan, uiElement:UIElement) =
213213
let Grid = self.UiElements.[trackingSpan]
214214
Grid.Children.Remove(uiElement) |> ignore
215215

@@ -317,7 +317,7 @@ type CodeLensDisplayService (view : IWpfTextView, buffer : ITextBuffer) as self
317317
// and would consume too much performance
318318
do! Async.Sleep(5) |> liftAsync // Skip at least one frames
319319
do! Async.SwitchToContext self.UiContext |> liftAsync
320-
let layer = self.CodeLensLayer
320+
let layer = self.LensLayer
321321
do! Async.Sleep(495) |> liftAsync
322322
try
323323
for visibleLineNumber in visibleLineNumbers do

vsintegration/src/FSharp.Editor/CodeLens/CodeLensProvider.fs renamed to vsintegration/src/FSharp.Editor/Lens/LensProvider.fs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ open Microsoft.CodeAnalysis.ExternalAccess.FSharp.Editor.Shared.Utilities
1717
[<Export(typeof<IViewTaggerProvider>)>]
1818
[<ContentType(FSharpConstants.FSharpContentTypeName)>]
1919
[<TextViewRole(PredefinedTextViewRoles.Document)>]
20-
type internal CodeLensProvider
20+
type internal LensProvider
2121
[<ImportingConstructor>]
2222
(
2323
[<Import(typeof<SVsServiceProvider>)>] serviceProvider: IServiceProvider,
@@ -32,32 +32,32 @@ type internal CodeLensProvider
3232
| true, document -> Some document
3333
| _ -> None
3434

35-
let lineLensProviders = ResizeArray()
35+
let lensProviders = ResizeArray()
3636
let componentModel = Package.GetGlobalService(typeof<ComponentModelHost.SComponentModel>) :?> ComponentModelHost.IComponentModel
3737
let workspace = componentModel.GetService<VisualStudioWorkspace>()
3838

39-
let addLineLensProvider wpfView buffer =
39+
let addLensProvider wpfView buffer =
4040
textDocumentFactory
4141
|> tryGetTextDocument buffer
4242
|> Option.map (fun document -> workspace.CurrentSolution.GetDocumentIdsWithFilePath(document.FilePath))
4343
|> Option.bind Seq.tryHead
4444
|> Option.map (fun documentId ->
45-
let service = FSharpCodeLensService(serviceProvider, workspace, documentId, buffer, metadataAsSource, componentModel.GetService(), typeMap, CodeLensDisplayService(wpfView, buffer), settings)
45+
let service = LensService(serviceProvider, workspace, documentId, buffer, metadataAsSource, componentModel.GetService(), typeMap, LensDisplayService(wpfView, buffer), settings)
4646
let provider = (wpfView, service)
47-
wpfView.Closed.Add (fun _ -> lineLensProviders.Remove provider |> ignore)
48-
lineLensProviders.Add(provider))
47+
wpfView.Closed.Add (fun _ -> lensProviders.Remove provider |> ignore)
48+
lensProviders.Add(provider))
4949

50-
[<Export(typeof<AdornmentLayerDefinition>); Name("LineLens");
50+
[<Export(typeof<AdornmentLayerDefinition>); Name("Lens");
5151
Order(Before = PredefinedAdornmentLayers.Text);
5252
TextViewRole(PredefinedTextViewRoles.Document)>]
53-
member val LineLensAdornmentLayerDefinition : AdornmentLayerDefinition = null with get, set
53+
member val LensAdornmentLayerDefinition : AdornmentLayerDefinition = null with get, set
5454

5555
interface IWpfTextViewCreationListener with
5656
override _.TextViewCreated view =
57-
if settings.CodeLens.Enabled then
57+
if settings.Lens.Enabled then
5858
let provider =
59-
lineLensProviders
59+
lensProviders
6060
|> Seq.tryFind (fun (v, _) -> v = view)
6161

6262
if provider.IsNone then
63-
addLineLensProvider view (view.TextBuffer) |> ignore
63+
addLensProvider view (view.TextBuffer) |> ignore

0 commit comments

Comments
 (0)