chinboy
9af427fc41
refactor(MarqueeLabel): migrate MarqueeLabel module to Avalonia 12
2026-04-29 14:18:13 +08:00
chinboy
8b0f93c534
refactor(CheckBox): migrate CheckBox module to Avalonia 12
2026-04-29 14:12:46 +08:00
chinboy
525a8f570a
refactor(Breadcrumb): migrate Breadcrumb module to Avalonia 12
2026-04-29 13:57:12 +08:00
chinboy
a04a8e7a7c
refactor(AdornerLayer): migrate AdornerLayer module to Avalonia 12 and update dependency path with axaml-aware analysis
2026-04-29 13:39:58 +08:00
chinboy
42fb2b04ce
add migration path doc
2026-04-29 13:05:16 +08:00
chinboy
5420c04ed6
refactor(ScrollViewer): migrate ScrollViewer module to Avalonia 12 and add base-class scanning rule to migration skill
2026-04-29 10:51:05 +08:00
chinboy
6eab83e8fe
refactor(TextBlock): migrate TextBlock module to Avalonia 12 and add migration tracking doc
2026-04-29 10:18:54 +08:00
chinboy
29475a640d
feat(NavMenu): implement NavMenu and NavMenuItem controls with token system and TextBlock refinements
2026-04-29 10:02:07 +08:00
chinboy
7712789e8c
fix(Avalonia12): correct factual errors and expand migration skill to 51 categories
...
Verified all API changes against Avalonia 12 source code. Fixed 5 factual errors
(PlacementMode not removed, VisualRoot is protected internal, MathUtilities.Clamp
still exists, IInputRoot is [PrivateApi] not removed, BindingPlugins is internal
not removed). Added 15 new breaking change categories including internalized APIs,
renamed members, window decoration redesign, dispatcher changes, and obsolete
member removals. Updated all 5 reference files with corrected information.
2026-04-29 09:15:39 +08:00
chinboy
adff3f6472
feat(Avalonia12): Complete migration skill and comprehensive breaking changes documentation
...
Add comprehensive Avalonia 12 migration support with 36+ breaking change categories:
**Migration Skill (.agents/skills/migrate-to-avalonia12/)**
- SKILL.md: Main skill definition with 36+ breaking change categories
- references/code-level-analysis.md: Code-level analysis from Avalonia 11.3.14 → 12.0.0
- references/reflection-extensions-pattern.md: AOT-safe reflection pattern documentation
- references/atomui-migration-guide.md: AtomUI-specific migration guidance
- references/migration-examples.md: Before/after code examples
- references/avalonia12-breaking-changes.md: Complete reference table
- references/missed-breaking-changes.md: Recently discovered breaking changes
- references/scanning-results.md: Comprehensive code scanning results
**Breaking Changes Covered (36+ categories)**
1-11: Core Framework (binding system, focus events, TopLevel API, etc.)
12-14: Data & Clipboard (IDataObject → IAsyncDataTransfer, DoDragDrop, DataFormats)
15-17: Text & Rendering (constructor parameter order, access keys, fonts)
18-25: Platform-Specific (Android, iOS, Browser, Tizen, Diagnostics, xUnit, NUnit)
26-36: API Changes (Screen, ResourcesChangedEventArgs, Gesture events, WindowState,
Data validation, Extension methods, ReflectionExtensions pattern, PlacementMode,
IInputRoot removal, Internal API extraction, ReflectionExtensions for internal members)
**Code Changes**
- Add FormattedTextSource and InlinesTextSource for text formatting
- Add TopLevelUtils helper for desktop scaling
- Update focus event handlers to use FocusChangedEventArgs
- Update TopLevel API usage (TopLevel.GetTopLevel instead of VisualRoot)
- Update text formatting constructors with new parameter order
- Update clipboard operations with SetTextAsync extension
- Update ToolTipService for TopLevel API
- Update NavMenu and TextBlock controls for Avalonia 12
**Documentation**
- docs/AVALONIA12_MIGRATION.md: Migration guide and checklist
- Comprehensive scanning results showing 95% migration completion
- 2 pending items identified: IInputRoot removal, PlacementMode removal
**Key Features**
- AOT-safe reflection patterns with [DynamicDependency] attributes
- Lazy<T> caching for reflection info
- Comprehensive detection of all 36+ breaking changes
- Platform-aware migration guidance
- Auto-fixable vs manual intervention matrix
2026-04-29 08:35:43 +08:00
CHINBOY
5cf6893e08
The AtomUI kernel has completed basic adaptation for Avalonia V12.
2026-04-28 18:25:30 +08:00
chinboy
34d525a885
fix(Drawer): optimize dialog size handling by replacing style configuration with token bindings
2026-04-22 10:08:06 +08:00
chinboy
d0f2470eeb
fix(Space): optimize spacing handling by applying token bindings instead of styles
2026-04-22 09:26:58 +08:00
chinboy
4020ab36e3
fix(AvatarGroup, CompactSpace, Space): optimize collection handling by removing unnecessary list creation
2026-04-22 08:24:25 +08:00
chinboy
cc9665e781
fix(SpinIndicator): add CustomIndicatorSize property and update related styles
2026-04-21 21:08:28 +08:00
chinboy
b8fb9cd056
fix(NavMenu): optimize item retrieval by avoiding unnecessary list conversion
2026-04-21 18:38:23 +08:00
chinboy
7980b70319
fix: simplify visibility subscription logic by introducing SubscribeAncestorIsVisible method
2026-04-21 17:59:30 +08:00
chinboy
a002397dcc
fix(LineEdit): enhance right content bindings and improve layout efficiency
2026-04-21 16:51:45 +08:00
chinboy
7b0d636e50
fix(AddOnDecoratedBox): implement status foreground and icon brush properties to enhance visual feedback
2026-04-21 13:52:29 +08:00
chinboy
79305e7122
fix(BaseTabStrip, CardTabStrip, BaseTabControl, CardTabControl): refactor binding management to eliminate memory leaks and improve performance
2026-04-21 13:52:29 +08:00
chinboy
a47fd6e097
fix(OverlayDialogHeader): ensure disposables are properly disposed and reset on visual tree attachment/detachment
2026-04-21 13:52:29 +08:00
chinboy
b7fb6c6740
fix(WindowTitleBar): ensure disposables are properly disposed and reset on visual tree attachment/detachment
2026-04-21 13:52:29 +08:00
chinboy
31eff3e495
fix(MemoryLeakPatterns): update documentation to clarify static constructor subscription patterns and their impact on memory management
2026-04-21 13:52:29 +08:00
chinboy
0069f95f81
fix(AddOnDecoratedBox): add Underlined pseudo-class and update style selectors to prevent memory leaks
2026-04-21 13:52:29 +08:00
chinboy
4809883503
fix(GradientColorSlider): replace global Property.Changed.Subscribe with instance-level GetObservable and remove redundant subscription
2026-04-21 13:52:29 +08:00
chinboy
49165bf572
fix(TimePickerPresenter): replace global Property.Changed.Subscribe with instance-level GetObservable to fix LightweightSubject memory leak
2026-04-21 13:52:29 +08:00
chinboy
614832839e
fix(DatePickerPresenter): replace global Property.Changed.Subscribe with instance-level GetObservable to fix LightweightSubject memory leak
2026-04-21 13:52:29 +08:00
chinboy
b32fd8f8ee
fix(FlyoutStateHelper): replace global Property.Changed.Subscribe with instance-level GetObservable to fix LightweightSubject memory leak
2026-04-21 13:52:29 +08:00
chinboy
61f33a6869
docs: update Transitions refactoring plan - all 76 controls complete (76/76)
2026-04-20 15:25:27 +08:00
chinboy
a51e00988c
docs: mark Batch 4 Part C controls as completed in table (70/76)
2026-04-20 14:27:10 +08:00
chinboy
672c1673da
docs: update Transitions refactoring plan - Batch 4 Part C complete (68/76)
2026-04-20 13:57:51 +08:00
chinboy
9ef731e46b
docs: mark Batch 3 controls as completed in table
2026-04-20 10:50:55 +08:00
chinboy
acd6e444b7
docs: update Transitions refactoring plan - Batch 3 complete (53/76)
2026-04-20 10:47:17 +08:00
chinboy
d29cfa2154
refactor(Spin): migrate AbstractSpin transitions to XAML theme
2026-04-19 22:39:30 +08:00
chinboy
8a694ba36a
refactor(ProgressBar): migrate AbstractProgressBar transitions to XAML theme
2026-04-19 22:37:21 +08:00
chinboy
cb129f5d4f
fix(Switch): migrate SwitchKnob transitions to XAML and fix animation on pointer release
...
- Move SwitchKnob transitions from C# code to XAML theme using style selector
- Remove ConfigureTransitions, OnLoaded/OnUnloaded lifecycle management
- Fix Switch animation not smoothly transitioning back to circle on pointer release by deferring KnobSize update
- Move PixelPointTransition and RectTransition to Animations/Transitions directory
- Update TransitionsRefactoringPlan.md progress tracking
2026-04-19 22:15:45 +08:00
chinboy
f9c8ffb4ce
refactor: migrate AbstractScrollViewer Transitions to XAML theme
2026-04-19 20:08:20 +08:00
chinboy
4484f8f9d0
refactor: migrate AbstractScrollBarThumb Transitions to XAML theme
2026-04-19 20:02:50 +08:00
chinboy
9d68863ab0
docs: add Transitions refactoring plan
2026-04-19 19:54:56 +08:00
chinboy
d640f2c332
refactor(AddOnDecoratedBox): optimize input control theme structure for performance
...
Remove code-behind theme classes, consolidate theme definitions into ResourceDictionary format,
add TransitionProvider and SharedTokenResourceValue infrastructure, and remove redundant styles.
2026-04-19 15:51:21 +08:00
chinboy
50ac96478e
fix: Improve layout form configuration by adding proper disposal of PropertyChanged subscriptions
2026-04-18 17:59:46 +08:00
chinboy
ef5baea0f1
fix: Change IList<double>? to IReadOnlyList<double>? for strokeDashArray in multiple files
2026-04-18 09:55:52 +08:00
chinboy
4f134f3592
fix: Change ButtonTheme.DashedStyle to IReadOnlyList to prevent modification
2026-04-18 09:28:54 +08:00
chinboy
968ffaad13
fix: Ensure proper disposal of CancellationTokenSource in AbstractSpinIndicator, SwitchKnob, and WaveSpiritDecorator
2026-04-18 09:09:01 +08:00
chinboy
ce7bc9cf1a
fix: AbstractMarqueeLabel 统一 Cancel + Dispose 模式
2026-04-18 08:59:05 +08:00
chinboy
27295dd934
fix: ColorPickerHelpers.CreateBitmapFromPixelData 修正 XML doc,更新文档删除 4.2
2026-04-18 08:49:44 +08:00
chinboy
562e3bf3b3
fix: AbstractQRCode/PreviewImageSource/AbstractImagePreviewer Bitmap 释放,更新文档
...
- AbstractQRCode: SetupQRCode 加 Value 空值守卫,oldBitmap?.Dispose(),Bitmap? 可空,switch expression 替换 TryParse,移除 using static System.Enum
- PreviewImageSource: 实现 IDisposable
- AbstractImagePreviewer: HandleSourceChanged 替换 EffectiveSources 时 Dispose 旧列表
2026-04-18 08:41:53 +08:00
chinboy
0cebcc8c3d
fix: Badge Adorner CTS 补加 Dispose,新增 OnDetachedFromVisualTree 清理,更新文档删除 P4
2026-04-18 00:23:56 +08:00
chinboy
6ba0b2696a
fix: FileUploadScheduler CancelUploadAsync 补加 CTS Dispose,更新文档删除 P11
2026-04-18 00:17:36 +08:00
chinboy
d73bcce17c
docs: 删除已修复条目(6.1 Watermark/6.2 Timer/P8 Space),更新 4.1/4.5/4.6 问题描述
2026-04-18 00:15:55 +08:00