Skip to content

Screenshot and video errors#104

Merged
veronika-tseleva-cleantalk merged 10 commits intodevfrom
screenshot-video-errors
May 7, 2026
Merged

Screenshot and video errors#104
veronika-tseleva-cleantalk merged 10 commits intodevfrom
screenshot-video-errors

Conversation

@veronika-tseleva-cleantalk
Copy link
Copy Markdown
Contributor

No description provided.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the widget’s attachment/screenshot handling to support video uploads and reduce screenshot-generation failures by introducing a dom-to-image-more-based capture path with an html2canvas fallback, alongside a small UI expand/collapse CSS adjustment.

Changes:

  • Allow additional attachment MIME types (video/mp4, video/webm).
  • Rework screenshot creation to try dom-to-image-more first (loaded dynamically) and fall back to html2canvas.
  • Adjust finished-tasks expansion styling and remove (comment out) console logging for attachment-send failures.

Reviewed changes

Copilot reviewed 3 out of 6 changed files in this pull request and generated 5 comments.

File Description
styles/doboard-widget.css Changes finished-tasks expanded container max-height behavior.
js/src/widget.js Alters error-handling logging behavior for attachment upload failures.
js/src/fileuploader.js Adds video MIME support and rewrites screenshot generation logic with a new dynamic loader.
dist/doboard-widget-bundle.js Updates the built bundle to reflect the source changes above.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread styles/doboard-widget.css
Comment thread js/src/widget.js
Comment thread js/src/fileuploader.js
Comment thread js/src/fileuploader.js
Comment on lines +397 to +408
async loadDomToImage() {
return new Promise((resolve, reject) => {
if (window.domtoimage) {
resolve(window.domtoimage);
return;
}
const script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/dom-to-image-more@3.1.6/dist/dom-to-image-more.min.js';
script.onload = () => resolve(window.domtoimage);
script.onerror = () => reject(new Error('Failed to load dom-to-image-more'));
document.head.appendChild(script);
});
Comment thread js/src/fileuploader.js
Copilot AI review requested due to automatic review settings May 5, 2026 16:37
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copilot AI review requested due to automatic review settings May 5, 2026 18:03
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 7 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread js/src/fileuploader.js
Comment thread js/src/fileuploader.js
Comment thread js/src/fileuploader.js Outdated
Copilot AI review requested due to automatic review settings May 5, 2026 19:25
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 7 changed files in this pull request and generated 2 comments.

Comments suppressed due to low confidence (1)

js/src/widget.js:373

  • signupContainer.style.display is being set to 'block'/'none', which will override CSS that expects this container to be display: flex when the widget is maximized (.doboard_task_widget-container-maximize .doboard_task_widget-auth-inputs-container). This can break the layout in maximized mode. Prefer toggling a hidden class (e.g. doboard_task_widget-hidden) or clearing the inline style ('') so the CSS rules can apply, and only set display: none when hiding.
                if (signupContainer) {
                    signupContainer.style.display = loginContainer?.classList?.contains('doboard_task_widget-hidden')
                    ? 'none'
                    : 'block'
                }

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread js/src/widget.js Outdated
Comment thread js/src/fileuploader.js
Comment on lines +397 to +408
async loadDomToImage() {
return new Promise((resolve, reject) => {
if (window.domtoimage) {
resolve(window.domtoimage);
return;
}
const script = document.createElement('script');
script.src = 'https://cdn.jsdelivr.net/npm/dom-to-image-more@3.1.6/dist/dom-to-image-more.min.js';
script.onload = () => resolve(window.domtoimage);
script.onerror = () => reject(new Error('Failed to load dom-to-image-more'));
document.head.appendChild(script);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants