2
2
mirror of https://github.com/Llewellynvdm/nativefier.git synced 2024-11-14 09:04:04 +00:00
Commit Graph

79 Commits

Author SHA1 Message Date
Johan von Forstner
79009e87cd
Add getDisplayMedia and PipeWire support (#1477)
I'm picking up @RickStanley's abandoned PR #1321 again to add
screensharing support (fixes #927), with the following additional
changes:

- In newer Electron versions, `desktopCapturer.getSources` must be
called from the main process, so I solved this with an IPC call.
- Importing from `./helpers/helpers` in 'preload.ts' does not work, as
was mentioned by @DimICE in
https://github.com/nativefier/nativefier/pull/1321#issuecomment-1001518035.
I'm not very familiar with TypeScript or Electron, so not sure why that
is and how it could be solved - for now I just copied the referenced
`isWayland` function to `preload.ts`.
- Add a screensharing test to the manual test script, as requested by
@ronjouch in
https://github.com/nativefier/nativefier/pull/1321#issuecomment-1006725818

As far as I understood from the discussion in #1321, the last point was
basically the only thing that was missing to get this merged, correct?

---------

Co-authored-by: Rick Stanley <rick-stanley@outlook.com>
Co-authored-by: Rick Stanley <rick.stanley@lambda3.com.br>
Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2023-03-23 11:50:19 -04:00
Ronan Jouchet
1fd046798d CI: test on 12 and **19**, now that 19 is out 2022-11-07 17:34:20 -05:00
Ronan Jouchet
1f67a9f9a7
Bump jest to 28 (#1437)
https://jestjs.io/blog/2022/04/25/jest-28
https://jestjs.io/docs/upgrading-to-jest28
https://github.com/facebook/jest/blob/main/CHANGELOG.md#2800

Co-authored-by: Adam Weeden <adamweeden@gmail.com>
2022-07-24 11:24:59 -04:00
Ronan Jouchet
d499b5f1c3 bug.yml & feature.yml & question.yml: more 2022-07-23 18:31:24 -04:00
Ronan Jouchet
14c61af12c bug.yml & feature.yml & question.yml: more 2022-07-23 18:30:03 -04:00
Ronan Jouchet
79ff80ca53 bug.yml & feature.yml & question.yml: more 2022-07-23 18:28:22 -04:00
Ronan Jouchet
eebdf90bc7 bug.yml & feature.yml: more 2022-07-23 18:23:58 -04:00
Ronan Jouchet
7fdc4b8515 bug.yml & feature.yml: more 2022-07-23 18:21:33 -04:00
Ronan Jouchet
a042812dca bug.yml & feature.yml: more 2022-07-23 18:19:39 -04:00
Ronan Jouchet
7ab50a0e2d bug.yml: more 2022-07-23 18:05:25 -04:00
Ronan Jouchet
8e6363a634 bug.yml: more 2022-07-23 18:04:37 -04:00
Ronan Jouchet
dae20c62e1 bug.yml: more 2022-07-23 17:59:45 -04:00
Ronan Jouchet
6c48f5b013 bug.yml: more 2022-07-23 17:58:41 -04:00
Ronan Jouchet
9c099ce6bc bug.yml: more 2022-07-23 17:57:05 -04:00
Ronan Jouchet
4967e47aee bug.yml: more 2022-07-23 17:55:28 -04:00
Ronan Jouchet
4f38119682 bug.yml: first edits 2022-07-23 17:54:23 -04:00
Matthew Ruzzi
9ed379024d
Switch issues from GitHub "issue templates" to new/beta "issue forms" (fix #1258) (#1425) 2022-07-23 17:43:48 -04:00
Ronan Jouchet
334cbe28a5 Publish: fix Docker build failing because of Playwright, and make a convenience npm task for it 2022-05-02 00:27:58 -04:00
Ronan Jouchet
8bbc7cacbd CI: restore needing successful playwright build to publish 2022-05-02 00:19:18 -04:00
Ronan Jouchet
27979cfd42 Fix publish.yml running on ubuntu and thus not able to run playwright tests 2022-05-02 00:13:09 -04:00
Ronan Jouchet
eb81f0c3b2 CI: re-order tasks, for friendlier display in GH's popup limited to 6 lines
This should let us see without scrolling: lint, playwright, and latest-node*
2022-05-01 23:58:37 -04:00
Ronan Jouchet
1e1c720aa9 CI: you cannot win 2022-05-01 23:10:11 -04:00
Ronan Jouchet
eacbaf737f CI: yes yes 2022-05-01 23:06:56 -04:00
Ronan Jouchet
458c7ec178 CI: okay GHA, no variables 2022-05-01 23:06:25 -04:00
Ronan Jouchet
6af4e774e2 CI: fumbling around 2022-05-01 23:02:05 -04:00
Ronan Jouchet
430a129c39 CI: (attempt to) separate/parallelize Playwright tests, for speed 2022-05-01 22:59:39 -04:00
Ronan Jouchet
887347adbb Playwright tests: only run on windows, because mac keeps failing or being too slow 2022-04-26 19:55:30 -04:00
Adam Weeden
ce04b3337c
Add some debugging to the playwright script + add a timeout for the playwright ci (#1400) 2022-04-22 10:51:00 -04:00
Ronan Jouchet
60035a8e74 Bump max tested version of Node for CI/Publish from 17 to 18
Released yesterday: https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#18.0.0
2022-04-20 22:06:46 -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
Ronan Jouchet
5ce6c24a3f Fix lint not running in CI 2022-02-06 17:55:20 -05:00
Ronan Jouchet
ae4a0f05b8 CI: (Attempt to) push tag, not unreadable SHA
Might have to retry this one as I'm not sure it's this one or GITHUB_REF,
https://docs.github.com/en/actions/learn-github-actions/environment-variables
2022-01-06 10:50:00 -05:00
Ronan Jouchet
97cce9196d CI: (Attempt to) push image to our org, not my personal account 2022-01-06 10:32:48 -05:00
Pranav Shikarpur
7b4d172248
CI: Fix Docker Hub image build & push (#1100)
We tried using the auto Docker Hub thingie, but it's flaky.
Reverting to manually pushing as part of release CI.
2022-01-06 10:14:31 -05:00
Ronan Jouchet
6f4ae587c4 build/ci workflow: pass the node version number with the format expected by GHA/setup-node
and avoid warning "Not found in manifest.  Falling back to download directly from Node"
2021-12-25 16:53:06 -05:00
Ronan Jouchet
797922afb6 build/ci workflow: try to use setup-node-v2 cache to speed up build 2021-12-25 16:42:48 -05:00
Ronan Jouchet
431f531065 CI: bump top Node.js version to 17, which is now stable 2021-11-10 18:41:38 -05:00
Ronan Jouchet
916055d05a generate-changelog: don't break if npm out returns 1, which it normally does on outdated deps, which is all the time 2021-11-01 15:57: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
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
Ronan Jouchet
d0849ce794 generate-changelog: integrate running "npm out" for a reminder of outdated dependencies 2021-06-28 22:56:53 -04:00
Adam Weeden
b74c0bf959
Make app strict TypeScript + linting (and add a shared project) (#1231)
* Convert app to strict typing + shared library

* Fix new code post-merge

* Remove extraneous lint ignores

* Apply suggestions from code review

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>

* Fix prettier complaint

* Dedupe eslint files

* Fix some refs after merge

* Fix clean:full command

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-06-26 09:59:28 -04:00
Adam Weeden
a491e34966
Fix --tray start-in-tray (fix #1225) (#1235) 2021-06-22 01:22:46 -04:00
Adam Weeden
113d8448c1
Fix CSS injection (#1227)
This fixes https://github.com/nativefier/nativefier/pull/1222#issuecomment-860913698 , where:

1. When it works (e.g. initial page load), CSS is slower to inject (you can see pages without injected CSS)
2. CSS isn't injected when navigating to a page

On both Windows & Linux, a `git revert 9a6c6f870d && npm run build` fixes the issue.

--

I'm still not 100% sure what went wrong, but I suspect that the new version of Electron may not be firing onHeadersReceived for the actual navigation events, and only its child requests. To counteract it, I'm now injecting at the navigation event as well. I was able to reproduce the issue and this does seem to fix it. Please let me know if it does for you as well..

Also I noticed some funkiness in your logs where we're trying to inject on font files. So I realized the method is probably not nearly as important as the content-type, so I've switched blacklist methods to blacklist content-types.
2021-06-15 09:02:57 -04:00
Ronan Jouchet
4badf3dc70 manual-test: fix shellcheck nits, make tests structure more distinct 2021-06-07 17:27:23 -04:00
Adam Weeden
826625f4a4
Fix HTTP basic auth (fix #1219) (#1220)
Should resolve #1219, as well adds a manual test for basic auth as suggested.

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-06-07 17:09:24 -04:00
Ronan Jouchet
45db4e7ec6 README: whoopsie, bad rename of animation 2021-05-21 18:17:59 -04:00
Ronan Jouchet
cc02b87de7
Get rid of "docs" folder (#1194)
It contains a weird mix of stuff and hides valuable files from view at the root of the repo. Better to have:
- Docs at the root
- Rest of the github/release-related hodgepodge (screenshots, scripts) in hidden folder .github
2021-05-21 18:16:59 -04:00
Adam Weeden
b3c202fd33
Bump minimum required version: node>=12.9, npm>=6.9 (#1192)
* Move minimum supported version: node=12, npm=6.9

* Add missing bits and documentation for future bumping

Co-authored-by: Ronan Jouchet <ronan@jouchet.fr>
2021-05-15 13:32:54 -04:00