Yep, this is the part I wanted to talk about.

I think it should be a (custom) dialog that tells you that there is a browser window open, that you need to authorize the application there and come back. It would ask you for the authorization code, but we can skip that if we use localhost (but I'm probably not going to do this myself). After you enter the authorization code, it would display some kind of loading info to let you know it's doing something that then it would either show an error or that everything went fine.

The current solution is just the simplest thing I could do with the minimal amount of code.

I don't think this should be a text input in the options page, because there is some state hidden behind the input. I think it would be better to have something to guide you though the authorization process.