Merge pull request #21541 from nextcloud/backport/21417/stable19

[stable19] Fix modal support for vue apps and dark theme
This commit is contained in:
Joas Schilling 2020-06-24 13:32:57 +02:00 committed by GitHub
commit d4343de3eb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 20 additions and 11 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -107,7 +107,7 @@ const Dialogs = {
'none', 'none',
buttons, buttons,
callback, callback,
modal modal === undefined ? true : modal
) )
}, },
/** /**

View File

@ -72,6 +72,10 @@
height: 100%; height: 100%;
} }
body.dark .oc-dialog-dim {
opacity: .8;
}
.oc-dialog-content { .oc-dialog-content {
width: 100%; width: 100%;
max-width: 550px; max-width: 550px;

View File

@ -210,9 +210,14 @@ $.widget('oc.ocdialog', {
} }
const self = this const self = this
let contentDiv = $('#content')
if (contentDiv.length === 0) {
// nextcloud-vue compatibility
contentDiv = $('.content')
}
this.overlay = $('<div>') this.overlay = $('<div>')
.addClass('oc-dialog-dim') .addClass('oc-dialog-dim')
.appendTo($('#content')) .appendTo(contentDiv)
this.overlay.on('click keydown keyup', function(event) { this.overlay.on('click keydown keyup', function(event) {
if (event.target !== self.$dialog.get(0) && self.$dialog.find($(event.target)).length === 0) { if (event.target !== self.$dialog.get(0) && self.$dialog.find($(event.target)).length === 0) {
event.preventDefault() event.preventDefault()