Up to now, ScreenExtemsions.TryActivate(newItem) was called
before Conductor.ActiveItem was set to the new item. This commit moves
setting ActiveItem to before TryActivate(newItem) call. This allows for
nested activation - that is, a scenario where newItem can "intercept"
its activation and force parent Conductor to immediately activate
another item inside its OnActivate() override, effectively skipping
newItem without displaying it.
Fixes#140
Conductor<T>.Collections.OneActive has its ActiveItem set from a binding
in most cases. However, bindings swallow exceptions encountered when
setting the source. This means that the user switched to a new
ViewModel, and its OnActivate/OnInitialActivate method threw an
exception (or the OnDeactivate method of the ViewModel being switched
away from threw an exception), this exception would be swallowed by the
binding.
Work around this by introducing RethrowingBinding, which explicitly
rethrows any exceptions encountered when setting the source on the
dispatcher. Use this for the ActiveItem binding on
StyletConductorTabControl.
Fixes#133
* feature/netcore:
Update the README
More attempts to get sourcelink working
Actually, seems that the SourceLink advice is *not* to create a snupkg
Change how the nupkg is generated; integrate sourcelink
Fix up the Rakefile
Fix up the failing unit tests
Turns out it is possible to have a single csproj targetting both core and framework
Move Framework projects over to SDK-style using https://github.com/onovotny/MSBuildSdkExtras
WIP towards getting unit tests working
Split Stylet and IntegrationTests projects into Framework and Core
<EnableDefaultItems>false</EnableDefaultItems> along with
<Compile Include="**\*.cs" Exclude="obj\**" /> and <None Remove="**\*.cs" />
is needed, though.
Annoyingly we need to have two separate projects in two separate directories,
since Framework WPF projects aren't supported in sdk-style csprojs. The
Framework and Core projects also stamp over each others' bin and obj
directories, even if you set IntermediateFilePath, hence the need to put
them in entirely separate places