@Greenozaur,
This is a tricky one! I think I found a solution–look at Page 2 of this updated file and see if it works for you. (Caveat: I did this on Windows 10 system with Chrome browser.)
input field - file type.rp (74.7 KB)
Your approach makes sense–using the OnTextChange event to evaluate the filename–the text content of the File Input Field. I noticed you were testing if the text value did not equal “No file chosen” --but that is not actually the text value of the input field. Rather, that is its “hint” value. The actual default text value is blank. A reliable way to test if text is “not blank” is to evaluate the “length of the widget value”; if it is greater than 0 (zero) it must not be blank. However, fixing this still did not work. it turns out the OnTextChange event never gets fired, even after the text does change, so nothing happens. This to me appears like a bug.
To figure out what was going on, I assigned “dummy actions” to all the possible events for the File Input Field and then in the browser, viewed the Axure Console and started the Trace. It turns out that when user clicks on the File Input Field, it gets focus–firing the OnFocus event, which makes sense. This also triggers the OS file dialog to open, and the input field loses focus (firing its OnLostFocus event)–also makes sense. When the OS file dialog closes it returns focus to the File Input Field, once again firing its OnFocus event. So, I thought, “Aha! just use the OnFocus event to test the length of text value.” but this also failed. It takes some small amount of time after the focus is returned for the OS and/or browser to change the text on the File Input Field, so if the OnFocus event evaluates its own text, it will not yet have changed. So, we have to wait a little bit for the filename to come in before testing the text value. To accomplish this, I added a “Wait 1000 ms” and then an action to “Move success by (0, 0)”. This won’t result in any actual movement but it will trigger the OnMove event for the “success” widget, which you want to show if a file has been chosen (correct?) The OnMove has a condition to test the length of the “file name” widget text value, and if greater than zero, show itself and enable the CREATE button. …Whew!
To make this more reliable and add some feedback for the user, you could extend the Wait duration and show a little rotating “busy” GIF or text with “Uploading file…” or something.