Merge pull request #1958 from OpenRefine/issue1934
Make suggest items clickable with the middle button.
This commit is contained in:
commit
70094f68b2
@ -802,8 +802,12 @@ SchemaAlignmentDialog._initField = function(inputContainer, mode, initialValue,
|
|||||||
var suggestConfig = $.extend({}, endpoint);
|
var suggestConfig = $.extend({}, endpoint);
|
||||||
suggestConfig.key = null;
|
suggestConfig.key = null;
|
||||||
suggestConfig.query_param_name = "prefix";
|
suggestConfig.query_param_name = "prefix";
|
||||||
|
if ('view' in this._reconService && 'url' in this._reconService.view && !('view_url' in endpoint)) {
|
||||||
|
suggestConfig.view_url = this._reconService.view.url;
|
||||||
|
}
|
||||||
|
|
||||||
input.suggestP(suggestConfig).bind("fb-select", function(evt, data) {
|
|
||||||
|
input.suggest(suggestConfig).bind("fb-select", function(evt, data) {
|
||||||
inputContainer.data("jsonValue", {
|
inputContainer.data("jsonValue", {
|
||||||
type : "wbitemconstant",
|
type : "wbitemconstant",
|
||||||
qid : data.id,
|
qid : data.id,
|
||||||
|
@ -1299,6 +1299,20 @@
|
|||||||
name.append($("<span></span>").text(data.description));
|
name.append($("<span></span>").text(data.description));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If we know of a view URL for this suggest service,
|
||||||
|
// clicking with the middle button sends the user to
|
||||||
|
// the view page.
|
||||||
|
if('view_url' in this.options && data.id) {
|
||||||
|
var view_url = this.options.view_url.replace('{{id}}', data.id).replace('${id}', data.id);
|
||||||
|
li.on('mousedown', function(e) {
|
||||||
|
if (e.which == 2) {
|
||||||
|
var win = window.open(view_url, '_blank');
|
||||||
|
win.focus();
|
||||||
|
e.preventDefault();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
//console.log("create_item", li);
|
//console.log("create_item", li);
|
||||||
return li;
|
return li;
|
||||||
},
|
},
|
||||||
|
@ -200,6 +200,9 @@ DataTableCellUI.prototype._render = function() {
|
|||||||
var addSuggest = false;
|
var addSuggest = false;
|
||||||
if ((service) && (service.suggest) && (service.suggest.entity)) {
|
if ((service) && (service.suggest) && (service.suggest.entity)) {
|
||||||
suggestOptions = service.suggest.entity;
|
suggestOptions = service.suggest.entity;
|
||||||
|
if ('view' in service && 'url' in service.view && !('view_url' in suggestOptions)) {
|
||||||
|
suggestOptions.view_url = service.view.url;
|
||||||
|
}
|
||||||
addSuggest = true;
|
addSuggest = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -85,6 +85,9 @@ DataTableColumnHeaderUI.extendMenu(function(column, columnHeaderUI, menu) {
|
|||||||
if (service && service.suggest && service.suggest.entity) {
|
if (service && service.suggest && service.suggest.entity) {
|
||||||
suggestOptions = $.extend({}, service.suggest.entity);
|
suggestOptions = $.extend({}, service.suggest.entity);
|
||||||
suggestOptions.query_param_name = "prefix";
|
suggestOptions.query_param_name = "prefix";
|
||||||
|
if ('view' in service && 'url' in service.view && !('view_url' in suggestOptions)) {
|
||||||
|
suggestOptions.formatter_url = service.view.url;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var frame = DialogSystem.createDialog();
|
var frame = DialogSystem.createDialog();
|
||||||
|
Loading…
Reference in New Issue
Block a user