diff --git a/package.json b/package.json
index 02d84c03..06256261 100644
--- a/package.json
+++ b/package.json
@@ -12,8 +12,8 @@
"version": "5.0.0",
"dependencies": {
"@eartharoid/dtf": "^1.0.8",
- "@fontsource/lexend-deca": "^4.1.0",
- "@fontsource/roboto": "^4.1.0",
+ "@fontsource/lexend-deca": "^4.2.2",
+ "@fontsource/roboto": "^4.2.1",
"@material-ui/core": "4.11.2",
"@material-ui/icons": "4.11.2",
"deepmerge": "^4.2.2",
diff --git a/src/App.jsx b/src/App.jsx
index 6d8b10f1..28699e53 100644
--- a/src/App.jsx
+++ b/src/App.jsx
@@ -47,6 +47,26 @@ export default class App extends React.PureComponent {
if (localStorage.getItem('darkTheme') === 'true') {
document.getElementsByClassName('Toastify')[0].classList.add('dark');
}
+
+ // These lines of code prevent double clicking the page or pressing CTRL + A from highlighting the page
+ document.addEventListener('mousedown', (event) => {
+ if (event.detail > 1) {
+ event.preventDefault();
+ }
+ }, false);
+
+ document.onkeydown = (e) => {
+ e = e || window.event;
+ if (!e.ctrlKey) return;
+ let code = e.which || e.keyCode;
+
+ switch (code) {
+ case 65:
+ e.preventDefault();
+ e.stopPropagation();
+ break;
+ }
+ };
}
closeWelcome() {
diff --git a/src/components/modals/marketplace/Item.jsx b/src/components/modals/marketplace/Item.jsx
index 388e9f48..15a1c2ab 100644
--- a/src/components/modals/marketplace/Item.jsx
+++ b/src/components/modals/marketplace/Item.jsx
@@ -2,11 +2,10 @@ import React from 'react';
import ArrowBackIcon from '@material-ui/icons/ArrowBack';
-export default class Item extends React.PureComponent {
- render() {
+export default function Item(props) {
let warningHTML;
try { // For some reason it breaks sometimes so we use try/catch
- if (this.props.content.content.data.quote_api) {
+ if (props.content.content.data.quote_api) {
warningHTML = (
@@ -23,39 +22,38 @@ export default class Item extends React.PureComponent {
return (
-
+
-
{this.props.data.name}
- {this.props.button}
+
{props.data.name}
+ {props.button}
-
+
-
{this.props.language.information}
+
{props.language.information}
- {this.props.language.last_updated}
- {this.props.data.updated}
+ {props.language.last_updated}
+ {props.data.updated}
- {this.props.language.version}
- {this.props.data.version}
+ {props.language.version}
+ {props.data.version}
- {this.props.language.author}
- {this.props.data.author}
+ {props.language.author}
+ {props.data.author}
- {this.props.language.notice.title}
- {this.props.language.notice.description}
+ {props.language.notice.title}
+ {props.language.notice.description}
{warningHTML}
-
{this.props.language.overview}
-
+
{props.language.overview}
+
);
- }
}
\ No newline at end of file
diff --git a/src/components/modals/marketplace/Items.jsx b/src/components/modals/marketplace/Items.jsx
index a144453d..e62ef487 100644
--- a/src/components/modals/marketplace/Items.jsx
+++ b/src/components/modals/marketplace/Items.jsx
@@ -1,23 +1,22 @@
import React from 'react';
-export default class Items extends React.PureComponent {
- render() {
- if (this.props.items.length === 0) {
+export default function Items(props) {
+ if (props.items.length === 0) {
return null; // if there are no items in category don't render it
}
let seeMoreHTML;
- if (this.props.seeMoreFunction && this.props.items.length === 3) {
- seeMoreHTML = {this.props.seeMoreTitle} ; // only render see more button if there are enough addons
+ if (props.seeMoreFunction && props.items.length === 3) {
+ seeMoreHTML = {props.seeMoreTitle} ; // only render see more button if there are enough addons
}
return (
{seeMoreHTML}
-
{this.props.title}
+
{props.title}
- {this.props.items.map((item) =>
-
this.props.toggleFunction(item.name)} key={item.name}>
+ {props.items.map((item) =>
+
props.toggleFunction(item.name)} key={item.name}>
{item.display_name ? item.display_name : item.name}
@@ -27,5 +26,4 @@ export default class Items extends React.PureComponent {
);
- }
}
\ No newline at end of file