-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Removed ReactiveUI #661
Removed ReactiveUI #661
Conversation
a498442
to
2a2f342
Compare
👍 @distantcam I always enjoy the smell of a dependency removal 😌 I'm afraid I need to put my 🔰 hat on and ask to be lead by the hand through these changes... |
@adamralph Yeah I figured. The changes are "small" in that there's only 2 things being removed (ReactiveList and ReactiveCommand) but then the replacement code is non-trivial. We can go through it next week. |
@distantcam This looks good to me. Feel free to merge after your session with Adam. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please see comments.
@@ -0,0 +1,23 @@ | |||
namespace ServiceInsight.ExtensionMethods |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This class no longer contains extension methods so I guess it needs to go in another namespace.
} | ||
} | ||
|
||
public void RaiseCanExecuteChanged() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be private?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did we agree on this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought we had.
using System.Threading; | ||
using System.Windows.Input; | ||
|
||
class ObservableCommand : ICommand |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this class need to be thread-safe WRT accessing the isExecuting
and latest
fields? (I noticed the use Interlocked.Exchange
in Dispose
.)
Key = h.Key, | ||
Value = h.Value | ||
})); | ||
KeyValues.Add(new MessageHeaderKeyValue { Key = item.Key, Value = item.Value }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it matter that we are no longer batching these changes up into a single change notification?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed, this is OK.
bb0872e
to
13c2285
Compare
@adamralph Made the changes as discussed in Lisbon. Please review. |
CanExecuteChanged?.Invoke(this, EventArgs.Empty); | ||
} | ||
|
||
public void Dispose() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just realised that this class does not implement IDisposable
and this method has no callers, so it's redundant. Should we remove it, or should this class be IDisposable
?
} | ||
} | ||
|
||
public void RaiseCanExecuteChanged() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did we agree on this?
@adamralph Please review |
We're not really using ReactiveUI so I've removed it.