Skip to content

Commit f24efcb

Browse files
committed
Code cleanups
1 parent 5529034 commit f24efcb

File tree

8 files changed

+54
-72
lines changed

8 files changed

+54
-72
lines changed

src/FlaUInspect/Core/Converters/AlternationToColorConverter.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ public object Convert(object[] values, Type targetType, object parameter, Cultur
1212
if (values.Length > 0 && values[0] is int and > 0) {
1313
return AlternativeBrush;
1414
}
15-
1615
return Brush;
1716
}
1817

src/FlaUInspect/Core/Converters/BooleanToVisibilityConverter.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ public object Convert(object? value, Type targetType, object? parameter, Culture
1313
if (value is bool boolValue) {
1414
return boolValue ? TrueVisibility : FalseVisibility;
1515
}
16-
1716
throw new ArgumentException("Value must be a boolean or nullable boolean", nameof(value));
1817
}
1918

src/FlaUInspect/Core/FocusTrackingMode.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public void Stop() {
2727
private void OnFocusChanged(AutomationElement? automationElement) {
2828
// Skip items in the current process
2929
// Like Inspect itself or the overlay window
30-
if (automationElement?.Properties.ProcessId == Process.GetCurrentProcess().Id) {
30+
if (automationElement?.Properties.ProcessId == Environment.ProcessId) {
3131
return;
3232
}
3333

src/FlaUInspect/Core/ObservableObject.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,7 @@ public abstract class ObservableObject : INotifyPropertyChanged {
1515
/// Gets a property value from the internal backing field
1616
/// </summary>
1717
protected T? GetProperty<T>([CallerMemberName] string? propertyName = null) {
18-
if (propertyName == null) {
19-
throw new ArgumentNullException(nameof(propertyName));
20-
}
18+
ArgumentNullException.ThrowIfNull(propertyName);
2119

2220
if (_backingFieldValues.TryGetValue(propertyName, out object? value)) {
2321
return (T)value!;
@@ -29,9 +27,7 @@ public abstract class ObservableObject : INotifyPropertyChanged {
2927
/// Saves a property value to the internal backing field
3028
/// </summary>
3129
protected bool SetProperty<T>(T? newValue, [CallerMemberName] string? propertyName = null) {
32-
if (propertyName == null) {
33-
throw new ArgumentNullException(nameof(propertyName));
34-
}
30+
ArgumentNullException.ThrowIfNull(propertyName);
3531

3632
if (IsEqualInternal(GetProperty<T>(propertyName), newValue)) {
3733
return false;

src/FlaUInspect/Core/PatternItemsFactory.cs

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public class PatternItemsFactory(AutomationBase? automationBase) {
6464
];
6565

6666
public IDictionary<string, PatternItem[]> CreatePatternItemsForElement(AutomationElement element, HashSet<PatternId> allSupportedPatterns) {
67-
Dictionary<string, PatternItem[]> patternItems = new ()
67+
Dictionary<string, PatternItem[]> patternItems = new()
6868
{
6969
{ Identification, AddIdentificationDetails(element).ToArray() },
7070
{ Details, AddDetailsDetails(element).ToArray() },
@@ -82,7 +82,7 @@ public IDictionary<string, PatternItem[]> CreatePatternItemsForElement(Automatio
8282
}
8383

8484
private static IEnumerable<PatternItem> AddPatternSupportDetails(AutomationElement? element) {
85-
if(element==null) {
85+
if (element == null) {
8686
yield break;
8787
}
8888
PatternId[] allSupportedPatterns = element.GetSupportedPatterns();
@@ -100,15 +100,15 @@ private static IEnumerable<PatternItem> AddValuePatternDetails(AutomationElement
100100
}
101101

102102
private static IEnumerable<PatternItem> AddTogglePatternDetails(AutomationElement? element) {
103-
if(element==null) {
103+
if (element == null) {
104104
yield break;
105105
}
106106
ITogglePattern pattern = element.Patterns.Toggle.Pattern;
107107
yield return PatternItem.FromAutomationProperty("ToggleState", pattern.ToggleState);
108108
}
109109

110110
private static IEnumerable<PatternItem> AddTextPatternDetails(AutomationElement? element) {
111-
if(element==null) {
111+
if (element == null) {
112112
yield break;
113113
}
114114
ITextPattern pattern = element.Patterns.Text.Pattern;
@@ -132,7 +132,7 @@ private static IEnumerable<PatternItem> AddTextPatternDetails(AutomationElement?
132132
}
133133

134134
private static IEnumerable<PatternItem> AddTablePatternDetails(AutomationElement? element) {
135-
if(element==null) {
135+
if (element == null) {
136136
yield break;
137137
}
138138
ITablePattern pattern = element.Patterns.Table.Pattern;
@@ -142,7 +142,7 @@ private static IEnumerable<PatternItem> AddTablePatternDetails(AutomationElement
142142
}
143143

144144
private static IEnumerable<PatternItem> AddTableItemPatternDetails(AutomationElement? element) {
145-
if(element==null) {
145+
if (element == null) {
146146
yield break;
147147
}
148148
ITableItemPattern pattern = element.Patterns.TableItem.Pattern;
@@ -151,7 +151,7 @@ private static IEnumerable<PatternItem> AddTableItemPatternDetails(AutomationEle
151151
}
152152

153153
private static IEnumerable<PatternItem> AddSelectionPatternDetails(AutomationElement? element) {
154-
if(element==null) {
154+
if (element == null) {
155155
yield break;
156156
}
157157
ISelectionPattern pattern = element.Patterns.Selection.Pattern;
@@ -161,7 +161,7 @@ private static IEnumerable<PatternItem> AddSelectionPatternDetails(AutomationEle
161161
}
162162

163163
private static IEnumerable<PatternItem> AddSelectionItemPatternDetails(AutomationElement? element) {
164-
if(element==null) {
164+
if (element == null) {
165165
yield break;
166166
}
167167
ISelectionItemPattern pattern = element.Patterns.SelectionItem.Pattern;
@@ -170,7 +170,7 @@ private static IEnumerable<PatternItem> AddSelectionItemPatternDetails(Automatio
170170
}
171171

172172
private static IEnumerable<PatternItem> AddScrollPatternDetails(AutomationElement? element) {
173-
if(element==null) {
173+
if (element == null) {
174174
yield break;
175175
}
176176
IScrollPattern pattern = element.Patterns.Scroll.Pattern;
@@ -183,7 +183,7 @@ private static IEnumerable<PatternItem> AddScrollPatternDetails(AutomationElemen
183183
}
184184

185185
private static IEnumerable<PatternItem> AddRangeValuePatternDetails(AutomationElement? element) {
186-
if(element==null) {
186+
if (element == null) {
187187
yield break;
188188
}
189189
IRangeValuePattern pattern = element.Patterns.RangeValue.Pattern;
@@ -196,7 +196,7 @@ private static IEnumerable<PatternItem> AddRangeValuePatternDetails(AutomationEl
196196
}
197197

198198
private static IEnumerable<PatternItem> AddLegacyIAccessiblePatternDetails(AutomationElement? element) {
199-
if(element==null) {
199+
if (element == null) {
200200
yield break;
201201
}
202202
ILegacyIAccessiblePattern pattern = element.Patterns.LegacyIAccessible.Pattern;
@@ -216,7 +216,7 @@ private static IEnumerable<PatternItem> AddLegacyIAccessiblePatternDetails(Autom
216216
}
217217

218218
private static IEnumerable<PatternItem> AddGridPatternPatternDetails(AutomationElement? element) {
219-
if(element==null) {
219+
if (element == null) {
220220
yield break;
221221
}
222222
IGridPattern pattern = element.Patterns.Grid.Pattern;
@@ -225,10 +225,10 @@ private static IEnumerable<PatternItem> AddGridPatternPatternDetails(AutomationE
225225
}
226226

227227
private static IEnumerable<PatternItem> AddDetailsDetails(AutomationElement? element) {
228-
if(element==null) {
228+
if (element == null) {
229229
yield break;
230230
}
231-
231+
232232
// Element details
233233
yield return PatternItem.FromAutomationProperty("IsEnabled", element.Properties.IsEnabled);
234234
yield return PatternItem.FromAutomationProperty("IsOffscreen", element.Properties.IsOffscreen);
@@ -246,10 +246,10 @@ private static IEnumerable<PatternItem> AddDetailsDetails(AutomationElement? ele
246246
}
247247

248248
private static IEnumerable<PatternItem> AddIdentificationDetails(AutomationElement? element) {
249-
if(element==null) {
249+
if (element == null) {
250250
yield break;
251251
}
252-
252+
253253
yield return PatternItem.FromAutomationProperty("AutomationId", element.Properties.AutomationId);
254254
yield return PatternItem.FromAutomationProperty("Name", element.Properties.Name);
255255
yield return PatternItem.FromAutomationProperty("ClassName", element.Properties.ClassName);
@@ -261,7 +261,7 @@ private static IEnumerable<PatternItem> AddIdentificationDetails(AutomationEleme
261261
}
262262

263263
private static IEnumerable<PatternItem> AddWindowPatternDetails(AutomationElement? element) {
264-
if(element==null) {
264+
if (element == null) {
265265
yield break;
266266
}
267267

@@ -275,7 +275,7 @@ private static IEnumerable<PatternItem> AddWindowPatternDetails(AutomationElemen
275275
}
276276

277277
private static IEnumerable<PatternItem> AddGridItemPatternDetails(AutomationElement? element) {
278-
if(element==null) {
278+
if (element == null) {
279279
yield break;
280280
}
281281

@@ -302,8 +302,7 @@ private static string GetTextAttribute<T>(AutomationElement element, ITextPatter
302302
try {
303303
T converted = (T)value;
304304
return func(converted);
305-
}
306-
catch {
305+
} catch {
307306
return $"Conversion to ${typeof(T)} failed";
308307
}
309308
}

src/FlaUInspect/Core/TreeViewItemBringIntoViewBehavior.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,7 @@ private static void OnMonitorSelectionChanged(DependencyObject d, DependencyProp
2323
if (d is TreeViewItem tvi && e.NewValue is bool value) {
2424
if (value) {
2525
tvi.Selected += TreeViewItem_Selected;
26-
}
27-
else {
26+
} else {
2827
tvi.Selected -= TreeViewItem_Selected;
2928
}
3029
}

src/FlaUInspect/ViewModels/ElementViewModel.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
namespace FlaUInspect.ViewModels;
99

1010
public class ElementViewModel(AutomationElement? automationElement, ILogger logger) : ObservableObject {
11-
private readonly object _lockObject = new ();
11+
private readonly object _lockObject = new();
1212
public AutomationElement? AutomationElement { get; } = automationElement;
1313

1414
public bool IsExpanded {
@@ -52,9 +52,9 @@ public void LoadChildren(int level) {
5252
List<ElementViewModel?> childrenViewModels = [];
5353

5454
try {
55-
if(AutomationElement!=null) {
55+
if (AutomationElement != null) {
5656
foreach (AutomationElement child in AutomationElement.FindAllChildren()) {
57-
ElementViewModel childViewModel = new (child, logger);
57+
ElementViewModel childViewModel = new(child, logger);
5858
childViewModel.Children.Add(null);
5959

6060
childViewModel.SelectionChanged += SelectionChanged;
@@ -66,8 +66,7 @@ public void LoadChildren(int level) {
6666
}
6767
}
6868
}
69-
}
70-
catch (Exception ex) {
69+
} catch (Exception ex) {
7170
logger.LogError($"Exception: {ex.Message}");
7271
}
7372

src/FlaUInspect/ViewModels/MainViewModel.cs

Lines changed: 27 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ namespace FlaUInspect.ViewModels;
2323
[SuppressMessage("Interoperability", "CA1416:Validate platform compatibility")]
2424
public class MainViewModel : ObservableObject {
2525

26-
private readonly object _itemsLock = new ();
26+
private readonly object _itemsLock = new();
2727
private readonly InternalLogger _logger;
2828
private AutomationBase? _automation;
2929
private RelayCommand? _captureSelectedItemCommand;
@@ -51,12 +51,11 @@ public MainViewModel(AutomationType automationType, InternalLogger logger) {
5151

5252
public ICommand OpenErrorListCommand =>
5353
_openErrorListCommand ??= new RelayCommand(_ => {
54-
if (!_logger.Messages.IsEmpty) {
55-
ErrorListWindow errorListWindow = new (_logger);
56-
errorListWindow.ShowDialog();
57-
}
58-
},
59-
_ => !_logger.Messages.IsEmpty);
54+
if (!_logger.Messages.IsEmpty) {
55+
ErrorListWindow errorListWindow = new(_logger);
56+
errorListWindow.ShowDialog();
57+
}
58+
}, _ => !_logger.Messages.IsEmpty);
6059

6160
public int ErrorCount {
6261
get => GetProperty<int>();
@@ -69,8 +68,7 @@ public bool EnableHoverMode {
6968
if (SetProperty(value)) {
7069
if (value) {
7170
_hoverMode?.Start();
72-
}
73-
else {
71+
} else {
7472
_hoverMode?.Stop();
7573
}
7674
}
@@ -83,8 +81,7 @@ public bool EnableFocusTrackingMode {
8381
if (SetProperty(value)) {
8482
if (value) {
8583
_focusTrackingMode?.Start();
86-
}
87-
else {
84+
} else {
8885
_focusTrackingMode?.Stop();
8986
}
9087
}
@@ -105,7 +102,7 @@ public AutomationType SelectedAutomationType {
105102

106103
public ICommand StartNewInstanceCommand =>
107104
_startNewInstanceCommand ??= new RelayCommand(_ => {
108-
ProcessStartInfo info = new (Assembly.GetExecutingAssembly().Location);
105+
ProcessStartInfo info = new(Assembly.GetExecutingAssembly().Location);
109106
Process.Start(info);
110107
});
111108

@@ -115,8 +112,7 @@ public AutomationType SelectedAutomationType {
115112
return;
116113
}
117114
Bitmap capturedImage = SelectedItem.AutomationElement.Capture();
118-
SaveFileDialog saveDialog = new ()
119-
{
115+
SaveFileDialog saveDialog = new() {
120116
Filter = "Png file (*.png)|*.png"
121117
};
122118

@@ -186,8 +182,7 @@ private void ReadPatternsForSelectedItem(AutomationElement? selectedItemAutomati
186182
elementPattern.IsVisible = false;
187183
}
188184
}
189-
}
190-
catch (Exception e) {
185+
} catch (Exception e) {
191186
_logger.LogError(e.ToString());
192187
}
193188
}
@@ -196,7 +191,7 @@ public void Initialize() {
196191
_automation = (SelectedAutomationType == AutomationType.UIA2 ? (AutomationBase?)new UIA2Automation() : new UIA3Automation()) ?? new UIA3Automation();
197192
_patternItemsFactory = new PatternItemsFactory(_automation);
198193
_rootElement = _automation.GetDesktop();
199-
ElementViewModel desktopViewModel = new (_rootElement, _logger);
194+
ElementViewModel desktopViewModel = new(_rootElement, _logger);
200195

201196
desktopViewModel.SelectionChanged += obj => {
202197
SelectedItem = obj;
@@ -227,27 +222,24 @@ public void Initialize() {
227222
}
228223

229224
private ObservableCollection<ElementPatternItem> GetDefaultPatternList() {
230-
return new ObservableCollection<ElementPatternItem>(
231-
new[]
232-
{
233-
new ElementPatternItem("Identification", PatternItemsFactory.Identification, true, true),
234-
new ElementPatternItem("Details", PatternItemsFactory.Details, true, true),
235-
new ElementPatternItem("Pattern Support", PatternItemsFactory.PatternSupport, true, true)
236-
}
237-
.Concat(
238-
(_automation?.PatternLibrary.AllForCurrentFramework ?? [])
239-
.Select(x => {
240-
ElementPatternItem patternItem = new (x.Name, x.Name)
241-
{
242-
IsVisible = true
243-
};
244-
return patternItem;
245-
})));
225+
return new ObservableCollection<ElementPatternItem>(new[] {
226+
new ElementPatternItem("Identification", PatternItemsFactory.Identification, true, true),
227+
new ElementPatternItem("Details", PatternItemsFactory.Details, true, true),
228+
new ElementPatternItem("Pattern Support", PatternItemsFactory.PatternSupport, true, true)
229+
}
230+
.Concat(
231+
(_automation?.PatternLibrary.AllForCurrentFramework ?? [])
232+
.Select(x => {
233+
ElementPatternItem patternItem = new(x.Name, x.Name) {
234+
IsVisible = true
235+
};
236+
return patternItem;
237+
})));
246238
}
247239

248240
private void ElementToSelectChanged(AutomationElement? obj) {
249241
// Build a stack from the root to the hovered item
250-
Stack<AutomationElement> pathToRoot = new ();
242+
Stack<AutomationElement> pathToRoot = new();
251243

252244
while (obj != null) {
253245
// Break on circular relationship (should not happen?)
@@ -259,8 +251,7 @@ private void ElementToSelectChanged(AutomationElement? obj) {
259251

260252
try {
261253
obj = _treeWalker?.GetParent(obj);
262-
}
263-
catch (Exception ex) {
254+
} catch (Exception ex) {
264255
_logger.LogError($"Exception: {ex.Message}");
265256
}
266257
}

0 commit comments

Comments
 (0)