Browse Source

Fix some build and runtime warnings

Michael Ragazzon 5 years ago
parent
commit
859ffced00

+ 1 - 1
Source/Core/ElementAnimation.cpp

@@ -408,7 +408,7 @@ bool ElementAnimation::InternalAddKey(float time, const Property& in_property, E
 
 	if (!(in_property.unit & valid_properties))
 	{
-		Log::Message(Log::LT_WARNING, "Property '%s' is not a valid target for interpolation.", in_property.ToString().c_str());
+		Log::Message(Log::LT_WARNING, "Property value '%s' is not a valid target for interpolation.", in_property.ToString().c_str());
 		return false;
 	}
 

+ 6 - 2
Source/Core/ElementStyle.cpp

@@ -120,7 +120,10 @@ void ElementStyle::TransitionPropertyChanges(Element* element, PropertyIdSet& pr
 	// Now that we have the concept of computed values, we may want do this operation directly on them instead.
 	if (const Property* transition_property = GetLocalProperty(PropertyId::Transition, inline_properties, new_definition))
 	{
-		auto transition_list = transition_property->Get<TransitionList>();
+		if (transition_property->value.GetType() != Variant::TRANSITIONLIST)
+			return;
+
+		const TransitionList& transition_list = transition_property->value.GetReference<TransitionList>();
 
 		if (!transition_list.none)
 		{
@@ -149,7 +152,7 @@ void ElementStyle::TransitionPropertyChanges(Element* element, PropertyIdSet& pr
 			}
 			else
 			{
-				for (auto& transition : transition_list.transitions)
+				for (const Transition& transition : transition_list.transitions)
 				{
 					if (properties.Contains(transition.id))
 					{
@@ -912,6 +915,7 @@ PropertyIdSet ElementStyle::ComputeValues(Style::ComputedValues& values, const S
 			break;
 		// Unhandled properties. Must be manually retrieved with 'GetProperty()'.
 		case PropertyId::FillImage:
+		case PropertyId::CaretColor:
 			break;
 		// Invalid properties
 		case PropertyId::Invalid:

+ 3 - 3
Source/Core/TypeConverter.cpp

@@ -78,11 +78,11 @@ bool TypeConverter<TransitionList, String>::Convert(const TransitionList& src, S
 	for (size_t i = 0; i < src.transitions.size(); i++)
 	{
 		const Transition& t = src.transitions[i];
-		dest += StyleSheetSpecification::GetPropertyName(t.id) + " ";
-		dest += t.tween.to_string() + " ";
+		dest += StyleSheetSpecification::GetPropertyName(t.id) + ' ';
+		dest += t.tween.to_string() + ' ';
 		if (TypeConverter< float, String >::Convert(t.duration, tmp)) dest += tmp + "s ";
 		if (t.delay > 0.0f && TypeConverter< float, String >::Convert(t.delay, tmp)) dest += tmp + "s ";
-		if (t.reverse_adjustment_factor > 0.0f && TypeConverter< float, String >::Convert(t.delay, tmp)) dest += tmp;
+		if (t.reverse_adjustment_factor > 0.0f && TypeConverter< float, String >::Convert(t.reverse_adjustment_factor, tmp)) dest += tmp + ' ';
 		if (dest.size() > 0) dest.resize(dest.size() - 1);
 		if (i != src.transitions.size() - 1) dest += ", ";
 	}

+ 3 - 0
Source/Debugger/ElementLog.cpp

@@ -172,6 +172,9 @@ void ElementLog::AddLogMessage(Log::Type type, const String& message)
 					beacon_button->SetClassNames(log_types[type].class_name);
 					beacon_button->SetInnerRML(log_types[type].alert_contents);
 				}
+
+				// We need to update the document manually in case the beacon appears during context update.
+				beacon->UpdateDocument();
 			}
 		}
 	}