Changed the UI a bit, removed some elements and made it smaller.
Adding avrdude command after post-build works but I doubt if it is the solution, cause everytime sending avrdude command after build means you have to wait for the upload to complete if the arduino is actually connected and the wait becomes a lot longer when the arduino is NOT there and that also means a failed build when actually the build did not fail but the upload did.
So, am thinking.
Putting up an UPLOAD button, and upload only happens when user clicks the button.
so, now I need to figure that out, but if when user presses the button, it builds it first and if no error occurs then and only then it uploads it.