Bug 473641

Summary: Attempting to change the value within TimeInput may result in a binding loop property for "minutes".
Product: [Frameworks and Libraries] kirigami-addons Reporter: Unknown <null>
Component: generalAssignee: Unassigned bugs <unassigned-bugs-null>
Status: REPORTED ---    
Severity: normal CC: carl, nate
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: These are example codes that works and don't work.

Description Unknown 2023-08-22 16:29:31 UTC
Created attachment 161117 [details]
These are example codes that works and don't work.

SUMMARY
In QML, attempting to change the value within TimeInput may result in a binding loop property for "minutes".

STEPS TO REPRODUCE
1. Create a new Date object.
2. Set a custom time for the new object. 
3. Set the value property to be the new Date object.

OBSERVED RESULT
This results an error printing in the console, stating there is a binding loop detected for the 'minutes' property. This also results in the hour of the input to be the current time instead of the hour that was specifically set.

EXPECTED RESULT
The input field should just reflect the value property without any binding loops.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Arch Linux
KDE Plasma Version: 5.27.7
KDE Frameworks Version: 5.109.0
Qt Version: 5.15.10

ADDITIONAL INFORMATION
- One workaround I found is to set the something individually then set a value variable to the new Date object every time. For example, there will be no error if the hour is set, then the value becomes the new date, and after this, the minute is set the the value becomes the new date again. If this was done in one go, there will be an error.
- I think this issue is also from upstream, because I remember using it for one KDE application I was using it on, but I ran into the same issues.
- Calling valueToText() does not solve this issue.