From aec130e43bcbe1929fa59c05ab88968396ca8ea8 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Mon, 2 Jan 2023 17:51:24 +0100 Subject: [PATCH 01/14] Use BaseDialog instead of QuestionDialog --- .../components/_LinkModal.pcss | 15 ++- .../components/FormattingButtons.tsx | 2 +- .../wysiwyg_composer/components/LinkModal.tsx | 99 ++++++++++++------- .../components/LinkModal-test.tsx | 1 + 4 files changed, 78 insertions(+), 39 deletions(-) diff --git a/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss b/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss index 5bd02cc245a..0610a90c4cd 100644 --- a/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss +++ b/res/css/views/rooms/wysiwyg_composer/components/_LinkModal.pcss @@ -17,13 +17,18 @@ limitations under the License. .mx_LinkModal { padding: $spacing-32; - .mx_Dialog_content { - margin-top: 30px; - margin-bottom: 42px; - } - .mx_LinkModal_content { display: flex; flex-direction: column; + + .mx_LinkModal_buttons { + display: flex; + align-items: baseline; + + .mx_Dialog_buttons { + display: inline-block; + } + } } + } diff --git a/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx b/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx index d2cafb11989..6f85328ba56 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/FormattingButtons.tsx @@ -120,7 +120,7 @@ export function FormattingButtons({ composer, actionStates }: FormattingButtonsP + onClose()} + /> - } - /> + + ); } diff --git a/test/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx b/test/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx index c2fd1aeff20..5ea5d3a4c0c 100644 --- a/test/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx +++ b/test/components/views/rooms/wysiwyg_composer/components/LinkModal-test.tsx @@ -42,6 +42,7 @@ describe("LinkModal", () => { isTextEnabled={isTextEnabled} onClose={onClose} composerContext={{ selection: defaultValue }} + isEdition={false} />, ); }; From f143a14271029c262512756f0036d33b484c9bf6 Mon Sep 17 00:00:00 2001 From: Florian Duros Date: Tue, 3 Jan 2023 16:04:44 +0100 Subject: [PATCH 02/14] Add Remove behavior for link --- .../wysiwyg_composer/components/LinkModal.tsx | 33 ++++++++++--------- .../components/LinkModal-test.tsx | 16 +++++++-- 2 files changed, 32 insertions(+), 17 deletions(-) diff --git a/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx b/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx index fcda58cc98a..07e17ed4c91 100644 --- a/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx +++ b/src/components/views/rooms/wysiwyg_composer/components/LinkModal.tsx @@ -28,7 +28,7 @@ import DialogButtons from "../../../elements/DialogButtons"; export function openLinkModal( composer: FormattingFunctions, composerContext: ComposerContextState, - isEdition: boolean, + isEditing: boolean, ) { const modal = Modal.createDialog( LinkModal, @@ -36,8 +36,8 @@ export function openLinkModal( composerContext, composer, onClose: () => modal.close(), - isTextEnabled: !isEdition && isSelectionEmpty(), - isEdition, + isTextEnabled: !isEditing && isSelectionEmpty(), + isEditing, }, "mx_CompoundDialog", false, @@ -54,22 +54,21 @@ interface LinkModalProps { isTextEnabled: boolean; onClose: () => void; composerContext: ComposerContextState; - isEdition: boolean; + isEditing: boolean; } -export function LinkModal({ composer, isTextEnabled, onClose, composerContext, isEdition }: LinkModalProps) { +export function LinkModal({ composer, isTextEnabled, onClose, composerContext, isEditing }: LinkModalProps) { const [fields, setFields] = useState({ text: "", link: "" }); const isSaveDisabled = (isTextEnabled && isEmpty(fields.text)) || isEmpty(fields.link); return ( onClose()} >