diff options
author | Sascha <GlancingMind@outlook.com> | 2021-05-25 14:07:27 +0200 |
---|---|---|
committer | Sascha <GlancingMind@outlook.com> | 2021-05-25 14:14:57 +0200 |
commit | 098bcd0c1f26d0896e7ede3edb4040b01bc3126a (patch) | |
tree | c651ca503969df4c2146cb12c705c2c5c7bef661 /webui/src/pages/bug/CommentForm.tsx | |
parent | 3d4385483e1a2e43814e4b3d83221f1a3477cb88 (diff) | |
download | git-bug-098bcd0c1f26d0896e7ede3edb4040b01bc3126a.tar.gz |
WebUI: Add comment-and-close of a bug in one step
When a user has some text entered in the comment field, the close bug
button will change to "Close bug with comment". This way the user does
not have to comment and close a bug in two separate steps.
Diffstat (limited to 'webui/src/pages/bug/CommentForm.tsx')
-rw-r--r-- | webui/src/pages/bug/CommentForm.tsx | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/webui/src/pages/bug/CommentForm.tsx b/webui/src/pages/bug/CommentForm.tsx index a8ce4319..fb33a8be 100644 --- a/webui/src/pages/bug/CommentForm.tsx +++ b/webui/src/pages/bug/CommentForm.tsx @@ -6,6 +6,7 @@ import { makeStyles, Theme } from '@material-ui/core/styles'; import CommentInput from '../../components/CommentInput/CommentInput'; import CloseBugButton from 'src/components/CloseBugButton/CloseBugButton'; +import CloseBugWithCommentButton from 'src/components/CloseBugWithCommentButton/CloseBugWithCommentButton'; import ReopenBugButton from 'src/components/ReopenBugButton/ReopenBugButton'; import { BugFragment } from './Bug.generated'; @@ -77,12 +78,14 @@ function CommentForm({ bug }: Props) { if (issueComment.length > 0) submit(); }; - function getCloseButton() { - return <CloseBugButton bug={bug} disabled={issueComment.length > 0} />; - } - - function getReopenButton() { - return <ReopenBugButton bug={bug} disabled={issueComment.length > 0} />; + function getBugStatusButton() { + if (bug.status === 'OPEN' && issueComment.length > 0) { + return <CloseBugWithCommentButton bug={bug} comment={issueComment} />; + } else if (bug.status === 'OPEN') { + return <CloseBugButton bug={bug} />; + } else { + return <ReopenBugButton bug={bug} disabled={issueComment.length > 0} />; + } } return ( @@ -94,7 +97,7 @@ function CommentForm({ bug }: Props) { onChange={(comment: string) => setIssueComment(comment)} /> <div className={classes.actions}> - {bug.status === 'OPEN' ? getCloseButton() : getReopenButton()} + {getBugStatusButton()} <Button className={classes.greenButton} variant="contained" |