1
0
mirror of https://github.com/bitwarden/browser synced 2026-02-05 19:23:19 +00:00
Commit Graph

216 Commits

Author SHA1 Message Date
Bernd Schoolmann
204f911b01 Fix cargo toml 2025-09-04 21:57:38 +02:00
Bernd Schoolmann
950a2fa7bc Fix cargo toml 2025-09-04 21:56:03 +02:00
Bernd Schoolmann
f7d466d3f9 Fix merge conflict 2025-09-04 21:53:47 +02:00
Bernd Schoolmann
690c4701cc Fix linting 2025-09-04 21:48:08 +02:00
Bernd Schoolmann
ea1c3252e8 [BEEEP | PM-25358] Add process isolation on windows and mac desktop main process (#16156)
* Prevent memory dumping and debugger on windows and mac main process

* Fix clippy

* Only isolate process when isdev is false

* Clean up

* Add backticks around link
2025-09-04 21:40:25 +02:00
Bernd Schoolmann
ad5159b4cd Fix tests 2025-09-04 21:37:35 +02:00
Bernd Schoolmann
1ae7c30047 Add feature flag and re-add old impl 2025-09-04 21:05:49 +02:00
Bernd Schoolmann
7c99870ec9 Merge branch 'main' into km/poc-windows-hello-2 2025-09-04 18:37:22 +02:00
Daniel James Smith
66f5700a75 [PM-24748][PM-24072] Chromium importer (#16100)
* Add importer dummy lib, add cargo deps for win/mac

* Add Chromium importer source from bitwarden/password-access

* Mod crypto is no more

* Expose some Chromium importer functions via NAPI, replace home with home_dir crate

* Add Chromium importer to the main <-> renderer IPC, export all functions from Rust

* Add password and notes fields to the imported logins

* Fix windows to use homedir instead of home

* Return success/failure results

* Import from account logins and join

* Linux v10 support

* Use mod util on Windows

* Use mod util on macOS

* Refactor to move shared code into chromium.rs

* Fix windows

* Fix Linux as well

* Linux v11 support for Chrome/Gnome, everything is async now

* Support multiple browsers on Linux v11

* Move oo7 to Linux

* Fix Windows

* Fix macOS

* Add support for Brave browser in Linux configuration

* Add support for Opera browser in Linux configuration

* Fix Edge and add Arc on macOS

* Add Opera on macOS

* Add support for Vivaldi browser in macOS configuration

* Add support for Chromium browser in macOS configuration

* Fix Edge on Windows

* Add Opera on Windows

* Add Vivaldi on windows

* Add Chromium to supported browsers on Windows

* stub out UI options for chromium direct import

* call IPC funcs from import-desktop

* add notes to chrome csv importer

* remove (csv) from import tool names and format item names as hostnames

* Add ABE/v20 encryption support

* ABE/v20 architecture description

* Add a build step to produce admin.exe and service.exe

* Add Windows v20/ABE configuration functionality to specify the full path to the admin.exe and service.exe. Use ipc.platform.chromiumImporter.configureWindowsCryptoService to configure the Chromium importer on Windows.

* rename ARCHITECTURE.md to README.md

* aligns with guidance from architecture re: in-repository documentation.
* also fixes a failing lint.

* cargo fmt

* cargo clippy fix

* Declare feature flag for using chromium importer

* Linter fix after executing npm run prettier

* Use feature flag to guard the use of the chromium importer

* Added temporary logging to further debug, why the Angular change detection isn't working as expected

* introduce importer metadata; host metadata from service; includes tests

* fix cli build

* Register autotype module in lib.rs
introduce by a bad merge

* Fix web build

* Fix issue with loaders being undefined and the feature flag turned off

* Add missing Chromium support when selecting chromecsv

* debugging

* remove chromium support from chromecsv metadata

* fix default loader selection

* [PM-24753] cargo lib file (#16090)

* Add new modules

* Fix chromium importer

* Fix compile bugs for toolchain

* remove importer folder

* remove IPC code

* undo setting change

* clippy fixes

* cargo fmt

* clippy fixes

* clippy fixes

* clippy fixes

* clippy fixes

* lint fix

* fix release build

* Add files in CODEOWNERS

* Create tools owned preload.ts

* Move chromium-importer.service under tools-ownership

* Fix typeError
When accessing the Chromium direct import options the file button is hidden, so trying to access it's values will fail

* Fix tools owned preload

* Remove dead code and redundant truncation

* Remove configureWindowsCryptoService function/methods

* Clean up cargo files

* Fix unused async

* Update apps/desktop/desktop_native/bitwarden_chromium_importer/Cargo.toml

Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>

* Fix napi deps

* fix lints

* format

* fix linux lint

* fix windows lints

* format

* fix missing `?`

* fix a different missing `?`

---------

Co-authored-by: Dmitry Yakimenko <detunized@gmail.com>
Co-authored-by: Kyle Spearrin <kyle.spearrin@gmail.com>
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
Co-authored-by:  Audrey  <ajensen@bitwarden.com>
Co-authored-by:  Audrey  <audrey@audreyality.com>
Co-authored-by: adudek-bw <adudek@bitwarden.com>
Co-authored-by: Oscar Hinton <Hinton@users.noreply.github.com>
2025-09-04 11:21:57 +02:00
Bernd Schoolmann
258ba516c9 Invert setting 2025-09-01 17:59:10 +02:00
Bernd Schoolmann
6181b6b7e2 Fix imports 2025-08-29 19:53:49 +02:00
Bernd Schoolmann
6aa73baa05 Replace magic numbers 2025-08-29 19:09:36 +02:00
Bernd Schoolmann
e3e21b94b4 Cargo fmt 2025-08-29 15:29:50 +02:00
Bernd Schoolmann
22a8f12f38 Fix clippy issues 2025-08-29 15:29:35 +02:00
Bernd Schoolmann
82efdee1b3 Run cargo fmt 2025-08-29 15:21:08 +02:00
Bernd Schoolmann
e53665bc69 Sort deps 2025-08-29 15:08:36 +02:00
Bernd Schoolmann
aed64a15d2 Merge main 2025-08-29 15:06:37 +02:00
Bernd Schoolmann
f4d1c33f5a Fix cargo toml 2025-08-29 14:55:11 +02:00
Bernd Schoolmann
9f51f85b10 Clean up linux implementation 2025-08-29 14:52:17 +02:00
Bernd Schoolmann
418f924abe Cleanup 2025-08-29 14:39:39 +02:00
Bernd Schoolmann
1ee71f1aa1 Update tests 2025-08-29 14:33:22 +02:00
Bernd Schoolmann
fb04da5cd7 Add tests for DPAPI 2025-08-29 14:31:59 +02:00
Oscar Hinton
97ee61db00 Configure clippy (#16194)
Apply the same clippy configuration as we have in sdk-internal. bitwarden/sdk-internal@49f84e6/Cargo.toml#L91-L94

Adds FIXME comments to all existing violations. unwrap is bad as those will resullt in panics and crash the application. Unused async is ignored in napi since that would require changes to the js side which I don't want to deal with.
2025-08-29 08:27:50 -04:00
Bernd Schoolmann
d7bf6a2eb8 Cargo fmt 2025-08-29 14:26:42 +02:00
Bernd Schoolmann
99df506d23 Cleanup and add docs 2025-08-29 14:24:26 +02:00
Bernd Schoolmann
14229a2a4e Add tests and clean up 2025-08-29 13:55:08 +02:00
Bernd Schoolmann
602b5a01e4 Run cargo fmt 2025-08-29 13:10:03 +02:00
Bernd Schoolmann
b8c2553624 Fix focusing behavior 2025-08-29 13:00:40 +02:00
Bernd Schoolmann
a2ae42a381 Clean up rust 2025-08-29 12:34:43 +02:00
Bernd Schoolmann
9d10a68bc5 Cargo fmt 2025-08-28 14:18:10 +02:00
Bernd Schoolmann
cbe628c55b Clippy 2025-08-28 14:15:54 +02:00
Bernd Schoolmann
08e0e68a52 Fix clippy warns 2025-08-28 14:09:29 +02:00
Bernd Schoolmann
3a21730349 Fix default warn 2025-08-28 13:57:28 +02:00
Bernd Schoolmann
07de448f83 Cleanup 2025-08-28 13:52:56 +02:00
Bernd Schoolmann
93a5020a63 Fix linux 2025-08-28 13:38:32 +02:00
Bernd Schoolmann
434281fea9 Fix build on mac 2025-08-28 13:35:56 +02:00
Bernd Schoolmann
373163c067 Fix build issue 2025-08-28 13:28:22 +02:00
Bernd Schoolmann
b4f1a04423 Cargo fmt 2025-08-28 13:26:51 +02:00
Bernd Schoolmann
23eef2d250 Remove old biometrics 2025-08-28 13:25:42 +02:00
Bernd Schoolmann
e8e7e6781a Cleanup 2025-08-28 13:08:19 +02:00
Bernd Schoolmann
537c51c962 Cleanup 2025-08-28 08:39:02 +02:00
Bernd Schoolmann
1d951b1e95 Turn on v2 linux 2025-08-28 05:24:53 +02:00
Bernd Schoolmann
b478e8eb5e Linux support 2025-08-28 04:57:24 +02:00
Bernd Schoolmann
77d17a7ed8 Tmp 2025-08-28 04:32:39 +02:00
Colton Hurst
423b1cf1df Remove BlockInput (#15913)
* Remove block_input

* Add virtual key code comment
2025-08-06 11:08:48 -04:00
Colton Hurst
fd727ffc39 [PM-22790] Adds SendInput() Functionality to the Autotype Crate (#15751)
* [PM-22790] Adds SendInput() functionality to the autotype crate

* [PM-22790] Fixes unused variable linting errors

* [PM-22790] Updated autotype lib.rs comment
2025-07-28 16:26:48 -04:00
Maciej Zieniuk
167fa9a7ab [PM-18054] Chrome extension biometric unlock not functioning correctly with Windows Hello. (#14953)
* Chrome extension biometric unlock not functioning correctly with Windows Hello.

When unlocking via Windows Hello prompt, the popup have to be in the foreground. If it is not, even for short amount of time (few seconds), if later prompt confirmed, it won't return success when returning signed os key half.

* unit test coverage

* unit test coverage

* exclude test files from build

* use electron `setAlwaysOnTop` instead of toggle

* remove Windows os key half created with derive_key_material biometric function, that prompted Windows Hello.

Moves Windows hello prompt into getBiometricKey.
Witness key no longer needed.

* windows crate formatting

* remove biometric on app start for windows

* failing os biometrics windows unit tests

* cleanup of os biometrics windows unit tests

* increased coverage of os biometrics windows unit tests

* open Windows Hello prompt in the currently focused window, instead of always desktop app

* conflict resolution after merge, typescript lint issues, increased test coverage.

* backwards compatibility when require password on start was disabled

* biometric unlock cancellation and error handling

* biometric settings simplifications
2025-07-21 19:35:31 +02:00
Colton Hurst
8811ec41ab [PM-22788] Add Autotype Crate and Windowing Functions (#15317)
* [PM-22783] Add initial feature flag and settings toggle for autotype MVP

* [PM-22783] Undo Cargo.lock changes

* [PM-22783] Disable console.log block

* [PM-22783] Lint fix

* [PM-22783] Small updates

* [PM-22783] Build fix

* [PM-22783] Use combineLatest in updating the desktop autotype service

* [PM-22783] Check if the user is on Windows

* [PM-22783] Undo access selector html change, linting keeps removing this

* [PM-22783] Fix failing test

* [PM-22788] Add initial desktop native autotype crate based on spike ticket investigation

* [PM-22788] cargo fmt

* [PM-22783] Update autotypeEnabled to be stored in service

* [PM-22783] Add todo comments

* [PM-22783] Add SlimConfigService and MainDesktopAutotypeService

* [PM-22783] Small fixes

* [PM-22788] Add get_foreground_window_title() and cleanup

* [PM-22788] Add comment

* [PM-22788] Lint and cross platform build fixes

* [PM-22788] Update windows.rs in autotype_internal

* [PM-22788] Update windows.rs and dummy.rs in autotype_internal

* [PM-22788] cargo fmt

* [PM-22788] Edit napi result types

* [PM-22788] Edit napi result types again

* [PM-22788] Add autofill as a codeowner of the desktop_native/autotype directory

* [PM-22788] Refactor autotype code

* [PM-22788] Move autotype dependency out of windows only due to abstraction change

* [PM-22788] Fix lint errors

* [PM-22788] Updates based on PR comments

* [PM-22788] cargo fmt
2025-07-18 10:30:19 -04:00
Bernd Schoolmann
8250e40c6c [PM-22271] Switch to SDK argon2 implementation, and drop other impls (#15401)
* Switch to SDK argon2 implementation

* Cleanup and update to the latest sdk

* Update package lock

* Remove copy patch

* Fix builds

* Fix test build

* Remove error

* Fix tests

* Fix build

* Run prettier

* Remove argon2 references

* Regenerate index.d.ts for desktop_native napi

* Replace mocked crypto function service type
2025-07-15 11:53:58 +02:00
Daniel García
318040233c [PM-23159] Update arboard and enable exclude from history on Linux (#15393) 2025-07-10 19:17:13 +02:00