1612 Commits

Author SHA1 Message Date
31e8c34cfe fix: update TargetFramework to net8.0 in project files 2026-01-28 16:20:23 +08:00
c0a9852f9e feat: add LargeMessageBoxControl and improve MessageBox functionality 2026-01-22 16:48:21 +08:00
Dong Bin
975757dbb8 fix: update TimePicker to correctly handle second selector panel type. (#856) 2026-01-19 14:10:46 +08:00
Dong Bin
0c978e1318 Disable scroll chaining in AutoCompleteBox popup. (#851)
* feat: disable scroll chaining in popup.

* feat: disable scroll chaining in MultiAutoCompleteBox
2026-01-09 15:50:07 +08:00
Dong Bin
828baa7149 Merge pull request #852 from satanikia1300/fix_pathpicker 2026-01-07 16:23:07 +08:00
Yuki Kurano
f740484f4c Fix PathPicker SelectedPathsText 2026-01-06 23:32:49 +08:00
Zhang Dian
14f549b01f fix: fix TargetFramework. 2025-12-30 20:56:58 +08:00
Zhang Dian
ced989b7ef ci: upgrade checkout version & add android workload. 2025-12-30 20:33:28 +08:00
Zhang Dian
a1bb7fcc80 misc: bump version. 2025-12-30 20:33:28 +08:00
Copilot
0d7c97a7dd Fix NavMenuItem selected+focused state showing hover appearance instead of selected (#847)
* Initial plan

* Fix NavMenuItem focus and selected visual appearance in Semi theme

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-12-30 16:54:12 +08:00
Zhang Dian
445c8217c8 Turn on .slnx & CPM (#844)
* feat: turn on .slnx & CPM.

* misc: format codes.
2025-12-29 16:09:29 +08:00
Copilot
e54474b0f9 Implement ItemSpacing and LineSpacing in ElasticWrapPanel (#843)
* Initial plan

* Implement ItemSpacing and LineSpacing support for ElasticWrapPanel

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Add demo tab showcasing ItemSpacing and LineSpacing

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Add additional test for ItemSpacing affecting line wrapping

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* feat: add bindings for IsFillHorizontal and IsFillVertical in ElasticWrapPanelDemo

* Fix measure/arrange mismatch by tracking spacing in UVCollection

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* feat: add ItemSpacing & LineSpacing FormItems.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
Co-authored-by: Dong Bin <popmessiah@hotmail.com>
Co-authored-by: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
2025-12-16 20:39:50 +08:00
Alexander Prokhorov
6f7db1c20c Added IconRepeatButton, IconDropDownButton, IconSplitButton, IconToggleButton, IconToggleSplitButton (#834)
* Added IconRepeatButton (#812)
* Replaced control-specific PART_RootPanel workaround with AffectsArrange call fixing ReversibleStackPanel for the whole application.

* Added IconToggleButton (#812)
* Split IconRepeatButton into separate XAML file.

* Added IconSplitButton (#812)
* Added BindableClasses utility to allow propagating Classes property between controls. Avalonia currently doesn't support binding from Classes property, and binding to Classes property is heavily restricted.

* Added IconToggleSplitButton (#812)
* Fixed tab order in IconSplitButton and IconToggleSplitButton (DockPanel messes up tab order, TabIndex is global and makes it even worse, so just switched to Grid).

* Added IconDropDownButton (#812)
* Fixed IconPlacement inheritance.

* Added redesigned IconButton demo section (#812)
* Fixed spacing issues

* Added redesigned demo sections for the newly added icon buttons (#812)

* Replaced BindableClasses with ClassHelper. Fixed styling of default solid split icon buttons. (#812)

* Replaced IIconButton with attached-like property getters and PseudolassesExtensions.Set(Classes); fixed arrow alignments in top/bottom split icon buttons (#812)

* Applied fixes suggested by Copilot in code review (#812)

* Fixed incorrect base type of IconDropDownButton (#812)

* Fixed IconSplitButton and IconToggleSplitButton styles (#812)
* Fixed secondary button color in checked state
* Fixed applying of CornerRadius
* Changed secondary button to square
* Simplified template
* Disabled demo of Colorful theme for IconSplitButton and IconToggleSplitButton
2025-11-27 22:42:42 +08:00
Dong Bin
a4906d5130 Fix wasm deployment issue (#827)
* fix: update wasm-tools installation

* fix: add TrimmerRootAssembly for WASM optimization

* fix: update project to target .NET 10 and adjust deployment settings

* fix: add TrimmerRootAssembly for Ursa.Demo to improve WASM optimization

* fix: avoid Window based dialog crash on non-supported platforms.
2025-11-17 11:24:07 +08:00
Zhang Dian
1cf920afa8 fix: update Android dependency restore path in publish.yml. (#825) 2025-11-15 16:52:17 +08:00
Zhang Dian
814226651f misc: bump version. (#824) 2025-11-15 16:06:07 +08:00
Zhang Dian
fa94841ab9 feat: add AI style for IconButton. (#823)
* feat: add AI style for IconButton.

* feat: update package references for CommunityToolkit.Mvvm, Semi.Avalonia, and add SkiaSharp.
2025-11-15 15:37:25 +08:00
Dong Bin
76ea435618 fix: fix margin when multi-auto has no left content. (#822) 2025-11-15 15:12:26 +08:00
Dong Bin
0f1a00f388 Enhance TitleBar and CaptionButtons to respect latest Window.CanMaximize and Window.CanMinimize (#815)
* fix: enhance window resizing logic to include maximization check

* fix: update CaptionButtons to control button visibility based on window properties

* fix: update obsolescence messages for minimize and restore button properties

* chore: update comment.
2025-11-14 13:32:27 +08:00
Dong Bin
d0fc4098dd chore: remove obsolete compatible resources from Index.axaml (#821) 2025-11-12 18:50:06 +08:00
Dong Bin
26f195871b fix: update conditional compilation symbols for .NET version handling (#820) 2025-11-12 15:43:27 +08:00
Copilot
0ab084b198 Fix NavMenu selection on right-click (#819)
* Initial plan

* Fix NavMenu right-click behavior - prevent selection on right-click

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-11-12 15:33:18 +08:00
Dong Bin
f9729859fe refactor: streamline locale resource handling with SetResources method (#816) 2025-11-12 15:23:40 +08:00
Copilot
441f123de2 Add keyboard navigation and focus styles to TreeComboBox and MultiComboBox (#808)
* Initial plan

* Add keyboard navigation and focus styles to TreeComboBox

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Fix keyboard handler - add parentheses for clarity and handle Tab key properly

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Add keyboard navigation to MultiComboBox

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-11-11 23:07:26 +08:00
Zhang Dian
47ae3ab018 Merge pull request #809 from irihitech/upgrade_11.3.7
Update Avalonia version to 11.3.7 across project files
2025-11-11 14:10:04 +08:00
Dong Bin
3c29764af4 test: enhance accessibility tests for form controls 2025-11-07 23:18:19 +08:00
Copilot
6941cef2a7 Add Int64Displayer control for long type support (#811) 2025-11-07 21:35:52 +08:00
Dong Bin
e46a6edbeb chore: update Avalonia version to 11.3.7 across project files 2025-11-05 01:33:20 +08:00
Zhang Dian
d495c98967 feat: implement JumpTo command in ApplicationViewModel and update navigation handling. (#803) 2025-10-23 14:58:22 +08:00
Copilot
7c7701aade Add Chinese README with cross-language navigation links (#801)
* Initial plan

* Add Chinese README with cross-links

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* chore: update Chinese README for clarity and accuracy

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
Co-authored-by: Dong Bin <popmessiah@hotmail.com>
2025-10-22 21:05:57 +08:00
Copilot
9c014f37be Improve Introduction page with condensed layout and 20+ diverse controls (#790)
* Initial plan

* Improve Introduction page with diverse simple controls

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Make layout more condensed and add requested controls

- Reduced spacing and padding throughout (20->12 margin, 16->10 padding, 8->6 spacing)
- Reduced section title size (16->14)
- Changed from 2-column to 3-column grid layout for better space utilization
- Added all requested controls: IPv4Box, MultiComboBox, MultiAutoCompleteBox, NumericUpDown, RangeSlider, TagInput, TreeComboBox, DateRangePicker, DateTimePicker, TimeRangePicker, ToolBar, Marquee
- Updated ViewModel with properties for new controls
- Made controls smaller (using Small classes where available)

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-10-22 21:01:30 +08:00
Dong Bin
dcaef1c8ed [New Control] Descriptions (#791)
* feat: add ColumnWrapPanel.

* feat: add Descriptions and DescriptionsItem controls

* WIP: extract a LabeledContentControl for this particular need.

* wip.

* feat: setup demo. fix various initial status issue.

* fix: fix a layout issue.

* feat: improve demo.

* feat: update demo.

* fix: remove a redundant calculation.

* feat: update per copilot feedback.

* feat: add tests, fix a calculation issue.

* feat: refactor to change the default label and value binding assignment logic.

* feat: introduce orientation.

* misc: format codes.

* feat: clarify LabelPosition property.

* feat: extract Font resources.

* revert AvatarDemo.

* feat: assign specific value to Font resources for testing.

* misc: resolve copilot comment.

---------

Co-authored-by: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
2025-10-22 20:49:02 +08:00
Juster Zhu
c6ac019a4e fix: PathPicker's File Filtering Function malfunctions (#786)
* fix: PathPicker's File Filtering Function malfunctions

Regular expression validation for adding parameters; the sample reference content is as follows:

[Name,Pattern] → True
[123,.exe,.pdb] → True
[All] → True
[ImageAll] → True
[11,*.txt] → True
*.123 → False
*.txt → False
.png → False
[*.txt] → False
[.txt] → False
[a] → True
[a,b] → True
[a,b,c] → True
[a,*] → True
[a,.] → True
[*] → False
[.] → False
[a,] → False
[,a] → False
[] → False
[a,b,] → False
[a,,b] → False
[a*b] → False
[a.b] → False

* Add PathPicker regex validation and headless tests

Introduces regex-based validation for the PathPicker FileFilter property, supporting both NETSTANDARD2_0 and NET8_0 with conditional compilation. Adds headless UI tests and supporting test views to verify correct and incorrect filter patterns.

* Refactor PathPicker tests and update accessibility

Moved PathPicker unit tests from HeadlessTest.Ursa to Test.Ursa, removing UI-dependent test files and replacing them with direct unit tests for ParseFileTypes. Updated PathPicker.cs to make ParseFileTypes internal for improved testability and adjusted regex method accessibility. Updated project file to remove references to deleted test files.

* Update HeadlessTest.Ursa.csproj

* Update src/Ursa/Controls/PathPicker/PathPicker.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-21 23:03:11 +08:00
Reidea
923e502288 Add Russian local to the resources. (#796) 2025-10-18 01:22:23 +08:00
Copilot
cd920d8b45 Replace Avalonia.ReactiveUI with ReactiveUI.Avalonia to use newer ReactiveUI version (#795)
* Initial plan

* Replace Avalonia.ReactiveUI with ReactiveUI.Avalonia to use newer ReactiveUI version

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

* Update ReactiveUI.Avalonia version to 11.3.0 as requested

Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-10-14 11:29:06 +08:00
Dong Bin
b523329339 Merge pull request #793 from irihitech/copilot/update-coverlet-collector
Update coverlet.collector to 6.0.4
2025-10-12 23:37:56 +08:00
copilot-swe-agent[bot]
4d5ff8f8c4 Update coverlet.collector to 6.0.4
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-10-12 14:24:21 +00:00
copilot-swe-agent[bot]
a85f994d60 Initial plan 2025-10-12 14:19:43 +00:00
Dong Bin
a5e1d6efa4 Merge pull request #785 from irihitech/fix-784
Fix UrsaWindow memory leakage.
2025-09-28 12:35:16 +08:00
Dong Bin
fca5c5d0fd fix: refactor window state handling and improve visibility updates 2025-09-27 23:41:02 +08:00
Zhang Dian
669fca2457 Merge pull request #778 from irihitech/copilot/fix-769
Replace AutoCompleteBox demo data with shared ControlData model
2025-09-25 21:17:23 +08:00
Zhang Dian
82532a29b1 Merge pull request #780 from irihitech/copilot/fix-779
Add comprehensive GitHub Copilot instructions for Ursa.Avalonia development
2025-09-25 21:07:31 +08:00
Dong Bin
381ea0849f misc: bump version. 2025-09-21 23:24:12 +08:00
copilot-swe-agent[bot]
c51cbc4bd0 Create comprehensive .github/copilot-instructions.md with validated commands
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-09-19 11:05:27 +00:00
copilot-swe-agent[bot]
94dba264f1 Initial plan 2025-09-19 10:54:32 +00:00
copilot-swe-agent[bot]
75d5e86877 Replace AutoCompleteBox demo data with ControlData
Co-authored-by: rabbitism <14807942+rabbitism@users.noreply.github.com>
2025-09-19 10:23:11 +00:00
copilot-swe-agent[bot]
130c4f7f14 Initial plan 2025-09-19 10:17:16 +00:00
Dong Bin
9611bf46ba Merge pull request #771 from yangjieshao/DialogControlClosed
增强 OverlayDialog 和 NumPad 的功能与交互体验
2025-09-19 18:15:35 +08:00
Dong Bin
baefa8c6eb fix: fix naming. 2025-09-19 18:12:42 +08:00
Dong Bin
89c749c624 Merge pull request #775 from irihitech/clean
clean up controls XAML files
2025-09-19 16:45:50 +08:00