Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP1:GA
gnome-shell
gnome-shell-prompt-twice.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnome-shell-prompt-twice.patch of Package gnome-shell
diff -Npur gnome-shell-3.10.4/js/gdm/loginDialog.js gnome-shell-3.10.4-new/js/gdm/loginDialog.js --- gnome-shell-3.10.4/js/gdm/loginDialog.js 2014-04-30 08:30:11.883063332 +0800 +++ gnome-shell-3.10.4-new/js/gdm/loginDialog.js 2014-04-30 08:45:39.231044301 +0800 @@ -518,6 +518,11 @@ const LoginDialog = new Lang.Class({ this._disableUserList = undefined; this._userListLoaded = false; + this._nextSignalId = 0; + + this._realmManager = new Realmd.Manager(); + this._realmSignalId = this._realmManager.connect('login-format-changed', + Lang.bind(this, this._showRealmLoginHint)); // If the user list is enabled, it should take key focus; make sure the // screen shield is initialized first to prevent it from stealing the @@ -663,14 +668,14 @@ const LoginDialog = new Lang.Class({ //FIXME: if we realmManager did not work, use ower own one this._authPrompt.setMessage(_("(e.g., domain\\user)"), GdmUtil.MessageType.HINT); - let realmManager = new Realmd.Manager(); - let realmSignalId = realmManager.connect('login-format-changed', - Lang.bind(this, this._showRealmLoginHint)); - this._showRealmLoginHint(realmManager.loginFormat); + this._showRealmLoginHint(this._realmManager.loginFormat); - let nextSignalId = this._authPrompt.connect('next', + if (this._nextSignalId) + this._authPrompt.disconnect(this._nextSignalId); + this._nextSignalId = this._authPrompt.connect('next', Lang.bind(this, function() { - this._authPrompt.disconnect(nextSignalId); + this._authPrompt.disconnect(this._nextSignalId); + this._nextSignalId = 0; this._authPrompt.updateSensitivity(false); let answer = this._authPrompt.getAnswer(); this._user = this._userManager.get_user(answer); @@ -678,9 +683,6 @@ const LoginDialog = new Lang.Class({ this._authPrompt.startSpinning(); this._authPrompt.begin({ userName: answer }); this._updateCancelButton(); - - realmManager.disconnect(realmSignalId) - realmManager.release(); })); this._updateCancelButton(); this._showPrompt(); @@ -693,25 +695,22 @@ const LoginDialog = new Lang.Class({ //FIXME: I sugguest to add this info for customer to contact their account manager this._authPrompt.setMessage(this._domainMenuButton.getHintMessage(), GdmUtil.MessageType.HINT); - let realmManager = new Realmd.Manager(); - let realmSignalId = realmManager.connect('login-format-changed', - Lang.bind(this, this._showRealmLoginHint)); - this._showRealmLoginHint(realmManager.loginFormat); + this._showRealmLoginHint(this._realmManager.loginFormat); - let nextSignalId = this._authPrompt.connect('next', + if (this._nextSignalId) + this._authPrompt.disconnect(this._nextSignalId); + this._nextSignalId = this._authPrompt.connect('next', Lang.bind(this, function() { - this._authPrompt.disconnect(nextSignalId); + this._authPrompt.disconnect(this._nextSignalId); + this._nextSignalId = 0; this._authPrompt.updateSensitivity(false); let answer = this._authPrompt.getAnswer(); - let domain_answer = this._domainMenuButton.getDomainUser(answer); + let domain_answer = this._domainMenuButton.getDomainUser(answer); this._user = this._userManager.get_user(domain_answer); this._authPrompt.clear(); this._authPrompt.startSpinning(); this._authPrompt.begin({ userName: domain_answer}); this._updateCancelButton(); - - realmManager.disconnect(realmSignalId) - realmManager.release(); })); this._updateCancelButton(); this._showPrompt(); @@ -941,6 +940,11 @@ const LoginDialog = new Lang.Class({ this._userManager.disconnect(this._userManagerLoadedId); this._userManagerLoadedId = 0; } + if (this._realmManager) { + this._realmManager.disconnect(this._realmSignalId); + this._realmSignalId = 0; + this._realmManager.release(); + } }, _loadUserList: function() {
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor