diff --git a/bt5/erp5_autocompletion_ui/SkinTemplateItem/portal_skins/erp5_autocompletion_ui/jquery.erp5.autocompletion.js.xml b/bt5/erp5_autocompletion_ui/SkinTemplateItem/portal_skins/erp5_autocompletion_ui/jquery.erp5.autocompletion.js.xml index a7d858019c62dd1b4ae2eb514f7a3e8af41d65fe..899966304b9e4293467fe4b27cc4be349d331c4e 100644 --- a/bt5/erp5_autocompletion_ui/SkinTemplateItem/portal_skins/erp5_autocompletion_ui/jquery.erp5.autocompletion.js.xml +++ b/bt5/erp5_autocompletion_ui/SkinTemplateItem/portal_skins/erp5_autocompletion_ui/jquery.erp5.autocompletion.js.xml @@ -59,6 +59,13 @@ $(function() {\n });\n };\n }\n +\n + function search(event, ui) {\n + // Ignore key input if processing with Input Method Editor\n + if(event.keyCode == 229)\n + return false;\n + return true;\n + } \n \n /*\n * Wrapper around jQuery.ui.autocomplete that queries catalog\n @@ -78,7 +85,8 @@ $(function() {\n */\n $.fn.ERP5Autocomplete = function(kw) {\n return this.autocomplete({source: generateSource(kw),\n - delay: 600});\n + delay: 600,\n + search: search});\n };\n });\n </tal:block> diff --git a/bt5/erp5_autocompletion_ui/bt/change_log b/bt5/erp5_autocompletion_ui/bt/change_log index 42486c45c28d8b5e9bd23c33fd40489376545f80..8c73e84996eff5b178ff723d1facfec2bd98665a 100644 --- a/bt5/erp5_autocompletion_ui/bt/change_log +++ b/bt5/erp5_autocompletion_ui/bt/change_log @@ -1,3 +1,6 @@ +2014-02-06 arnaud.fontaine +* Support properly Input Method Editor for autocompletion. + 2014-01-27 arnaud.fontaine * RelationField: Implement autocompletion and use it by default once erp5_autocompletion_ui is installed. diff --git a/bt5/erp5_autocompletion_ui/bt/revision b/bt5/erp5_autocompletion_ui/bt/revision index 3cacc0b93c9c9c03a72da624ca28a09ba5c1336f..ca7bf83ac53a27a2a914bed25e1a07478dd8ef47 100644 --- a/bt5/erp5_autocompletion_ui/bt/revision +++ b/bt5/erp5_autocompletion_ui/bt/revision @@ -1 +1 @@ -12 \ No newline at end of file +13 \ No newline at end of file diff --git a/product/ERP5Form/MultiRelationField.py b/product/ERP5Form/MultiRelationField.py index 1c0eb97b05280a7711f0fc75f54055d920f7b86a..6aa081ca142a1a7f900495621f1e2760e736651c 100644 --- a/product/ERP5Form/MultiRelationField.py +++ b/product/ERP5Form/MultiRelationField.py @@ -382,7 +382,13 @@ class MultiRelationStringFieldWidget(Widget.LinesTextAreaWidget, <script type="text/javascript"> $(document).ready(function() { var autocomplete = $("input[name='%s']").ERP5Autocomplete({search_portal_type: %s, - search_catalog_key: "%s"}); + search_catalog_key: "%s"}) + .keyup(function(event) { + // With Input Method Editor, Enter allows to select between choices + if(event.keyCode == 13) { + $(this).autocomplete("search"); + } + }); autocomplete = autocomplete.data("autocomplete") ? // jQuery UI <= 1.8