remote-search: implement new ActivateResult() method

This allows us to fix the shortcomings of the original ActivateResult()
method. In particular:
- allow to pass the search terms to the provider
- allow to pass a user interaction timestamp

https://bugzilla.gnome.org/show_bug.cgi?id=689735
This commit is contained in:
Cosimo Cecchi 2012-12-05 11:48:22 -05:00
parent 9b846cbb83
commit ec7ade4ee6
2 changed files with 5 additions and 4 deletions

View File

@ -285,8 +285,8 @@ const RemoteSearchProvider2 = new Lang.Class({
this.canLaunchSearch = true;
},
activateResult: function(id) {
this.proxy.ActivateResultRemote(id, [], 0);
activateResult: function(id, terms) {
this.proxy.ActivateResultRemote(id, terms, global.get_current_time());
},
launchSearch: function(terms) {

View File

@ -22,6 +22,7 @@ const SearchResult = new Lang.Class({
_init: function(provider, metaInfo, terms) {
this.provider = provider;
this.metaInfo = metaInfo;
this.terms = terms;
this.actor = new St.Button({ style_class: 'search-result',
reactive: true,
x_align: St.Align.START,
@ -73,7 +74,7 @@ const SearchResult = new Lang.Class({
},
activate: function() {
this.provider.activateResult(this.metaInfo.id);
this.provider.activateResult(this.metaInfo.id, this.terms);
Main.overview.toggle();
},
@ -96,7 +97,7 @@ const SearchResult = new Lang.Class({
if (this.provider.dragActivateResult)
this.provider.dragActivateResult(this.metaInfo.id, params);
else
this.provider.activateResult(this.metaInfo.id);
this.provider.activateResult(this.metaInfo.id, this.terms);
}
});