Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 3.2.26 #400

Merged
merged 1 commit into from
Nov 8, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 47 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -296,7 +296,53 @@ $ set UPGRADE_EXTENSIONS=1 && npm run dev

### Troubleshooting

#### Your device is not recognized
#### Error while building the app - `No module named 'distutils'`

To resolve this issue, install Python setuptools:

```shell
brew install python-setuptools
```

#### Error: npm version issue due to node-gyp bug

If you encounter an error message like:

```txt
Error: This project requires npm version >=6.x <=8.16.0. You have version 10.24.0.
Please downgrade your npm, this is due to a bug in node-gyp.
GitHub issue: https://github.com/ganeshrvel/openmtp/issues/367.
command: npm install -g [email protected]
```

Follow these steps:

1. If you use `nvm`, switch to Node.js version `16.19.0`:

```shell
nvm install 16.19.0
nvm use 16.19.0
```

2. Then, install the compatible npm version:

```shell
npm install -g [email protected]
```

#### For non-nvm users

If you don't use `nvm`, you can directly install Node.js version `16.19.0` from the [official website](https://nodejs.org/en/download/releases/), or you can use a package manager like `brew` to install the correct version:

```shell
brew install node@16
```

After installation, ensure npm is downgraded to the required version:

```shell
npm install -g [email protected]
```

#### **node-mac-permissions** throws `Speech framework is not compatible with macOS < 10.15`

Expand Down
2 changes: 2 additions & 0 deletions app/constants/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,5 @@ export const DELETE_KEIS_SMARTSWITCH_URL = `https://farazfazli.medium.com/how-i-
export const USB_HOTPLUG_MAX_ATTEMPTS = 6;

export const USB_HOTPLUG_MAX_ATTEMPTS_TIMEOUT = 15000; // in ms

export const GANESHR_PORTFOLIO_URL = 'https://www.ganeshrvel.com/?c=openmtp'; // in ms
17 changes: 17 additions & 0 deletions app/containers/HomePage/components/FileExplorer.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ import {
import {
BUY_ME_A_COFFEE_URL,
DEVICES_LABEL,
GANESHR_PORTFOLIO_URL,
SUPPORT_PAYPAL_URL,
USB_HOTPLUG_MAX_ATTEMPTS,
USB_HOTPLUG_MAX_ATTEMPTS_TIMEOUT,
Expand Down Expand Up @@ -1985,6 +1986,11 @@ class FileExplorer extends Component {
});
};

_handlePortfolioUrlTap = () => {
analyticsService.sendEvent(EVENT_TYPE.GANESHR_PORTFOLIO_URL, {});
openExternalUrl(GANESHR_PORTFOLIO_URL);
};

render() {
const {
classes: styles,
Expand Down Expand Up @@ -2061,6 +2067,17 @@ class FileExplorer extends Component {
maxWidthDialog="sm"
helpText="If the progress bar freezes while transferring the files, restart the app and reconnect the device. This is a known Android MTP bug."
>
<Typography className={styles.buildProduct}>
{`Are you building a product and looking for expert tech talent to drive it forward? `}
<span
onClick={this._handlePortfolioUrlTap}
className={classnames(styles.connectPortfolioUrl)}
>
Let’s connect
</span>
!
</Typography>

<div className={styles.socialMediaShareContainer}>
<Typography className={styles.supportBtnsTitle}>
{`I've invested a significant amount of my time and energy into developing and maintaining this OpenSource application.`}
Expand Down
9 changes: 9 additions & 0 deletions app/containers/HomePage/styles/FileExplorer.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,15 @@ export const styles = (theme) => ({
supportBtnsBoldText: {
fontWeight: 'bold',
},
buildProduct: {
marginTop: 10,
fontSize: 13,
fontWeight: 500,
},
connectPortfolioUrl: {
cursor: `pointer`,
color: theme.palette.secondary.main,
},
socialMediaShareTitle: {
marginTop: 10,
fontSize: 11,
Expand Down
3 changes: 3 additions & 0 deletions app/enums/events.js
Original file line number Diff line number Diff line change
Expand Up @@ -151,4 +151,7 @@ export const EVENT_TYPE = {
// actions
EXTERNAL_DRAG_FILES_DROPPED: 'EXTERNAL_DRAG_FILES_DROPPED',
EXTERNAL_DRAG_FILES_CANCELLED: 'EXTERNAL_DRAG_FILES_CANCELLED',

// actions
GANESHR_PORTFOLIO_URL: 'GANESHR_PORTFOLIO_URL',
};
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "openmtp",
"productName": "OpenMTP",
"version": "3.2.25",
"version": "3.2.26",
"description": "OpenMTP | Android File Transfer for macOS",
"scripts": {
"build": "yarn lint && concurrently \"yarn build-main\" \"yarn build-renderer\"",
Expand Down
Loading