mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-01-02 06:22:43 +00:00
fold handlePageChange directly into input onChange
Moved the single-line handler to operate directly in the onChange handler of the input that is calling it. Considered doing the same with handleZoomChange, but that handler is used by two buttons rather than just one.
This commit is contained in:
@@ -19,14 +19,10 @@ const ToolBar = ({ onZoomChange, currentPage, onPageChange, totalPages })=>{
|
|||||||
setPageNum(currentPage);
|
setPageNum(currentPage);
|
||||||
}, [currentPage])
|
}, [currentPage])
|
||||||
|
|
||||||
const handleZoomChange = (delta)=>{
|
const handleZoomButton = (delta)=>{
|
||||||
const zoomChange = _.clamp(zoomLevel + delta, MIN_ZOOM, MAX_ZOOM);
|
const newZoomLevel = _.clamp(zoomLevel + delta, MIN_ZOOM, MAX_ZOOM);
|
||||||
|
|
||||||
setZoomLevel(zoomChange);
|
setZoomLevel(newZoomLevel);
|
||||||
};
|
|
||||||
|
|
||||||
const handlePageChange = (page)=>{
|
|
||||||
setPageNum(page);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const scrollToPage = (pageNumber) => {
|
const scrollToPage = (pageNumber) => {
|
||||||
@@ -47,7 +43,7 @@ const ToolBar = ({ onZoomChange, currentPage, onPageChange, totalPages })=>{
|
|||||||
<button
|
<button
|
||||||
id='zoom-out'
|
id='zoom-out'
|
||||||
className='tool'
|
className='tool'
|
||||||
onClick={()=>handleZoomChange(-20)}
|
onClick={()=>handleZoomButton(-20)}
|
||||||
disabled={zoomLevel <= MIN_ZOOM}
|
disabled={zoomLevel <= MIN_ZOOM}
|
||||||
>
|
>
|
||||||
<i className='fas fa-magnifying-glass-minus' />
|
<i className='fas fa-magnifying-glass-minus' />
|
||||||
@@ -71,7 +67,7 @@ const ToolBar = ({ onZoomChange, currentPage, onPageChange, totalPages })=>{
|
|||||||
<button
|
<button
|
||||||
id='zoom-in'
|
id='zoom-in'
|
||||||
className='tool'
|
className='tool'
|
||||||
onClick={()=>handleZoomChange(20)}
|
onClick={()=>handleZoomButton(20)}
|
||||||
disabled={zoomLevel >= MAX_ZOOM}
|
disabled={zoomLevel >= MAX_ZOOM}
|
||||||
>
|
>
|
||||||
<i className='fas fa-magnifying-glass-plus' />
|
<i className='fas fa-magnifying-glass-plus' />
|
||||||
@@ -97,12 +93,10 @@ const ToolBar = ({ onZoomChange, currentPage, onPageChange, totalPages })=>{
|
|||||||
inputMode='numeric'
|
inputMode='numeric'
|
||||||
pattern='[0-9]'
|
pattern='[0-9]'
|
||||||
value={pageNum}
|
value={pageNum}
|
||||||
onChange={(e)=>{
|
onChange={(e)=>{setPageNum(e.target.value == false ? e.target.value : parseInt(e.target.value));}}
|
||||||
handlePageChange(e.target.value == false ? e.target.value : parseInt(e.target.value));}}
|
|
||||||
onBlur={()=>scrollToPage(pageNum)}
|
onBlur={()=>scrollToPage(pageNum)}
|
||||||
onKeyDown={(e)=>{e.key == 'Enter' ? scrollToPage(pageNum) : null;}}
|
onKeyDown={(e)=>{e.key == 'Enter' ? scrollToPage(pageNum) : null;}}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<span id='page-count'>/ {totalPages}</span>
|
<span id='page-count'>/ {totalPages}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user