it is very confusing to see whether a repository has already been watched. i think the 'watch' button does turn a different color, but it is slow and im allowed to click on watch again. it would be so much better to have it as a checkbox in a settings screen for a given repository.
also including another inconsistency - picking "organizations " shows up in an overlay. everything else (repositories, branches, etc) is displayed on the main screen. the difference is a little jarring.
For the 'watch', I agree with you and I wanted to do the same but there is no direct API to know whether the current user is watching the repo. To do this, I need to call another API to get all the watched repos and check one by one with current repo that user is viewing. Imagine if the watched repos are large and with pagination, I need to query few times until I know the repo is being watched or not. I think this will slow down the app and also will reduce the allowed limit of the API call. Some how I think this is the important feature to have. I'll try to explore more on the API and find any possible solution. Same thing for 'fork' and 'follow'.
For inconsistency, yes you are right. Not sure why I did it like that :). Will fix it soon.
Fixed inconsistency for organization list. I will close this issue and reopen new one for the watched/unwatched