Skip to content

Commit 8bf16e1

Browse files
Merge pull request #287 from AndreWohnsland/dev
Prevent page from scrolling on modals
2 parents 8c00448 + c02c432 commit 8bf16e1

File tree

5 files changed

+19
-3
lines changed

5 files changed

+19
-3
lines changed

web_client/src/components/bottle/BottleComponent.tsx

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,13 @@ const BottleComponent: React.FC<BottleProps> = ({
133133
</div>
134134
<ProgressBar fillPercent={fillPercent} onClick={openModal} className='col-span-2 sm:col-span-1 max-h-20' />
135135
</div>
136-
<Modal isOpen={isModalOpen} onRequestClose={closeModal} className='modal slim' overlayClassName='overlay z-20'>
136+
<Modal
137+
isOpen={isModalOpen}
138+
onRequestClose={closeModal}
139+
className='modal slim'
140+
overlayClassName='overlay z-20'
141+
preventScroll={true}
142+
>
137143
<div className='rounded w-full h-full flex flex-col'>
138144
<div className='pl-2 flex justify-between items-center mb-2'>
139145
<h2 className='text-xl font-bold text-secondary'>{selectedIngredient?.name || 'Ingredient'}</h2>

web_client/src/components/cocktail/CocktailList.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ const CocktailList: React.FC = () => {
9696
<CocktailSelection selectedCocktail={selectedCocktail} handleCloseModal={handleCloseModal} />
9797
)}
9898
</Modal>
99-
<Modal isOpen={singleIngredientOpen} className='modal slim' overlayClassName='overlay z-20'>
99+
<Modal isOpen={singleIngredientOpen} className='modal slim' overlayClassName='overlay z-20' preventScroll={true}>
100100
<SingleIngredientSelection onClose={() => setSingleIngredientOpen(false)} />
101101
</Modal>
102102
</div>

web_client/src/components/cocktail/ProgressModal.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ const ProgressModal: React.FC<ProgressModalProps> = ({
7373
className='modal'
7474
overlayClassName='overlay z-30'
7575
shouldCloseOnOverlayClick={false}
76+
preventScroll={true}
7677
>
7778
<div className='progress-modal h-full flex flex-col justify-between'>
7879
<h2 className='text-4xl font-bold mb-8 text-center text-secondary'>{displayName}</h2>

web_client/src/components/cocktail/RefillPrompt.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ const RefillPrompt: React.FC<RefillPromptProps> = ({ isOpen, message, bottleNumb
3131
};
3232

3333
return (
34-
<Modal isOpen={isOpen} className='modal slim' overlayClassName='overlay z-30'>
34+
<Modal isOpen={isOpen} className='modal slim' overlayClassName='overlay z-30' preventScroll={true}>
3535
<div className='flex flex-col items-center justify-center w-full h-full'>
3636
<div className='flex justify-between w-full mb-2'>
3737
<button

web_client/src/index.css

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,4 +216,13 @@ input[type='time']::-webkit-calendar-picker-indicator {
216216
right: 0;
217217
bottom: 0;
218218
background-color: rgba(0, 0, 0, 0.75);
219+
overflow: hidden;
220+
}
221+
222+
/* Class added to body when modal is open */
223+
.ReactModal__Body--open {
224+
overflow: hidden;
225+
position: fixed;
226+
width: 100%;
227+
height: 100%;
219228
}

0 commit comments

Comments
 (0)