soiz1 commited on
Commit
8160e86
·
verified ·
1 Parent(s): 2c2f67d

Update src/components/menu-bar/google-drive-save.jsx

Browse files
src/components/menu-bar/google-drive-save.jsx CHANGED
@@ -17,6 +17,7 @@ class GoogleDriveSave extends React.Component {
17
  isModalOpen: false,
18
  isLoading: false
19
  };
 
20
  }
21
 
22
  componentDidMount() {
@@ -30,7 +31,12 @@ class GoogleDriveSave extends React.Component {
30
  handleCloseModal = () => {
31
  this.setState({isModalOpen: false});
32
  };
33
-
 
 
 
 
 
34
  startGoogleLogin = () => {
35
  const CLIENT_ID = "1033286471224-n9mv8l869fqikubj2e8q92n8ige3qr6r.apps.googleusercontent.com";
36
  const REDIRECT_URI = "https://soiz1-s4s-upload.hf.space/close2";
@@ -94,7 +100,7 @@ class GoogleDriveSave extends React.Component {
94
  if (!this.state.isModalOpen) return null;
95
 
96
  return (
97
- <div className={styles.modalOverlay}>
98
  <div className={styles.modalContent}>
99
  <div className={styles.modalHeader}>
100
  <h2>Googleドライブに保存</h2>
 
17
  isModalOpen: false,
18
  isLoading: false
19
  };
20
+ this.modalContentRef = React.createRef();
21
  }
22
 
23
  componentDidMount() {
 
31
  handleCloseModal = () => {
32
  this.setState({isModalOpen: false});
33
  };
34
+ handleOverlayClick = (e) => {
35
+ // モーダルコンテンツ内をクリックした場合は閉じない
36
+ if (this.modalContentRef.current && !this.modalContentRef.current.contains(e.target)) {
37
+ this.handleCloseModal();
38
+ }
39
+ };
40
  startGoogleLogin = () => {
41
  const CLIENT_ID = "1033286471224-n9mv8l869fqikubj2e8q92n8ige3qr6r.apps.googleusercontent.com";
42
  const REDIRECT_URI = "https://soiz1-s4s-upload.hf.space/close2";
 
100
  if (!this.state.isModalOpen) return null;
101
 
102
  return (
103
+ <div className={styles.modalOverlay} onClick={this.handleOverlayClick}>
104
  <div className={styles.modalContent}>
105
  <div className={styles.modalHeader}>
106
  <h2>Googleドライブに保存</h2>