mirror of https://github.com/icsharpcode/ILSpy.git
Branch:
substring-optimizations
christophwille/closedhierarchies
christophwille/membench
compound-assignment-operators
fix/1982-params-attribute-args
fix/2040-invalid-xml-characters
fix/2093-navigateto-reference-assembly
fix/2362-xalz-references
fix/2372-address-taken-by
fix/3282-indexer-optional-arguments
fix/3568-record-member-order
fix/4059-deconstruct-out-slots
fix/lambda-parameter-syntax
fix/scroll-children-on-expand
gh-pages
ldmembertoken
master
natural-type-lambdas-methods
null-coalescing-assignment
release/10.1
release/6.2
release/7.1
release/7.2
release/8.1
substring-optimizations
tests/829-async-method-builder-override
tests/829-collection-expressions
tests/829-compound-assignment-operators
tests/829-coverage-audit
tests/829-expression-tree-named-optional-args
tests/829-expression-variables-in-initializers
tests/829-extended-property-patterns
tests/829-extension-members
tests/829-extension-operators
tests/829-file-local-types
tests/829-improved-definite-assignment
tests/829-improved-overload-candidates
tests/829-inline-arrays
tests/829-interpolated-string-improvements
tests/829-lambda-param-modifiers
tests/829-list-patterns
tests/829-lock-object
tests/829-mixed-deconstruction
tests/829-null-coalescing-assignment
tests/829-null-conditional-assignment
tests/829-object-initializer-indexer
tests/829-overload-resolution-priority
tests/829-params-collections
tests/829-pattern-matching-improvements
tests/829-primary-constructors
tests/829-ref-unsafe-in-iterators-async
tests/829-sealed-record-tostring
tests/829-target-typed-conditional
tests/829-tuple-comparison
win-a11y-textsize
1.0-Beta
1.0-M1
1.0-M2
1.0-M3
1.0.0
2.0.0
2.1
2.2
2.3
2.3.1
3.0-Preview1
3.0-Preview2
3.0.2
v10.0
v10.0-preview1
v10.0-preview2
v10.0-preview3
v10.0.1
v10.1
v10.1.1
v11.0
v11.0-preview1
v11.0-rc
v2.3.2
v2.4
v3.0
v3.0-beta1
v3.0-beta2
v3.0-beta2a
v3.0-beta3
v3.0-beta4
v3.0.1
v3.1-beta1
v3.1-final
v3.1-rc
v3.2-beta
v3.2-rc
v3.2.0
v4.0
v4.0-alpha1
v4.0-beta1
v4.0-beta2
v4.0-beta3
v4.0-rc1
v4.0-rc2
v4.0.1
v5.0
v5.0-preview1
v5.0-preview2
v5.0-preview3
v5.0-preview4
v5.0-rc1
v5.0.1
v5.0.2
v6.0
v6.0-preview1
v6.0-preview2
v6.0-preview3
v6.0-preview4
v6.0-rc1
v6.1
v6.2
v6.2-preview1
v6.2-preview2
v6.2.1
v7.0
v7.0-preview1
v7.0-preview2
v7.0-preview3
v7.0-rc1
v7.0-rc2
v7.1
v7.2
v7.2-preview1
v7.2-preview2
v7.2-preview3
v7.2-preview4
v7.2-rc
v7.2.1
v8.0
v8.0-preview1
v8.0-preview2
v8.0-preview3
v8.0-preview4
v8.0-rc1
v8.1
v8.1.1
v8.2
v9.0
v9.0-preview1
v9.0-preview2
v9.0-preview3
v9.0-rc
v9.1
${ item.name }
${ noResults }
4 Commits (substring-optimizations)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
4ff11dd796 |
Add a hover-only reference mode, distinct from local highlighting
References had two behaviors encoded in one bool: navigable links, and "local" references that are non-navigable but highlight all occurrences on click. Synthesized dynamic members were routed through the latter, so they picked up the occurrence highlight even though each use is a distinct synthetic member with nothing to group. Model the three modes explicitly with a ReferenceMode enum on ReferenceSegment (Link / LocalHighlight / HoverOnly). Dynamic members, the dynamic constructor and the dynamic keyword now use HoverOnly: they still show a hover tooltip (BuildHoverContent resolves any IEntity reference regardless of mode) but get the arrow cursor, do not navigate, and do not highlight. Local variables keep LocalHighlight. Plumbed via a new isHoverOnly flag on ITextOutput.WriteLocalReference. Assisted-by: Claude:claude-fable-5:Claude Code |
2 months ago |
|
|
b153291cdf |
Fix #3793: stop accidental text selection after clicking a reference
Clicking a reference left AvaloniaEdit's selection-drag mode stuck, so a subsequent mouse move (with no button held) extended a selection. AvaloniaEdit's SelectionMouseHandler captures the pointer and enters selection mode on press, and extends the selection on every move while that mode is active -- it keys off the mode, not whether a button is down. Only its bubble-phase PointerReleased handler resets the mode and releases the capture, and that handler early-returns when the event is already handled. The reference-click handler ran in the tunnel phase and marked the release handled before AvaloniaEdit saw it, so AvaloniaEdit's cleanup never ran. Move the release handler to the bubble phase so it runs after AvaloniaEdit has reset its state. AvaloniaEdit subscribes from the TextArea constructor, before this view attaches its handlers, so the ordering is deterministic and navigation can stay synchronous. Assisted-by: Claude:claude-opus-4-8:Claude Code |
3 months ago |
|
|
51aafa0fd9 |
Move ILSpy UI code back to the ICSharpCode.ILSpy root namespace
The Avalonia port had placed the UI app in an ILSpy.* namespace tree, while the csproj RootNamespace and every prior release (through 10.1) use ICSharpCode.ILSpy.*. Restoring the historical namespace reduces the public API diff against release/10.1 for plugin authors and removes the shadowing that forced global:: qualifiers in the test project. The Images class and AccessOverlayIcon enum move back into the root namespace (as in 10.1), since an ICSharpCode.ILSpy.Images namespace would shadow the Images class for all code inside ICSharpCode.ILSpy. Assisted-by: Claude:claude-fable-5:Claude Code |
3 months ago |
|
|
9352a58289 |
Navigate references on click-release so link text stays selectable
Reference links navigated on pointer-press, which meant a press-drag over a link could never select its text -- the press fired navigation and handled the event before a selection could start. Move navigation to pointer-release and only follow the link when the pointer did not drag past the click threshold, matching the WPF view's mouse-up handling. A press-drag now selects link text like any other span. Assisted-by: Claude:claude-fable-5:Claude Code |
3 months ago |