These are chat archives for UXDivers/Grial-UI-Kit-Support

Mar 2017
Mar 27 2017 12:05

Hi @chad-stout , we have just uploaded a new version of the nuget packages. These packages include several changes to the "PropagateThemeTask" like:

  • reimplemented theme sync to support Shared projects too
  • improved error reporting
  • improved logging/feedback

The new version is available in the PreRelease channel. You will need the "Show pre-release packages" checkbox to be checked in order to install them.

Can you test them and please let me know if it fixes the issue you were experiencing?


Mar 27 2017 13:13

More details here:

We just uploaded a new version (2.0.43-RC) with a couple of additional fixes:

  • Theme Sync target was not correctly being installed in the iOS project (only affects VS) when packages where updated.
  • In previous pre-release version, warnings where incorrectly being reported when the target is included in a project that does participate in Theme Synchronisation
  • Themes.json was not correctly being loaded in Windows enviornments

We still need to update the documentation regarding this, specially the part of the troubleshooting. Now, Themes.json may contain these properties (the values reflect the default value of the property if not specified at all):

"ThemeSyncEnabled": true, -> If set to false, theme sync will not happened at all for the projects in the folder.
"AppXamlFullPath": null, -> The full path to the App.xaml, if specified the task will not try to infer it
"AppXamlProjectFullPath": null, -> This parameter is only considered if AppXamlFullPath was specified. The parameter specifies the full path to the project that contains the App.xaml. If only AppXamlFullPath is specified, the task will try to infer AppXamlProjectFullPath. If you specify both it will just stick to these.
"iOSColorsFileName": "ThemeColors.cs", -> Name of the Colors file in iOS, just in case someone need to change its name.
"AndroidColorsFile": "Resources\values\Colors.xml", -> Path of the Android.Colors.xaml, just in case the default one is changed.
"iOSColorsNamespace": null, -> Namespace used for the ThemesColor class. If not specified the default root namespace of the project will be used.
"ThemesFolder":"Themes", -> Specifies the name of the Folder where Themes are stored. This is just to optimize performance. We try to resolve the Theme XAML against the XAMLs within this folder first. If we don't find it we will look across the whole project.

One final comment. Now by default if the task fails for some reason it will report a Warning, not an Error. If you want to change this, and report an error you can do it by adding a property to your CS proj called GrialFailOnError and set it to true.

For example:

<?xml version="1.0" encoding="utf-8"?>

<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="">
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">iPhoneSimulator</Platform>

Please let us know if it fixes the issue you where experiencing and/or any other feedback you might have.

Mar 27 2017 18:58
@jpbrocca , don't worry :) I understand the amount of work that you guys have. I'd like to implement the V2 in my current sprint, any help upgrading will be appreciated. Thanks in advance.
Mar 27 2017 19:41
Thanks @stringo ...if you could tell me your email address -private message- I can move faster with replies. Thanks