diff --git a/frappe/public/js/frappe/desk.js b/frappe/public/js/frappe/desk.js index 82987a5bb2..5b95421e1e 100644 --- a/frappe/public/js/frappe/desk.js +++ b/frappe/public/js/frappe/desk.js @@ -618,10 +618,12 @@ frappe.Application = Class.extend({ let sleep = (time) => { return new Promise((resolve) => setTimeout(resolve, time)); }; - frappe.dom.freeze(__('Copying {0}', [doc.doctype])); + frappe.dom.freeze(__('Creating {0}', [doc.doctype]) + '...'); + // to avoid abrupt UX + // wait for activity feedback sleep(500).then(() => { - frappe.model.with_doctype(doc.doctype, () => { + let res = frappe.model.with_doctype(doc.doctype, () => { let newdoc = frappe.model.copy_doc(doc); newdoc.__newname = doc.name; newdoc.idx = null; @@ -629,6 +631,7 @@ frappe.Application = Class.extend({ frappe.set_route('Form', newdoc.doctype, newdoc.name); frappe.dom.unfreeze(); }); + res && res.fail(frappe.dom.unfreeze); }); } } catch (e) { diff --git a/frappe/public/js/frappe/form/toolbar.js b/frappe/public/js/frappe/form/toolbar.js index 080ff504f0..145b8d3eed 100644 --- a/frappe/public/js/frappe/form/toolbar.js +++ b/frappe/public/js/frappe/form/toolbar.js @@ -286,7 +286,7 @@ frappe.ui.form.Toolbar = class Toolbar { } // copy doc to clipboard - this.page.add_menu_item(__("Copy {0}", [me.frm.doc.doctype]), function() { + this.page.add_menu_item(__("Copy to Clipboard"), function() { frappe.utils.copy_to_clipboard(JSON.stringify(me.frm.doc)); }, true);