X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=videolink.cpp;h=bda78ce113c51bca35894e3db3e14795eb7455b6;hb=refs%2Ftags%2F0.10-1;hp=59956c744eb673a36ce7234669f9fc51798a543c;hpb=99b1207e57f31c2f642219c2f2bce855d7bca20b;p=videolink.git diff --git a/videolink.cpp b/videolink.cpp index 59956c7..bda78ce 100644 --- a/videolink.cpp +++ b/videolink.cpp @@ -194,7 +194,7 @@ namespace std::string output_dir_; mpeg_encoder encoder_; browser_widget browser_widget_; - nsCOMPtr stylesheet_; + agent_style_sheet_holder style_sheet_; dvd_contents contents_; typedef std::map resource_map_type; @@ -219,7 +219,8 @@ namespace : frame_params_(frame_params), output_dir_(output_dir), encoder_(encoder), - stylesheet_(load_css("file://" VIDEOLINK_SHARE_DIR "/videolink.css")), + style_sheet_(init_agent_style_sheet( + "file://"VIDEOLINK_SHARE_DIR"/videolink.css")), pending_window_update_(false), pending_req_count_(0), have_tweaked_page_(false), @@ -440,7 +441,7 @@ namespace // disable scrollbars. if (!have_tweaked_page_) { - apply_style_sheet(stylesheet_, pres_shell); + apply_agent_style_sheet(style_sheet_, pres_shell); // This actually only needs to be done once. nsCOMPtr dom_bar_prop; @@ -874,12 +875,6 @@ namespace check(pref_branch->SetBoolPref( "layout.fire_onload_after_image_background_loads", true)); - - // Turn off link underlining. This is also set in the agent - // stylesheet, but seems to be overridden by preferences in - // Mozilla 1.8. - check(pref_branch->SetBoolPref("browser.underline_anchors", - false)); # endif // Set display resolution. With standard-definition video we @@ -890,8 +885,21 @@ namespace // slightly different but unfortunately Mozilla doesn't // support non-square pixels (and neither do fontconfig or Xft // anyway). - check(pref_branch->SetIntPref("browser.display.screen_resolution", - 40)); + + // The browser.display.screen_resolution preference sets the + // the nominal resolution for dimensions expressed in pixels. + // (They may be scaled!) In Mozilla 1.7 it also sets the + // assumed resolution of the display - hence pixel sizes are + // respected on-screen - but this is no longer the case in + // 1.8. Therefore it was renamed to layout.css.dpi in 1.8.1. + // In 1.8 we need to set the assumed screen resolution + // separately, but don't know how yet. Setting one to 40 + // but not the other is *bad*, so currently we set neither. + +# if MOZ_VERSION_MAJOR == 1 && MOZ_VERSION_MINOR < 8 + check(pref_branch->SetIntPref("browser.display.screen_resolution", + 40)); +# endif } } // namespace