From 538a5be99fc888995e9ddf3324f221d9f9cda28f Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Sun, 1 Jan 2023 13:51:10 +0530 Subject: [PATCH] feat: copy fieldname to clipboard on click minor dark mode color fix --- frappe/public/js/frappe/form/controls/base_control.js | 9 ++++++++- frappe/public/scss/common/css_variables.scss | 1 + frappe/public/scss/desk/dark.scss | 1 + frappe/public/scss/desk/form.scss | 6 +++--- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/frappe/public/js/frappe/form/controls/base_control.js b/frappe/public/js/frappe/form/controls/base_control.js index 37cb977fdc..2188f29e94 100644 --- a/frappe/public/js/frappe/form/controls/base_control.js +++ b/frappe/public/js/frappe/form/controls/base_control.js @@ -13,7 +13,14 @@ frappe.ui.form.Control = class BaseControl { .attr("data-fieldname", this.df.fieldname); this.wrapper = this.$wrapper.get(0); this.wrapper.fieldobj = this; // reference for event handlers - this.$wrapper.append(`${__(this.df.fieldname)}`); + + this.tooltip = $(`${__(this.df.fieldname)}`); + this.$wrapper.append(this.tooltip); + + this.tooltip.on("click", (e) => { + let text = $(e.target).text(); + frappe.utils.copy_to_clipboard(text); + }); } make_wrapper() { diff --git a/frappe/public/scss/common/css_variables.scss b/frappe/public/scss/common/css_variables.scss index d4a09beab1..1914e7479b 100644 --- a/frappe/public/scss/common/css_variables.scss +++ b/frappe/public/scss/common/css_variables.scss @@ -166,6 +166,7 @@ $input-height: 28px !default; --bg-red: var(--red-50); --bg-gray: var(--gray-200); --bg-light-gray: var(--gray-100); + --bg-dark-gray: var(--gray-900); --bg-purple: var(--purple-100); --bg-pink: var(--pink-50); --bg-cyan: var(--cyan-50); diff --git a/frappe/public/scss/desk/dark.scss b/frappe/public/scss/desk/dark.scss index b299c042d3..aad3e4b597 100644 --- a/frappe/public/scss/desk/dark.scss +++ b/frappe/public/scss/desk/dark.scss @@ -55,6 +55,7 @@ --bg-red: var(--red-500); --bg-gray: var(--gray-600); --bg-light-gray: var(--gray-700); + --bg-dark-gray: var(--gray-300); --bg-purple: var(--purple-600); --text-on-blue: var(--blue-50); diff --git a/frappe/public/scss/desk/form.scss b/frappe/public/scss/desk/form.scss index b2cb19baf7..80121db3cf 100644 --- a/frappe/public/scss/desk/form.scss +++ b/frappe/public/scss/desk/form.scss @@ -3,16 +3,16 @@ .tooltip-content { position: absolute; - bottom: 104%; + bottom: 100%; left: 0; z-index: 9999; padding: 2px 6px; border-radius: var(--border-radius-sm); - background: var(--gray-dark); + background-color: var(--bg-dark-gray); color: var(--text-dark); font-size: var(--text-xs); opacity: 0; - cursor: default; + cursor: copy; transition: opacity 0.3s, transform 3s; pointer-events: none; }