Skip to content

Commit d260a9c

Browse files
authored
Merge pull request #231 from saksham-gera/dev
Added FullScreen Functionality
2 parents 0b4af00 + 54a16e1 commit d260a9c

File tree

4 files changed

+44
-8
lines changed

4 files changed

+44
-8
lines changed

package-lock.json

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
"hotkeys-js": "^3.8.7",
2020
"jquery": "^3.0.0",
2121
"konva": "^7.0.3",
22+
"lucide-react": "^0.487.0",
2223
"md5": "^2.3.0",
2324
"moment": "^2.29.4",
2425
"prismjs": "^1.30.0",

src/component/FullScreenButton.jsx

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import React, { useState } from 'react';
2+
import { Maximize, Minimize } from 'lucide-react';
3+
4+
export default function FullScreenButton() {
5+
const [isFullscreen, setIsFullscreen] = useState(false);
6+
7+
const toggleFullscreen = () => {
8+
if (!document.fullscreenElement) {
9+
document.documentElement.requestFullscreen();
10+
setIsFullscreen(true);
11+
} else {
12+
document.exitFullscreen();
13+
setIsFullscreen(false);
14+
}
15+
};
16+
17+
return (
18+
<button type="button" onClick={toggleFullscreen}>
19+
{isFullscreen ? <Minimize size={20} /> : <Maximize size={20} />}
20+
</button>
21+
);
22+
}

src/component/Header.jsx

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import {
88
ActionButton, Vsep, Hsep, Space, TextBox, Switcher, DropDown, FileUploader,
99
} from './HeaderComps';
1010
import 'rc-switch/assets/index.css';
11+
import FullScreenButton from './FullScreenButton';
1112
// import ServerActions from './serverActions/ServerActions';
1213

1314
const setHotKeys = (actions) => {
@@ -38,13 +39,15 @@ const Header = ({ superState, dispatcher }) => {
3839

3940
return (
4041
<header className="header">
41-
<section className="middle titlebar">
42-
{
43-
superState.curGraphInstance ? `${
44-
superState.curGraphInstance.projectName
45-
} - concore Editor` : 'untitled'
46-
}
47-
</section>
42+
<div style={{ display: 'flex' }}>
43+
<section className="middle titlebar">
44+
{
45+
superState.curGraphInstance ? `${superState.curGraphInstance.projectName
46+
} - concore Editor` : 'untitled'
47+
}
48+
</section>
49+
<FullScreenButton />
50+
</div>
4851
<section className="toolbar">
4952
{
5053
actions.map(({
@@ -67,7 +70,7 @@ const Header = ({ superState, dispatcher }) => {
6770
case 'menu': return <DropDown {...props} />;
6871
case 'file-upload': return <FileUploader {...props} superState={superState} />;
6972
case 'action': return <ActionButton {...props} />;
70-
// case 'serverActions': return <ServerActions superState={superState} />;
73+
// case 'serverActions': return <ServerActions superState={superState} />;
7174
default: return <></>;
7275
}
7376
})

0 commit comments

Comments
 (0)