mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-08-07 22:12:59 -04:00
Complete refactor of Browser Integration classes
* Removed option to attach KeePassXC to the browser extension. Users must use the proxy application to communicate with KeePassXC. * Significantly streamlined proxy code. Used same implementation of stdin/stdout interface across all platforms. * Moved browser service entry point to BrowserService class instead of NativeMessagingHost. BrowserService now coordinates the communication to/from clients. * Moved settings page definition out of MainWindow * Decoupled BrowserService from DatabaseTabWidget * Reduced complexity of various functions and cleaned the ABI (public vs private). * Eliminated BrowserClients class, moved functionality into the BrowserService * Renamed HostInstaller to NativeMessageInstaller and renamed NativeMessageHost to BrowserHost. * Recognize XDG_CONFIG_HOME when installing native message file on Linux. Fix #4121 and fix #4123.
This commit is contained in:
parent
3b4057a78c
commit
a145bf9119
43 changed files with 1221 additions and 1919 deletions
|
@ -20,7 +20,8 @@
|
|||
#ifndef BROWSERSETTINGS_H
|
||||
#define BROWSERSETTINGS_H
|
||||
|
||||
#include "HostInstaller.h"
|
||||
#include "BrowserShared.h"
|
||||
#include "NativeMessageInstaller.h"
|
||||
#include "core/PassphraseGenerator.h"
|
||||
#include "core/PasswordGenerator.h"
|
||||
|
||||
|
@ -58,30 +59,18 @@ public:
|
|||
bool noMigrationPrompt();
|
||||
void setNoMigrationPrompt(bool prompt);
|
||||
|
||||
bool supportBrowserProxy();
|
||||
void setSupportBrowserProxy(bool enabled);
|
||||
bool useCustomProxy();
|
||||
void setUseCustomProxy(bool enabled);
|
||||
QString customProxyLocation();
|
||||
void setCustomProxyLocation(const QString& location);
|
||||
QString proxyLocation();
|
||||
bool updateBinaryPath();
|
||||
void setUpdateBinaryPath(bool enabled);
|
||||
bool allowExpiredCredentials();
|
||||
void setAllowExpiredCredentials(bool enabled);
|
||||
bool chromeSupport();
|
||||
void setChromeSupport(bool enabled);
|
||||
bool chromiumSupport();
|
||||
void setChromiumSupport(bool enabled);
|
||||
bool firefoxSupport();
|
||||
void setFirefoxSupport(bool enabled);
|
||||
bool vivaldiSupport();
|
||||
void setVivaldiSupport(bool enabled);
|
||||
bool braveSupport();
|
||||
void setBraveSupport(bool enabled);
|
||||
bool torBrowserSupport();
|
||||
void setTorBrowserSupport(bool enabled);
|
||||
bool edgeSupport();
|
||||
void setEdgeSupport(bool enabled);
|
||||
|
||||
bool browserSupport(BrowserShared::SupportedBrowsers browser);
|
||||
void setBrowserSupport(BrowserShared::SupportedBrowsers browser, bool enabled);
|
||||
|
||||
bool passwordUseNumbers();
|
||||
void setPasswordUseNumbers(bool useNumbers);
|
||||
|
@ -126,15 +115,14 @@ public:
|
|||
PasswordGenerator::CharClasses passwordCharClasses();
|
||||
PasswordGenerator::GeneratorFlags passwordGeneratorFlags();
|
||||
QJsonObject generatePassword();
|
||||
void updateBinaryPaths(const QString& customProxyLocation = QString());
|
||||
bool checkIfProxyExists(QString& path);
|
||||
void updateBinaryPaths();
|
||||
|
||||
private:
|
||||
static BrowserSettings* m_instance;
|
||||
|
||||
PasswordGenerator m_passwordGenerator;
|
||||
PassphraseGenerator m_passPhraseGenerator;
|
||||
HostInstaller m_hostInstaller;
|
||||
NativeMessageInstaller m_nativeMessageInstaller;
|
||||
};
|
||||
|
||||
inline BrowserSettings* browserSettings()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue