Commit Graph

328 Commits

Author SHA1 Message Date
Ronan Jouchet cc957e70d1 Bump default Electron to 19.0.17 (from .14), with security fixes
- https://github.com/electron/electron/releases/tag/v19.0.15
- https://github.com/electron/electron/releases/tag/v19.0.16
- https://github.com/electron/electron/releases/tag/v19.0.17
2022-09-17 22:35:29 -04:00
Ronan Jouchet 93205accd5 relock app 2022-09-17 22:31:05 -04:00
Ronan Jouchet 840fe4a199 Add validation to opening URLs in external desktop handler (fix #1459) 2022-09-17 22:22:19 -04:00
Ronan Jouchet eecc33c1aa Fix double-navigation to pages
setupNativefierWindow is already called in createMainWindow !
No need to call it again here in browser-window-created!
Double-navs weren't visible with internal links but they were with external links
2022-09-17 22:02:10 -04:00
Ronan Jouchet 1933f226cc Bump default Electron to 19.0.14 (from .10)
- https://github.com/electron/electron/releases/tag/v19.0.11
- https://github.com/electron/electron/releases/tag/v19.0.12
- https://github.com/electron/electron/releases/tag/v19.0.13
- https://github.com/electron/electron/releases/tag/v19.0.14
2022-08-28 20:56:28 -04:00
Ronan Jouchet f337401e34 relock app 2022-08-28 20:42:16 -04:00
Sirisak Lueangsaksri 57636b9022
macOS: Fix "main window cannot be activated" (fix #1415, PR #1417) 2022-07-30 13:31:18 -04:00
Ronan Jouchet b362fbec3b Relock deps to get gitcloud 0.2.4 with "fetch" log fix
https://github.com/nativefier/gitcloud-client/pull/4
2022-07-30 13:27:39 -04:00
Adam Weeden 82ff609a91
Fix playwright tests on Linux (#1440) 2022-07-30 13:15:30 -04:00
Ronan Jouchet 1aa7760aa2
Major-bump default Electron from 18 to 19 (#1438)
https://github.com/electron/electron/releases/tag/v19.0.0
https://github.com/electron/electron/releases/tag/v19.0.1
https://github.com/electron/electron/releases/tag/v19.0.2
https://github.com/electron/electron/releases/tag/v19.0.3
https://github.com/electron/electron/releases/tag/v19.0.4
https://github.com/electron/electron/releases/tag/v19.0.5
https://github.com/electron/electron/releases/tag/v19.0.6
https://github.com/electron/electron/releases/tag/v19.0.7
https://github.com/electron/electron/releases/tag/v19.0.8
https://github.com/electron/electron/releases/tag/v19.0.9
2022-07-24 11:56:07 -04:00
Ronan Jouchet f6e585b3cc relock app 2022-07-24 11:25:33 -04:00
Ronan Jouchet a4ef7481de Make URL override smarter (thx Adam)
to not crash local PlayWright tests that here might get
Electron command-line options.

See https://github.com/nativefier/nativefier/pull/1437#issuecomment-1193315259
2022-07-24 10:34:31 -04:00
Ronan Jouchet 7221b39a2f Bump default Electron to 18.3.5
https://github.com/electron/electron/releases/tag/v18.3.2
https://github.com/electron/electron/releases/tag/v18.3.3
https://github.com/electron/electron/releases/tag/v18.3.4
https://github.com/electron/electron/releases/tag/v18.3.5
2022-06-27 15:56:57 -04:00
Ronan Jouchet eeac8885cc Relock dependencies 2022-06-27 15:49:33 -04:00
Ronan Jouchet bac08394c5 macOS: fix incorrect "Back" keyboard shortcut (fix #1426) 2022-06-27 09:34:13 -04:00
Ronan Jouchet c82f1a892e Bump default Electron to 18.3.1
https://github.com/electron/electron/releases/tag/v18.2.1
https://github.com/electron/electron/releases/tag/v18.2.2
https://github.com/electron/electron/releases/tag/v18.2.3
https://github.com/electron/electron/releases/tag/v18.2.4
https://github.com/electron/electron/releases/tag/v18.3.0
https://github.com/electron/electron/releases/tag/v18.3.1
2022-05-30 09:58:42 -04:00
Ronan Jouchet c0210265ab Relock dependencies 2022-05-30 09:42:40 -04:00
Sirisak Lueangsaksri 0df5b8f617
Handle 'open-url' event: support "deep-linking" e.g. for mailto links (PR #1418, fix #1412) 2022-05-30 09:40:13 -04:00
Ronan Jouchet a95814f5d4 Relock dependencies 2022-05-01 23:22:57 -04:00
Simon Smith 513b9dc93d
Windows: correctly set notifications name - not electron.app.YOURAPPNAME (PR #1394)
This sets the name correctly for Windows notifications.
Currently, notifications name shows as `electron.app.YOURAPPNAME`
2022-04-21 08:54:36 -04:00
Adam Weeden e664bc6af8
Add playwright integration testing to the app (PR #1397)
This PR allows us to code playwright integration tests that can potentially replace some of our manual tests and allow us automated testing of the app itself.

Current technical limitations:
* No app level keyboard simulation support (e.g, zoom in, zoom out, etc.)
* No code coverage support, so even though we are testing the app, the code coverage does not reflect this fact
2022-04-20 22:03:49 -04:00
Adam Weeden 10fb19b377
macOS: fix Open In New Tab (fix #1260, PR #1385) 2022-04-18 19:06:44 -04:00
Pedro Algarvio 74bc2d4188
Auto-internal URLs: add VMWare Workspace ONE + SecurID (PR #1391, fix #1390)
Update internal URLs to include VMware's Workspace ONE and SecurID.
2022-04-18 18:46:31 -04:00
Adam Weeden f6a1e30085
Change Paste and Match Style shortcut to match Apple's HIG advice (PR #1387, fix #404) 2022-04-18 18:41:27 -04:00
Tristan Koch 6a949ca481
--counter: accept colon character; useful for time-tracking apps with hour:min in title (PR #1378)
Modify regexp to track hour counters such as `(1:23)`.

This is supported by macOS' dock and displays in the red badge:
https://user-images.githubusercontent.com/73974/162786478-609a90e1-5efb-44ba-9aa5-7a3038f0689b.png
2022-04-11 13:18:06 -04:00
Ronan Jouchet 77df5618f4 Bump default Electron to 18.0.3 (from 16.2.2)
As usual, we did our best to adapt to Electron breaking changes in 17/18,
but patches welcome to fix regressions. Release notes with breaking changes:

- https://www.electronjs.org/blog/electron-17-0
- https://www.electronjs.org/blog/electron-18-0

Detailed release notes:

- https://github.com/electron/electron/releases/tag/v17.0.0
- https://github.com/electron/electron/releases/tag/v18.0.0
- https://github.com/electron/electron/releases/tag/v18.0.1
- https://github.com/electron/electron/releases/tag/v18.0.2
- https://github.com/electron/electron/releases/tag/v18.0.3
2022-04-10 13:18:58 -04:00
Ronan Jouchet 6f61d73d11 Upgrade dependencies lockfiles
with the usual `npm run relock` .
No major/breaking chages this time.
2022-04-10 11:18:41 -04:00
Ronan Jouchet 036122ad55 Upgrade dependencies lockfiles
with the usual `npm run relock` .
No major/breaking chages this time.
2022-03-20 23:32:19 -04:00
Tedward747 2f97a7156b
Remove extra whitespace in UserAgent (fix #1357, PR #1367)
Fixes https://github.com/nativefier/nativefier/issues/1357 , by
not adding a new space when removing the app name from the User-Agent.

Co-authored-by: noxafy <hci@gmx.de>
2022-03-20 23:23:10 -04:00
Ronan Jouchet 5bcf165fe4 Upgrade dependencies
Including axios 0.25 -> 0.25, nothing breaking for us:
https://github.com/axios/axios/releases/tag/v0.26.0
2022-02-14 23:01:36 -05:00
Abhishek Mehandiratta 64ed2a856b
Feature: Add "copy as plain text" in edit menu (PR #1351, fix #1144)
This closes #1144 by adding a "Copy as plain text" function in Edit menu.

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2022-02-10 08:39:56 -05:00
Ronan Jouchet 5de8a307ab Bump default Electron to 16.0.8, from 16.0.6
- https://github.com/electron/electron/releases/tag/v16.0.7
- https://github.com/electron/electron/releases/tag/v16.0.8
2022-02-06 17:53:45 -05:00
Ronan Jouchet 347df98c77 Make eslint happy 2022-02-06 17:49:30 -05:00
Ronan Jouchet 6b6ef1d12d Relock dependencies 2022-02-06 17:47:06 -05:00
Henry Bridge 9945a5dffe
Add flag --strict-internal-urls to disable domain and subpath matching (PR #1340)
I created this so that Google Meet links don't open in my Google Calendar app for me, but it looks like others have a similar issue (e.g. issue #1304).
2022-02-06 17:40:51 -05:00
Ronan Jouchet e3a823c66b Bump default Electron from 16.0.5 to 16.0.6
https://github.com/electron/electron/releases/tag/v16.0.6
2022-01-06 09:43:10 -05:00
Adam Weeden d483597320
Upgrade Electron from 13 to 16 (PR #1288)
https://www.electronjs.org/docs/latest/breaking-changes

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2022-01-02 06:17:06 -05:00
Ronan Jouchet dab770f719 app pkgjson too 2021-12-06 16:12:40 -05:00
Ronan Jouchet 58e504de32 document contextIsolation stuff 2021-12-06 16:05:41 -05:00
Ronan Jouchet ec77741494 re-relock and fix script failing to do app if cli failed 2021-12-06 16:00:17 -05:00
Ronan Jouchet df4ca5d079 relock dependencies 2021-12-06 15:56:02 -05:00
Adam Weeden 5f02f14626
Use userAgentFallback for userAgent injection (PR #1316)
Per the suggestion of @fireflinchdev , this seems to alleviate our issues with things like nuking service workers for WhatsApp. The core reason being those service workers were getting the original userAgent, and not the override (if specified). This PR should fix that.

So it should resolve #1312 #719 and hopefully a few future issues as this seems to come up frequently.
2021-11-29 16:53:12 -05:00
Adam Weeden b9c5e2b464
Fix upgrade not working (#1286)
* Attempt to get upgrade working right; in progress

* Got it fixed in Mac

* Fix some linting errors

* Finish fixing upgrade + tests

* Integration testing for global shortcuts

* Regenerate shrinkwrap

* Get rid of deprecated rmdirSync

* Remove instead of rm for 12.x support

* Make dereferencing platform dependent

* Fix folder copy funkiness

* Whoops

* Whoops 2: Extra Whoops

* Update Electron to 13.5.1; Fix auth manual tests

* Rework relock

* Add a request for help.

* Update @types/node to 14
2021-11-29 12:01:20 -05:00
Ronan Jouchet 601968dfef Relock dependencies 2021-11-22 16:03:07 -05:00
Alexander Weps ca7d25f432
Fix notifications broken since Nativefier 43 / Electron 12 defaulting to contextIsolation:true (PR #1308)
Copy-pastaing details from [Electron 12 breaking changes](https://www.electronjs.org/docs/latest/breaking-changes#planned-breaking-api-changes-120):

> ### Default Changed: `contextIsolation` defaults to `true`[​](https://www.electronjs.org/docs/latest/breaking-changes#default-changed-contextisolation-defaults-to-true "Direct link to heading")
> 
> In Electron 12, `contextIsolation` will be enabled by default. To restore the previous behavior, `contextIsolation: false` must be specified in WebPreferences.
> 
> We [recommend having contextIsolation enabled](https://www.electronjs.org/docs/latest/tutorial/security#3-enable-context-isolation-for-remote-content) for the security of your application.
> 
> Another implication is that `require()` cannot be used in the renderer process unless `nodeIntegration` is `true` and `contextIsolation` is `false`.
> 
> For more details see: [https://github.com/electron/electron/issues/23506](https://github.com/electron/electron/issues/23506)

I find the security drop acceptable, as reverting the new Electron 12 isolation brings us to the previous level of security, and I don't have the time/will to keep the isolation and migrate to the newer better safer thing that Electron >= 12 wants.

Co-authored-by: Radomír Polách <rp@t4d.cz>
2021-11-22 16:00:13 -05:00
Ronan Jouchet 94e6c6cf54 Bump default Electron to 13.6.1, with security fixes
- 13.5.2: https://github.com/electron/electron/releases/tag/v13.5.2
- 13.6.0: https://github.com/electron/electron/releases/tag/v13.6.0
- 13.6.1: https://github.com/electron/electron/releases/tag/v13.6.1
2021-11-01 15:37:33 -04:00
Adam Weeden 0d99ce4916
Update Electron to 13.5.1; Fix auth manual tests (#1287) 2021-10-02 22:17:06 -04:00
Ronan Jouchet 561beda96e Actually actually (TM) include lockfile in npm artifacts
Previous attempt failed by design of `npm pack` / `npm publish`,
as documented at https://docs.npmjs.com/cli/v6/configuring-npm/package-lock-json :

> One key detail about package-lock.json is that it cannot be published,
> and it will be ignored if found in any place other than the toplevel
> package. It shares a format with npm-shrinkwrap.json, which is
> essentially the same file, but allows publication.
>
> This is not recommended unless deploying a CLI tool or otherwise using
> the publication process for producing production packages.

, and we are a CLI tool. Switching to shrinkwrap.
2021-09-24 22:44:07 -04:00
Adam Weeden 24115bb3bd
Fix regressions in opening windows/tabs, update browser versions (#1284)
* Update electron to 13.4.0 + update browser versions

* Fix injectCSS preventing new windows from opening

* Fix some window/tab opening weirdness/bugs

* Fix unit tests

* Switch to using onResponseStarted to avoid the issues with callbacks in the future

* Clear up comments on onResponseStarted
2021-09-24 22:03:03 -04:00
Ronan Jouchet 0fbe7d39cb Build: re-introduce a package-lock.json file
They were used a long time ago, then I scrapped them for simplicity to
new contributors. I'm re-considering this and re-introducing one, for
two (maybe three) reasons:

1. Reading on supply chain attacks
2. Build broken because of a dep change (see previous commit broken
   because of a change in yargs @ 17.1.0)
(3.) Performance
2021-09-20 11:25:43 -04:00