Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@localhost.localdomain>2007-05-22 20:57:48 (GMT)
committer Marco Pesenti Gritti <marco@localhost.localdomain>2007-05-22 20:57:48 (GMT)
commit32a18dfc6da97801673dd0bf7424350489694ca0 (patch)
treee9a171ae8776ceb805fe0ddc407d4c859026a398
parente66eb0affccb71012619b7cdef3f502e32156f78 (diff)
Load default prefs
-rw-r--r--Makefile.am4
-rw-r--r--configure.ac1
-rw-r--r--data/Makefile.am4
-rw-r--r--data/prefs.js86
-rw-r--r--python/__init__.py29
-rw-r--r--src/HulahopDirectoryProvider.cpp15
-rw-r--r--src/Makefile.am3
7 files changed, 135 insertions, 7 deletions
diff --git a/Makefile.am b/Makefile.am
index 0027f74..21b84b7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,3 +1 @@
-SUBDIRS = src python
-
-ACLOCAL_AMFLAGS = -I m4
+SUBDIRS = data src python
diff --git a/configure.ac b/configure.ac
index 1cd9536..36683c1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -37,6 +37,7 @@ AC_SUBST([GECKO_LIBS])
AC_OUTPUT([
Makefile
+data/Makefile
src/Makefile
python/Makefile
])
diff --git a/data/Makefile.am b/data/Makefile.am
new file mode 100644
index 0000000..98d9b33
--- /dev/null
+++ b/data/Makefile.am
@@ -0,0 +1,4 @@
+hulahopdir = $(pkgdatadir)
+hulahop_DATA = prefs.js
+
+EXTRA_DIST = $(hulahop_DATA)
diff --git a/data/prefs.js b/data/prefs.js
new file mode 100644
index 0000000..7b11c95
--- /dev/null
+++ b/data/prefs.js
@@ -0,0 +1,86 @@
+// Disable onload popups
+pref("dom.disable_open_during_load", true);
+
+// Disable usless security warnings
+pref("security.warn_entering_secure", false);
+pref("security.warn_entering_secure.show_once", true);
+pref("security.warn_leaving_secure", false);
+pref("security.warn_leaving_secure.show_once", false);
+pref("security.warn_submit_insecure", false);
+pref("security.warn_submit_insecure.show_once", false);
+pref("security.warn_viewing_mixed", true);
+pref("security.warn_viewing_mixed.show_once", false);
+pref("security.warn_entering_weak", true);
+pref("security.warn_entering_weak.show_once", false);
+
+// Set some style properties to not follow our dark gtk theme
+pref("ui.-moz-field", "#FFFFFF");
+pref("ui.-moz-fieldtext", "#000000");
+pref("ui.buttonface", "#D3D3DD");
+pref("ui.buttontext", "#000000");
+
+// Fonts
+pref("font.size.unit", "pt");
+
+pref("font.default.ar", "sans-serif");
+pref("font.size.variable.ar", 12);
+pref("font.size.fixed.ar", 9);
+
+pref("font.default.el", "serif");
+pref("font.size.variable.el", 12);
+pref("font.size.fixed.el", 9);
+
+pref("font.default.he", "sans-serif");
+pref("font.size.variable.he", 12);
+pref("font.size.fixed.he", 9);
+
+pref("font.default.ja", "sans-serif");
+pref("font.size.variable.ja", 12);
+pref("font.size.fixed.ja", 12);
+
+pref("font.default.ko", "sans-serif");
+pref("font.size.variable.ko", 12);
+pref("font.size.fixed.ko", 12);
+
+pref("font.default.th", "serif");
+pref("font.size.variable.th", 12);
+pref("font.size.fixed.th", 9);
+
+pref("font.default.tr", "serif");
+pref("font.size.variable.tr", 12);
+pref("font.size.fixed.tr", 9);
+
+pref("font.default.x-baltic", "serif");
+pref("font.size.variable.x-baltic", 12);
+pref("font.size.fixed.x-baltic", 9);
+
+pref("font.default.x-central-euro", "serif");
+pref("font.size.variable.x-central-euro", 12);
+pref("font.size.fixed.x-central-euro", 9);
+
+pref("font.default.x-cyrillic", "serif");
+pref("font.size.variable.x-cyrillic", 12);
+pref("font.size.fixed.x-cyrillic", 9);
+
+pref("font.default.x-unicode", "serif");
+pref("font.size.variable.x-unicode", 12);
+pref("font.size.fixed.x-unicode", 9);
+
+pref("font.default.x-western", "serif");
+pref("font.size.variable.x-western", 12);
+pref("font.size.fixed.x-western", 9);
+
+pref("font.default.zh-CN", "sans-serif");
+pref("font.size.variable.zh-CN", 12);
+pref("font.size.fixed.zh-CN", 12);
+
+pref("font.default.zh-TW", "sans-serif");
+pref("font.size.variable.zh-TW", 12);
+pref("font.size.fixed.zh-TW", 12);
+
+pref("font.default.zh-HK", "sans-serif");
+pref("font.size.variable.zh-HK", 12);
+pref("font.size.fixed.zh-HK", 12);
+
+// Enable error pages (xulrunner is missing this pref)
+pref("browser.xul.error_pages.enabled", true);
diff --git a/python/__init__.py b/python/__init__.py
index aaa29a9..55758a0 100644
--- a/python/__init__.py
+++ b/python/__init__.py
@@ -15,9 +15,13 @@
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
+import gtk
+
from hulahop._hulahop import shutdown
from hulahop import _hulahop
+_XO_DPI = 200.0
+
def startup(profile_path, components_dirs=[]):
_hulahop.set_profile_path(profile_path)
@@ -25,3 +29,28 @@ def startup(profile_path, components_dirs=[]):
_hulahop.add_components_path(path)
_hulahop.startup()
+
+ from xpcom import components
+
+ cls = components.classes["@mozilla.org/preferences-service;1"]
+ prefService = cls.getService(components.interfaces.nsIPrefService)
+ branch = prefService.getBranch('')
+ branch.setIntPref('layout.css.dpi', _get_layout_dpi())
+
+def _get_layout_dpi():
+ _screen_dpi = gtk.settings_get_default().get_property('gtk-xft-dpi')
+ screen_width = gtk.gdk.screen_width()
+
+ if _screen_dpi != _XO_DPI or screen_width != 1200:
+ return -1
+
+ # Layout:
+ # 1024x768 -> (96 * 6) / 1024 * 201 = 113 dpi
+ # 800x600 -> (96 * 6) / 800 * 201 = 144 dpi
+ #
+ # Fonts:
+ # 7 pt -> 7 / 12 * 201 = 117 dpi
+ # 8 pt -> 8 / 12 * 201 = 134 dpi
+ # 9 pt -> 9 / 12 * 201 = 150 dpi
+
+ return 134
diff --git a/src/HulahopDirectoryProvider.cpp b/src/HulahopDirectoryProvider.cpp
index 7d5d404..1162dbb 100644
--- a/src/HulahopDirectoryProvider.cpp
+++ b/src/HulahopDirectoryProvider.cpp
@@ -51,7 +51,7 @@ HulahopDirectoryProvider::GetFile(const char *aKey,
NS_ADDREF(*aResult = mProfilePath);
return NS_OK;
}
-
+
if (!strcmp(aKey, NS_XPCOM_COMPONENT_REGISTRY_FILE) && mProfilePath) {
nsCOMPtr<nsIFile> file;
rv = mProfilePath->Clone(getter_AddRefs(file));
@@ -59,11 +59,20 @@ HulahopDirectoryProvider::GetFile(const char *aKey,
rv = file->AppendNative(nsCString("compreg.dat"));
NS_ENSURE_SUCCESS(rv, NS_ERROR_FAILURE);
-
+
NS_ADDREF(*aResult = file);
return NS_OK;
}
-
+
+ if (!strcmp(aKey, NS_APP_PREF_DEFAULTS_50_DIR)) {
+ nsCOMPtr<nsILocalFile> dataDir;
+ NS_NewNativeLocalFile(nsCString(DATA_DIR),
+ PR_TRUE, getter_AddRefs(dataDir));
+
+ NS_ADDREF(*aResult = dataDir);
+ return NS_OK;
+ }
+
return NS_ERROR_FAILURE;
}
diff --git a/src/Makefile.am b/src/Makefile.am
index a601c9d..fd3f647 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -11,7 +11,8 @@ INCLUDES = \
-I$(MOZILLA_INCLUDE_ROOT)/webbrwsr \
-I$(MOZILLA_INCLUDE_ROOT)/widget \
-I$(MOZILLA_INCLUDE_ROOT)/xpcom \
- -DMOZILLA_HOME=\"$(MOZILLA_HOME)\"
+ -DMOZILLA_HOME=\"$(MOZILLA_HOME)\" \
+ -DDATA_DIR=\"$(pkgdatadir)\"
noinst_LTLIBRARIES = libhulahop.la