linux: Override DIR_APP_DATA before loading .js
This commit is contained in:
parent
76e3d56760
commit
c9463d815c
2 changed files with 26 additions and 29 deletions
|
@ -9,7 +9,6 @@
|
||||||
#include "browser/network_delegate.h"
|
#include "browser/network_delegate.h"
|
||||||
#include "common/application_info.h"
|
#include "common/application_info.h"
|
||||||
|
|
||||||
#include "base/environment.h"
|
|
||||||
#include "base/files/file_path.h"
|
#include "base/files/file_path.h"
|
||||||
#include "base/path_service.h"
|
#include "base/path_service.h"
|
||||||
#include "base/prefs/json_pref_store.h"
|
#include "base/prefs/json_pref_store.h"
|
||||||
|
@ -20,31 +19,10 @@
|
||||||
#include "content/public/browser/resource_context.h"
|
#include "content/public/browser/resource_context.h"
|
||||||
#include "content/public/browser/storage_partition.h"
|
#include "content/public/browser/storage_partition.h"
|
||||||
|
|
||||||
#if defined(OS_LINUX)
|
|
||||||
#include "base/nix/xdg_util.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
using content::BrowserThread;
|
using content::BrowserThread;
|
||||||
|
|
||||||
namespace brightray {
|
namespace brightray {
|
||||||
|
|
||||||
namespace {
|
|
||||||
|
|
||||||
#if defined(OS_LINUX)
|
|
||||||
void OverrideLinuxAppDataPath() {
|
|
||||||
base::FilePath path;
|
|
||||||
if (PathService::Get(DIR_APP_DATA, &path))
|
|
||||||
return;
|
|
||||||
scoped_ptr<base::Environment> env(base::Environment::Create());
|
|
||||||
path = base::nix::GetXDGDirectory(env.get(),
|
|
||||||
base::nix::kXdgConfigHomeEnvVar,
|
|
||||||
base::nix::kDotConfigDir);
|
|
||||||
PathService::Override(DIR_APP_DATA, path);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
} // namespace
|
|
||||||
|
|
||||||
class BrowserContext::ResourceContext : public content::ResourceContext {
|
class BrowserContext::ResourceContext : public content::ResourceContext {
|
||||||
public:
|
public:
|
||||||
ResourceContext() : getter_(nullptr) {}
|
ResourceContext() : getter_(nullptr) {}
|
||||||
|
@ -69,10 +47,6 @@ BrowserContext::BrowserContext() : resource_context_(new ResourceContext) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void BrowserContext::Initialize() {
|
void BrowserContext::Initialize() {
|
||||||
#if defined(OS_LINUX)
|
|
||||||
OverrideLinuxAppDataPath();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (!PathService::Get(DIR_USER_DATA, &path_)) {
|
if (!PathService::Get(DIR_USER_DATA, &path_)) {
|
||||||
PathService::Get(DIR_APP_DATA, &path_);
|
PathService::Get(DIR_APP_DATA, &path_);
|
||||||
path_ = path_.Append(base::FilePath::FromUTF8Unsafe(GetApplicationName()));
|
path_ = path_.Append(base::FilePath::FromUTF8Unsafe(GetApplicationName()));
|
||||||
|
|
|
@ -26,6 +26,13 @@
|
||||||
#include "browser/views/views_delegate.h"
|
#include "browser/views/views_delegate.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(OS_LINUX)
|
||||||
|
#include "base/environment.h"
|
||||||
|
#include "base/path_service.h"
|
||||||
|
#include "base/nix/xdg_util.h"
|
||||||
|
#include "browser/brightray_paths.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#if defined(OS_WIN)
|
#if defined(OS_WIN)
|
||||||
#include "ui/base/l10n/l10n_util.h"
|
#include "ui/base/l10n/l10n_util.h"
|
||||||
#include "ui/base/l10n/l10n_util_win.h"
|
#include "ui/base/l10n/l10n_util_win.h"
|
||||||
|
@ -34,9 +41,9 @@
|
||||||
|
|
||||||
namespace brightray {
|
namespace brightray {
|
||||||
|
|
||||||
#if defined(OS_WIN)
|
|
||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
|
#if defined(OS_WIN)
|
||||||
// gfx::Font callbacks
|
// gfx::Font callbacks
|
||||||
void AdjustUIFont(LOGFONT* logfont) {
|
void AdjustUIFont(LOGFONT* logfont) {
|
||||||
l10n_util::AdjustUIFont(logfont);
|
l10n_util::AdjustUIFont(logfont);
|
||||||
|
@ -45,9 +52,22 @@ void AdjustUIFont(LOGFONT* logfont) {
|
||||||
int GetMinimumFontSize() {
|
int GetMinimumFontSize() {
|
||||||
return 10;
|
return 10;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(OS_LINUX)
|
||||||
|
void OverrideLinuxAppDataPath() {
|
||||||
|
base::FilePath path;
|
||||||
|
if (PathService::Get(DIR_APP_DATA, &path))
|
||||||
|
return;
|
||||||
|
scoped_ptr<base::Environment> env(base::Environment::Create());
|
||||||
|
path = base::nix::GetXDGDirectory(env.get(),
|
||||||
|
base::nix::kXdgConfigHomeEnvVar,
|
||||||
|
base::nix::kDotConfigDir);
|
||||||
|
PathService::Override(DIR_APP_DATA, path);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
#endif
|
|
||||||
|
|
||||||
BrowserMainParts::BrowserMainParts() {
|
BrowserMainParts::BrowserMainParts() {
|
||||||
}
|
}
|
||||||
|
@ -64,10 +84,13 @@ void BrowserMainParts::PreEarlyInitialization() {
|
||||||
views::LinuxUI::SetInstance(BuildGtk2UI());
|
views::LinuxUI::SetInstance(BuildGtk2UI());
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(OS_LINUX)
|
||||||
|
OverrideLinuxAppDataPath();
|
||||||
|
#endif
|
||||||
|
|
||||||
InitProxyResolverV8();
|
InitProxyResolverV8();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void BrowserMainParts::ToolkitInitialized() {
|
void BrowserMainParts::ToolkitInitialized() {
|
||||||
#if defined(USE_AURA) && defined(USE_X11)
|
#if defined(USE_AURA) && defined(USE_X11)
|
||||||
views::LinuxUI::instance()->Initialize();
|
views::LinuxUI::instance()->Initialize();
|
||||||
|
|
Loading…
Add table
Reference in a new issue