From: Alexander Ebert Date: Wed, 13 Sep 2017 11:53:50 +0000 (+0200) Subject: Merge remote-tracking branch 'refs/remotes/origin/3.0' X-Git-Tag: 3.1.0_Alpha_4~12 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=dfd3797185146144fadca30242f778abb455f859;p=GitHub%2FWoltLab%2FWCF.git Merge remote-tracking branch 'refs/remotes/origin/3.0' # Conflicts: # wcfsetup/install/files/acp/templates/applicationEdit.tpl # wcfsetup/install/files/js/WoltLabSuite/Core/Ui/Dialog.js # wcfsetup/install/files/lib/acp/form/ApplicationEditForm.class.php --- dfd3797185146144fadca30242f778abb455f859 diff --cc wcfsetup/install/files/acp/templates/applicationEdit.tpl index 440a08c057,20a003e333..cef14c3eb2 --- a/wcfsetup/install/files/acp/templates/applicationEdit.tpl +++ b/wcfsetup/install/files/acp/templates/applicationEdit.tpl @@@ -65,7 -65,7 +65,7 @@@ {foreach from=$pageNodeList item=pageNode} - {if !$pageNode->requireObjectID && !$pageNode->excludeFromLandingPage} - {if !$pageNode->isDisabled && !$pageNode->requireObjectID} ++ {if !$pageNode->isDisabled && !$pageNode->requireObjectID && !$pageNode->excludeFromLandingPage} {/if} {/foreach} diff --cc wcfsetup/install/files/js/WoltLabSuite/Core/Ui/Dialog.js index b4b310a3f8,a14e54da84..a291324533 --- a/wcfsetup/install/files/js/WoltLabSuite/Core/Ui/Dialog.js +++ b/wcfsetup/install/files/js/WoltLabSuite/Core/Ui/Dialog.js @@@ -344,34 -341,11 +344,34 @@@ define dialog.appendChild(contentContainer); contentContainer.addEventListener('wheel', function (event) { - // negative value: scrolling up - if (event.deltaY < 0 && contentContainer.scrollTop === 0) { - event.preventDefault(); + var allowScroll = false; + var element = event.target, clientHeight, scrollHeight, scrollTop; + while (true) { + clientHeight = element.clientHeight; + scrollHeight = element.scrollHeight; + + if (clientHeight < scrollHeight) { + scrollTop = element.scrollTop; + - // positive value: scrolling up - if (event.wheelDelta > 0 && scrollTop > 0) { ++ // negative value: scrolling up ++ if (event.deltaY < 0 && scrollTop > 0) { + allowScroll = true; + break; + } - else if (event.wheelDelta < 0 && (scrollTop + clientHeight < scrollHeight)) { ++ else if (event.deltaY > 0 && (scrollTop + clientHeight < scrollHeight)) { + allowScroll = true; + break; + } + } + + if (!element || element === contentContainer) { + break; + } + + element = element.parentNode; } - else if (event.deltaY > 0 && (contentContainer.scrollTop + contentContainer.clientHeight === contentContainer.scrollHeight)) { + + if (allowScroll === false) { event.preventDefault(); } }); diff --cc wcfsetup/install/files/lib/acp/form/ApplicationEditForm.class.php index 66842b64c8,d8403dbf7e..16371a8def --- a/wcfsetup/install/files/lib/acp/form/ApplicationEditForm.class.php +++ b/wcfsetup/install/files/lib/acp/form/ApplicationEditForm.class.php @@@ -183,7 -183,7 +183,7 @@@ class ApplicationEditForm extends Abstr if (!$page->pageID) { throw new UserInputException('landingPageID'); } - else if ($page->requireObjectID || $page->excludeFromLandingPage) { - else if ($page->requireObjectID || $page->isDisabled) { ++ else if ($page->requireObjectID || $page->excludeFromLandingPage || $page->isDisabled) { throw new UserInputException('landingPageID', 'invalid'); } }