diff options
author | Thibaut Girka <thib@sitedethib.com> | 2018-08-30 11:46:45 +0200 |
---|---|---|
committer | ThibG <thib@sitedethib.com> | 2018-08-30 13:20:37 +0200 |
commit | c20b27a9f44b69756624d7a15a52187d0486f03f (patch) | |
tree | 5afe055d047c255c0221f78808fa6f06c7fb6846 /app/javascript/flavours/glitch/features/composer/index.js | |
parent | 1544ac4e2798e969cb9d6d14a361f90517726cfc (diff) |
Restrict querySelectorAll to the upload form component
Diffstat (limited to 'app/javascript/flavours/glitch/features/composer/index.js')
-rw-r--r-- | app/javascript/flavours/glitch/features/composer/index.js | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/app/javascript/flavours/glitch/features/composer/index.js b/app/javascript/flavours/glitch/features/composer/index.js index b823f966f..bc409f0a3 100644 --- a/app/javascript/flavours/glitch/features/composer/index.js +++ b/app/javascript/flavours/glitch/features/composer/index.js @@ -222,7 +222,7 @@ const handlers = { // Submits the status. handleSubmit () { - const { textarea: { value } } = this; + const { textarea: { value }, uploadForm } = this; const { onChangeText, onSubmit, @@ -249,9 +249,11 @@ const handlers = { // Submit unless there are media with missing descriptions if (mediaDescriptionConfirmation && onMediaDescriptionConfirm && media && media.some(item => !item.get('description'))) { const firstWithoutDescription = media.findIndex(item => !item.get('description')); - const inputs = document.querySelectorAll('.composer--upload_form--item input'); - if (inputs.length == media.size && firstWithoutDescription !== -1) { - inputs[firstWithoutDescription].focus(); + if (uploadForm) { + const inputs = uploadForm.querySelectorAll('.composer--upload_form--item input'); + if (inputs.length == media.size && firstWithoutDescription !== -1) { + inputs[firstWithoutDescription].focus(); + } } onMediaDescriptionConfirm(); } else if (onSubmit) { @@ -259,6 +261,11 @@ const handlers = { } }, + // Sets a reference to the upload form. + handleRefUploadForm (uploadFormComponent) { + this.uploadForm = uploadFormComponent; + }, + // Sets a reference to the textarea. handleRefTextarea (textareaComponent) { if (textareaComponent) { @@ -365,6 +372,7 @@ class Composer extends React.Component { handleSecondarySubmit, handleSelect, handleSubmit, + handleRefUploadForm, handleRefTextarea, handleRefSpoilerText, } = this.handlers; @@ -455,6 +463,7 @@ class Composer extends React.Component { onRemove={onUndoUpload} progress={progress} uploading={isUploading} + handleRef={handleRefUploadForm} /> ) : null} <ComposerOptions |