public void CheckAuthorization()
        {
            AuthorizationEventArgs args = new AuthorizationEventArgs();

            try {
                args.Auth = fr.CheckLogin();
            } catch (FlickrException e) {
                args.Exception = e;
            }

            Gtk.Application.Invoke(this, args, delegate(object sender, EventArgs sargs) {
                AuthorizationEventArgs wargs = (AuthorizationEventArgs)sargs;

                do_export_flickr.Sensitive = wargs.Auth != null;
                if (wargs.Auth != null)
                {
                    token        = wargs.Auth.Token;
                    auth         = wargs.Auth;
                    CurrentState = State.Authorized;
                    Preferences.Set(current_service.PreferencePath, token);
                }
                else
                {
                    CurrentState = State.Disconnected;
                }
            });
        }