Changeset 100056 in webkit
- Timestamp:
- Nov 11, 2011, 6:10:55 PM (15 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 5 edited
-
ChangeLog (modified) (1 diff)
-
UIProcess/API/gtk/WebKitSettings.cpp (modified) (8 diffs)
-
UIProcess/API/gtk/WebKitSettings.h (modified) (1 diff)
-
UIProcess/API/gtk/docs/webkit2gtk-sections.txt (modified) (1 diff)
-
UIProcess/API/gtk/tests/TestWebKitSettings.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r100050 r100056 1 2011-11-11 Nayan Kumar K <nayankk@motorola.com> 2 3 [GTK][WEBKIT2] Add font and charset properties to WebKitWebSettings 4 https://bugs.webkit.org/show_bug.cgi?id=68996 5 6 Reviewed by Martin Robinson. 7 8 Provision to query and set the font related properties (such as 9 font-family, font-size) and charset properties (such as default- 10 charset) is added. 11 12 * UIProcess/API/gtk/WebKitSettings.cpp: Added font and encoding properties. 13 (webKitSettingsSetProperty): GObject set property function. 14 (webKitSettingsGetProperty): GObject get property function. 15 (webkit_settings_class_init): Few more signals installed. 16 (webkit_settings_init): Initialization of instance variables. 17 (webkit_web_settings_get_default_font_family): Get 'default-font-family'. 18 (webkit_web_settings_set_default_font_family): Set 'default-font-family'. 19 (webkit_web_settings_get_monospace_font_family): Get 'monospace-font-family'. 20 (webkit_web_settings_set_monospace_font_family): Set 'monospace-font-family'. 21 (webkit_web_settings_get_serif_font_family): Get 'serif-font-family'. 22 (webkit_web_settings_set_serif_font_family): Set 'serif-font-family'. 23 (webkit_web_settings_get_sans_serif_font_family): Get 'sans-serif-font-family'. 24 (webkit_web_settings_set_sans_serif_font_family): Get 'sans-serif-font-family'. 25 (webkit_web_settings_get_cursive_font_family): Get 'cursive-font-family'. 26 (webkit_web_settings_set_cursive_font_family): Set 'cursive-font-family'. 27 (webkit_web_settings_get_fantasy_font_family): Get 'fantasy-font-family'. 28 (webkit_web_settings_set_fantasy_font_family): Set 'fantasy-font-family'. 29 (webkit_web_settings_get_pictograph_font_family): Get 'pictograph-font-family'. 30 (webkit_web_settings_set_pictograph_font_family): Set 'pictograph-font-family'. 31 (webkit_web_settings_get_default_font_size): Get 'default-font-size'. 32 (webkit_web_settings_set_default_font_size): Set 'default-font-size'. 33 (webkit_web_settings_get_default_monospace_font_size): Get 'default-monospace-font-size'. 34 (webkit_web_settings_set_default_monospace_font_size): Set 'default-monospace-font-size'. 35 (webkit_web_settings_get_minimum_font_size): Get 'minimum-font-size'. 36 (webkit_web_settings_set_minimum_font_size): Set 'minimum-font-size'. 37 (webkit_web_settings_get_default_charset): Get 'default-charset'. 38 (webkit_web_settings_set_default_charset): Set 'default-charset'. 39 * UIProcess/API/gtk/WebKitSettings.h: Add new sections for gtk-doc generation. 40 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Expose new public APIs. 41 * UIProcess/API/gtk/tests/TestWebKitSettings.cpp: 42 (testWebKitSettings): Add new tests. 43 1 44 2011-11-11 Shinya Kawanaka <shinyak@google.com> 2 45 -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp
r98846 r100056 34 34 #include "WebKitPrivate.h" 35 35 #include "WebKitSettingsPrivate.h" 36 #include <WebKit2/WKAPICast.h> 37 #include <WebKit2/WKString.h> 36 38 #include <WebKit2/WKRetainPtr.h> 37 39 #include <glib/gi18n-lib.h> 40 #include <wtf/text/CString.h> 38 41 39 42 struct _WebKitSettingsPrivate { 40 43 WKRetainPtr<WKPreferencesRef> preferences; 44 CString defaultFontFamily; 45 CString monospaceFontFamily; 46 CString serifFontFamily; 47 CString sansSerifFontFamily; 48 CString cursiveFontFamily; 49 CString fantasyFontFamily; 50 CString pictographFontFamily; 51 CString defaultCharset; 41 52 }; 42 53 … … 45 56 * @short_description: Control the behaviour of a #WebKitWebView 46 57 * 47 * #WebKitSettings can be applied to a #WebKitWebView to control text encoding,58 * #WebKitSettings can be applied to a #WebKitWebView to control text charset, 48 59 * color, font sizes, printing mode, script support, loading of images and various other things. 49 60 * After creation, a #WebKitSettings object contains default settings. … … 76 87 PROP_JAVASCRIPT_CAN_OPEN_WINDOWS_AUTOMATICALLY, 77 88 PROP_ENABLE_HYPERLINK_AUDITING, 89 PROP_DEFAULT_FONT_FAMILY, 90 PROP_MONOSPACE_FONT_FAMILY, 91 PROP_SERIF_FONT_FAMILY, 92 PROP_SANS_SERIF_FONT_FAMILY, 93 PROP_CURSIVE_FONT_FAMILY, 94 PROP_FANTASY_FONT_FAMILY, 95 PROP_PICTOGRAPH_FONT_FAMILY, 96 PROP_DEFAULT_FONT_SIZE, 97 PROP_DEFAULT_MONOSPACE_FONT_SIZE, 98 PROP_MINIMUM_FONT_SIZE, 99 PROP_DEFAULT_CHARSET, 78 100 }; 79 101 … … 119 141 webkit_settings_set_enable_hyperlink_auditing(settings, g_value_get_boolean(value)); 120 142 break; 143 case PROP_DEFAULT_FONT_FAMILY: 144 webkit_settings_set_default_font_family(settings, g_value_get_string(value)); 145 break; 146 case PROP_MONOSPACE_FONT_FAMILY: 147 webkit_settings_set_monospace_font_family(settings, g_value_get_string(value)); 148 break; 149 case PROP_SERIF_FONT_FAMILY: 150 webkit_settings_set_serif_font_family(settings, g_value_get_string(value)); 151 break; 152 case PROP_SANS_SERIF_FONT_FAMILY: 153 webkit_settings_set_sans_serif_font_family(settings, g_value_get_string(value)); 154 break; 155 case PROP_CURSIVE_FONT_FAMILY: 156 webkit_settings_set_cursive_font_family(settings, g_value_get_string(value)); 157 break; 158 case PROP_FANTASY_FONT_FAMILY: 159 webkit_settings_set_fantasy_font_family(settings, g_value_get_string(value)); 160 break; 161 case PROP_PICTOGRAPH_FONT_FAMILY: 162 webkit_settings_set_pictograph_font_family(settings, g_value_get_string(value)); 163 break; 164 case PROP_DEFAULT_FONT_SIZE: 165 webkit_settings_set_default_font_size(settings, g_value_get_uint(value)); 166 break; 167 case PROP_DEFAULT_MONOSPACE_FONT_SIZE: 168 webkit_settings_set_default_monospace_font_size(settings, g_value_get_uint(value)); 169 break; 170 case PROP_MINIMUM_FONT_SIZE: 171 webkit_settings_set_minimum_font_size(settings, g_value_get_uint(value)); 172 break; 173 case PROP_DEFAULT_CHARSET: 174 webkit_settings_set_default_charset(settings, g_value_get_string(value)); 175 break; 121 176 default: 122 177 G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propId, paramSpec); … … 165 220 case PROP_ENABLE_HYPERLINK_AUDITING: 166 221 g_value_set_boolean(value, webkit_settings_get_enable_hyperlink_auditing(settings)); 222 break; 223 case PROP_DEFAULT_FONT_FAMILY: 224 g_value_set_string(value, webkit_settings_get_default_font_family(settings)); 225 break; 226 case PROP_MONOSPACE_FONT_FAMILY: 227 g_value_set_string(value, webkit_settings_get_monospace_font_family(settings)); 228 break; 229 case PROP_SERIF_FONT_FAMILY: 230 g_value_set_string(value, webkit_settings_get_serif_font_family(settings)); 231 break; 232 case PROP_SANS_SERIF_FONT_FAMILY: 233 g_value_set_string(value, webkit_settings_get_sans_serif_font_family(settings)); 234 break; 235 case PROP_CURSIVE_FONT_FAMILY: 236 g_value_set_string(value, webkit_settings_get_cursive_font_family(settings)); 237 break; 238 case PROP_FANTASY_FONT_FAMILY: 239 g_value_set_string(value, webkit_settings_get_fantasy_font_family(settings)); 240 break; 241 case PROP_PICTOGRAPH_FONT_FAMILY: 242 g_value_set_string(value, webkit_settings_get_pictograph_font_family(settings)); 243 break; 244 case PROP_DEFAULT_FONT_SIZE: 245 g_value_set_uint(value, webkit_settings_get_default_font_size(settings)); 246 break; 247 case PROP_DEFAULT_MONOSPACE_FONT_SIZE: 248 g_value_set_uint(value, webkit_settings_get_default_monospace_font_size(settings)); 249 break; 250 case PROP_MINIMUM_FONT_SIZE: 251 g_value_set_uint(value, webkit_settings_get_minimum_font_size(settings)); 252 break; 253 case PROP_DEFAULT_CHARSET: 254 g_value_set_string(value, webkit_settings_get_default_charset(settings)); 167 255 break; 168 256 default: … … 368 456 readWriteConstructParamFlags)); 369 457 458 /** 459 * WebKitWebSettings:default-font-family 460 * 461 * The font family to use as the default for content that does not specify a font. 462 */ 463 g_object_class_install_property(gObjectClass, 464 PROP_DEFAULT_FONT_FAMILY, 465 g_param_spec_string("default-font-family", 466 _("Default font family"), 467 _("The font family to use as the default for content that does not specify a font."), 468 "sans-serif", 469 readWriteConstructParamFlags)); 470 471 /** 472 * WebKitWebSettings:monospace-font-family 473 * 474 * The font family used as the default for content using a monospace font. 475 * 476 */ 477 g_object_class_install_property(gObjectClass, 478 PROP_MONOSPACE_FONT_FAMILY, 479 g_param_spec_string("monospace-font-family", 480 _("Monospace font family"), 481 _("The font family used as the default for content using monospace font."), 482 "monospace", 483 readWriteConstructParamFlags)); 484 485 /** 486 * WebKitWebSettings:serif-font-family 487 * 488 * The font family used as the default for content using a serif font. 489 */ 490 g_object_class_install_property(gObjectClass, 491 PROP_SERIF_FONT_FAMILY, 492 g_param_spec_string("serif-font-family", 493 _("Serif font family"), 494 _("The font family used as the default for content using serif font."), 495 "serif", 496 readWriteConstructParamFlags)); 497 498 /** 499 * WebKitWebSettings:sans-serif-font-family 500 * 501 * The font family used as the default for content using a sans-serif font. 502 */ 503 g_object_class_install_property(gObjectClass, 504 PROP_SANS_SERIF_FONT_FAMILY, 505 g_param_spec_string("sans-serif-font-family", 506 _("Sans-serif font family"), 507 _("The font family used as the default for content using sans-serif font."), 508 "sans-serif", 509 readWriteConstructParamFlags)); 510 511 /** 512 * WebKitWebSettings:cursive-font-family 513 * 514 * The font family used as the default for content using a cursive font. 515 */ 516 g_object_class_install_property(gObjectClass, 517 PROP_CURSIVE_FONT_FAMILY, 518 g_param_spec_string("cursive-font-family", 519 _("Cursive font family"), 520 _("The font family used as the default for content using cursive font."), 521 "serif", 522 readWriteConstructParamFlags)); 523 524 /** 525 * WebKitWebSettings:fantasy-font-family 526 * 527 * The font family used as the default for content using a fantasy font. 528 */ 529 g_object_class_install_property(gObjectClass, 530 PROP_FANTASY_FONT_FAMILY, 531 g_param_spec_string("fantasy-font-family", 532 _("Fantasy font family"), 533 _("The font family used as the default for content using fantasy font."), 534 "serif", 535 readWriteConstructParamFlags)); 536 537 /** 538 * WebKitWebSettings:pictograph-font-family 539 * 540 * The font family used as the default for content using a pictograph font. 541 */ 542 g_object_class_install_property(gObjectClass, 543 PROP_PICTOGRAPH_FONT_FAMILY, 544 g_param_spec_string("pictograph-font-family", 545 _("Pictograph font family"), 546 _("The font family used as the default for content using pictograph font."), 547 "serif", 548 readWriteConstructParamFlags)); 549 550 /** 551 * WebKitWebSettings:default-font-size 552 * 553 * The default font size in pixels to use for content displayed if 554 * no font size is specified. 555 */ 556 g_object_class_install_property(gObjectClass, 557 PROP_DEFAULT_FONT_SIZE, 558 g_param_spec_uint("default-font-size", 559 _("Default font size"), 560 _("The default font size used to display text."), 561 0, G_MAXUINT, 12, 562 readWriteConstructParamFlags)); 563 564 /** 565 * WebKitWebSettings:default-monospace-font-size 566 * 567 * The default font size in pixels to use for content displayed in 568 * monospace font if no font size is specified. 569 */ 570 g_object_class_install_property(gObjectClass, 571 PROP_DEFAULT_MONOSPACE_FONT_SIZE, 572 g_param_spec_uint("default-monospace-font-size", 573 _("Default monospace font size"), 574 _("The default font size used to display monospace text."), 575 0, G_MAXUINT, 10, 576 readWriteConstructParamFlags)); 577 578 /** 579 * WebKitWebSettings:minimum-font-size 580 * 581 * The minimum font size in points used to display text. This setting 582 * controls the absolute smallest size. Values other than 0 can 583 * potentially break page layouts. 584 */ 585 g_object_class_install_property(gObjectClass, 586 PROP_MINIMUM_FONT_SIZE, 587 g_param_spec_uint("minimum-font-size", 588 _("Minimum font size"), 589 _("The minimum font size used to display text."), 590 0, G_MAXUINT, 0, 591 readWriteConstructParamFlags)); 592 593 /** 594 * WebKitSettings:default-charset 595 * 596 * The default text charset used when interpreting content with an unspecified charset. 597 */ 598 g_object_class_install_property(gObjectClass, 599 PROP_DEFAULT_CHARSET, 600 g_param_spec_string("default-charset", 601 _("Default charset"), 602 _("The default text charset used when interpreting content with unspecified charset."), 603 "iso-8859-1", 604 readWriteConstructParamFlags)); 605 606 370 607 g_type_class_add_private(klass, sizeof(WebKitSettingsPrivate)); 371 608 } … … 378 615 379 616 priv->preferences = adoptWK(WKPreferencesCreate()); 617 618 WKRetainPtr<WKStringRef> defaultFontFamilyRef = WKPreferencesCopyStandardFontFamily(priv->preferences.get()); 619 priv->defaultFontFamily = WebKit::toImpl(defaultFontFamilyRef.get())->string().utf8(); 620 621 WKRetainPtr<WKStringRef> monospaceFontFamilyRef = WKPreferencesCopyFixedFontFamily(priv->preferences.get()); 622 priv->monospaceFontFamily = WebKit::toImpl(monospaceFontFamilyRef.get())->string().utf8(); 623 624 WKRetainPtr<WKStringRef> serifFontFamilyRef = WKPreferencesCopySerifFontFamily(priv->preferences.get()); 625 priv->serifFontFamily = WebKit::toImpl(serifFontFamilyRef.get())->string().utf8(); 626 627 WKRetainPtr<WKStringRef> sansSerifFontFamilyRef = WKPreferencesCopySansSerifFontFamily(priv->preferences.get()); 628 priv->sansSerifFontFamily = WebKit::toImpl(sansSerifFontFamilyRef.get())->string().utf8(); 629 630 WKRetainPtr<WKStringRef> cursiveFontFamilyRef = WKPreferencesCopyCursiveFontFamily(priv->preferences.get()); 631 priv->cursiveFontFamily = WebKit::toImpl(cursiveFontFamilyRef.get())->string().utf8(); 632 633 WKRetainPtr<WKStringRef> fantasyFontFamilyRef = WKPreferencesCopyFantasyFontFamily(priv->preferences.get()); 634 priv->fantasyFontFamily = WebKit::toImpl(fantasyFontFamilyRef.get())->string().utf8(); 635 636 WKRetainPtr<WKStringRef> pictographFontFamilyRef = WKPreferencesCopyPictographFontFamily(priv->preferences.get()); 637 priv->pictographFontFamily = WebKit::toImpl(pictographFontFamilyRef.get())->string().utf8(); 638 639 WKRetainPtr<WKStringRef> defaultCharsetRef = WKPreferencesCopyDefaultTextEncodingName(priv->preferences.get()); 640 priv->defaultCharset = WebKit::toImpl(defaultCharsetRef.get())->string().utf8(); 380 641 } 381 642 … … 839 1100 g_object_notify(G_OBJECT(settings), "enable-hyperlink-auditing"); 840 1101 } 1102 1103 /** 1104 * webkit_web_settings_get_default_font_family: 1105 * @settings: a #WebKitSettings 1106 * 1107 * Gets the #WebKitSettings:default-font-family property. 1108 * 1109 * Returns: The default font family used to display content that does not specify a font. 1110 */ 1111 const gchar* webkit_settings_get_default_font_family(WebKitSettings* settings) 1112 { 1113 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1114 1115 return settings->priv->defaultFontFamily.data(); 1116 } 1117 1118 /** 1119 * webkit_settings_set_default_font_family: 1120 * @settings: a #WebKitSettings 1121 * @default_font_family: the new default font family 1122 * 1123 * Set the #WebKitSettings:default-font-family property. 1124 */ 1125 void webkit_settings_set_default_font_family(WebKitSettings* settings, const gchar* defaultFontFamily) 1126 { 1127 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1128 g_return_if_fail(defaultFontFamily); 1129 1130 WebKitSettingsPrivate* priv = settings->priv; 1131 if (!g_strcmp0(priv->defaultFontFamily.data(), defaultFontFamily)) 1132 return; 1133 1134 WKRetainPtr<WKStringRef> standardFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(defaultFontFamily)); 1135 WKPreferencesSetStandardFontFamily(priv->preferences.get(), standardFontFamilyRef.get()); 1136 priv->defaultFontFamily = WebKit::toImpl(standardFontFamilyRef.get())->string().utf8(); 1137 1138 g_object_notify(G_OBJECT(settings), "default-font-family"); 1139 } 1140 1141 /** 1142 * webkit_settings_get_monospace_font_family: 1143 * @settings: a #WebKitSettings 1144 * 1145 * Gets the #WebKitSettings:monospace-font-family property. 1146 * 1147 * Returns: Default font family used to display content marked with monospace font. 1148 */ 1149 const gchar* webkit_settings_get_monospace_font_family(WebKitSettings* settings) 1150 { 1151 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1152 1153 return settings->priv->monospaceFontFamily.data(); 1154 } 1155 1156 /** 1157 * webkit_settings_set_monospace_font_family: 1158 * @settings: a #WebKitSettings 1159 * @monospace_font_family: the new default monospace font family 1160 * 1161 * Set the #WebKitSettings:monospace-font-family property. 1162 */ 1163 void webkit_settings_set_monospace_font_family(WebKitSettings* settings, const gchar* monospaceFontFamily) 1164 { 1165 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1166 g_return_if_fail(monospaceFontFamily); 1167 1168 WebKitSettingsPrivate* priv = settings->priv; 1169 if (!g_strcmp0(priv->monospaceFontFamily.data(), monospaceFontFamily)) 1170 return; 1171 1172 WKRetainPtr<WKStringRef> fixedFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(monospaceFontFamily)); 1173 WKPreferencesSetFixedFontFamily(priv->preferences.get(), fixedFontFamilyRef.get()); 1174 priv->monospaceFontFamily = WebKit::toImpl(fixedFontFamilyRef.get())->string().utf8(); 1175 1176 g_object_notify(G_OBJECT(settings), "monospace-font-family"); 1177 } 1178 1179 /** 1180 * webkit_settings_get_serif_font_family: 1181 * @settings: a #WebKitSettings 1182 * 1183 * Gets the #WebKitSettings:serif-font-family property. 1184 * 1185 * Returns: The default font family used to display content marked with serif font. 1186 */ 1187 const gchar* webkit_settings_get_serif_font_family(WebKitSettings* settings) 1188 { 1189 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1190 1191 return settings->priv->serifFontFamily.data(); 1192 } 1193 1194 /** 1195 * webkit_settings_set_serif_font_family: 1196 * @settings: a #WebKitSettings 1197 * @serif_font_family: the new default serif font family 1198 * 1199 * Set the #WebKitSettings:serif-font-family property. 1200 */ 1201 void webkit_settings_set_serif_font_family(WebKitSettings* settings, const gchar* serifFontFamily) 1202 { 1203 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1204 g_return_if_fail(serifFontFamily); 1205 1206 WebKitSettingsPrivate* priv = settings->priv; 1207 if (!g_strcmp0(priv->serifFontFamily.data(), serifFontFamily)) 1208 return; 1209 1210 WKRetainPtr<WKStringRef> serifFontFamilyRef = WKStringCreateWithUTF8CString(serifFontFamily); 1211 WKPreferencesSetSerifFontFamily(priv->preferences.get(), serifFontFamilyRef.get()); 1212 priv->serifFontFamily = WebKit::toImpl(serifFontFamilyRef.get())->string().utf8(); 1213 1214 g_object_notify(G_OBJECT(settings), "serif-font-family"); 1215 } 1216 1217 /** 1218 * webkit_settings_get_sans_serif_font_family: 1219 * @settings: a #WebKitSettings 1220 * 1221 * Gets the #WebKitSettings:sans-serif-font-family property. 1222 * 1223 * Returns: The default font family used to display content marked with sans-serif font. 1224 */ 1225 const gchar* webkit_settings_get_sans_serif_font_family(WebKitSettings* settings) 1226 { 1227 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1228 1229 return settings->priv->sansSerifFontFamily.data(); 1230 } 1231 1232 /** 1233 * webkit_settings_set_sans_serif_font_family: 1234 * @settings: a #WebKitSettings 1235 * @sans_serif_font_family: the new default sans-serif font family 1236 * 1237 * Set the #WebKitSettings:sans-serif-font-family property. 1238 */ 1239 void webkit_settings_set_sans_serif_font_family(WebKitSettings* settings, const gchar* sansSerifFontFamily) 1240 { 1241 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1242 g_return_if_fail(sansSerifFontFamily); 1243 1244 WebKitSettingsPrivate* priv = settings->priv; 1245 if (!g_strcmp0(priv->sansSerifFontFamily.data(), sansSerifFontFamily)) 1246 return; 1247 1248 WKRetainPtr<WKStringRef> sansSerifFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(sansSerifFontFamily)); 1249 WKPreferencesSetSansSerifFontFamily(priv->preferences.get(), sansSerifFontFamilyRef.get()); 1250 priv->sansSerifFontFamily = WebKit::toImpl(sansSerifFontFamilyRef.get())->string().utf8(); 1251 1252 g_object_notify(G_OBJECT(settings), "sans-serif-font-family"); 1253 } 1254 1255 /** 1256 * webkit_settings_get_cursive_font_family: 1257 * @settings: a #WebKitSettings 1258 * 1259 * Gets the #WebKitSettings:cursive-font-family property. 1260 * 1261 * Returns: The default font family used to display content marked with cursive font. 1262 */ 1263 const gchar* webkit_settings_get_cursive_font_family(WebKitSettings* settings) 1264 { 1265 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1266 1267 return settings->priv->cursiveFontFamily.data(); 1268 } 1269 1270 /** 1271 * webkit_settings_set_cursive_font_family: 1272 * @settings: a #WebKitSettings 1273 * @cursive_font_family: the new default cursive font family 1274 * 1275 * Set the #WebKitSettings:cursive-font-family property. 1276 */ 1277 void webkit_settings_set_cursive_font_family(WebKitSettings* settings, const gchar* cursiveFontFamily) 1278 { 1279 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1280 g_return_if_fail(cursiveFontFamily); 1281 1282 WebKitSettingsPrivate* priv = settings->priv; 1283 if (!g_strcmp0(priv->cursiveFontFamily.data(), cursiveFontFamily)) 1284 return; 1285 1286 WKRetainPtr<WKStringRef> cursiveFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(cursiveFontFamily)); 1287 WKPreferencesSetCursiveFontFamily(priv->preferences.get(), cursiveFontFamilyRef.get()); 1288 priv->cursiveFontFamily = WebKit::toImpl(cursiveFontFamilyRef.get())->string().utf8(); 1289 1290 g_object_notify(G_OBJECT(settings), "cursive-font-family"); 1291 } 1292 1293 /** 1294 * webkit_settings_get_fantasy_font_family: 1295 * @settings: a #WebKitSettings 1296 * 1297 * Gets the #WebKitSettings:fantasy-font-family property. 1298 * 1299 * Returns: The default font family used to display content marked with fantasy font. 1300 */ 1301 const gchar* webkit_settings_get_fantasy_font_family(WebKitSettings* settings) 1302 { 1303 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1304 1305 return settings->priv->fantasyFontFamily.data(); 1306 } 1307 1308 /** 1309 * webkit_settings_set_fantasy_font_family: 1310 * @settings: a #WebKitSettings 1311 * @fantasy_font_family: the new default fantasy font family 1312 * 1313 * Set the #WebKitSettings:fantasy-font-family property. 1314 */ 1315 void webkit_settings_set_fantasy_font_family(WebKitSettings* settings, const gchar* fantasyFontFamily) 1316 { 1317 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1318 g_return_if_fail(fantasyFontFamily); 1319 1320 WebKitSettingsPrivate* priv = settings->priv; 1321 if (!g_strcmp0(priv->fantasyFontFamily.data(), fantasyFontFamily)) 1322 return; 1323 1324 WKRetainPtr<WKStringRef> fantasyFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(fantasyFontFamily)); 1325 WKPreferencesSetFantasyFontFamily(priv->preferences.get(), fantasyFontFamilyRef.get()); 1326 priv->fantasyFontFamily = WebKit::toImpl(fantasyFontFamilyRef.get())->string().utf8(); 1327 1328 g_object_notify(G_OBJECT(settings), "fantasy-font-family"); 1329 } 1330 1331 /** 1332 * webkit_settings_get_pictograph_font_family: 1333 * @settings: a #WebKitSettings 1334 * 1335 * Gets the #WebKitSettings:pictograph-font-family property. 1336 * 1337 * Returns: The default font family used to display content marked with pictograph font. 1338 */ 1339 const gchar* webkit_settings_get_pictograph_font_family(WebKitSettings* settings) 1340 { 1341 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1342 1343 return settings->priv->pictographFontFamily.data(); 1344 } 1345 1346 /** 1347 * webkit_settings_set_pictograph_font_family: 1348 * @settings: a #WebKitSettings 1349 * @pictograph_font_family: the new default pictograph font family 1350 * 1351 * Set the #WebKitSettings:pictograph-font-family property. 1352 */ 1353 void webkit_settings_set_pictograph_font_family(WebKitSettings* settings, const gchar* pictographFontFamily) 1354 { 1355 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1356 g_return_if_fail(pictographFontFamily); 1357 1358 WebKitSettingsPrivate* priv = settings->priv; 1359 if (!g_strcmp0(priv->pictographFontFamily.data(), pictographFontFamily)) 1360 return; 1361 1362 WKRetainPtr<WKStringRef> pictographFontFamilyRef = adoptWK(WKStringCreateWithUTF8CString(pictographFontFamily)); 1363 WKPreferencesSetPictographFontFamily(priv->preferences.get(), pictographFontFamilyRef.get()); 1364 priv->pictographFontFamily = WebKit::toImpl(pictographFontFamilyRef.get())->string().utf8(); 1365 1366 g_object_notify(G_OBJECT(settings), "pictograph-font-family"); 1367 } 1368 1369 /** 1370 * webkit_settings_get_default_font_size: 1371 * @settings: a #WebKitSettings 1372 * 1373 * Gets the #WebKitSettings:default-font-size property. 1374 * 1375 * Returns: The default font size. 1376 */ 1377 guint32 webkit_settings_get_default_font_size(WebKitSettings* settings) 1378 { 1379 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1380 1381 return WKPreferencesGetDefaultFontSize(settings->priv->preferences.get()); 1382 } 1383 1384 /** 1385 * webkit_settings_set_default_font_size: 1386 * @settings: a #WebKitSettings 1387 * @font_size: default font size to be set in pixels 1388 * 1389 * Set the #WebKitSettings:default-font-size property. 1390 */ 1391 void webkit_settings_set_default_font_size(WebKitSettings* settings, guint32 fontSize) 1392 { 1393 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1394 1395 WebKitSettingsPrivate* priv = settings->priv; 1396 1397 uint32_t currentSize = WKPreferencesGetDefaultFontSize(priv->preferences.get()); 1398 if (currentSize == fontSize) 1399 return; 1400 1401 WKPreferencesSetDefaultFontSize(priv->preferences.get(), fontSize); 1402 g_object_notify(G_OBJECT(settings), "default-font-size"); 1403 } 1404 1405 /** 1406 * webkit_settings_get_default_monospace_font_size: 1407 * @settings: a #WebKitSettings 1408 * 1409 * Gets the #WebKitSettings:default-monospace-font-size property. 1410 * 1411 * Returns: Default monospace font size. 1412 */ 1413 guint32 webkit_settings_get_default_monospace_font_size(WebKitSettings* settings) 1414 { 1415 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1416 1417 return WKPreferencesGetDefaultFixedFontSize(settings->priv->preferences.get()); 1418 } 1419 1420 /** 1421 * webkit_settings_set_default_monospace_font_size: 1422 * @settings: a #WebKitSettings 1423 * @font_size: default monospace font size to be set in pixels 1424 * 1425 * Set the #WebKitSettings:default-monospace-font-size property. 1426 */ 1427 void webkit_settings_set_default_monospace_font_size(WebKitSettings* settings, guint32 fontSize) 1428 { 1429 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1430 1431 WebKitSettingsPrivate* priv = settings->priv; 1432 1433 uint32_t currentSize = WKPreferencesGetDefaultFixedFontSize(priv->preferences.get()); 1434 if (currentSize == fontSize) 1435 return; 1436 1437 WKPreferencesSetDefaultFixedFontSize(priv->preferences.get(), fontSize); 1438 g_object_notify(G_OBJECT(settings), "default-monospace-font-size"); 1439 } 1440 1441 /** 1442 * webkit_settings_get_minimum_font_size: 1443 * @settings: a #WebKitSettings 1444 * 1445 * Gets the #WebKitSettings:minimum-font-size property. 1446 * 1447 * Returns: Minimum font size. 1448 */ 1449 guint32 webkit_settings_get_minimum_font_size(WebKitSettings* settings) 1450 { 1451 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1452 1453 return WKPreferencesGetMinimumFontSize(settings->priv->preferences.get()); 1454 } 1455 1456 /** 1457 * webkit_settings_set_minimum_font_size: 1458 * @settings: a #WebKitSettings 1459 * @font_size: minimum font size to be set in points 1460 * 1461 * Set the #WebKitSettings:minimum-font-size property. 1462 */ 1463 void webkit_settings_set_minimum_font_size(WebKitSettings* settings, guint32 fontSize) 1464 { 1465 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1466 1467 WebKitSettingsPrivate* priv = settings->priv; 1468 1469 uint32_t currentSize = WKPreferencesGetMinimumFontSize(priv->preferences.get()); 1470 if (currentSize == fontSize) 1471 return; 1472 1473 WKPreferencesSetMinimumFontSize(priv->preferences.get(), fontSize); 1474 g_object_notify(G_OBJECT(settings), "minimum-font-size"); 1475 } 1476 1477 /** 1478 * webkit_settings_get_default_charset: 1479 * @settings: a #WebKitSettings 1480 * 1481 * Gets the #WebKitSettings:default-charset property. 1482 * 1483 * Returns: Default charset. 1484 */ 1485 const gchar* webkit_settings_get_default_charset(WebKitSettings* settings) 1486 { 1487 g_return_val_if_fail(WEBKIT_IS_SETTINGS(settings), 0); 1488 1489 return settings->priv->defaultCharset.data(); 1490 } 1491 1492 /** 1493 * webkit_settings_set_default_charset: 1494 * @settings: a #WebKitSettings 1495 * @default_charset: default charset to be set 1496 * 1497 * Set the #WebKitSettings:default-charset property. 1498 */ 1499 void webkit_settings_set_default_charset(WebKitSettings* settings, const gchar* defaultCharset) 1500 { 1501 g_return_if_fail(WEBKIT_IS_SETTINGS(settings)); 1502 g_return_if_fail(defaultCharset); 1503 1504 WebKitSettingsPrivate* priv = settings->priv; 1505 if (!g_strcmp0(priv->defaultCharset.data(), defaultCharset)) 1506 return; 1507 1508 WKRetainPtr<WKStringRef> defaultCharsetRef = adoptWK(WKStringCreateWithUTF8CString(defaultCharset)); 1509 WKPreferencesSetDefaultTextEncodingName(priv->preferences.get(), defaultCharsetRef.get()); 1510 priv->defaultCharset = WebKit::toImpl(defaultCharsetRef.get())->string().utf8(); 1511 1512 g_object_notify(G_OBJECT(settings), "default-charset"); 1513 } -
trunk/Source/WebKit2/UIProcess/API/gtk/WebKitSettings.h
r98846 r100056 161 161 gboolean enabled); 162 162 163 WEBKIT_API const gchar * 164 webkit_settings_get_default_font_family (WebKitSettings* settings); 165 166 WEBKIT_API void 167 webkit_settings_set_default_font_family (WebKitSettings* settings, 168 const gchar* default_font_family); 169 170 WEBKIT_API const gchar * 171 webkit_settings_get_monospace_font_family (WebKitSettings* settings); 172 173 WEBKIT_API void 174 webkit_settings_set_monospace_font_family (WebKitSettings* settings, 175 const gchar* monospace_font_family); 176 177 WEBKIT_API const gchar * 178 webkit_settings_get_serif_font_family (WebKitSettings* settings); 179 180 WEBKIT_API void 181 webkit_settings_set_serif_font_family (WebKitSettings* settings, 182 const gchar* serif_font_family); 183 184 WEBKIT_API const gchar * 185 webkit_settings_get_sans_serif_font_family (WebKitSettings* settings); 186 187 WEBKIT_API void 188 webkit_settings_set_sans_serif_font_family (WebKitSettings* settings, 189 const gchar* sans_serif_font_family); 190 191 WEBKIT_API const gchar * 192 webkit_settings_get_cursive_font_family (WebKitSettings* settings); 193 194 WEBKIT_API void 195 webkit_settings_set_cursive_font_family (WebKitSettings* settings, 196 const gchar* cursive_font_family); 197 198 WEBKIT_API const gchar * 199 webkit_settings_get_fantasy_font_family (WebKitSettings* settings); 200 201 WEBKIT_API void 202 webkit_settings_set_fantasy_font_family (WebKitSettings* settings, 203 const gchar* fantasy_font_family); 204 205 WEBKIT_API const gchar * 206 webkit_settings_get_pictograph_font_family (WebKitSettings* settings); 207 208 WEBKIT_API void 209 webkit_settings_set_pictograph_font_family (WebKitSettings* settings, 210 const gchar* pictograph_font_family); 211 212 WEBKIT_API guint32 213 webkit_settings_get_default_font_size (WebKitSettings* settings); 214 215 WEBKIT_API void 216 webkit_settings_set_default_font_size (WebKitSettings* settings, 217 guint32 font_size); 218 219 WEBKIT_API guint32 220 webkit_settings_get_default_monospace_font_size (WebKitSettings* settings); 221 222 WEBKIT_API void 223 webkit_settings_set_default_monospace_font_size (WebKitSettings* settings, 224 guint32 font_size); 225 226 WEBKIT_API guint32 227 webkit_settings_get_minimum_font_size (WebKitSettings* settings); 228 229 WEBKIT_API void 230 webkit_settings_set_minimum_font_size (WebKitSettings* settings, 231 guint32 font_size); 232 233 WEBKIT_API const gchar * 234 webkit_settings_get_default_charset (WebKitSettings* settings); 235 236 WEBKIT_API void 237 webkit_settings_set_default_charset (WebKitSettings* settings, 238 const gchar* default_charset); 239 163 240 G_END_DECLS 164 241 -
trunk/Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt
r99863 r100056 182 182 webkit_settings_get_load_icons_ignoring_image_load_setting 183 183 webkit_settings_set_load_icons_ignoring_image_load_setting 184 webkit_settings_get_default_font_family 185 webkit_settings_set_default_font_family 186 webkit_settings_get_monospace_font_family 187 webkit_settings_set_monospace_font_family 188 webkit_settings_get_serif_font_family 189 webkit_settings_set_serif_font_family 190 webkit_settings_get_sans_serif_font_family 191 webkit_settings_set_sans_serif_font_family 192 webkit_settings_get_cursive_font_family 193 webkit_settings_set_cursive_font_family 194 webkit_settings_get_fantasy_font_family 195 webkit_settings_set_fantasy_font_family 196 webkit_settings_get_pictograph_font_family 197 webkit_settings_set_pictograph_font_family 198 webkit_settings_get_default_font_size 199 webkit_settings_set_default_font_size 200 webkit_settings_get_default_monospace_font_size 201 webkit_settings_set_default_monospace_font_size 202 webkit_settings_get_minimum_font_size 203 webkit_settings_set_minimum_font_size 204 webkit_settings_get_default_charset 205 webkit_settings_set_default_charset 184 206 185 207 <SUBSECTION Standard> -
trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitSettings.cpp
r99045 r100056 103 103 g_assert(webkit_settings_get_enable_hyperlink_auditing(settings)); 104 104 105 // Default font family is "sans-serif". 106 g_assert_cmpstr(webkit_settings_get_default_font_family(settings), ==, "sans-serif"); 107 webkit_settings_set_default_font_family(settings, "monospace"); 108 g_assert_cmpstr(webkit_settings_get_default_font_family(settings), ==, "monospace"); 109 110 // Default monospace font family font family is "monospace". 111 g_assert_cmpstr(webkit_settings_get_monospace_font_family(settings), ==, "monospace"); 112 webkit_settings_set_monospace_font_family(settings, "sans-serif"); 113 g_assert_cmpstr(webkit_settings_get_monospace_font_family(settings), ==, "sans-serif"); 114 115 // Default serif font family is "serif". 116 g_assert_cmpstr(webkit_settings_get_serif_font_family(settings), ==, "serif"); 117 webkit_settings_set_serif_font_family(settings, "sans-serif"); 118 g_assert_cmpstr(webkit_settings_get_serif_font_family(settings), ==, "sans-serif"); 119 120 // Default sans serif font family is "sans-serif". 121 g_assert_cmpstr(webkit_settings_get_sans_serif_font_family(settings), ==, "sans-serif"); 122 webkit_settings_set_sans_serif_font_family(settings, "serif"); 123 g_assert_cmpstr(webkit_settings_get_sans_serif_font_family(settings), ==, "serif"); 124 125 // Default cursive font family "serif". 126 g_assert_cmpstr(webkit_settings_get_cursive_font_family(settings), ==, "serif"); 127 webkit_settings_set_cursive_font_family(settings, "sans-serif"); 128 g_assert_cmpstr(webkit_settings_get_cursive_font_family(settings), ==, "sans-serif"); 129 130 // Default fantasy font family is "serif". 131 g_assert_cmpstr(webkit_settings_get_fantasy_font_family(settings), ==, "serif"); 132 webkit_settings_set_fantasy_font_family(settings, "sans-serif"); 133 g_assert_cmpstr(webkit_settings_get_fantasy_font_family(settings), ==, "sans-serif"); 134 135 // Default pictograph font family is "serif". 136 g_assert_cmpstr(webkit_settings_get_pictograph_font_family(settings), ==, "serif"); 137 webkit_settings_set_pictograph_font_family(settings, "sans-serif"); 138 g_assert_cmpstr(webkit_settings_get_pictograph_font_family(settings), ==, "sans-serif"); 139 140 // Default font size is 12. 141 g_assert_cmpuint(webkit_settings_get_default_font_size(settings), ==, 12); 142 webkit_settings_set_default_font_size(settings, 14); 143 g_assert_cmpuint(webkit_settings_get_default_font_size(settings), ==, 14); 144 145 // Default monospace font size is 10. 146 g_assert_cmpuint(webkit_settings_get_default_monospace_font_size(settings), ==, 10); 147 webkit_settings_set_default_monospace_font_size(settings, 12); 148 g_assert_cmpuint(webkit_settings_get_default_monospace_font_size(settings), ==, 12); 149 150 // Default minimum font size is 5. 151 g_assert_cmpuint(webkit_settings_get_minimum_font_size(settings), ==, 5); 152 webkit_settings_set_minimum_font_size(settings, 7); 153 g_assert_cmpuint(webkit_settings_get_minimum_font_size(settings), ==, 7); 154 155 // Default charset is "iso-8859-1". 156 g_assert_cmpstr(webkit_settings_get_default_charset(settings), ==, "iso-8859-1"); 157 webkit_settings_set_default_charset(settings, "utf8"); 158 g_assert_cmpstr(webkit_settings_get_default_charset(settings), ==, "utf8"); 159 105 160 g_object_unref(G_OBJECT(settings)); 106 161 #endif
Note:
See TracChangeset
for help on using the changeset viewer.