1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7331 7332 7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438 7439 7440 7441 7442 7443 7444 7445 7446 7447 7448 7449 7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482 7483 7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532 7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544 7545 7546 7547 7548 7549 7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564 7565 7566 7567 7568 7569 7570 7571 7572 7573 7574 7575 7576 7577 7578 7579 7580 7581 7582 7583 7584 7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687 7688 7689 7690 7691 7692 7693 7694 7695 7696 7697 7698 7699 7700 7701 7702 7703 7704 7705 7706 7707 7708 7709 7710 7711 7712 7713 7714 7715 7716 7717 7718 7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739 7740 7741 7742 7743 7744 7745 7746 7747 7748 7749 7750 7751 7752 7753 7754 7755 7756 7757 7758 7759 7760 7761 7762 7763 7764 7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790 7791 7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947 7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 7964 7965 7966 7967 7968 7969 7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200 8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233 8234 8235 8236 8237 8238 8239 8240 8241 8242 8243 8244 8245 8246 8247 8248 8249 8250 8251 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299 8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312 8313 8314 8315 8316 8317 8318 8319 8320 8321 8322 8323 8324 8325 8326 8327 8328 8329 8330 8331 8332 8333 8334 8335 8336 8337 8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348 8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365 8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452 8453 8454 8455 8456 8457 8458 8459 8460 8461 8462 8463 8464 8465 8466 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 8481 8482 8483 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 8512 8513 8514 8515 8516 8517 8518 8519 8520 8521 8522 8523 8524 8525 8526 8527 8528 8529 8530 8531 8532 8533 8534 8535 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545 8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 8573 8574 8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 8862 8863 8864 8865 8866 8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 8879 8880 8881 8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904 8905 8906 8907 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 8937 8938 8939 8940 8941 8942 8943 8944 8945 8946 8947 8948 8949 8950 8951 8952 8953 8954 8955 8956 8957 8958 8959 8960 8961 8962 8963 8964 8965 8966 8967 8968 8969 8970 8971 8972 8973 8974 8975 8976 8977 8978 8979 8980 8981 8982 8983 8984 8985 8986 8987 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 9268 9269 9270 9271 9272 9273 9274 9275 9276 9277 9278 9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362 9363 9364 9365 9366 9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393 9394 9395 9396 9397 9398 9399 9400 9401 9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 9469 9470 9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514 9515 9516 9517 9518 9519 9520 9521 9522 9523 9524 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610 9611 9612 9613 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641 9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 9667 9668 9669 9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691 9692 9693 9694 9695 9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709 9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881 9882 9883 9884 9885 9886 9887 9888 9889 9890 9891 9892 9893 9894 9895 9896 9897 9898 9899 9900 9901 9902 9903 9904 9905 9906 9907 9908 9909 9910 9911 9912 9913 9914 9915 9916 9917 9918 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930 9931 9932 9933 9934 9935 9936 9937 9938 9939 9940 9941 9942 9943 9944 9945 9946 9947 9948 9949 9950 9951 9952 9953 9954 9955 9956 9957 9958 9959 9960 9961 9962 9963 9964 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 10020 10021 10022 10023 10024 10025 10026 10027 10028 10029 10030 10031 10032 10033 10034 10035 10036 10037 10038 10039 10040 10041 10042 10043 10044 10045 10046 10047 10048 10049 10050 10051 10052 10053 10054 10055 10056 10057 10058 10059 10060 10061 10062 10063 10064 10065 10066 10067 10068 10069 10070 10071 10072 10073 10074 10075 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103 10104 10105 10106 10107 10108 10109 10110 10111 10112 10113 10114 10115 10116 10117 10118 10119 10120 10121 10122 10123 10124 10125 10126 10127 10128 10129 10130 10131 10132 10133 10134 10135 10136 10137 10138 10139 10140 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 10153 10154 10155 10156 10157 10158 10159 10160 10161 10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177 10178 10179 10180 10181 10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196 10197 10198 10199 10200 10201 10202 10203 10204 10205 10206 10207 10208 10209 10210 10211 10212 10213 10214 10215 10216 10217 10218 10219 10220 10221 10222 10223 10224 10225 10226 10227 10228 10229 10230 10231 10232 10233 10234 10235 10236 10237 10238 10239 10240 10241 10242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256 10257 10258 10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 10294 10295 10296 10297 10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353 10354 10355 10356 10357 10358 10359 10360 10361 10362 10363 10364 10365 10366 10367 10368 10369 10370 10371 10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 10388 10389 10390 10391 10392 10393 10394 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405 10406 10407 10408 10409 10410 10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 10614 10615 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636 10637 10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652 10653 10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 10698 10699 10700 10701 10702 10703 10704 10705 10706 10707 10708 10709 10710 10711 10712 10713 10714 10715 10716 10717 10718 10719 10720 10721 10722 10723 10724 10725 10726 10727 10728 10729 10730 10731 10732 10733 10734 10735 10736 10737 10738 10739 10740 10741 10742 10743 10744 10745 10746 10747 10748 10749 10750 10751 10752 10753 10754 10755 10756 10757 10758 10759 10760 10761 10762 10763 10764 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 10798 10799 10800 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 10822 10823 10824 10825 10826 10827 10828 10829 10830 10831 10832 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 10848 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965 10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114 11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126 11127 11128 11129 11130 11131 11132 11133 11134 11135 11136 11137 11138 11139 11140 11141 11142 11143 11144 11145 11146 11147 11148 11149 11150 11151 11152 11153 11154 11155 11156 11157 11158 11159 11160 11161 11162 11163 11164 11165 11166 11167 11168 11169 11170 11171 11172 11173 11174 11175 11176 11177 11178 11179 11180 11181 11182 11183 11184 11185 11186 11187 11188 11189 11190 11191 11192 11193 11194 11195 11196 11197 11198 11199 11200 11201 11202 11203 11204 11205 11206 11207 11208 11209 11210 11211 11212 11213 11214 11215 11216 11217 11218 11219 11220 11221 11222 11223 11224 11225 11226 11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 11240 11241 11242 11243 11244 11245 11246 11247 11248 11249 11250 11251 11252 11253 11254 11255 11256 11257 11258 11259 11260 11261 11262 11263 11264 11265 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 11294 11295 11296 11297 11298 11299 11300 11301 11302 11303 11304 11305 11306 11307 11308 11309 11310 11311 11312 11313 11314 11315 11316 11317 11318 11319 11320 11321 11322 11323 11324 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 11337 11338 11339 11340 11341 11342 11343 11344 11345 11346 11347 11348 11349 11350 11351 11352 11353 11354 11355 11356 11357 11358 11359 11360 11361 11362 11363 11364 11365 11366 11367 11368 11369 11370 11371 11372 11373 11374 11375 11376 11377 11378 11379 11380 11381 11382 11383 11384 11385 11386 11387 11388 11389 11390 11391 11392 11393 11394 11395 11396 11397 11398 11399 11400 11401 11402 11403 11404 11405 11406 11407 11408 11409 11410 11411 11412 11413 11414 11415 11416 11417 11418 11419 11420 11421 11422 11423 11424 11425 11426 11427 11428 11429 11430 11431 11432 11433 11434 11435 11436 11437 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 11467 11468 11469 11470 11471 11472 11473 11474 11475 11476 11477 11478 11479 11480 11481 11482 11483 11484 11485 11486 11487 11488 11489 11490 11491 11492 11493 11494 11495 11496 11497 11498 11499 11500 11501 11502 11503 11504 11505 11506 11507 11508 11509 11510 11511 11512 11513 11514 11515 11516 11517 11518 11519 11520 11521 11522 11523 11524 11525 11526 11527 11528 11529 11530 11531 11532 11533 11534 11535 11536 11537 11538 11539 11540 11541 11542 11543 11544 11545 11546 11547 11548 11549 11550 11551 11552 11553 11554 11555 11556 11557 11558 11559 11560 11561 11562 11563 11564 11565 11566 11567 11568 11569 11570 11571 11572 11573 11574 11575 11576 11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 11588 11589 11590 11591 11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 11609 11610 11611 11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 11626 11627 11628 11629 11630 11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705 11706 11707 11708 11709 11710 11711 11712 11713 11714 11715 11716 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 11731 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 11746 11747 11748 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 11764 11765 11766 11767 11768 11769 11770 11771 11772 11773 11774 11775 11776 11777 11778 11779 11780 11781 11782 11783 11784 11785 11786 11787 11788 11789 11790 11791 11792 11793 11794 11795 11796 11797 11798 11799 11800 11801 11802 11803 11804 11805 11806 11807 11808 11809 11810 11811 11812 11813 11814 11815 11816 11817 11818 11819 11820 11821 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 11832 11833 11834 11835 11836 11837 11838 11839 11840 11841 11842 11843 11844 11845 11846 11847 11848 11849 11850 11851 11852 11853 11854 11855 11856 11857 11858 11859 11860 11861 11862 11863 11864 11865 11866 11867 11868 11869 11870 11871 11872 11873 11874 11875 11876 11877 11878 11879 11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 11901 11902 11903 11904 11905 11906 11907 11908 11909 11910 11911 11912 11913 11914 11915 11916 11917 11918 11919 11920 11921 11922 11923 11924 11925 11926 11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11940 11941 11942 11943 11944 11945 11946 11947 11948 11949 11950 11951 11952 11953 11954 11955 11956 11957 11958 11959 11960 11961 11962 11963 11964 11965 11966 11967 11968 11969 11970 11971 11972 11973 11974 11975 11976 11977 11978 11979 11980 11981 11982 11983 11984 11985 11986 11987 11988 11989 11990 11991 11992 11993 11994 11995 11996 11997 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 12024 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048 12049 12050 12051 12052 12053 12054 12055 12056 12057 12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084 12085 12086 12087 12088 12089 12090 12091 12092 12093 12094 12095 12096 12097 12098 12099 12100 12101 12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 12118 12119 12120 12121 12122 12123 12124 12125 12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 12156 12157 12158 12159 12160 12161 12162 12163 12164 12165 12166 12167 12168 12169 12170 12171 12172 12173 12174 12175 12176 12177 12178 12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 12192 12193 12194 12195 12196 12197 12198 12199 12200 12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 12212 12213 12214 12215 12216 12217 12218 12219 12220 12221 12222 12223 12224 12225 12226 12227 12228 12229 12230 12231 12232 12233 12234 12235 12236 12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260 12261 12262 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 12287 12288 12289 12290 12291 12292 12293 12294 12295 12296 12297 12298 12299 12300 12301 12302 12303 12304 12305 12306 12307 12308 12309 12310 12311 12312 12313 12314 12315 12316 12317 12318 12319 12320 12321 12322 12323 12324 12325 12326 12327 12328 12329 12330 12331 12332 12333 12334 12335 12336 12337 12338 12339 12340 12341 12342 12343 12344 12345 12346 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359 12360 12361 12362 12363 12364 12365 12366 12367 12368 12369 12370 12371 12372 12373 12374 12375 12376 12377 12378 12379 12380 12381 12382 12383 12384 12385 12386 12387 12388 12389 12390 12391 12392 12393 12394 12395 12396 12397 12398 12399 12400 12401 12402 12403 12404 12405 12406 12407 12408 12409 12410 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516 12517 12518 12519 12520 12521 12522 12523 12524 12525 12526 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 12542 12543 12544 12545 12546 12547 12548 12549 12550 12551 12552 12553 12554 12555 12556 12557 12558 12559 12560 12561 12562 12563 12564 12565 12566 12567 12568 12569 12570 12571 12572 12573 12574 12575 12576 12577 12578 12579 12580 12581 12582 12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 12614 12615 12616 12617 12618 12619 12620 12621 12622 12623 12624 12625 12626 12627 12628 12629 12630 12631 12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 12686 12687 12688 12689 12690 12691 12692 12693 12694 12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 12717 12718 12719 12720 12721 12722 12723 12724 12725 12726 12727 12728 12729 12730 12731 12732 12733 12734 12735 12736 12737 12738 12739 12740 12741 12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 12759 12760 12761 12762 12763 12764 12765 12766 12767 12768 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 12779 12780 12781 12782 12783 12784 12785 12786 12787 12788 12789 12790 12791 12792 12793 12794 12795 12796 12797 12798 12799 12800 12801 12802 12803 12804 12805 12806 12807 12808 12809 12810 12811 12812 12813 12814 12815 12816 12817 12818 12819 12820 12821 12822 12823 12824 12825 12826 12827 12828 12829 12830 12831 12832 12833 12834 12835 12836 12837 12838 12839 12840 12841 12842 12843 12844 12845 12846 12847 12848 12849 12850 12851 12852 12853 12854 12855 12856 12857 12858 12859 12860 12861 12862 12863 12864 12865 12866 12867 12868 12869 12870 12871 12872 12873 12874 12875 12876 12877 12878 12879 12880 12881 12882 12883 12884 12885 12886 12887 12888 12889 12890 12891 12892 12893 12894 12895 12896 12897 12898 12899 12900 12901 12902 12903 12904 12905 12906 12907 12908 12909 12910 12911 12912 12913 12914 12915 12916 12917 12918 12919 12920 12921 12922 12923 12924 12925 12926 12927 12928 12929 12930 12931 12932 12933 12934 12935 12936 12937 12938 12939 12940 12941 12942 12943 12944 12945 12946 12947 12948 12949 12950 12951 12952 12953 12954 12955 12956 12957 12958 12959 12960 12961 12962 12963 12964 12965 12966 12967 12968 12969 12970 12971 12972 12973 12974 12975 12976 12977 12978 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 12991 12992 12993 12994 12995 12996 12997 12998 12999 13000 13001 13002 13003 13004 13005 13006 13007 13008 13009 13010 13011 13012 13013 13014 13015 13016 13017 13018 13019 13020 13021 13022 13023 13024 13025 13026 13027 13028 13029 13030 13031 13032 13033 13034 13035 13036 13037 13038 13039 13040 13041 13042 13043 13044 13045 13046 13047 13048 13049 13050 13051 13052 13053 13054 13055 13056 13057 13058 13059 13060 13061 13062 13063 13064 13065 13066 13067 13068 13069 13070 13071 13072 13073 13074 13075 13076 13077 13078 13079 13080 13081 13082 13083 13084 13085 13086 13087 13088 13089 13090 13091 13092 13093 13094 13095 13096 13097 13098 13099 13100 13101 13102 13103 13104 13105 13106 13107 13108 13109 13110 13111 13112 13113 13114 13115 13116 13117 13118 13119 13120 13121 13122 13123 13124 13125 13126 13127 13128 13129 13130 13131 13132 13133 13134 13135 13136 13137 13138 13139 13140 13141 13142 13143 13144 13145 13146 13147 13148 13149 13150 13151 13152 13153 13154 13155 13156 13157 13158 13159 13160 13161 13162 13163 13164 13165 13166 13167 13168 13169 13170 13171 13172 13173 13174 13175 13176 13177 13178 13179 13180 13181 13182 13183 13184 13185 13186 13187 13188 13189 13190 13191 13192 13193 13194 13195 13196 13197 13198 13199 13200 13201 13202 13203 13204 13205 13206 13207 13208 13209 13210 13211 13212 13213 13214 13215 13216 13217 13218 13219 13220 13221 13222 13223 13224 13225 13226 13227 13228 13229 13230 13231 13232 13233 13234 13235 13236 13237 13238 13239 13240 13241 13242 13243 13244 13245 13246 13247 13248 13249 13250 13251 13252 13253 13254 13255 13256 13257 13258 13259 13260 13261 13262 13263 13264 13265 13266 13267 13268 13269 13270 13271 13272 13273 13274 13275 13276 13277 13278 13279 13280 13281 13282 13283 13284 13285 13286 13287 13288 13289 13290 13291 13292 13293 13294 13295 13296 13297 13298 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 13314 13315 13316 13317 13318 13319 13320 13321 13322 13323 13324 13325 13326 13327 13328 13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 13341 13342 13343 13344 13345 13346 13347 13348 13349 13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 13382 13383 13384 13385 13386 13387 13388 13389 13390 13391 13392 13393 13394 13395 13396 13397 13398 13399 13400 13401 13402 13403 13404 13405 13406 13407 13408 13409 13410 13411 13412 13413 13414 13415 13416 13417 13418 13419 13420 13421 13422 13423 13424 13425 13426 13427 13428 13429 13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 13444 13445 13446 13447 13448 13449 13450 13451 13452 13453 13454 13455 13456 13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 13475 13476 13477 13478 13479 13480 13481 13482 13483 13484 13485 13486 13487 13488 13489 13490 13491 13492 13493 13494 13495 13496 13497 13498 13499 13500 13501 13502 13503 13504 13505 13506 13507 13508 13509 13510 13511 13512 13513 13514 13515 13516 13517 13518 13519 13520 13521 13522 13523 13524 13525 13526 13527 13528 13529 13530 13531 13532 13533 13534 13535 13536 13537 13538 13539 13540 13541 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555 13556 13557 13558 13559 13560 13561 13562 13563 13564 13565 13566 13567 13568 13569 13570 13571 13572 13573 13574 13575 13576 13577 13578 13579 13580 13581 13582 13583 13584 13585 13586 13587 13588 13589 13590 13591 13592 13593 13594 13595 13596 13597 13598 13599 13600 13601 13602 13603 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 13628 13629 13630 13631 13632 13633 13634 13635 13636 13637 13638 13639 13640 13641 13642 13643 13644 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 13660 13661 13662 13663 13664 13665 13666 13667 13668 13669 13670 13671 13672 13673 13674 13675 13676 13677 13678 13679 13680 13681 13682 13683 13684 13685 13686 13687 13688 13689 13690 13691 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707 13708 13709 13710 13711 13712 13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 13744 13745 13746 13747 13748 13749 13750 13751 13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 13815 13816 13817 13818 13819 13820 13821 13822 13823 13824 13825 13826 13827 13828 13829 13830 13831 13832 13833 13834 13835 13836 13837 13838 13839 13840 13841 13842 13843 13844 13845 13846 13847 13848 13849 13850 13851 13852 13853 13854 13855 13856 13857 13858 13859 13860 13861 13862 13863 13864 13865 13866 13867 13868 13869 13870 13871 13872 13873 13874 13875 13876 13877 13878 13879 13880 13881 13882 13883 13884 13885 13886 13887 13888 13889 13890 13891 13892 13893 13894 13895 13896 13897 13898 13899 13900 13901 13902 13903 13904 13905 13906 13907 13908 13909 13910 13911 13912 13913 13914 13915 13916 13917 13918 13919 13920 13921 13922 13923 13924 13925 13926 13927 13928 13929 13930 13931 13932 13933 13934 13935 13936 13937 13938 13939 13940 13941 13942 13943 13944 13945 13946 13947 13948 13949 13950 13951 13952 13953 13954 13955 13956 13957 13958 13959 13960 13961 13962 13963 13964 13965 13966 13967 13968 13969 13970 13971 13972 13973 13974 13975 13976 13977 13978 13979 13980 13981 13982 13983 13984 13985 13986 13987 13988 13989 13990 13991 13992 13993 13994 13995 13996 13997 13998 13999 14000 14001 14002 14003 14004 14005 14006 14007 14008 14009 14010 14011 14012 14013 14014 14015 14016 14017 14018 14019 14020 14021 14022 14023 14024 14025 14026 14027 14028 14029 14030 14031 14032 14033 14034 14035 14036 14037 14038 14039 14040 14041 14042 14043 14044 14045 14046 14047 14048 14049 14050 14051 14052 14053 14054 14055 14056 14057 14058 14059 14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 14073 14074 14075 14076 14077 14078 14079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 14097 14098 14099 14100 14101 14102 14103 14104 14105 14106 14107 14108 14109 14110 14111 14112 14113 14114 14115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 14145 14146 14147 14148 14149 14150 14151 14152 14153 14154 14155 14156 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208 14209 14210 14211 14212 14213 14214 14215 14216 14217 14218 14219 14220 14221 14222 14223 14224 14225 14226 14227 14228 14229 14230 14231 14232 14233 14234 14235 14236 14237 14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 14270 14271 14272 14273 14274 14275 14276 14277 14278 14279 14280 14281 14282 14283 14284 14285 14286 14287 14288 14289 14290 14291 14292 14293 14294 14295 14296 14297 14298 14299 14300 14301 14302 14303 14304 14305 14306 14307 14308 14309 14310 14311 14312 14313 14314 14315 14316 14317 14318 14319 14320 14321 14322 14323 14324 14325 14326 14327 14328 14329 14330 14331 14332 14333 14334 14335 14336 14337 14338 14339 14340 14341 14342 14343 14344 14345 14346 14347 14348 14349 14350 14351 14352 14353 14354 14355 14356 14357 14358 14359 14360 14361 14362 14363 14364 14365 14366 14367 14368 14369 14370 14371 14372 14373 14374 14375 14376 14377 14378 14379 14380 14381 14382 14383 14384 14385 14386 14387 14388 14389 14390 14391 14392 14393 14394 14395 14396 14397 14398 14399 14400 14401 14402 14403 14404 14405 14406 14407 14408 14409 14410 14411 14412 14413 14414 14415 14416 14417 14418 14419 14420 14421 14422 14423 14424 14425 14426 14427 14428 14429 14430 14431 14432 14433 14434 14435 14436 14437 14438 14439 14440 14441 14442 14443 14444 14445 14446 14447 14448 14449 14450 14451 14452 14453 14454 14455 14456 14457 14458 14459 14460 14461 14462 14463 14464 14465 14466 14467 14468 14469 14470 14471 14472 14473 14474 14475 14476 14477 14478 14479 14480 14481 14482 14483 14484 14485 14486 14487 14488 14489 14490 14491 14492 14493 14494 14495 14496 14497 14498 14499 14500 14501 14502 14503 14504 14505 14506 14507 14508 14509 14510 14511 14512 14513 14514 14515 14516 14517 14518 14519 14520 14521 14522 14523 14524 14525 14526 14527 14528 14529 14530 14531 14532 14533 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 14545 14546 14547 14548 14549 14550 14551 14552 14553 14554 14555 14556 14557 14558 14559 14560 14561 14562 14563 14564 14565 14566 14567 14568 14569 14570 14571 14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 14591 14592 14593 14594 14595 14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 14609 14610 14611 14612 14613 14614 14615 14616 14617 14618 14619 14620 14621 14622 14623 14624 14625 14626 14627 14628 14629 14630 14631 14632 14633 14634 14635 14636 14637 14638 14639 14640 14641 14642 14643 14644 14645 14646 14647 14648 14649 14650 14651 14652 14653 14654 14655 14656 14657 14658 14659 14660 14661 14662 14663 14664 14665 14666 14667 14668 14669 14670 14671 14672 14673 14674 14675 14676 14677 14678 14679 14680 14681 14682 14683 14684 14685 14686 14687 14688 14689 14690 14691 14692 14693 14694 14695 14696 14697 14698 14699 14700 14701 14702 14703 14704 14705 14706 14707 14708 14709 14710 14711 14712 14713 14714 14715 14716 14717 14718 14719 14720 14721 14722 14723 14724 14725 14726 14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 14760 14761 14762 14763 14764 14765 14766 14767 14768 14769 14770 14771 14772 14773 14774 14775 14776 14777 14778 14779 14780 14781 14782 14783 14784 14785 14786 14787 14788 14789 14790 14791 14792 14793 14794 14795 14796 14797 14798 14799 14800 14801 14802 14803 14804 14805 14806 14807 14808 14809 14810 14811 14812 14813 14814 14815 14816 14817 14818 14819 14820 14821 14822 14823 14824 14825 14826 14827 14828 14829 14830 14831 14832 14833 14834 14835 14836 14837 14838 14839 14840 14841 14842 14843 14844 14845 14846 14847 14848 14849 14850 14851 14852 14853 14854 14855 14856 14857 14858 14859 14860 14861 14862 14863 14864 14865 14866 14867 14868 14869 14870 14871 14872 14873 14874 14875 14876 14877 14878 14879 14880 14881 14882 14883 14884 14885 14886 14887 14888 14889 14890 14891 14892 14893 14894 14895 14896 14897 14898 14899 14900 14901 14902 14903 14904 14905 14906 14907 14908 14909 14910 14911 14912 14913 14914 14915 14916 14917 14918 14919 14920 14921 14922 14923 14924 14925 14926 14927 14928 14929 14930 14931 14932 14933 14934 14935 14936 14937 14938 14939 14940 14941 14942 14943 14944 14945 14946 14947 14948 14949 14950 14951 14952 14953 14954 14955 14956 14957 14958 14959 14960 14961 14962 14963 14964 14965 14966 14967 14968 14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 14981 14982 14983 14984 14985 14986 14987 14988 14989 14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 15002 15003 15004 15005 15006 15007 15008 15009 15010 15011 15012 15013 15014 15015 15016 15017 15018 15019 15020 15021 15022 15023 15024 15025 15026 15027 15028 15029 15030 15031 15032 15033 15034 15035 15036 15037 15038 15039 15040 15041 15042 15043 15044 15045 15046 15047 15048 15049 15050 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 15066 15067 15068 15069 15070 15071 15072 15073 15074 15075 15076 15077 15078 15079 15080 15081 15082 15083 15084 15085 15086 15087 15088 15089 15090 15091 15092 15093 15094 15095 15096 15097 15098 15099 15100 15101 15102 15103 15104 15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 15126 15127 15128 15129 15130 15131 15132 15133 15134 15135 15136 15137 15138 15139 15140 15141 15142 15143 15144 15145 15146 15147 15148 15149 15150 15151 15152 15153 15154 15155 15156 15157 15158 15159 15160 15161 15162 15163 15164 15165 15166 15167 15168 15169 15170 15171 15172 15173 15174 15175 15176 15177 15178 15179 15180 15181 15182 15183 15184 15185 15186 15187 15188 15189 15190 15191 15192 15193 15194 15195 15196 15197 15198 15199 15200 15201 15202 15203 15204 15205 15206 15207 15208 15209 15210 15211 15212 15213 15214 15215 15216 15217 15218 15219 15220 15221 15222 15223 15224 15225 15226 15227 15228 15229 15230 15231 15232 15233 15234 15235 15236 15237 15238 15239 15240 15241 15242 15243 15244 15245 15246 15247 15248 15249 15250 15251 15252 15253 15254 15255 15256 15257 15258 15259 15260 15261 15262 15263 15264 15265 15266 15267 15268 15269 15270 15271 15272 15273 15274 15275 15276 15277 15278 15279 15280 15281 15282 15283 15284 15285 15286 15287 15288 15289 15290 15291 15292 15293 15294 15295 15296 15297 15298 15299 15300 15301 15302 15303 15304 15305 15306 15307 15308 15309 15310 15311 15312 15313 15314 15315 15316 15317 15318 15319 15320 15321 15322 15323 15324 15325 15326 15327 15328 15329 15330 15331 15332 15333 15334 15335 15336 15337 15338 15339 15340 15341 15342 15343 15344 15345 15346 15347 15348 15349 15350 15351 15352 15353 15354 15355 15356 15357 15358 15359 15360 15361 15362 15363 15364 15365 15366 15367 15368 15369 15370 15371 15372 15373 15374 15375 15376 15377 15378 15379 15380 15381 15382 15383 15384 15385 15386 15387 15388 15389 15390 15391 15392 15393 15394 15395 15396 15397 15398 15399 15400 15401 15402 15403 15404 15405 15406 15407 15408 15409 15410 15411 15412 15413 15414 15415 15416 15417 15418 15419 15420 15421 15422 15423 15424 15425 15426 15427 15428 15429 15430 15431 15432 15433 15434 15435 15436 15437 15438 15439 15440 15441 15442 15443 15444 15445 15446 15447 15448 15449 15450 15451 15452 15453 15454 15455 15456 15457 15458 15459 15460 15461 15462 15463 15464 15465 15466 15467 15468 15469 15470 15471 15472 15473 15474 15475 15476 15477 15478 15479 15480 15481 15482 15483 15484 15485 15486 15487 15488 15489 15490 15491 15492 15493 15494 15495 15496 15497 15498 15499 15500 15501 15502 15503 15504 15505 15506 15507 15508 15509 15510 15511 15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 15522 15523 15524 15525 15526 15527 15528 15529 15530 15531 15532 15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 15543 15544 15545 15546 15547 15548 15549 15550 15551 15552 15553 15554 15555 15556 15557 15558 15559 15560 15561 15562 15563 15564 15565 15566 15567 15568 15569 15570 15571 15572 15573 15574 15575 15576 15577 15578 15579 15580 15581 15582 15583 15584 15585 15586 15587 15588 15589 15590 15591 15592 15593 15594 15595 15596 15597 15598 15599 15600 15601 15602 15603 15604 15605 15606 15607 15608 15609 15610 15611 15612 15613 15614 15615 15616 15617 15618 15619 15620 15621 15622 15623 15624 15625 15626 15627 15628 15629 15630 15631 15632 15633 15634 15635 15636 15637 15638 15639 15640 15641 15642 15643 15644 15645 15646 15647 15648 15649 15650 15651 15652 15653 15654 15655 15656 15657 15658 15659 15660 15661 15662 15663 15664 15665 15666 15667 15668 15669 15670 15671 15672 15673 15674 15675 15676 15677 15678 15679 15680 15681 15682 15683 15684 15685 15686 15687 15688 15689 15690 15691 15692 15693 15694 15695 15696 15697 15698 15699 15700 15701 15702 15703 15704 15705 15706 15707 15708 15709 15710 15711 15712 15713 15714 15715 15716 15717 15718 15719 15720 15721 15722 15723 15724 15725 15726 15727 15728 15729 15730 15731 15732 15733 15734 15735 15736 15737 15738 15739 15740 15741 15742 15743 15744 15745 15746 15747 15748 15749 15750 15751 15752 15753 15754 15755 15756 15757 15758 15759 15760 15761 15762 15763 15764 15765 15766 15767 15768 15769 15770 15771 15772 15773 15774 15775 15776 15777 15778 15779 15780 15781 15782 15783 15784 15785 15786 15787 15788 15789 15790 15791 15792 15793 15794 15795 15796 15797 15798 15799 15800 15801 15802 15803 15804 15805 15806 15807 15808 15809 15810 15811 15812 15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 15842 15843 15844 15845 15846 15847 15848 15849 15850 15851 15852 15853 15854 15855 15856 15857 15858 15859 15860 15861 15862 15863 15864 15865 15866 15867 15868 15869 15870 15871 15872 15873 15874 15875 15876 15877 15878 15879 15880 15881 15882 15883 15884 15885 15886 15887 15888 15889 15890 15891 15892 15893 15894 15895 15896 15897 15898 15899 15900 15901 15902 15903 15904 15905 15906 15907 15908 15909 15910 15911 15912 15913 15914 15915 15916 15917 15918 15919 15920 15921 15922 15923 15924 15925 15926 15927 15928 15929 15930 15931 15932 15933 15934 15935 15936 15937 15938 15939 15940 15941 15942 15943 15944 15945 15946 15947 15948 15949 15950 15951 15952 15953 15954 15955 15956 15957 15958 15959 15960 15961 15962 15963 15964 15965 15966 15967 15968 15969 15970 15971 15972 15973 15974 15975 15976 15977 15978 15979 15980 15981 15982 15983 15984 15985 15986 15987 15988 15989 15990 15991 15992 15993 15994 15995 15996 15997 15998 15999 16000 16001 16002 16003 16004 16005 16006 16007 16008 16009 16010 16011 16012 16013 16014 16015 16016 16017 16018 16019 16020 16021 16022 16023 16024 16025 16026 16027 16028 16029 16030 16031 16032 16033 16034 16035 16036 16037 16038 16039 16040 16041 16042 16043 16044 16045 16046 16047 16048 16049 16050 16051 16052 16053 16054 16055 16056 16057 16058 16059 16060 16061 16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 16086 16087 16088 16089 16090 16091 16092 16093 16094 16095 16096 16097 16098 16099 16100 16101 16102 16103 16104 16105 16106 16107 16108 16109 16110 16111 16112 16113 16114 16115 16116 16117 16118 16119 16120 16121 16122 16123 16124 16125 16126 16127 16128 16129 16130 16131 16132 16133 16134 16135 16136 16137 16138 16139 16140 16141 16142 16143 16144 16145 16146 16147 16148 16149 16150 16151 16152 16153 16154 16155 16156 16157 16158 16159 16160 16161 16162 16163 16164 16165 16166 16167 16168 16169 16170 16171 16172 16173 16174 16175 16176 16177 16178 16179 16180 16181 16182 16183 16184 16185 16186 16187 16188 16189 16190 16191 16192 16193 16194 16195 16196 16197 16198 16199 16200 16201 16202 16203 16204 16205 16206 16207 16208 16209 16210 16211 16212 16213 16214 16215 16216 16217 16218 16219 16220 16221 16222 16223 16224 16225 16226 16227 16228 16229 16230 16231 16232 16233 16234 16235 16236 16237 16238 16239 16240 16241 16242 16243 16244 16245 16246 16247 16248 16249 16250 16251 16252 16253 16254 16255 16256 16257 16258 16259 16260 16261 16262 16263 16264 16265 16266 16267 16268 16269 16270 16271 16272 16273 16274 16275 16276 16277 16278 16279 16280 16281 16282 16283 16284 16285 16286 16287 16288 16289 16290 16291 16292 16293 16294 16295 16296 16297 16298 16299 16300 16301 16302 16303 16304 16305 16306 16307 16308 16309 16310 16311 16312 16313 16314 16315 16316 16317 16318 16319 16320 16321 16322 16323 16324 16325 16326 16327 16328 16329 16330 16331 16332 16333 16334 16335 16336 16337 16338 16339 16340 16341 16342 16343 16344 16345 16346 16347 16348 16349 16350 16351 16352 16353 16354 16355 16356 16357 16358 16359 16360 16361 16362 16363 16364 16365 16366 16367 16368 16369 16370 16371 16372 16373 16374 16375 16376 16377 16378 16379 16380 16381 16382 16383 16384 16385 16386 16387 16388 16389 16390 16391 16392 16393 16394 16395 16396 16397 16398 16399 16400 16401 16402 16403 16404 16405 16406 16407 16408 16409 16410 16411 16412 16413 16414 16415 16416 16417 16418 16419 16420 16421 16422 16423 16424 16425 16426 16427 16428 16429 16430 16431 16432 16433 16434 16435 16436 16437 16438 16439 16440 16441 16442 16443 16444 16445 16446 16447 16448 16449 16450 16451 16452 16453 16454 16455 16456 16457 16458 16459 16460 16461 16462 16463 16464 16465 16466 16467 16468 16469 16470 16471 16472 16473 16474 16475 16476 16477 16478 16479 16480 16481 16482 16483 16484 16485 16486 16487 16488 16489 16490 16491 16492 16493 16494 16495 16496 16497 16498 16499 16500 16501 16502 16503 16504 16505 16506 16507 16508 16509 16510 16511 16512 16513 16514 16515 16516 16517 16518 16519 16520 16521 16522 16523 16524 16525 16526 16527 16528 16529 16530 16531 16532 16533 16534 16535 16536 16537 16538 16539 16540 16541 16542 16543 16544 16545 16546 16547 16548 16549 16550 16551 16552 16553 16554 16555 16556 16557 16558 16559 16560 16561 16562 16563 16564 16565 16566 16567 16568 16569 16570 16571 16572 16573 16574 16575 16576 16577 16578 16579 16580 16581 16582 16583 16584 16585 16586 16587 16588 16589 16590 16591 16592 16593 16594 16595 16596 16597 16598 16599 16600 16601 16602 16603 16604 16605 16606 16607 16608 16609 16610 16611 16612 16613 16614 16615 16616 16617 16618 16619 16620 16621 16622 16623 16624 16625 16626 16627 16628 16629 16630 16631 16632 16633 16634 16635 16636 16637 16638 16639 16640 16641 16642 16643 16644 16645 16646 16647 16648 16649 16650 16651 16652 16653 16654 16655 16656 16657 16658 16659 16660 16661 16662 16663 16664 16665 16666 16667 16668 16669 16670 16671 16672 16673 16674 16675 16676 16677 16678 16679 16680 16681 16682 16683 16684 16685 16686 16687 16688 16689 16690 16691 16692 16693 16694 16695 16696 16697 16698 16699 16700 16701 16702 16703 16704 16705 16706 16707 16708 16709 16710 16711 16712 16713 16714 16715 16716 16717 16718 16719 16720 16721 16722 16723 16724 16725 16726 16727 16728 16729 16730 16731 16732 16733 16734 16735 16736 16737 16738 16739 16740 16741 16742 16743 16744 16745 16746 16747 16748 16749 16750 16751 16752 16753 16754 16755 16756 16757 16758 16759 16760 16761 16762 16763 16764 16765 16766 16767 16768 16769 16770 16771 16772 16773 16774 16775 16776 16777 16778 16779 16780 16781 16782 16783 16784 16785 16786 16787 16788 16789 16790 16791 16792 16793 16794 16795 16796 16797 16798 16799 16800 16801 16802 16803 16804 16805 16806 16807 16808 16809 16810 16811 16812 16813 16814 16815 16816 16817 16818 16819 16820 16821 16822 16823 16824 16825 16826 16827 16828 16829 16830 16831 16832 16833 16834 16835 16836 16837 16838 16839 16840 16841 16842 16843 16844 16845 16846 16847 16848 16849 16850 16851 16852 16853 16854 16855 16856 16857 16858 16859 16860 16861 16862 16863 16864 16865 16866 16867 16868 16869 16870 16871 16872 16873 16874 16875 16876 16877 16878 16879 16880 16881 16882 16883 16884 16885 16886 16887 16888 16889 16890 16891 16892 16893 16894 16895 16896 16897 16898 16899 16900 16901 16902 16903 16904 16905 16906 16907 16908 16909 16910 16911 16912 16913 16914 16915 16916 16917 16918 16919 16920 16921 16922 16923 16924 16925 16926 16927 16928 16929 16930 16931 16932 16933 16934 16935 16936 16937 16938 16939 16940 16941 16942 16943 16944 16945 16946 16947 16948 16949 16950 16951 16952 16953 16954 16955 16956 16957 16958 16959 16960 16961 16962 16963 16964 16965 16966 16967 16968 16969 16970 16971 16972 16973 16974 16975 16976 16977 16978 16979 16980 16981 16982 16983 16984 16985 16986 16987 16988 16989 16990 16991 16992 16993 16994 16995 16996 16997 16998 16999 17000 17001 17002 17003 17004 17005 17006 17007 17008 17009 17010 17011 17012 17013 17014 17015 17016 17017 17018 17019 17020 17021 17022 17023 17024 17025 17026 17027 17028 17029 17030 17031 17032 17033 17034 17035 17036 17037 17038 17039 17040 17041 17042 17043 17044 17045 17046 17047 17048 17049 17050 17051 17052 17053 17054 17055 17056 17057 17058 17059 17060 17061 17062 17063 17064 17065 17066 17067 17068 17069 17070 17071 17072 17073 17074 17075 17076 17077 17078 17079 17080 17081 17082 17083 17084 17085 17086 17087 17088 17089 17090 17091 17092 17093 17094 17095 17096 17097 17098 17099 17100 17101 17102 17103 17104 17105 17106 17107 17108 17109 17110 17111 17112 17113 17114 17115 17116 17117 17118 17119 17120 17121 17122 17123 17124 17125 17126 17127 17128 17129 17130 17131 17132 17133 17134 17135 17136 17137 17138 17139 17140 17141 17142 17143 17144 17145 17146 17147 17148 17149 17150 17151 17152 17153 17154 17155 17156 17157 17158 17159 17160 17161 17162 17163 17164 17165 17166 17167 17168 17169 17170 17171 17172 17173 17174 17175 17176 17177 17178 17179 17180 17181 17182 17183 17184 17185 17186 17187 17188 17189 17190 17191 17192 17193 17194 17195 17196 17197 17198 17199 17200 17201 17202 17203 17204 17205 17206 17207 17208 17209 17210 17211 17212 17213 17214 17215 17216 17217 17218 17219 17220 17221 17222 17223 17224 17225 17226 17227 17228 17229 17230 17231 17232 17233 17234 17235 17236 17237 17238 17239 17240 17241 17242 17243 17244 17245 17246 17247 17248 17249 17250 17251 17252 17253 17254 17255 17256 17257 17258 17259 17260 17261 17262 17263 17264 17265 17266 17267 17268 17269 17270 17271 17272 17273 17274 17275 17276 17277 17278 17279 17280 17281 17282 17283 17284 17285 17286 17287 17288 17289 17290 17291 17292 17293 17294 17295 17296 17297 17298 17299 17300 17301 17302 17303 17304 17305 17306 17307 17308 17309 17310 17311 17312 17313 17314 17315 17316 17317 17318 17319 17320 17321 17322 17323 17324 17325 17326 17327 17328 17329 17330 17331 17332 17333 17334 17335 17336 17337 17338 17339 17340 17341 17342 17343 17344 17345 17346 17347 17348 17349 17350 17351 17352 17353 17354 17355 17356 17357 17358 17359 17360 17361 17362 17363 17364 17365 17366 17367 17368 17369 17370 17371 17372 17373 17374 17375 17376 17377 17378 17379 17380 17381 17382 17383 17384 17385 17386 17387 17388 17389 17390 17391 17392 17393 17394 17395 17396 17397 17398 17399 17400 17401 17402 17403 17404 17405 17406 17407 17408 17409 17410 17411 17412 17413 17414 17415 17416 17417 17418 17419 17420 17421 17422 17423 17424 17425 17426 17427 17428 17429 17430 17431 17432 17433 17434 17435 17436 17437 17438 17439 17440 17441 17442 17443 17444 17445 17446 17447 17448 17449 17450 17451 17452 17453 17454 17455 17456 17457 17458 17459 17460 17461 17462 17463 17464 17465 17466 17467 17468 17469 17470 17471 17472 17473 17474 17475 17476 17477 17478 17479 17480 17481 17482 17483 17484 17485 17486 17487 17488 17489 17490 17491 17492 17493 17494 17495 17496 17497 17498 17499 17500 17501 17502 17503 17504 17505 17506 17507 17508 17509 17510 17511 17512 17513 17514 17515 17516 17517 17518 17519 17520 17521 17522 17523 17524 17525 17526 17527 17528 17529 17530 17531 17532 17533 17534 17535 17536 17537 17538 17539 17540 17541 17542 17543 17544 17545 17546 17547 17548 17549 17550 17551 17552 17553 17554 17555 17556 17557 17558 17559 17560 17561 17562 17563 17564 17565 17566 17567 17568 17569 17570 17571 17572 17573 17574 17575 17576 17577 17578 17579 17580 17581 17582 17583 17584 17585 17586 17587 17588 17589 17590 17591 17592 17593 17594 17595 17596 17597 17598 17599 17600 17601 17602 17603 17604 17605 17606 17607 17608 17609 17610 17611 17612 17613 17614 17615 17616 17617 17618 17619 17620 17621 17622 17623 17624 17625 17626 17627 17628 17629 17630 17631 17632 17633 17634 17635 17636 17637 17638 17639 17640 17641 17642 17643 17644 17645 17646 17647 17648 17649 17650 17651 17652 17653 17654 17655 17656 17657 17658 17659 17660 17661 17662 17663 17664 17665 17666 17667 17668 17669 17670 17671 17672 17673 17674 17675 17676 17677 17678 17679 17680 17681 17682 17683 17684 17685 17686 17687 17688 17689 17690 17691 17692 17693 17694 17695 17696 17697 17698 17699 17700 17701 17702 17703 17704 17705 17706 17707 17708 17709 17710 17711 17712 17713 17714 17715 17716 17717 17718 17719 17720 17721 17722 17723 17724 17725 17726 17727 17728 17729 17730 17731 17732 17733 17734 17735 17736 17737 17738 17739 17740 17741 17742 17743 17744 17745 17746 17747 17748 17749 17750 17751 17752 17753 17754 17755 17756 17757 17758 17759 17760 17761 17762 17763 17764 17765 17766 17767 17768 17769 17770 17771 17772 17773 17774 17775 17776 17777 17778 17779 17780 17781 17782 17783 17784 17785 17786 17787 17788 17789 17790 17791 17792 17793 17794 17795 17796 17797 17798 17799 17800 17801 17802 17803 17804 17805 17806 17807 17808 17809 17810 17811 17812 17813 17814 17815 17816 17817 17818 17819 17820 17821 17822 17823 17824 17825 17826 17827 17828 17829 17830 17831 17832 17833 17834 17835 17836 17837 17838 17839 17840 17841 17842 17843 17844 17845 17846 17847 17848 17849 17850 17851 17852 17853 17854 17855 17856 17857 17858 17859 17860 17861 17862 17863 17864 17865 17866 17867 17868 17869 17870 17871 17872 17873 17874 17875 17876 17877 17878 17879 17880 17881 17882 17883 17884 17885 17886 17887 17888 17889 17890 17891 17892 17893 17894 17895 17896 17897 17898 17899 17900 17901 17902 17903 17904 17905 17906 17907 17908 17909 17910 17911 17912 17913 17914 17915 17916 17917 17918 17919 17920 17921 17922 17923 17924 17925 17926 17927 17928 17929 17930 17931 17932 17933 17934 17935 17936 17937 17938 17939 17940 17941 17942 17943 17944 17945 17946 17947 17948 17949 17950 17951 17952 17953 17954 17955 17956 17957 17958 17959 17960 17961 17962 17963 17964 17965 17966 17967 17968 17969 17970 17971 17972 17973 17974 17975 17976 17977 17978 17979 17980 17981 17982 17983 17984 17985 17986 17987 17988 17989 17990 17991 17992 17993 17994 17995 17996 17997 17998 17999 18000 18001 18002 18003 18004 18005 18006 18007 18008 18009 18010 18011 18012 18013 18014 18015 18016 18017 18018 18019 18020 18021 18022 18023 18024 18025 18026 18027 18028 18029 18030 18031 18032 18033 18034 18035 18036 18037 18038 18039 18040 18041 18042 18043 18044 18045 18046 18047 18048 18049 18050 18051 18052 18053 18054 18055 18056 18057 18058 18059 18060 18061 18062 18063 18064 18065 18066 18067 18068 18069 18070 18071 18072 18073 18074 18075 18076 18077 18078 18079 18080 18081 18082 18083 18084 18085 18086 18087 18088 18089 18090 18091 18092 18093 18094 18095 18096 18097 18098 18099 18100 18101 18102 18103 18104 18105 18106 18107 18108 18109 18110 18111 18112 18113 18114 18115 18116 18117 18118 18119 18120 18121 18122 18123 18124 18125 18126 18127 18128 18129 18130 18131 18132 18133 18134 18135 18136 18137 18138 18139 18140 18141 18142 18143 18144 18145 18146 18147 18148 18149 18150 18151 18152 18153 18154 18155 18156 18157 18158 18159 18160 18161 18162 18163 18164 18165 18166 18167 18168 18169 18170 18171 18172 18173 18174 18175 18176 18177 18178 18179 18180 18181 18182 18183 18184 18185 18186 18187 18188 18189 18190 18191 18192 18193 18194 18195 18196 18197 18198 18199 18200 18201 18202 18203 18204 18205 18206 18207 18208 18209 18210 18211 18212 18213 18214 18215 18216 18217 18218 18219 18220 18221 18222 18223 18224 18225 18226 18227 18228 18229 18230 18231 18232 18233 18234 18235 18236 18237 18238 18239 18240 18241 18242 18243 18244 18245 18246 18247 18248 18249 18250 18251 18252 18253 18254 18255 18256 18257 18258 18259 18260 18261 18262 18263 18264 18265 18266 18267 18268 18269 18270 18271 18272 18273 18274 18275 18276 18277 18278 18279 18280 18281 18282 18283 18284 18285 18286 18287 18288 18289 18290 18291 18292 18293 18294 18295 18296 18297 18298 18299 18300 18301 18302 18303 18304 18305 18306 18307 18308 18309 18310 18311 18312 18313 18314 18315 18316 18317 18318 18319 18320 18321 18322 18323 18324 18325 18326 18327 18328 18329 18330 18331 18332 18333 18334 18335 18336 18337 18338 18339 18340 18341 18342 18343 18344 18345 18346 18347 18348 18349 18350 18351 18352 18353 18354 18355 18356 18357 18358 18359 18360 18361 18362 18363 18364 18365 18366 18367 18368 18369 18370 18371 18372 18373 18374 18375 18376 18377 18378 18379 18380 18381 18382 18383 18384 18385 18386 18387 18388 18389 18390 18391 18392 18393 18394 18395 18396 18397 18398 18399 18400 18401 18402 18403 18404 18405 18406 18407 18408 18409 18410 18411 18412 18413 18414 18415 18416 18417 18418 18419 18420 18421 18422 18423 18424 18425 18426 18427 18428 18429 18430 18431 18432 18433 18434 18435 18436 18437 18438 18439 18440 18441 18442 18443 18444 18445 18446 18447 18448 18449 18450 18451 18452 18453 18454 18455 18456 18457 18458 18459 18460 18461 18462 18463 18464 18465 18466 18467 18468 18469 18470 18471 18472 18473 18474 18475 18476 18477 18478 18479 18480 18481 18482 18483 18484 18485 18486 18487 18488 18489 18490 18491 18492 18493 18494 18495 18496 18497 18498 18499 18500 18501 18502 18503 18504 18505 18506 18507 18508 18509 18510 18511 18512 18513 18514 18515 18516 18517 18518 18519 18520 18521 18522 18523 18524 18525 18526 18527 18528 18529 18530 18531 18532 18533 18534 18535 18536 18537 18538 18539 18540 18541 18542 18543 18544 18545 18546 18547 18548 18549 18550 18551 18552 18553 18554 18555 18556 18557 18558 18559 18560 18561 18562 18563 18564 18565 18566 18567 18568 18569 18570 18571 18572 18573 18574 18575 18576 18577 18578 18579 18580 18581 18582 18583 18584 18585 18586 18587 18588 18589 18590 18591 18592 18593 18594 18595 18596 18597 18598 18599 18600 18601 18602 18603 18604 18605 18606 18607 18608 18609 18610 18611 18612 18613 18614 18615 18616 18617 18618 18619 18620 18621 18622 18623 18624 18625 18626 18627 18628 18629 18630 18631 18632 18633 18634 18635 18636 18637 18638 18639 18640 18641 18642 18643 18644 18645 18646 18647 18648 18649 18650 18651 18652 18653 18654 18655 18656 18657 18658 18659 18660 18661 18662 18663 18664 18665 18666 18667 18668 18669 18670 18671 18672 18673 18674 18675 18676 18677 18678 18679 18680 18681 18682 18683 18684 18685 18686 18687 18688 18689 18690 18691 18692 18693 18694 18695 18696 18697 18698 18699 18700 18701 18702 18703 18704 18705 18706 18707 18708 18709 18710 18711 18712 18713 18714 18715 18716 18717 18718 18719 18720 18721 18722 18723 18724 18725 18726 18727 18728 18729 18730 18731 18732 18733 18734 18735 18736 18737 18738 18739 18740 18741 18742 18743 18744 18745 18746 18747 18748 18749 18750 18751 18752 18753 18754 18755 18756 18757 18758 18759 18760 18761 18762 18763 18764 18765 18766 18767 18768 18769 18770 18771 18772 18773 18774 18775 18776 18777 18778 18779 18780 18781 18782 18783 18784 18785 18786 18787 18788 18789 18790 18791 18792 18793 18794 18795 18796 18797 18798 18799 18800 18801 18802 18803 18804 18805 18806 18807 18808 18809 18810 18811 18812 18813 18814 18815 18816 18817 18818 18819 18820 18821 18822 18823 18824 18825 18826 18827 18828 18829 18830 18831 18832 18833 18834 18835 18836 18837 18838 18839 18840 18841 18842 18843 18844 18845 18846 18847 18848 18849 18850 18851 18852 18853 18854 18855 18856 18857 18858 18859 18860 18861 18862 18863 18864 18865 18866 18867 18868 18869 18870 18871 18872 18873 18874 18875 18876 18877 18878 18879 18880 18881 18882 18883 18884 18885 18886 18887 18888 18889 18890 18891 18892 18893 18894 18895 18896 18897 18898 18899 18900 18901 18902 18903 18904 18905 18906 18907 18908 18909 18910 18911 18912 18913 18914 18915 18916 18917 18918 18919 18920 18921 18922 18923 18924 18925 18926 18927 18928 18929 18930 18931 18932 18933 18934 18935 18936 18937 18938 18939 18940 18941 18942 18943 18944 18945 18946 18947 18948 18949 18950 18951 18952 18953 18954 18955 18956 18957 18958 18959 18960 18961 18962 18963 18964 18965 18966 18967 18968 18969 18970 18971 18972 18973 18974 18975 18976 18977 18978 18979 18980 18981 18982 18983 18984
|
2002-12-03 Trey Matteson <trey@apple.com>
Re-fix of 3113393 - Clients side redirects shouldn't always add item to back/forward list
Fix 3116980 - REGRESSION: Back button goes back twice
Fix 3099631 - assertion failure at http://www.calendarlive.com/ when pop-up blocking is off
The earlier fix for the first bug was to consider any redirect happening within one
second as a continuation of the previous load. To fix the regressions I re-cast that
fix using a similar, pre-existing mechanism.
Reviewed by: Richwill
* WebView.subproj/WebFramePrivate.h: Nuke shortRedirectComing, rename
instantRedirectComing to quickRedirectComing.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _createOrUpdateItem]): Remove code related to shortRedirectComing,
the fix that brought the regressions.
(-[WebFrame _setState:]): Don't cache the page we're leaving if we're doing
a redirect (since we don't want the redirecting page in the cache).
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Above rename.
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Above rename.
(-[WebFrame _loadURL:intoChild:]): Comment fix.
(-[WebFrame _clientRedirectedTo:delay:fireDate:]): Use 1 second instead of 0
seconds as the metric of a client redirect. Do not consider whether the frame
state is completed as part of the decision.
(-[WebFrame _clientRedirectCancelled]): Above rename.
2002-12-03 John Sullivan <sullivan@apple.com>
Reviewed by: Darin
- REALLY changed the default state for block pop-ups to be off.
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
change default for letting JavaScript open windows automatically
to YES
2002-12-03 Darin Adler <darin@apple.com>
- fixed 3117135 -- world leak: drag any image, get a leak of 1 WebFrame
Reviewed by John.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): Retain the URL of the dragged image, not the entire
element dictionary. The element dictionary creates a reference cycle since it includes
a reference to the WebFrame.
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use the URL rather than
extracting it from the dictionary with a WebElementImageURLKey.
* WebView.subproj/WebHTMLViewPrivate.h: URL, not element dictionary.
* WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLViewPrivate dealloc]): Release the
URL, not the element dictionary.
2002-12-03 Richard Williamson <rjw@apple.com>
Added a preference to change the page cache size, i.e.:
Alexander.app/Contents/MacOS/Alexander -WebKitPageCacheSizePreferenceKey 4
Reviewed by: hyatt
* History.subproj/WebBackForwardList.m:
(+[WebBackForwardList setPageCacheSize:]):
(+[WebBackForwardList pageCacheSize]):
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
(-[WebPreferences _initialTimedLayoutSize]):
(-[WebPreferences _pageCacheSize]):
* WebView.subproj/WebPreferencesPrivate.h:
2002-12-03 Richard Williamson <rjw@apple.com>
Fixed 3019986. Use an array of font families instead of a single
font family to support CSS family lists.
r=hyatt
* Misc.subproj/WebKitNSStringExtras.m:
(-[NSString _web_widthForString:font:]):
* Misc.subproj/WebStringTruncator.m:
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
(+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer substituteFontForString:families:]):
(-[WebTextRenderer substituteFontForCharacters:length:families:]):
(-[WebTextRenderer widthForCharacters:length:]):
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:fontFamilies:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:fontFamilies:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
* WebCoreSupport.subproj/WebTextRendererFactory.h:
* WebCoreSupport.subproj/WebTextRendererFactory.m:
(-[WebTextRendererFactory fontWithFamilies:traits:size:]):
(-[WebTextRendererFactory fontWithFamily:traits:size:]):
(+[WebTextRendererFactory fallbackFontWithTraits:size:]):
(-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
(-[WebTextRendererFactory cachedFontFromFamilies:traits:size:]):
(-[WebTextRendererFactory rendererWithFamilies:traits:size:]):
2002-12-03 Chris Blumenberg <cblu@apple.com>
Fixed: 3115073 - REGRESSION: plants.com is crashing in WebIconDB with bad retain count
The plants.com favicon was marked to be removed from disk and thus it had no retain count. The problem was that it was still on disk and _hasIconForIconURL would return YES. If hasIconForIconURL returns YES, its is ok to call _setIconURL:forSiteURL:. Since there was no retain count, the assert in _setIconURL:forSiteURL: would be hit.
We now consider icons without retain counts to not exist even if they're on disk.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _updateFileDatabase]):
(-[WebIconDatabase _setIconURL:forSiteURL:]):
2002-12-03 Chris Blumenberg <cblu@apple.com>
Fixed:
3112477 - REGRESSION: dropping image within window loads image in current window
Fix: Unregister the parent webview for dragging when the drag starts, reregister after the drag ends.
3116423 - Dragged images sometimes have the wrong promised-file file type
Fix: Make the - [NSView_web_dragPromisedImage...] method take a file type rather than deriving the file type from the URL
3115768 - REGRESSION: contextual menu item "copy url to clipboard" doesn't work
Fix: In [NSPastboard _web_writeURL:andTitle:withOwner:] adding pboard types doesn't work for the general pasteboard, have to redeclare.
3116594 - Image on the drag pasteboard shouldn't have applied transparency and scaling
Fix: In - [NSView_web_dragPromisedImage...] put the original image on the pboard
Reviewed by John.
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]): don't use addTypes as it doesn't work as I expected
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragPromisedImage:origin:URL:fileType:title:event:]): put the original image on the pboard, not the drag image
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
(-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage
(-[WebHTMLView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
* WebView.subproj/WebImageView.m:
(-[WebImageView mouseDragged:]): call _web_dragPromisedImage
(-[WebImageView draggedImage:endedAt:operation:]): call -[WebView _reregisterDraggedTypes]
* WebView.subproj/WebView.m:
(-[WebView initWithFrame:]): call _reregisterDraggedTypes
(-[WebView draggingEntered:]): simplified, don't need to check drag source
* WebView.subproj/WebViewPrivate.h:
* WebView.subproj/WebViewPrivate.m:
(-[WebView _reregisterDraggedTypes]):
2002-12-03 Darin Adler <darin@apple.com>
- fixed 3114796 -- WORLD LEAKS: 1 WebFrame leaked on trivial source file with <html> tag only
(probably fixed a ton of other bugs too, since this always leaks)
Reviewed by Chris.
* WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
Added a missing autorelease.
2002-12-03 Darin Adler <darin@apple.com>
Reviewed by Maciej.
* WebView.subproj/WebView.m: Fixed a pair of strings that conflict.
* English.lproj/Localizable.strings: Regenerated.
* English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
2002-12-02 Trey Matteson <trey@apple.com>
Refined bookmark notifications to be more detailed. We now have added, removed,
willChange and didChange.
* Bookmarks.subproj/WebBookmarkGroup.h: New API.
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup _sendNotification:forBookmark:children:]):
(-[WebBookmarkGroup _setTopBookmark:]):
(-[WebBookmarkGroup _bookmarkWillChange:]):
(-[WebBookmarkGroup _bookmarkDidChange:]):
(-[WebBookmarkGroup _bookmarkChildren:wereAddedToParent:]):
(-[WebBookmarkGroup _bookmarkChildren:wereRemovedToParent:]):
All just small pieces of flow control for posting the notes.
* Bookmarks.subproj/WebBookmarkGroupPrivate.h: Internal methods for posting the notes.
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf setTitle:]): Post da note
(-[WebBookmarkLeaf setURLString:]): Post da note
(-[WebBookmarkLeaf description]): Added for debugging.
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList setTitle:]): Post da note
(-[WebBookmarkList removeChild:]): Post da note
(-[WebBookmarkList insertChild:atIndex:]): Post da note
* Bookmarks.subproj/WebBookmarkProxy.m:
(-[WebBookmarkProxy setTitle:]): Post da note
* English.lproj/StringsNotToBeLocalized.txt: New strings.
* WebKit.exp: New strings.
2002-12-02 Maciej Stachowiak <mjs@apple.com>
- added original URL field to action dictionary so that policy delegates
can avoid prompting over and over on redirects.
* WebKit.exp:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithRequest:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame loadRequest:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
(-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
(-[WebFrame _addExtraFieldsToRequest:]):
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
(-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
2002-11-28 Darin Adler <darin@apple.com>
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler createFileIfNecessary]): Add a FIXME.
(-[WebDownloadHandler writeDataForkData:resourceForkData:]): Notify that the file system has
changed so the Finder can respond to the size change.
(-[WebDownloadHandler finishedLoading]): Notify that the file system has changed now that the
download has completed and the files are closed (may be redundant now that we have the above,
but will do no harm).
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
Use _web_isCaseInsensitiveEqualToString instead of lowercaseString.
* Misc.subproj/WebNSViewExtras.m: Tweak formatting.
2002-11-27 Richard Williamson <rjw@apple.com>
Fixed 3113393. Client side redirects that happen <= 1 second
update the current back/forward item, rather than creating
a new one.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _addBackForwardItemClippedAtTarget:]):
(-[WebFrame _createOrUpdateItem]):
(-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
(-[WebFrame _transitionToCommitted:]):
(-[WebFrame _clientRedirectedTo:delay:fireDate:]):
(-[WebFrame _clientRedirectCancelled]):
2002-11-27 Richard Williamson <rjw@apple.com>
Fixed measurement error for Ahem font (and any font that
has a tiny fractional value). 3112745, 3112742
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer initWithFont:]):
2002-11-26 Chris Blumenberg <cblu@apple.com>
Fixed: 3090834 - Launch WMP (Window Media Player) when encountering WMP content
Added contentURL to WebPluginError.
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]):
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage initWithPath:]):
* Plugins.subproj/WebNullPluginView.m:
(-[WebNullPluginView viewDidMoveToWindow]):
* Plugins.subproj/WebPluginError.h:
* Plugins.subproj/WebPluginError.m:
(-[WebPluginErrorPrivate dealloc]):
(-[WebPluginError dealloc]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
=== Alexander-34 ===
2002-11-26 Richard Williamson <rjw@apple.com>
Only cache page if the load has completed.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _setState:]):
2002-11-26 Chris Blumenberg <cblu@apple.com>
Removed some logging.
* WebView.subproj/WebControllerPrivate.m:
(+[WebController _supportedImageMIMETypes]):
2002-11-26 Chris Blumenberg <cblu@apple.com>
Fixed: 3112003 - Show standalone tiffs using AppKit not QT plug-in
We now dynamically check NSImage for supported image types when registering WebImageView's and WebImageRepresentation's supported MIME types.
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(+[WebController _supportedImageMIMETypes]): convert NSImage types to mime types
* WebView.subproj/WebDataSourcePrivate.m:
(+[WebDataSource _repTypes]): use _supportedImageMIMETypes to register mime types of WebImageRepresentation
* WebView.subproj/WebViewPrivate.m:
(+[WebView _viewTypes]): use _supportedImageMIMETypes to register mime types of WebImageView
2002-11-26 Chris Blumenberg <cblu@apple.com>
Fixed: 3061174 - javascript: URLs sent by plugins don't work
For "Javascript:" URLs.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): lowercase the scheme
2002-11-26 Richard Williamson <rjw@apple.com>
More work on back/forward cache. It's ready for
more general testing. Although, to be safe I've
left it disabled by default for tomorrow's release.
It will log when a page is save and restored from
the page cache.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentToPageCache:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:]):
(-[WebDataSource _commitIfReady:]):
(-[WebDataSource _loadIcon]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted:]):
(-[WebFrame _setState:]):
(-[WebFrame _loadItem:fromItem:withLoadType:]):
(-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
(-[WebFrame _setProvisionalDataSource:]):
2002-11-25 Richard Williamson <rjw@apple.com>
Cleanup leaking objects in page cache.
Cleaned up API a bit.
* History.subproj/WebBackForwardList.h:
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList dealloc]):
(+[WebBackForwardList setUsesPageCache:]):
(+[WebBackForwardList usesPageCache]):
(+[WebBackForwardList setPageCacheSize:]):
(+[WebBackForwardList pageCacheSize]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem setHasPageCache:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentToPageCache:]):
* WebKit.exp:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _canCachePage]):
(-[WebFrame _purgePageCache]):
(-[WebFrame _setState:]):
(-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
2002-11-25 Richard Williamson <rjw@apple.com>
Changed ordering of cachability check.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _setState:]):
2002-11-25 Richard Williamson <rjw@apple.com>
Changes fro back/forward cache.
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(+[WebHistoryItem setUsePageCache:]):
(+[WebHistoryItem usePageCache]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentToPageCache:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _detachFromParent]):
(-[WebFrame _canCachePage]):
(-[WebFrame _setState:]):
2002-11-25 Chris Blumenberg <cblu@apple.com>
Fixed 2 drag-related crashes. Oops.
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): put nil at the end of the array list.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): retain self before drag
2002-11-25 Chris Blumenberg <cblu@apple.com>
- Allow missing icons to be restored when going to the page of the missing icon.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _setIconURL:forSiteURL:]):
2002-11-25 Richard Williamson <rjw@apple.com>
Changes for back/forward. Currently disabled.
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem setPageCacheEnabled:]):
(-[WebHistoryItem pageCache]):
* Misc.subproj/WebKitLogging.h:
* Misc.subproj/WebKitLogging.m:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentToPageCache:]):
* WebView.subproj/WebDataSource.m:
(-[WebDataSource startLoading]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:]):
(-[WebDataSource _startLoading]):
(-[WebDataSource _commitIfReady:]):
(-[WebDataSource _commitIfReady]):
(-[WebDataSource _setStoredInPageCache:]):
(-[WebDataSource _storedInPageCache]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted:]):
(-[WebFrame _canCachePage]):
(-[WebFrame _purgePageCache]):
(-[WebFrame _setState:]):
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
(-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
2002-11-25 Richard Williamson <rjw@apple.com>
Fixed exception thrown often when creating mouseover status text (3110186).
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
2002-11-25 Darin Adler <darin@apple.com>
- fixed a problem I discovered in testing where multiple identical bookmarks confuse us
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList removeChild:]): Use indexOfObjectIdenticalTo: and removeObjectIdenticalTo:
instead of containsObject: and removeObject:.
(-[WebBookmarkList insertChild:atIndex:]): Use indexOfObjectIdenticalTo: instead of
containsObject: in the assertion.
2002-11-25 Chris Blumenberg <cblu@apple.com>
Fixed: 3084350 - No URL flavors provided for images
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragPromisedImage:fromOrigin:withURL:title:event:]): renamed, simplifies dragging an image
(-[WebFilePromiseDragSource initWithSource:]): subclass of NSFilePromiseDragSource, to be used later
(-[WebFilePromiseDragSource draggingSource]):
(-[WebFilePromiseDragSource dealloc]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
(-[WebHTMLView draggedImage:endedAt:operation:]): added, release self
* WebView.subproj/WebImageView.m:
(-[WebImageView mouseDragged:]): call _web_dragPromisedImage:fromOrigin:withURL:title:event:, retain self
(-[WebImageView draggedImage:endedAt:operation:]): added, release self
* WebView.subproj/WebView.m:
(-[WebView isDocumentHTML]): call isKindOfClass instead of className
(-[WebView draggingEntered:]): check for WebFilePromiseDragSource
2002-11-24 Trey Matteson <trey@apple.com>
Added URLString method to WebHistoryItem to avoid silly conversions between
NSURL and NSString. When the dust settles with our plans for NSURL we can
rationalize this API with the rest of WebKit.
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem URLString]):
2002-11-24 Chris Blumenberg <cblu@apple.com>
Added element keys for the image ALT and link TITLE attributes. This will eventually be used to fix other bugs. Also made WebKit and WebCore use the same element keys to simplify the conversion of the element dictionary.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
2002-11-24 Chris Blumenberg <cblu@apple.com>
Fixed: 3109945 - Assertion failure in -[WebIconDatabase_largestIconFromDictionary:]
Added error strings for download decoding errors.
* English.lproj/Localizable.strings: Added error strings for download decoding errors
* English.lproj/StringsNotToBeLocalized.txt:
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _loadIconDictionaries]): tweak
(-[WebIconDatabase _updateFileDatabase]): more error checking to prevent assert
(-[WebIconDatabase _setIconURL:forSiteURL:]): added asserts to prevent a site URL <-> icon URL mapping without a icon URL -> icon mapping
(-[WebIconDatabase _largestIconFromDictionary:]): tweak
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]): declare pboard types if none have been declared, else append types
* WebView.subproj/WebView.m:
(+[WebView initialize]): Added error strings for download decoding errors
2002-11-24 Maciej Stachowiak <mjs@apple.com>
- fixed 3067939 - no support for window.document.lastModified
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): Pass last modified date to WebCore.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass
nil last modified date.
2002-11-23 Chris Blumenberg <cblu@apple.com>
Fixed: 3109835 - Download errors aren't communicated to client
Cleaned-up WebMainResourceClient and WebBaseResourceHandleDelegate a little.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase defaultIconWithSize:]): tweak
(-[WebIconDatabase releaseIconForSiteURL:]): don't retain site URL here
(-[WebIconDatabase _setIcon:forIconURL:]): tweak
(-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
(-[WebIconDatabase _releaseIconForIconURLString:]): retain site URL here
(-[WebIconDatabase _releaseFutureIconForSiteURL:]): tweak
(-[WebIconDatabase _sendNotificationForSiteURL:]): tweak
* WebView.subproj/WebBaseResourceHandleDelegate.h:
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate cancelWithError:]): made public
(-[WebBaseResourceHandleDelegate cancel]): cancel downloads too, call cancelWithError
(-[WebBaseResourceHandleDelegate cancelQuietly]): call cancelWithError
(-[WebBaseResourceHandleDelegate cancelledError]): tweak
(-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]): tweak
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:]): stop downloadHandler if downloading, else notify controller
(-[WebMainResourceClient cancel]): call receivedError
(-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]): tweak
(-[WebMainResourceClient handle:didReceiveData:]): stop load for download errors, report error
(-[WebMainResourceClient handleDidFinishLoading:]): call didFailLoadingWithError is download error
(-[WebMainResourceClient handle:didFailLoadingWithError:]): call receivedError
2002-11-22 Darin Adler <darin@apple.com>
* Misc.subproj/WebCoreStatistics.h:
* Misc.subproj/WebCoreStatistics.m:
(+[WebCoreStatistics javaScriptRootObjectClasses]):
Update for name change -- root object classes, not all live object classes.
2002-11-22 Chris Blumenberg <cblu@apple.com>
Fixed assertion while loading local files.
* Misc.subproj/WebIconDatabase.m: we don't have icon URLs for files
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]): Only try loading favicon as the root of server if scheme is http or https. This isn't really a feature of other protocols.
2002-11-22 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient continueAfterContentPolicy:response:]): Added a FIXME around saveFilenameForResponse:andRequest: because the API expects a path but is asking for a filename.
2002-11-22 Chris Blumenberg <cblu@apple.com>
Fixed: 3104693 - QT movie doesn't show video while still downloading
The initial size of plug-in should be 0,0 instead of 1,1 or else we don't get the layout
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView initWithFrame:]):
2002-11-22 Chris Blumenberg <cblu@apple.com>
Fixed: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase releaseIconForSiteURL:]): retain the site URL string because it may get released from beneath
(-[WebIconDatabase _updateFileDatabase]): tweak
(-[WebIconDatabase _iconsForIconURLString:]): disable timings for deployment build
(-[WebIconDatabase _setIconURL:forSiteURL:]): tweak
(-[WebIconDatabase _releaseIconForIconURLString:]): tweak
(-[WebIconDatabase _scaleIcon:toSize:]): disable timings for deployment build
* Misc.subproj/WebIconDatabasePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _updateIconDatabaseWithURL:]): new, does the db binding
(-[WebDataSource _loadIcon]): call _updateIconDatabaseWithURL
2002-11-22 Chris Blumenberg <cblu@apple.com>
Attempt to fix: 3078737 - Crash in -[WebHistoryItem dealloc] after closing last window
I haven't found anything that would cause the crash. I did some clean-up, added asserts and error messages in hopes that this help me track this down.
* Misc.subproj/WebIconDatabase.h:
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase init]):
(-[WebIconDatabase iconForSiteURL:withSize:cache:]):
(-[WebIconDatabase iconForSiteURL:withSize:]):
(-[WebIconDatabase retainIconForSiteURL:]):
(-[WebIconDatabase releaseIconForSiteURL:]):
(-[WebIconDatabase delayDatabaseCleanup]):
(-[WebIconDatabase allowDatabaseCleanup]):
(-[WebIconDatabase _iconDictionariesAreGood]):
(-[WebIconDatabase _loadIconDictionaries]):
(-[WebIconDatabase _updateFileDatabase]):
(-[WebIconDatabase _hasIconForSiteURL:]):
(-[WebIconDatabase _iconsForIconURLString:]):
(-[WebIconDatabase _iconForFileURL:withSize:]):
(-[WebIconDatabase _setIcon:forIconURL:]):
(-[WebIconDatabase _setIconURL:forSiteURL:]):
(-[WebIconDatabase _retainIconForIconURLString:]):
(-[WebIconDatabase _releaseIconForIconURLString:]):
(-[WebIconDatabase _retainFutureIconForSiteURL:]):
(-[WebIconDatabase _releaseFutureIconForSiteURL:]):
(-[WebIconDatabase _releaseOriginalIconsOnDisk]):
(-[WebIconDatabase _sendNotificationForSiteURL:]):
(-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
(-[WebIconDatabase _largestIconFromDictionary:]):
(-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
(-[WebIconDatabase _iconFromDictionary:forSize:cache:]):
(-[WebIconDatabase _scaleIcon:toSize:]):
* Misc.subproj/WebIconDatabasePrivate.h:
* WebKit.exp:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]):
2002-11-22 Richard Williamson <rjw@apple.com>
Fixed rendering issues associated with 3100120.
We now correctly map surrogate pairs in UTF-16. khtml still has
issues dealing with characters outside BMP. These are tracked
with 3109251 and 3109258.
Surrogate pairs are treated as exceptions and have their own character
to glyph map.
* Misc.subproj/WebUnicode.h:
* Misc.subproj/WebUnicode.m:
(shapedString):
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(glyphForUnicodeCharacter):
(findLengthOfCharacterCluster):
(-[WebTextRenderer substituteFontForString:]):
(-[WebTextRenderer convertUnicodeCharacters:length:toGlyphs:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
(-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]):
(-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
2002-11-22 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff:
new generic URL icon -- little blue globe, pretty nice
* WebKit.exp:
removed symbol for WebTextRendererFactory which was in here
to support an obsolete SPI hack
2002-11-22 Trey Matteson <trey@apple.com>
Added more detailed notifications on history changes.
All changes below are just posting the new notes at the right time.
* English.lproj/StringsNotToBeLocalized.txt:
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(-[WebHistory _sendNotification:entries:]):
(-[WebHistory addEntry:]):
(-[WebHistory removeEntry:]):
(-[WebHistory removeEntries:]):
(-[WebHistory removeAllEntries]):
(-[WebHistory addEntries:]):
(-[WebHistory loadHistory]):
* WebKit.exp:
2002-11-22 Richard Williamson <rjw@apple.com>
Changed NSString category methods to include _web_ prefix.
* Misc.subproj/WebKitNSStringExtras.h:
* Misc.subproj/WebKitNSStringExtras.m:
(-[NSString _web_widthForString:font:]):
2002-11-22 Richard Williamson <rjw@apple.com>
Simplified drawing and measuring SPI for use by Alex.
* Misc.subproj/WebKitNSStringExtras.h: Added.
* Misc.subproj/WebKitNSStringExtras.m: Added.
(-[NSString widthForString:font:]):
* WebKit.pbproj/project.pbxproj:
2002-11-21 Chris Blumenberg <cblu@apple.com>
Removed workaround for: 3093170 - Handle clients receive data with length 0
as it's now fixed.
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler receivedData:]): remove workaround
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveData:]): added asserts
2002-11-21 Richard Williamson <rjw@apple.com>
A different fix to 3078065 that doesn't depend on the appkit's idea of
fixed pitch font.
The fix is to adjust the width of all characters that have the same width
as the space character to match the adjustment of the space character.
This has the slight downside that non-monospace fonts that contain glyphs
with the same width as the space character will have an extra adjustment.
In practice this is not noticeable as the adjustment is always sub-pixel.
Nor of course does this cause any mislayout, as it's done at the lowest
level for both measurement and drawing.
Until we move kthml internals to floats this will be just fine.
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(widthForGlyph):
(-[WebTextRenderer initWithFont:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
tAfterNavigationPolicy:request:]):
2002-11-21 Maciej Stachowiak <mjs@apple.com>
* Makefile.am: Pass symroots for this tree to pbxbuild.
2002-11-21 Chris Blumenberg <cblu@apple.com>
Fixed: 3009881 - plugins get mouse-overs even when mouse is in menus
Fixed: 3108240 - Loading datasource sometimes doesn't have cancelled error when cancelled
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView sendNullEvent]): check if menus are showing
(-[WebBaseNetscapePluginView restartNullEvents]): tweak
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _stopLoading]): set cancelled error if main handle is gone
=== Alexander-33 ===
2002-11-20 Darin Adler <darin@apple.com>
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
Unescape the string before executing it, so we don't suffer from bug 3083043
here in the javascript: URLs that come from plug-ins.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-11-20 Chris Blumenberg <cblu@apple.com>
Fixed: 3079134 - Throttle plug-ins while in background
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView sendNullEvent]): new
(-[WebBaseNetscapePluginView stopNullEvents]): stops timer
(-[WebBaseNetscapePluginView restartNullEvents]): stops timer if there is one, and starts a new one based on window activation state
(-[WebBaseNetscapePluginView start]): call restartNullEvents
(-[WebBaseNetscapePluginView stop]): call stopNullEvents
(-[WebBaseNetscapePluginView windowBecameKey:]): call restartNullEvents
(-[WebBaseNetscapePluginView windowResignedKey:]): call restartNullEvents
(-[WebBaseNetscapePluginView windowDidMiniaturize:]): call stopNullEvents
(-[WebBaseNetscapePluginView windowDidDeminiaturize:]): call restartNullEvents
* Plugins.subproj/WebNetscapePluginNullEventSender.h: Removed. No need for another class, use a timer.
* Plugins.subproj/WebNetscapePluginNullEventSender.m: Removed. No need for another class, use a timer.
* WebKit.pbproj/project.pbxproj:
2002-11-20 Richard Williamson <rjw@apple.com>
Fixed 3107007. Letter-spacing is causing width to be miscalculated.
This also fixed some selection problems.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
2002-11-20 Richard Williamson <rjw@apple.com>
Fixed mono spaced fonts to always render with mono spacing! (3078065)
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(widthForGlyph):
(-[WebTextRenderer initWithFont:]):
2002-11-20 Chris Blumenberg <cblu@apple.com>
Fixed: 3074926 - crash in BitsToPix() trying to print cnet page
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView drawRect:]): disable experimental plug-in printing code.
2002-11-20 Chris Blumenberg <cblu@apple.com>
Minor clean-up, logging and more error checking in plug-in code.
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream setResponse:]):
(-[WebBaseNetscapePluginStream receivedData:]):
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
* Plugins.subproj/npapi.m:
(NPN_UserAgent):
(NPN_MemFree):
(NPN_MemFlush):
(NPN_ReloadPlugins):
2002-11-20 Chris Blumenberg <cblu@apple.com>
Fixed: 3061174 - javascript: URLs sent by plugins don't work
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
2002-11-20 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-11-19 Chris Blumenberg <cblu@apple.com>
Fixed: 3106061 - REGRESSION: Copy in text view copies all text not just selection
* Misc.subproj/WebSearchableTextView.m:
(-[WebSearchableTextView copy:]):
2002-11-19 Chris Blumenberg <cblu@apple.com>
Fixed: 3092588 - redraw errors in QT controller if window is in background
We need to send update events after we activate/deactivate after all.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView windowBecameKey:]):
(-[WebBaseNetscapePluginView windowResignedKey:]):
2002-11-19 Chris Blumenberg <cblu@apple.com>
Fixed: 3020720 - dropping a folder in the page address makes the folder open in Finder, empties the field
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_bestURL]): Don't accept directories.
2002-11-19 Chris Blumenberg <cblu@apple.com>
Fixed: 3068112 - extra line breaks when copying from source window
* Misc.subproj/WebSearchableTextView.m:
(-[WebSearchableTextView copy:]): Convert CRLF to LF
2002-11-19 David Hyatt <hyatt@apple.com>
Make sure that if the scrollers are shown/hidden that we
force an immediate layout, since if we don't, an intervening
display can cause us to show scrollbars when they really
shouldn't be there.
* WebView.subproj/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView updateScrollers]):
2002-11-19 Chris Blumenberg <cblu@apple.com>
Fixed: 3100597 - repro NSArray exception using contextual menu
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]): more error checking
2002-11-19 Trey Matteson <trey@apple.com>
Just a tweak to the description printout.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem description]):
2002-11-18 Chris Blumenberg <cblu@apple.com>
Real fix for: 3104183 - Assert loading www.louisvuitton.com
Since we don't consider plug-in content as a subresource, attaching plug-in streams to the datasource has no affect on the loading state of the datasource. Both stopLoading on WebFrame and _stopLoading datasource, would not stop plug-ins streams after th
e data source was done loading. Because of this, I've decided to not keep a list of plug-in streams attached to the data source and pulled my previous change. To fix this bug, WebBaseResourceHandleDelegate now retains the controller.
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream start]):
(-[WebNetscapePluginStream cancel]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
* WebView.subproj/WebBaseResourceHandleDelegate.h:
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate _releaseResources]):
(-[WebBaseResourceHandleDelegate setDataSource:]):
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
(-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
(-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
(-[WebBaseResourceHandleDelegate _cancelWithError:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _stopLoading]):
(-[WebDataSource _makeHandleDelegates:deferCallbacks:]):
(-[WebDataSource _defersCallbacksChanged]):
2002-11-18 Chris Blumenberg <cblu@apple.com>
Fixed: 3104183 - Assert loading www.louisvuitton.com
We need to treat plug-in streams like subresources except they don't change the loading state of the data source.
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream start]): call _addPluginStream
(-[WebNetscapePluginStream cancel]): call _removePluginStream
(-[WebNetscapePluginStream handleDidFinishLoading:]): call _removePluginStream
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]): call _removePluginStream
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): release pluginStreams
(-[WebDataSource _addPluginStream:]): just like addSubresourceClient except don't change the loading state.
(-[WebDataSource _removePluginStream:]): just like removeSubresourceClient except don't change the loading state.
(-[WebDataSource _stopLoading]): stop plug-ins streams
(-[WebDataSource _makeHandleDelegates:deferCallbacks:]):
(-[WebDataSource _defersCallbacksChanged]): call _makeHandleDelegates:deferCallbacks: for subresources and plug-in streams.
2002-11-18 Richard Williamson <rjw@apple.com>
Check for usesBackForwardList was excluding all load types.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
2002-11-18 Chris Blumenberg <cblu@apple.com>
Fixed: 3098767 - REGRESSION: standalone quicktime content just shows blank window
Check the instance not the class for the class type.
* Plugins.subproj/WebNetscapePluginRepresentation.m:
(-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
2002-11-18 Ken Kocienda <kocienda@apple.com>
Added feature to import bookmarks/favorites from MSIE. This
fixes Radar 2961230 (import Mac IE bookmarks).
* Bookmarks.subproj/WebBookmarkImporter.h: Added.
* Bookmarks.subproj/WebBookmarkImporter.m: Added.
(_breakStringIntoLines):
(_HREFRangeFromSpec):
(_HREFTextFromSpec):
(_linkTextRangeFromSpec):
(_linkTextFromSpec):
(-[WebBookmarkImporter initWithPath:group:]):
(-[WebBookmarkImporter topBookmark]):
(-[WebBookmarkImporter error]):
(-[WebBookmarkImporter dealloc]):
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList init]): Create the bookmark list object. This
was not created with the -init initializer, causing bookmark lists
to fail.
* English.lproj/Localizable.strings:
* English.lproj/StringsNotToBeLocalized.txt:
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
2002-11-17 Trey Matteson <trey@apple.com>
Code cleanup to make some internal methods return autoreleased objects.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _addBackForwardItemClippedAtTarget:]):
(-[WebFrame _createItem]):
(-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
(-[WebFrame _transitionToCommitted]):
2002-11-17 Trey Matteson <trey@apple.com>
Fixed 3102076 - REGRESSION: infinite recursion involving bridge end
Fixed 3100929 - REGRESSION: serverRedirectedForDataSource: not sent on server redirects
Fixed 3103381 - REGRESSION: Going back from anchor doesn't restore scroll position
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Return the copy of the
request that we make instead of the original.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]): Call super after we make our mods
to the request, so the copy that super makes for us includes those mods.
* WebView.subproj/WebFramePrivate.h: Added new state, WebFrameStateCompleting.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToLayoutAcceptable]): Completing state is a NOP.
(-[WebFrame _transitionToCommitted]): Completing state is a NOP.
(-[WebFrame _isLoadComplete]): Go to Completing state before calling [bridge end].
Go to Completed state afterwards, only if no new loads started in the meantime.
(-[WebFrame _loadItem:fromItem:withLoadType:]): When doing anchor nav to get to the
item, save and restore scroll state, and set the current item.
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
Reorder the steps so the right scroll state gets saved to the right place. Also, don't
add a backForward item if we're doing a client redirect to an anchor.
2002-11-17 David Hyatt <hyatt@apple.com>
Back out my previous fix. I have a better one that is
confined to WebCore.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _isLoadComplete]):
2002-11-17 David Hyatt <hyatt@apple.com>
The needsdisplay is necessary even for HTML documents.
I over-optimized here. Fixes the directory.apple.com
regression and the santa clara library regression.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _isLoadComplete]):
2002-11-17 Darin Adler <darin@apple.com>
- update for change to WebCore API so it never uses NSURL
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createWindowWithURL:frameName:]): Take NSString instead of NSURL.
(-[WebBridge startLoadingResource:withURL:]): Ditto.
(-[WebBridge objectLoadedFromCacheWithURL:response:size:]): Ditto.
(-[WebBridge reportClientRedirectToURL:delay:fireDate:]): Ditto.
(-[WebBridge setIconURL:]): Ditto.
(-[WebBridge setIconURL:withType:]): Ditto.
(-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]): Ditto.
(-[WebBridge postWithURL:data:contentType:triggeringEvent:]): Ditto.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Ditto.
(-[WebBridge userAgentForURL:]): Ditto.
(-[WebBridge requestedURL]): Return NSString instead of NSURL.
(-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): Take NSString instead of NSURL.
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): Take NSString instead of NSURL.
* WebCoreSupport.subproj/WebCookieAdapter.m:
(-[WebCookieAdapter cookiesForURL:]): Take NSString instead of NSURL.
(-[WebCookieAdapter setCookies:forURL:policyBaseURL:]): Ditto.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): Pass NSString instead of NSURL.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Pass NSString instead of NSURL
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Turn bridge URL into NSURL so we
can call _web_URLByRemovingFragment on it.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]): Convert NSString to NSURL when making the WebKit element dictionary.
2002-11-17 Maciej Stachowiak <mjs@apple.com>
- fixed 2949193 - implement onKeyDown, onKeyPress, and onKeyUp event handlers
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView load]): Pose as NSWindow too now.
(-[WebHTMLView _interceptKeyEvent:toView:]): Pass event to WebCore and
see if WebCore wants to block it.
(-[WebNSWindow sendEvent:]): For all key events that would go to a
subview of a WebHTMLView, let the WebHTMLView take a first crack
at it.
2002-11-15 Darin Adler <darin@apple.com>
- fixed 3079214 -- text/plain page shows up slowly, a few pages at a time
* WebView.subproj/WebTextView.m:
(-[WebTextView initWithFrame:]): Remove unneeded setWidthTracksTextView:, because
that's the default.
(-[WebTextView dataSourceUpdated:]): Replace the thing each time in the RTF case.
(-[WebTextView viewDidMoveToSuperview]): Here's where we resize, but only the width.
Resizing the height was causing the bug.
(-[WebTextView layout]): Do nothing.
(-[WebTextView setAcceptsDrags:]): Update to new name. Since we weren't
importing WebDocument.h, we never noticed that this file got out of sync.
(-[WebTextView acceptsDrags]): Ditto.
(-[WebTextView setAcceptsDrops:]): Ditto.
(-[WebTextView acceptsDrops]): Ditto.
* WebView.subproj/WebDocument.h: Fix typo. It said setAcceptsDrags: twice.
2002-11-15 Darin Adler <darin@apple.com>
* WebView.subproj/WebFramePrivate.m: Removed a bunch of tabs and fixed indenting.
2002-11-15 Maciej Stachowiak <mjs@apple.com>
- fixed 3102016 - REGRESSION: Command-clicking on a link can open _two_ windows.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setJustOpenedForTargetedLink:]):
(-[WebDataSource _justOpenedForTargetedLink]):
* WebView.subproj/WebFrame.m:
(-[WebFrame findOrCreateFramedNamed:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterNavigationPolicy:]):
(-[WebFrame _loadDataSource:withLoadType:]):
(-[WebFrame _downloadRequest:toPath:]):
(-[WebFrame _setJustOpenedForTargetedLink:]):
2002-11-15 Darin Adler <darin@apple.com>
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
Give the listener a slightly longer lifetime, to make this API a bit more foolproof.
2002-11-15 Maciej Stachowiak <mjs@apple.com>
Fix world leak I introduced, and also add an early return when needed.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
(-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
2002-11-15 Maciej Stachowiak <mjs@apple.com>
Make navigation policy asynchronous for real.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
(-[WebPolicyDecisionListenerPrivate initWithTarget:action:]):
(-[WebPolicyDecisionListenerPrivate dealloc]):
(-[WebPolicyDecisionListener usePolicy:]):
(-[WebPolicyDecisionListener _initWithTarget:action:]):
(-[WebPolicyDecisionListener dealloc]):
(-[WebPolicyDecisionListener _invalidate]):
* WebView.subproj/WebControllerPolicyDelegatePrivate.h: Added.
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame stopLoading]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]):
(-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
(-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
(-[WebFrame _continueAfterNavigationPolicy:]):
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
(-[WebFrame _loadDataSource:withLoadType:]):
2002-11-15 Maciej Stachowiak <mjs@apple.com>
Wrap content policy invocation to look asynchronous.
* WebView.subproj/WebBaseResourceHandleDelegate.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient continueAfterContentPolicy:response:]):
(-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-15 Maciej Stachowiak <mjs@apple.com>
Refactor so that all invocations of navigation policy are set up
to be asynchronous. However, the actually delegate method is not
async yet.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
(-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
(-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
(-[WebFrame _loadDataSource:withLoadType:]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient stopLoadingForPolicyChange]):
(-[WebMainResourceClient continueAfterNavigationPolicy:request:]):
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-14 Maciej Stachowiak <mjs@apple.com>
Refactor things a bit so all loads bottleneck through a single
method (_loadDataSource:withLoadType:).
* WebView.subproj/WebFrame.m:
(-[WebFrame loadRequest:]):
(-[WebFrame reload]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadItem:fromItem:withLoadType:]):
(-[WebFrame _loadRequest:triggeringAction:loadType:]):
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
(-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
(-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
(-[WebFrame _loadDataSource:withLoadType:]):
(-[WebFrame _downloadRequest:toPath:]):
2002-11-14 Maciej Stachowiak <mjs@apple.com>
Change things so the public interface to loading is loadRequest:
and everything else is private.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController showURL:inFrame:]):
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController init]):
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _createFrameNamed:inParent:allowsScrolling:]):
(-[WebController _downloadURL:toPath:]):
* WebView.subproj/WebFrame.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame init]):
(-[WebFrame initWithName:webView:controller:]):
(-[WebFrame loadRequest:]):
(-[WebFrame reload]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _timedLayout:]):
(-[WebFrame _clearProvisionalDataSource]):
(-[WebFrame _loadItem:fromItem:withLoadType:]):
(-[WebFrame _loadRequest:triggeringAction:]):
(-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
(-[WebFrame _itemForRestoringDocState]):
(-[WebFrame _setProvisionalDataSource:]):
(-[WebFrame _startLoading]):
(-[WebFrame _downloadRequest:toPath:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient stopLoadingAfterContentPolicy]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
* WebView.subproj/WebView.m:
(-[WebView concludeDragOperation:]):
2002-11-14 David Hyatt <hyatt@apple.com>
Move text measurement and layout beyond onload. This
shoudl speed up i-bench substantially and morrison's
PLT test slightly. Note that the adjustFrames layout
stuff has been removed from isLoadComplete.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _timedLayout:]):
(-[WebFrame _isLoadComplete]):
2002-11-14 Darin Adler <darin@apple.com>
* English.lproj/Localizable.strings: Updated to include the new
error messages that Maciej just added. I wonder what effect this
will have if we see those errors in Alex-32?
=== Alexander-32 ===
2002-11-14 Don Melton <gramps@apple.com>
* WebView.subproj/WebControllerPolicyDelegate.h:
Added missing semi-colon in definition of WebPolicyDecisionListener to
fix build error.
2002-11-14 Maciej Stachowiak <mjs@apple.com>
Combined file URL policy with content policy. We don't actually
bother to ask earlier for file URLs yet, since that will make
things more complicated.
* Misc.subproj/WebKitErrors.h:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _handleUnimplementablePolicy:errorCode:forURL:]):
(-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient stopLoadingAfterContentPolicy]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
* WebView.subproj/WebView.m:
(+[WebView initialize]):
2002-11-14 Darin Adler <darin@apple.com>
- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
Make the reload flag pass across the bridge.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
Pass a reload flag, based on the load type, to the bridge.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Pass a
reload flag of NO in the anchor case. Preserve reload load types even when
doing client redirects (have to talk with Trey about this tomorrow).
2002-11-14 Darin Adler <darin@apple.com>
- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
If the WebCore side needs layout, then do layout before trying to draw.
2002-11-13 Trey Matteson <trey@apple.com>
Fixed client redirects, some more. The upshot is that they do not
generate two items in the back-forward list. iBench still works.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]): Call straight to the frame for all impl.
(-[WebBridge reportClientRedirectCancelled]): Call straight to the frame for all impl.
(-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
clientRedirect param removed when sending _loadURL: to frame.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
clientRedirect param removed. Check our own ivar to know if we are in client redirect case.
(-[WebFrame _loadURL:intoChild:]):
clientRedirect param removed when sending _loadURL: .
(-[WebFrame _clientRedirectedTo:delay:fireDate:]):
Note that we are doing a redirect if time=0 and we're not completed. Also includes
previous impl moved from Bridge.
(-[WebFrame _clientRedirectCancelled]): Previous impl moved from Bridge.
2002-11-13 Maciej Stachowiak <mjs@apple.com>
Pass mime type instead of full response to content policy delegate
method, in preparation for merging it with the file URL policy.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-13 Darin Adler <darin@apple.com>
- fixed 3083982 -- Logging into AOL gives null view
Turns out AOL was using a refresh header, which we were not supporting.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
Call openURL: and pass headers in.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
Pass nil for headers in this case, since we know it's just an anchor change.
- other things
* WebCoreSupport.subproj/WebBridge.h: Remove dataSourceChanged and dataSource
methods. We try to keep the bridge methods down to actual bridging.
* WebCoreSupport.subproj/WebBridge.m: Remove dataSourceChanged altogether,
and move dataSource up in the file.
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation setDataSource:]): Keep the data source around, so we
don't need to ask the bridge for it.
(-[WebHTMLRepresentation documentSource]): Use it here.
2002-11-13 Trey Matteson <trey@apple.com>
Fixed 3100084 - REGRESSION: web page is not first responder after visiting web page
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): Make the rep before _transitionToCommitted. This is the way it used to be.
(-[WebDataSource _makeRepresentation]): Don't make the docView here.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): Make the docView here, after we save the scroll state but before notifying the delegate.
2002-11-13 Darin Adler <darin@apple.com>
- fixed 3100013 -- REGRESSION: Can't get results from i-Bench anymore
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
Don't set the state to WebFrameStateComplete if it has already been set
to WebFrameStateProvisional. If it has, that means we already began a new
load; that one is not yet complete.
2002-11-13 John Sullivan <sullivan@apple.com>
- fixed 3099922 -- REGRESSION: Back button always pops up menu
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]:
Fixed a copy/paste error I made yesterday -- this method was never
noticing the mouse-up events because it was checking the event type
against the wrong number. Also changed the hysteresis values from
unsigneds to floats (unsigned was just wrong).
2002-11-13 Maciej Stachowiak <mjs@apple.com>
- fixed 3050447 - Policy handlers have no way of telling client
that the proposed navigation is a form post
Now we pass form submissions through all the normal policy steps.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
(-[WebBridge postWithURL:data:contentType:triggeringEvent:]):
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _setTriggeringAction:]):
(-[WebDataSource _triggeringAction]):
(-[WebDataSource _lastCheckedRequest]):
(-[WebDataSource _setLastCheckedRequest:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowRequest:]):
(-[WebFrame _loadRequest:triggeringAction:]):
(-[WebFrame _actionInformationForNavigationType:event:]):
(-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
(-[WebFrame _loadURL:intoChild:]):
(-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
2002-11-12 Maciej Stachowiak <mjs@apple.com>
Combine click policy and URL policy into navigation policy.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowRequest:]):
(-[WebFrame _actionInformationForNavigationType:event:]):
(-[WebFrame _continueAfterFileURLPolicyForRequest:]):
(-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
2002-11-12 Trey Matteson <trey@apple.com>
fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _isLoadComplete]): Set state=completed only after we tell the bridge to
end the load. This allows client redirects to be processed before we think we're complete.
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
Only process client redirects as such if we are not already complete. This makes JS driven
navigations after load-time work like the user would expect, as normal navigations.
2002-11-12 Maciej Stachowiak <mjs@apple.com>
- fixed 3099487 - REGRESSION: dragging an image always puts it in
the download directory
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _downloadURL:]): Call _downloadURL:toPath: with nil path.
(-[WebController _downloadURL:toPath:]): New method that
predetermines the path to download to (needed for DnD).
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use
_downloadURL:toPath:
* WebView.subproj/WebImageView.m:
(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): Use
_downloadURL:toPath:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
delegate for download path if we already have one.
2002-11-12 Richard Williamson <rjw@apple.com>
Fixed likely cause of 3099047 (and others). Width buffer could underrun in
some situations.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
2002-11-12 John Sullivan <sullivan@apple.com>
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]):
new method
(-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]):
now calls the new method, passing the default hysteresis values
2002-11-12 Richard Williamson <rjw@apple.com>
Implemented letter-spacing and word-spacing CSS properties.
* Misc.subproj/WebStringTruncator.m:
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
(+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer widthForCharacters:length:]):
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
2002-11-12 Maciej Stachowiak <mjs@apple.com>
Removed policy classes and instead use the policy enums directly,
since we no longer hold the path in the enum.
* Downloads.subproj/WebDownloadHandler.m:
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
* WebView.subproj/WebControllerPolicyDelegatePrivate.h: Removed.
* WebView.subproj/WebControllerPrivate.m:
* WebView.subproj/WebDefaultPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
(-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
(-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
(-[WebDefaultPolicyDelegate unableToImplementPolicy:error:forURL:inFrame:]):
(-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
(-[WebFrame _shouldShowRequest:]):
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-12 Maciej Stachowiak <mjs@apple.com>
Keep the triggering event around on the data source, so it can be
used with redirects.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _loadRequest:triggeringEvent:]):
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
(-[WebFrame _postWithURL:data:contentType:]):
2002-11-12 Darin Adler <darin@apple.com>
- improved the code that manages observing the window and superview
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView addSuperviewObservers]): Added.
(-[WebHTMLView removeSuperviewObservers]): Added.
(-[WebHTMLView addWindowObservers]): Added.
(-[WebHTMLView removeWindowObservers]): Added.
(-[WebHTMLView viewWillMoveToSuperview:]): Call removeSuperviewObservers.
(-[WebHTMLView viewDidMoveToSuperview]): Call addSuperviewObservers.
(-[WebHTMLView viewWillMoveToWindow:]): Call removeWindowObservers and
removeSuperviewObservers.
(-[WebHTMLView viewDidMoveToWindow]): Call addWindowObservers and
addSuperviewObservers.
2002-11-11 Maciej Stachowiak <mjs@apple.com>
Remove contentPolicy parameter from _downloadURL, and remove
remaining traces of path from policy object.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
(-[WebPolicyPrivate dealloc]):
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:]):
(+[WebClickPolicy webPolicyWithClickAction:]):
* WebView.subproj/WebControllerPolicyDelegatePrivate.h:
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _downloadURL:]):
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate downloadURL:]):
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
* WebView.subproj/WebImageView.m:
(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-11 Darin Adler <darin@apple.com>
* Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
Use fileSystemRepresentationWithPath, not cString, to turn a path into something
to pass to FSPathMakeRef.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-11-11 Darin Adler <darin@apple.com>
- tighten up cursor handling a bit more
* WebView.subproj/WebDynamicScrollBarsView.m:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView addMouseMovedObserver]): Call _frameOrBoundsChanged
so we emit a mouse moved event right away.
(-[WebHTMLView viewWillMoveToSuperview:]): Remove the colon since I
removed the parameter from _frameOrBoundsChanged.
* WebView.subproj/WebHTMLViewPrivate.h: Declare _frameOrBoundsChanged.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _frameOrBoundsChanged]): Remove parameter.
2002-11-11 Trey Matteson <trey@apple.com>
Fixed 3015884 - Reloading a page should remember the scroll position
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): Save scroll position on reload
(-[WebFrame _isLoadComplete]): Restore position on reload
2002-11-11 Trey Matteson <trey@apple.com>
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList addEntry:]): Yank code to avoid adding a duplicate entry, to catch the
refresh case. That's dealt with in WebFramePrivate now.
(-[WebBackForwardList description]): Enhanced to print more info.
* History.subproj/WebHistoryItem.h:
History items now hold an array of subitems to mirror the frame tree. One item in the tree
is designated the target of the navigation.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem dealloc]): Release new ivars.
(-[WebHistoryItem isTargetItem]):
(-[WebHistoryItem setIsTargetItem:]):
New setter and setter.
(-[WebHistoryItem _recurseToFindTargetItem]):
(-[WebHistoryItem targetItem]):
Search the tree to find the target item.
(-[WebHistoryItem children]):
(-[WebHistoryItem addChildItem:]):
(-[WebHistoryItem childItemWithName:]):
Maintain and search new child item list.
(-[WebHistoryItem description]):
Enhanced to print out the tree of items.
(-[WebHistoryItem dictionaryRepresentation]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):
Save and load the new state.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge generateFrameName]): New call from KWQ, just forwards to Frame.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Call new frame method dedicated to this case.
(-[WebBridge saveDocumentState:]):
(-[WebBridge documentState]):
Call frame methods to get the right item to save/restore to/from.
* WebView.subproj/WebController.m:
(-[WebController _goToItem:withLoadType:]): Stop any current loading before going to a new item.
(-[WebController goBack]):
(-[WebController goForward]):
(-[WebController goBackOrForwardToItem:]): Name change of private method (for consistency)
* WebView.subproj/WebDataSourcePrivate.h:
ProvisionalItem and PreviousItem are moved back up to WebFrame, where we know more about the
state transitions that happen during loading.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Don't release removed ivars.
(-[WebDataSource _commitIfReady]): Make the view representations -after- the transition to committed.
This allows us to save away the scroll location successfully, since making the view was resetting it.
* WebView.subproj/WebFrame.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]): Saving the scroll location has moved elsewhere to handle frames.
(-[WebFrame stopLoading]): Skip all the work if we're already state=complete.
* WebView.subproj/WebFramePrivate.h:
The frame now holds a ref to the current, previous and provisional back-forward items.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]): Release new state.
(-[WebFramePrivate setProvisionalItem:]):
(-[WebFramePrivate setPreviousItem:]):
(-[WebFramePrivate setCurrentItem:]): New setters (1 line getters were missed by script)
(-[WebFrame _addBackForwardItemClippedAtTarget:]): Adds a BF item to the top of the BF list.
(-[WebFrame _createItem]): Create a single BF item.
(-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): Create a tree of BF items, which
mirror the frame tree.
(-[WebFrame _immediateChildFrameNamed:]): New frame search utility (doesn't recurse)
(-[WebFrame _detachFromParent]): Save the scroll position when detaching a frame.
(-[WebFrame _transitionToCommitted]): Maintain new item ivars. Save scroll position when
appropriate. Hook up items for child frames to their parent, as they are created.
(-[WebFrame _setState:]): Clear previousItem whenever we reach committed.
(-[WebFrame _isLoadComplete]): Clear previousItem if we are committed.
(-[WebFrame _childFramesMatchItem:]): Does the frame's frame tree match the one held by the item?
(-[WebFrame _loadItem:fromItem:withLoadType:]): Only do simple anchor navigation if the frame
has no children (fixes oddball corner case with a frame reloading itself). Set provisional item.
(-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]): Heart of returning to an item that had
frames. We either find that the existing content is good, or initiate a load.
(-[WebFrame _goToItem:withLoadType:]): Adjust the BF list cursor, and recurse to do the work.
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]): Only do anchor-style nav if
the destination URL has a fragment. Save scroll position.
(-[WebFrame _loadURL:intoChild:]): If returning to an item with frames, possibly replace the
new content with the stuff that was there at the time, substituting the URL.
(-[WebFrame _saveScrollPositionToItem:]): Don't croak on nil item or view.
(-[WebFrame _restoreScrollPosition]): Do croak (ASSERT) on nil item.
(-[WebFrame _scrollToTop]): Nit cleanup.
(-[WebFrame _addFramePathToString:]): Add a component for our frame to the frame name we're generating.
(-[WebFrame _generateFrameName]): Generate a frame name that is repeatable.
(-[WebFrame _itemForSavingDocState]): Returns correct item to use for formstate save.
(-[WebFrame _itemForRestoringDocState]): Returns correct item to use for formstate restore
2002-11-11 Maciej Stachowiak <mjs@apple.com>
Store path and the fact that we're downloading in the data source,
instead of storing the content policy.
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler cleanUpAfterFailure]):
(-[WebDownloadHandler createFileIfNecessary]):
(-[WebDownloadHandler finishedLoading]):
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _downloadURL:withContentPolicy:]):
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(+[WebDataSource registerRepresentationClass:forMIMEType:]):
(-[WebDataSource isDownloading]):
(-[WebDataSource downloadPath]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _commitIfReady]):
(-[WebDataSource _setIsDownloading:]):
(-[WebDataSource _setDownloadPath:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
2002-11-11 Maciej Stachowiak <mjs@apple.com>
Don't ask for the content policy any more if the previous policies
said to save - in effect this means to ask only if the previous
policies said to use the content policy. Also, remove now-useless
previous content policy parameter from content policy delegate.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setContentPolicy:]): Retain new policy before
releasing the old one.
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
for content policy if the delegate already decided to save.
2002-11-11 Maciej Stachowiak <mjs@apple.com>
Added new policy delegate callback to get the filename - this
won't be up to the content policy any more.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate saveFilenameForResponse:andRequest:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-11-11 Darin Adler <darin@apple.com>
- made some improvements to cursor setting for greater speed and correctness
* WebView.subproj/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView setCursor:]): Just use setDocumentCursor: instead of
our own logic. This allows us to remove code and may fix some bugs or anomalies as well.
(-[WebDynamicScrollBarsView dealloc]): Release the cursor. I think we were leaking before.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView viewWillMoveToSuperview:]): Use _frameOrBoundsChanged: method now, which
has been moved into the private file.
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Don't bother finding
topmost WebHTMLView to call _updateMouseoverWithEvent: on; now it works fine no matter
which level it's called at.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _frameOrBoundsChanged:]): Moved the code here that was formerly in the
_setNeedsLayoutIfSizeChanged method, also added code that does _updateMouseoverWithEvent:
so that we get properly updated cursor when we scroll.
(-[WebHTMLView _updateMouseoverWithEvent:]): Remove unneeded assert. This method works
equally well no matter which WebHTMLView calls it; everything is done at the window and
controller level.
* WebView.subproj/WebControllerPrivate.h: Added lastElementWasNotNil field and
_mouseDidMoveOverElement:modifierFlags: method.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _mouseDidMoveOverElement:modifierFlags:]): Call through to the delegate,
but don't do multiple calls if they are all nil.
* WebCoreSupport.subproj/WebBridge.m: Remove unused modifierTrackingEnabled method.
* WebView.subproj/WebHTMLViewPrivate.h: Remove unused _setModifierTrackingEnabled and
_modifierTrackingEnabled methods.
2002-11-10 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
2002-11-10 Chris Blumenberg <cblu@apple.com>
Fixed: 3021681 - downloaded files' creation and modification dates are not set
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler createFileIfNecessary]): call [response creationDate] and [response lastModifiedDate] when setting file attributes.
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream setResponse:]): call [response lastModifiedDate] when giving content to plug-ins.
2002-11-10 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
2002-11-09 Darin Adler <darin@apple.com>
- fixed 3095156 -- reproducible leak of WebDataSource due to bad URL in stylesheet
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
Check for errors by looking at the return value from loadWithRequest: rather than
making a separate call to canInitWithRequest.
* WebView.subproj/WebBaseResourceHandleDelegate.h: Add boolean success/failure result
loadWithRequest:.
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate loadWithRequest:]): Return NO if we fail to make a handle.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
Check result of loadWithRequest: and complain if it's NO.
* WebView.subproj/WebMainResourceClient.m: Tweak whitespace.
2002-11-09 Chris Blumenberg <cblu@apple.com>
Fixed: 2991610 - Alexander should support services, including Speech
* WebView.subproj/WebHTMLView.m:
(+[WebHTMLView initialize]): register for service types
(-[WebHTMLView dealloc]): moved to top of file
(-[WebHTMLView copy:]): call _writeSelectionToPasteboard
(-[WebHTMLView writeSelectionToPasteboard:types:]): call _writeSelectionToPasteboard
(-[WebHTMLView validRequestorForSendType:returnType:]): return self for our pboard types
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView _pasteboardTypes]): new, returns the array of supported pboard types
(-[WebHTMLView _writeSelectionToPasteboard:]): new, adds data to pboard
* WebView.subproj/WebImageView.m:
(-[WebImageView initialize]): register for service types
(-[WebImageView validateUserInterfaceItem:]): respond to copy
(-[WebImageView validRequestorForSendType:returnType:]): return self for images
(-[WebImageView writeImageToPasteboard:]): writes image data to pboard
(-[WebImageView copy:]): calls writeImageToPasteboard
(-[WebImageView writeSelectionToPasteboard:types:]): calls writeImageToPasteboard
2002-11-08 Darin Adler <darin@apple.com>
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem setTitle:]): Use display title if it matches, so
we don't end up with two identical strings, as when reading from
the property list.
(-[WebHistoryItem setDisplayTitle:]): The same thing, the other way round.
2002-11-08 Darin Adler <darin@apple.com>
- fixed 3095078 -- image loop counts still not handled right
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Look for the tag
"NETSCAPE2.0", not "NETSCAPE1.0".
(-[WebImageRenderer nextFrame:]): Remove special handling for last frames with
a duration of 0. That was just a misunderstanding.
2002-11-08 Darin Adler <darin@apple.com>
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
Slightly better fix. Essentially just take out the assert.
2002-11-08 Darin Adler <darin@apple.com>
- fixed an assert I am seeing a lot
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]): Oops.
2002-11-08 Richard Williamson <rjw@apple.com>
Solved missing glyph problem, but it's very slow, so
it's disabled for now. I'll turn back on after extending
the character to glyph map in each renderer to include
substituted font.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer substituteFontForString:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2002-11-08 Darin Adler <darin@apple.com>
- separate WebBaseNetscapePluginStream more cleanly from its subclasses
by making most fields private
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream setResponse:]):
* Plugins.subproj/WebNetscapePluginStream.h:
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
(-[WebNetscapePluginStream dealloc]):
(-[WebNetscapePluginStream start]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:didReceiveResponse:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
(-[WebSubresourceClient handle:didFailLoadingWithError:]):
(-[WebSubresourceClient cancel]):
* WebView.subproj/WebBaseResourceHandleDelegate.h:
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
(-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
(-[WebBaseResourceHandleDelegate _cancelWithError:]):
(-[WebBaseResourceHandleDelegate cancel]):
(-[WebBaseResourceHandleDelegate cancelQuietly]):
(-[WebBaseResourceHandleDelegate cancelledError]):
(-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient cancel]):
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient notifyDelegatesOfInterruptionByPolicyChange]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
2002-11-08 Darin Adler <darin@apple.com>
- changed persistent dictionaries to use NSString instead of NSURL
because of impact on memory footprint
Also changed WebIconDatabase code to verify what it reads from disk,
and ignore it if it can't verify the format.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase iconForSiteURL:withSize:cache:]):
(-[WebIconDatabase retainIconForSiteURL:]):
(-[WebIconDatabase releaseIconForSiteURL:]):
(-[WebIconDatabase _iconDictionariesAreGood]):
(-[WebIconDatabase _loadIconDictionaries]):
(-[WebIconDatabase _updateFileDatabase]):
(-[WebIconDatabase _hasIconForSiteURL:]):
(-[WebIconDatabase _iconsForIconURLString:]):
(-[WebIconDatabase _setIcon:forIconURL:]):
(-[WebIconDatabase _setIconURL:forSiteURL:]):
(-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
(-[WebIconDatabase _retainIconForIconURLString:]):
(-[WebIconDatabase _releaseIconForIconURLString:]):
(-[WebIconDatabase _retainFutureIconForSiteURL:]):
(-[WebIconDatabase _releaseFutureIconForSiteURL:]):
(-[WebIconDatabase _retainOriginalIconsOnDisk]):
(-[WebIconDatabase _releaseOriginalIconsOnDisk]):
(-[NSEnumerator _web_isAllStrings]):
* Panels.subproj/WebStandardPanels.m:
(-[WebStandardPanels didStartLoadingURL:inWindow:]):
(-[WebStandardPanels didStopLoadingURL:inWindow:]):
(-[WebStandardPanels _didStartLoadingURL:inController:]):
(-[WebStandardPanels _didStopLoadingURL:inController:]):
(-[WebStandardPanels frontmostWindowLoadingURL:]):
2002-11-08 Darin Adler <darin@apple.com>
- fixed crash on boot that Don was seeing
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem URL]): Make this work when _URLString is nil.
(-[WebHistoryItem initFromDictionaryRepresentation:]): Make this work for nil URL.
- my own private war on the cString method
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler initWithDataSource:]): Use %@ in LOG to avoid cString.
(-[WebDownloadHandler finishedLoading]): Ditto.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): Ditto.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _timedLayout:]): Ditto.
(-[WebFrame _setState:]): More of the same.
(-[WebFrame _isLoadComplete]): Ditto.
2002-11-08 Ken Kocienda <kocienda@apple.com>
Fix deployment build breaker: a variable was used only in a
LOG statement, causing the variable to become usused when
building with the Deployment build style.
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler finishedLoading])
2002-11-07 Darin Adler <darin@apple.com>
* History.subproj/WebHistoryItem.h: Replace _URL with _URLString.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem _retainIconInDatabase:]): Get the URL with [self URL].
(-[WebHistoryItem initWithURL:target:parent:title:]): Set up _URLString.
(-[WebHistoryItem dealloc]): Release _URLString.
(-[WebHistoryItem URL]): Make a URL from _URLString.
(-[WebHistoryItem icon]): Use [self URL] instead of _URL.
(-[WebHistoryItem setURL:]): Store a URL string.
(-[WebHistoryItem hash]): Use the URL string's hash.
(-[WebHistoryItem isEqual:]): Compare the URL strings.
(-[WebHistoryItem description]): Use _URLString.
(-[WebHistoryItem dictionaryRepresentation]): Use _URLString.
(-[WebHistoryItem initFromDictionaryRepresentation:]): Call through to
the other init functions so we have only one designated initializer.
Leave the date as nil if there's no date in the dictionary instead of
setting the date to 0.
2002-11-07 Maciej Stachowiak <mjs@apple.com>
Removed SaveAndOpenExternally policy.
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler finishedLoading]):
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
2002-11-07 Chris Blumenberg <cblu@apple.com>
* WebKit.pbproj/project.pbxproj:
2002-11-07 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer stopAnimation]):
2002-11-07 Maciej Stachowiak <mjs@apple.com>
- fixed 3095628 - REGRESSION: exception when clicking on link to load content into iframe
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _actionInformationForNavigationType:event:]): Get the
element info from the HTML view where the click originally
happened, not the current document view. Add some asserts to make
sure this is working.
2002-11-07 Richard Williamson <rjw@apple.com>
Tweaks
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
=== Alexander-31 ===
2002-11-07 Maciej Stachowiak <mjs@apple.com>
- fixed 3094778 - REGRESSION: Assert on logout from schwab.com
(probably fixed it anyway - I'm flying blind on this one)
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createWindowWithURL:frameName:]): Use a nil request
if the URL was nil, instead of making a request that contains a
nil URL.
2002-11-07 Maciej Stachowiak <mjs@apple.com>
Changed things so that creating a window takes a request rather
than a URL and referrer.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createWindowWithURL:frameName:]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _openNewWindowWithRequest:behind:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _setTriggeringEvent:]):
(-[WebDataSource _triggeringEvent]):
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
(-[WebFrame findOrCreateFramedNamed:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
* WebView.subproj/WebWindowOperationsDelegate.h:
2002-11-06 Darin Adler <darin@apple.com>
- fixed problem where files small enough to fit entirely in the buffer
(8K or less) would not be decoded
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler decodeData:]): Added. Moved most of the code from
receivedData into here.
(-[WebDownloadHandler receivedData:]): Changed to call decodeData.
(-[WebDownloadHandler finishedLoading]): Call decodeData on any remaining
bytes rather than writing them straight out to the data fork.
2002-11-06 Richard Williamson <rjw@apple.com>
More work on rendering scripts. Now most complex scripts render correctly.
Working new features include:
bidi, diacriticals, cursive forms, and arabic ligatures.
Selection of text rendered in these scripts, is however, not working.
Also, line height is incorrect when renderering combined below glyphs.
ajami is, sadly, horrendously broken.
* Misc.subproj/WebUnicode.m:
(glyphVariantLogical):
(shapedString):
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2002-11-06 John Sullivan <sullivan@apple.com>
* Bookmarks.subproj/WebBookmark.m:
(+[WebBookmark bookmarkOfType:]):
made this handle WebBookmarkTypeProxy
2002-11-06 Darin Adler <darin@apple.com>
- fixed bug that affected BinHex-encoded files with no resource fork
* Downloads.subproj/WebBinHexDecoder.m:
(-[WebBinHexDecoder decodeData:dataForkData:resourceForkData:]):
Don't decode the resource fork unless done with the data fork.
* Downloads.subproj/WebDownloadHandler.m: (-[WebDownloadHandler receivedData:]):
Set the forks to nil before calling through.
2002-11-06 Darin Adler <darin@apple.com>
* Downloads.subproj/WebMacBinaryDecoder.m: (+[WebMacBinaryDecoder canDecodeHeaderData:]):
Fix == 129 check that was supposed to be <= 129.
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-11-06 Darin Adler <darin@apple.com>
* Downloads.subproj/WebBinHexDecoder.m: (-[WebBinHexDecoder decodeIntoBuffer:size:]):
Fix an off-by-one error handling repeat counts.
* WebKit.pbproj/project.pbxproj: Fix group name I accidentally mangled.
2002-11-06 Darin Adler <darin@apple.com>
- added a BinHex decoder and did a little work on the MacBinary decoder
I'm not supposed to be working on this, but I didn't feel like doing "real" work.
* Downloads.subproj/WebBinHexDecoder.h: Added.
* Downloads.subproj/WebBinHexDecoder.m: Added.
* WebKit.pbproj/project.pbxproj: Added WebBinHexDecoder.
* Downloads.subproj/WebDownloadDecoder.h: Added WEB_DOWNLOAD_DECODER_MINIMUM_HEADER_LENGTH.
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler closeFile]): Check to be sure we don't close the same file twice.
* Downloads.subproj/WebMacBinaryDecoder.h: Added _scriptCode.
* Downloads.subproj/WebMacBinaryDecoder.m:
(+[WebMacBinaryDecoder canDecodeHeaderData:]): Added check of MacBinary version field.
(-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Added MacBinary III
part that gets the script code.
(-[WebMacBinaryDecoder filename]): Use the script code.
2002-11-06 Maciej Stachowiak <mjs@apple.com>
Took URL field out of click policy - open in new window policy
will always open the request URL.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
(-[WebPolicyPrivate dealloc]):
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:andPath:]):
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2002-11-06 Chris Blumenberg <cblu@apple.com>
Support MacBinary I by checking that bytes 99-127 are 0. Also check byte 82 for all formats.
* Downloads.subproj/WebMacBinaryDecoder.m:
(+[WebMacBinaryDecoder canDecodeHeaderData:]):
2002-11-06 Ken Kocienda <kocienda@apple.com>
Call new WebHTTPResourceRequest method to set the amount of time
to cache a 404 response when trying to fetch a favicon.
This change helps to fix this bug:
Radar 3004422 (Loader should cache misses)
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
2002-11-05 Maciej Stachowiak <mjs@apple.com>
Reworked clickPolicy arguments to be closer to proposed version.
* WebKit.exp:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.m:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _actionInformationForNavigationType:event:]):
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
2002-11-05 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebTextRenderer.m: Made a slightly simpler and faster
version of the new "lose precision" CEIL_TO_INT macro.
2002-11-05 Richard Williamson <rjw@apple.com>
Fixed a couple of issues that Dave highlighted w/ his whitespace
fixes. CG sometimes introduces very small 'error' in metrics, specifically
we saw character widths of 20.0000019 that should have been 20. As a
work-around we loose precision beyond the 1000th place. Also, always
ceil spaces.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2002-11-05 Darin Adler <darin@apple.com>
- fixed 3084704 -- crash in HTMLTokenizer on page with JavaScript
HTMLDocument::Close inside a <script>
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
We need to stop loading here. Otherwise we might do loading after closeURL,
which could lead to a problem like the one above.
2002-11-05 Darin Adler <darin@apple.com>
- changed our MacBinary decoding to not pay any attention to the comment
Before we would "fail to decode" if the comment was truncated, now we just
don't worry about it.
* Downloads.subproj/WebMacBinaryDecoder.h: Remove _commentLength and _commentEnd.
* Downloads.subproj/WebMacBinaryDecoder.m:
(-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Remove code
to get _commentLength and code to compute _commentEnd.
(-[WebMacBinaryDecoder finishDecoding]): Check offset against the resource fork
end rather than the comment end to see if we got enough data.
2002-11-05 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff:
reverted generic URL icon back to the one that
looks like a document until we get something from
HI that SJ likes
2002-11-05 Chris Blumenberg <cblu@apple.com>
Fixed: 3074108 - Decode macbinary files during download
* Downloads.subproj/WebDownloadDecoder.h:
* Downloads.subproj/WebDownloadHandler.h:
* Downloads.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler initWithDataSource:]):
(-[WebDownloadHandler dealloc]):
(-[WebDownloadHandler decodeHeaderData:dataForkData:resourceForkData:]):
(-[WebDownloadHandler decodeData:dataForkData:resourceForkData:]):
(-[WebDownloadHandler closeFile]):
(-[WebDownloadHandler cleanUpAfterFailure]):
(-[WebDownloadHandler createFileIfNecessary]):
(-[WebDownloadHandler writeData:toFork:]):
(-[WebDownloadHandler writeDataForkData:resourceForkData:]):
(-[WebDownloadHandler dataIfDoneBufferingData:]):
(-[WebDownloadHandler receivedData:]):
(-[WebDownloadHandler finishDecoding]):
(-[WebDownloadHandler finishedLoading]):
(-[WebDownloadHandler cancel]):
* Downloads.subproj/WebMacBinaryDecoder.h:
* Downloads.subproj/WebMacBinaryDecoder.m:
(-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
(-[WebMacBinaryDecoder fileAttributes]):
(-[WebMacBinaryDecoder filename]):
* Misc.subproj/WebKitErrors.h: added new errors
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]): don't send response to download handler
(-[WebMainResourceClient handle:didReceiveData:]): watch for decoding errors
2002-11-05 Ken Kocienda <kocienda@apple.com>
Fix for this bug:
Radar 3092747 (javascript cookieEnabled property returns incorrect value)
Now, we return "true" for navigator.cookieEnabled when
"Only accept cookies from the same domain as the current page" option
is selected is user preferences.
* WebCoreSupport.subproj/WebCookieAdapter.m:
(-[WebCookieAdapter cookiesEnabled])
2002-11-05 John Sullivan <sullivan@apple.com>
- fixed 3091271 -- missing plug-in icon is on white
background, not transparent.
* Resources/nullplugin.tiff: Photoshopped the white away. It's
still ugly, but that's a separate bug (3091274)
2002-11-05 Maciej Stachowiak <mjs@apple.com>
- fixed 3083732 - SJ: window comes out blank on samsung site
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Don't start loading if the URL is exactly the same as the parent
URL. We may need a more stringent check, but this seems to match
the tolerance of other browsers OK.
2002-11-05 Maciej Stachowiak <mjs@apple.com>
Added request and frame to click policy callback.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:request:inFrame:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:request:]):
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
2002-11-04 Richard Williamson <rjw@apple.com>
Changes to support cursive letter forms. It works, but I've
disabled it for now. It's buggy and needs cleanup.
Arabic now renders correctly except for ligature substitution.
* Misc.subproj/WebUnicode.h:
* Misc.subproj/WebUnicode.m:
(_unicodeIsMark):
(getShape):
(prevChar):
(nextChar):
(prevLogicalCharJoins):
(nextLogicalCharJoins):
(glyphVariantLogical):
(shapedString):
* Misc.subproj/WebUnicodeTables.m:
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
* WebKitPrefix.h:
2002-11-04 Maciej Stachowiak <mjs@apple.com>
Changes to send NSEvents all the way through WebCore and then pass
them back out to WebKit, so that click policy can have a
WebResourceRequest added.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:reload:triggeringEvent:]):
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _continueAfterClickPolicyForEvent:]):
(-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseUp:]):
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
2002-11-04 Chris Blumenberg <cblu@apple.com>
Fixed - 3091658: REGRESSION: cmd-left for back doesn't work in plain-text viewer
We now pass text field key events to the next responder which would be WebView in this case.
* WebView.subproj/WebTextView.m:
(-[WebTextView keyDown:]):
(-[WebTextView keyUp:]):
2002-11-04 Darin Adler <darin@apple.com>
- fixed 3090257 -- "leak the world" using the Wallace and Gromit "console"
* Plugins.subproj/WebNetscapePluginStream.m: Update for changes to the base delegate.
(-[WebNetscapePluginStream start]): Use loadWithRequest:.
(-[WebNetscapePluginStream stop]): Call cancel instead of just canceling the handle
directly. This fixes the world leak.
(-[WebNetscapePluginStream cancel]): Do some of the work that was formerly in "stop".
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]): Call the "stop loading URL" whenever
we cancel I/O, so we don't leak the world.
(-[WebMainResourceClient handle:didReceiveResponse:]): Ditto.
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:response:size:]):
* WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient handleDidFinishLoading:]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _finishedLoadingResourceFromDataSource:]):
Fix a typo in the word "finished".
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Tweak.
(-[WebBaseResourceHandleDelegate cancel]): Tweak.
* Panels.subproj/WebStandardPanels.m:
(-[WebStandardPanels didStartLoadingURL:inWindow:]): Add assertions.
(-[WebStandardPanels didStopLoadingURL:inWindow:]): Ditto.
(-[WebStandardPanels _didStartLoadingURL:inController:]): Ditto.
(-[WebStandardPanels _didStopLoadingURL:inController:]): Ditto.
2002-11-04 Darin Adler <darin@apple.com>
* Downloads.subproj/WebMacBinaryDecoder.h: Removed many unneeded fields.
* Downloads.subproj/WebMacBinaryDecoder.m:
(+[WebMacBinaryDecoder canDecodeHeaderData:]): Added comments. Changed maximum filename
length to 63 as the format supports, rather than the 31 that's based on historical
HFS limitations. Fix endian dependency in CRC check.
(-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): Simplified this,
and removed the state machine and the accumulator. Also added some asserts. Fixed endian
dependency in the code to extract the header.
(-[WebMacBinaryDecoder finishDecoding]): New simpler check now that we don't have a
_streamComplete boolean.
(-[WebMacBinaryDecoder fileAttributes]): Rewrote to take advantage of the above changes,
and also to use kCFAbsoluteTimeIntervalSince1904 rather than parsing a date string.
* Downloads.subproj/crc16.h: Tweaks.
* Downloads.subproj/crc16.m: Tweaks.
2002-11-04 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]):
Replaced a useless call to stopAnimation with a couple of asserts.
2002-11-04 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff:
new "generic URL" icon from HI -- this one looks like
a red ribbon (!)
2002-11-03 Darin Adler <darin@apple.com>
* Plugins.subproj/WebPluginError.h:
* Plugins.subproj/WebPluginError.m:
Not __MyCompanyName__, but rather Apple Computer.
2002-11-03 Darin Adler <darin@apple.com>
* Plugins.subproj/WebPlugin.h: Fix comment.
* Plugins.subproj/WebPluginError.m: (-[WebPluginErrorPrivate dealloc]):
Fix leak by calling [super dealloc].
* WebView.subproj/WebFramePrivate.m: (-[WebFramePrivate dealloc]): Remove the
timer invalidate since, as Trey pointed out, it's pointless to invalidate a
timer in dealloc if it's retaining this object while valid.
2002-11-03 Chris Blumenberg <cblu@apple.com>
- Added MacBinary decoding code. Not yet used.
* Downloads.subproj/WebMacBinaryDecoder.h: Added.
* Downloads.subproj/WebMacBinaryDecoder.m: Added.
(+[WebMacBinaryDecoder canDecodeHeaderData:]):
(-[WebMacBinaryDecoder init]):
(-[WebMacBinaryDecoder dealloc]):
(-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]):
(-[WebMacBinaryDecoder finishDecoding]):
(-[WebMacBinaryDecoder fileAttributes]):
* Downloads.subproj/crc16.h: Added.
* Downloads.subproj/crc16.m: Added.
(CRC16):
* Plugins.subproj/WebPluginPackage.m:
(-[WebPluginPackage isLoaded]):
* WebKit.pbproj/project.pbxproj:
2002-11-03 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Update for recent
changes both to the code here and to the extract script.
2002-11-03 Darin Adler <darin@apple.com>
- fixed 3091300 -- "prelighting" on local page is still slow, despite recent bug fix
Turns out all updating would be slow if any resources on the page failed to load.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
Call the new reportError instead of cancel.
(-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
2002-11-02 Darin Adler <darin@apple.com>
* Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
Do the previous fix one better by using _web_hostWithPort.
2002-11-02 Darin Adler <darin@apple.com>
- fixed bug where the address of an NSNumber object would be used for the port number
* Panels.subproj/WebAuthenticationPanel.m: (-[WebAuthenticationPanel setUpForRequest:]):
Call intValue on the object returned from [NSURL port].
2002-11-01 Darin Adler <darin@apple.com>
* Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView sendEvent:]):
Fixed uninitialized variable problem.
2002-11-01 Darin Adler <darin@apple.com>
- fixed 3090239 -- crash on window close
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]): Nil out the bridge and
release it so we don't close the URL twice.
- fixed 3058598 -- animated gif animates repeatedly in Alex, but only once in other browsers
* WebCoreSupport.subproj/WebImageRenderer.h: Added fields used by bug workaround.
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer blockHasGIFExtensionSignature:length:]): Helper method for bug workaround.
(-[WebImageRenderer checkDataForGIFExtensionSignature:]): Checks incoming data for the GIF
extension signatures.
(-[WebImageRenderer initWithData:]): Override to call checkDataForGIFExtensionSignature.
(-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): Call checkDataForGIFExtensionSignature.
(-[WebImageRenderer repetitionCount]): Return 1 if we were going to return 0, but we didn't see a
GIF extension signature. This workaround can be removed once we require a system new enough to have
the bug fix for bug 3090341.
(-[WebImageRenderer nextFrame:]): Stop on last frame, don't wrap around to first.
* WebCoreSupport.subproj/WebImageRendererFactory.h: Update for changes to WebCore.
* WebCoreSupport.subproj/WebImageRendererFactory.m: Tweaks.
* WebView.subproj/WebImageRepresentation.m: Update imports.
* WebView.subproj/WebImageView.m: Update imports.
2002-11-01 Richard Williamson <rjw@apple.com>
Implemented rendering of diacriticals.
* Misc.subproj/WebUnicode.h:
* Misc.subproj/WebUnicode.m:
(_unicodeDigitValue):
(_unicodeCategory):
(_unicodeDirection):
(_unicodeJoining):
(_unicodeDecompositionTag):
(_unicodeMirrored):
(_unicodeCombiningClass):
(_unicodeLower):
(_unicodeUpper):
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
(-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
2002-11-01 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-11-01 Chris Blumenberg <cblu@apple.com>
Check that the plug-in is loaded before calling it.
* Plugins.subproj/WebBaseNetscapePluginStream.h:
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream dealloc]):
(-[WebBaseNetscapePluginStream setPluginPointer:]):
(-[WebBaseNetscapePluginStream setResponse:]):
(-[WebBaseNetscapePluginStream receivedData:]):
(-[WebBaseNetscapePluginStream destroyStreamWithReason:]):
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
* Plugins.subproj/WebBasePluginPackage.h:
* Plugins.subproj/WebBasePluginPackage.m:
(-[WebBasePluginPackage isLoaded]):
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]):
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage isLoaded]):
* Plugins.subproj/WebNetscapePluginRepresentation.m:
(-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
2002-11-01 Chris Blumenberg <cblu@apple.com>
- Moved plug-in error handling to WebResourceLoadDelegate
- Report plug-in load failure, java load failure, and plug-in not found errors.
- Added WebPluginError, subclass of WebError.
- Attempted fix: 3090675 - Standalone WMP (Window Media Player) content crashes Alexander
* English.lproj/Localizable.strings:
* Misc.subproj/WebKitErrors.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView sendEvent:]): don't send event to null function
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]): report plug-in load failure
* Plugins.subproj/WebNullPluginView.h:
* Plugins.subproj/WebNullPluginView.m: take a WebPluginError
(-[WebNullPluginView dealloc]):
(-[WebNullPluginView viewDidMoveToWindow]):
* Plugins.subproj/WebPluginError.h: Added.
* Plugins.subproj/WebPluginError.m: Added.
(-[WebPluginErrorPrivate dealloc]):
(-[WebPluginError dealloc]):
(-[WebPluginError pluginPageURL]):
(-[WebPluginError pluginName]):
(-[WebPluginError MIMEType]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): report plug-in load failure
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): report plug-in load failure
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.m:
(-[WebResourceLoadDelegate pluginFailedWithError:dataSource:]): added, does nothing
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebResourceLoadDelegate.h:
* WebView.subproj/WebView.m:
(+[WebView initialize]): added new error strings
2002-11-01 John Sullivan <sullivan@apple.com>
- some weaning of WebBookmark API from WebBookmarkGroup
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark dealloc]):
set group to nil instead of asserting that it's non-nil
* Bookmarks.subproj/WebBookmarkGroup.h:
removed obsolete ivar _bookmarksByID
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup initWithFile:]):
removed obsolete ivar _bookmarksByID
(-[WebBookmarkGroup dealloc]):
removed obsolete ivar _bookmarksByID
(-[WebBookmarkGroup removeBookmark:]):
removed this unnecessary method; callers need to use
[[bookmark parent] removeChild:bookmark] instead
2002-11-01 Trey Matteson <trey@apple.com>
Moved involved code for loading URLs from WebBridge up to WebFrame, with a little
consolidation along the way. I need to get all this stuff in one place in prep
for doing back-forward properly with frames. There should be no change in
functionality as a result of these changes.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:reload:]):
(-[WebBridge postWithURL:data:contentType:]):
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Much of the guts of these is moved to WebFramePrivate.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setIsClientRedirect:]):
(-[WebDataSource _isClientRedirect]):
Keep state of whether we're processing a redirect in DataSource. I had previously
to do this with a loadType, but that failed because cliRedir is orthogonal.
* WebView.subproj/WebFramePrivate.h:
WebFrameLoadTypeClientRedirect is gone.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate init]):
Initialize loadType explicitly.
(-[WebFrame _transitionToCommitted]):
Test [dataSource _isClientRedirect] instead of looking at loadType.
(-[WebFrame _isLoadComplete]):
Nuke WebFrameLoadTypeClientRedirect
(-[WebFrame _goToItem:withFrameLoadType:]):
Nuke WebFrameLoadTypeClientRedirect.
(-[WebFrame _loadRequest:]):
Helper method moved from WebBridge.
(-[WebFrame _loadURL:loadType:clientRedirect:]):
Core impl moved up from WebBridge.
(-[WebFrame _postWithURL:data:contentType:]):
Core impl moved up from WebBridge.
2002-11-01 Darin Adler <darin@apple.com>
- implemented loop counts
* WebCoreSupport.subproj/WebImageRenderer.h: Added repetitionsComplete field.
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer repetitionCount]): Get NSImageLoopCount.
(-[WebImageRenderer nextFrame:]): Check repetitionCount and stop once we hit it.
2002-10-31 Darin Adler <darin@apple.com>
* WebView.subproj/WebFrame.m: (-[WebFrame setController:]): Add an assert,
hoping to catch a reported bug earlier or disprove one theory.
2002-10-31 Trey Matteson <trey@apple.com>
Added API to support 3072505 - SnapBack for user-entered page address
Refixed 3041616 - Extra page added in back button history
Previous fix was stepped on by a later checkin. Re-established that fix, then
went on to make sure we have the final URL and title in the BF item in the
case of a client redirect. Also handles redirects that happen within frames.
Fixed 3078560 - div added to "back" list
* History.subproj/WebBackForwardList.h:
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList containsEntry:]):
Added new API for 3072505.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]):
(-[WebBridge reportClientRedirectCancelled]):
(-[WebBridge loadURL:reload:]):
Added logging. Renamed flag. Establish the right loadtype and set BF items
from the old dataSource onto the new dataSource in the case of a client redirect.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setRequest:]):
Add logging.
(-[WebDataSource _addBackForwardItem:]):
(-[WebDataSource _addBackForwardItems:]):
(-[WebDataSource _backForwardItems]):
New setters/getters to support setting up the new dataSource of a client redirect.
* WebView.subproj/WebFramePrivate.h:
New loadType WebFrameLoadTypeClientRedirect.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
Update the URL in the BF list in the client redirect case.
(-[WebFrame _isLoadComplete]):
NOP case for WebFrameLoadTypeClientRedirect
(-[WebFrame _goToItem:withFrameLoadType:]):
ASSERT_NOT_REACHED case for WebFrameLoadTypeClientRedirect
2002-10-31 Richard Williamson <rjw@apple.com>
Corrected extern definitions of lookup tables.
* Misc.subproj/WebUnicode.h:
* Misc.subproj/WebUnicode.m:
(_unicodeDirection):
* WebCoreSupport.subproj/WebTextRenderer.m:
(+[WebTextRenderer initialize]):
=== Alexander-30 ===
2002-10-30 Richard Williamson <rjw@apple.com>
More work on bidi and contextual forms.
Table lookup code for unicode characters attributes.
* Misc.subproj/WebUnicode.h: Added.
* Misc.subproj/WebUnicode.m: Added.
(_unicodeDigitValue):
(_unicodeCategory):
(_unicodeDirection):
(_unicodeJoining):
(_unicodeDecompositionTag):
(_unicodeMirrored):
(_unicodeMirroredChar):
(_unicodeCombiningClass):
(_unicodeLower):
(_unicodeUpper):
(WebKitInitializeUnicode):
* Misc.subproj/WebUnicodeTables.m: Added.
* WebKit.pbproj/project.pbxproj:
Additional logging parameter.
* Misc.subproj/WebKitLogging.h:
* Misc.subproj/WebKitLogging.m:
2002-10-30 Maciej Stachowiak <mjs@apple.com>
Pass WebResourceRequest rather than just NSURL to URL policy
delegate method.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
(-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowRequest:]):
2002-10-30 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
2002-10-30 Chris Blumenberg <cblu@apple.com>
Fixed: 3088122 - Assertion failure/crash closing window with QuickTime streaming in
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setMainDocumentError:]): call receivedError on the representation.
2002-10-30 Darin Adler <darin@apple.com>
- fixed memory leaks in plugin package creation code
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage initWithPath:]): Rearrange this code, and make sure
that it does a [self release] if it's going to return nil instead of self.
(-[WebNetscapePluginPackage unload]): Set bundle to 0 when we release it.
(-[WebNetscapePluginPackage dealloc]): Release the bundle if it's not 0.
* Plugins.subproj/WebPluginPackage.m:
(-[WebPluginPackage initWithPath:]): Rearrange this code, and make sure
that it does a [self release] if it's going to return nil instead of self.
2002-10-30 Darin Adler <darin@apple.com>
- fixed 3086564 -- REGRESSION: meta-refresh to the same page doesn't refresh
The key is to respect the new reload: parameter from the bridge.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:reload:]): Don't ever treat a reload as a redirect.
Set the cache policy to WebRequestCachePolicyLoadFromOrigin if it's a reload.
- fixed 3087214 -- REGRESSION: <WebKit/WebKit.h> contains #import of non-existent header
* Misc.subproj/WebKit.h: Removed import of WebControllerSets.h, which is private.
2002-10-30 Maciej Stachowiak <mjs@apple.com>
Another step towards the policy API change - add request argument
to file URL policy and remove isDirectory argument.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowRequest:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
2002-10-29 Maciej Stachowiak <mjs@apple.com>
First step towards policy API change. Pass request instead of URL
to content policy delegate method.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-10-29 Maciej Stachowiak <mjs@apple.com>
- fixed 3087548 - REGRESSION: two windows open for netflix confirmation
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _findFrameInThisWindowNamed:]): Added this function back,
and added check for top-level frame name.
(-[WebController _findFrameNamed:]): Use
_findFrameInThisWindowNamed: to make sure top-level frame names
get checked.
2002-10-29 Chris Blumenberg <cblu@apple.com>
Created Downloads.subproj to hold the to-be-implemented download decoders.
* Downloads.subproj/WebDownloadDecoder.h: Added.
* Downloads.subproj/WebDownloadHandler.h: Added.
* Downloads.subproj/WebDownloadHandler.m: Added.
(-[WebDownloadHandler initWithDataSource:]):
(-[WebDownloadHandler dealloc]):
(-[WebDownloadHandler errorWithCode:]):
(-[WebDownloadHandler receivedResponse:]):
(-[WebDownloadHandler receivedData:]):
(-[WebDownloadHandler finishedLoading]):
(-[WebDownloadHandler cancel]):
* Misc.subproj/WebDownloadHandler.h: Removed.
* Misc.subproj/WebDownloadHandler.m: Removed.
* WebKit.pbproj/project.pbxproj:
2002-10-28 Darin Adler <darin@apple.com>
- fixed crash I just introduced
* Plugins.subproj/WebPluginDatabase.m: (-[WebPluginDatabase init]):
Remove the release call here. When I added the autorelease, I didn't realize that
the caller was doing a release.
2002-10-28 Trey Matteson <trey@apple.com>
Fixed 3041616 - Extra page added in back button history
Client-side redirects would always put an extra item in the backforward list.
According to Darin this is a regression all the way back from functionality moving
from WebBrowser to WebKit.
* WebCoreSupport.subproj/WebBridge.h:
Added state to know if we're doing an "internal" type of load
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]):
Set internalLoad bit if delay==0
(-[WebBridge reportClientRedirectCancelled]):
Clear internalLoad
(-[WebBridge loadURL:]):
Set frame's loadType if doing an internal load (similar to what we do when loading
child frames)
2002-10-28 Darin Adler <darin@apple.com>
- fixed storage leak of WebNetscapePluginPackage objects
* Plugins.subproj/WebBasePluginPackage.m:
(+[WebBasePluginPackage pluginWithPath:]): Add missing autorelease.
* Plugins.subproj/WebBasePluginPackage.h:
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
* Plugins.subproj/WebPluginPackage.h:
* Plugins.subproj/WebPluginPackage.m:
Not __MyCompanyName__, but rather Apple Computer.
2002-10-28 Darin Adler <darin@apple.com>
- fixed bug that caused us to leak all WebResourceHandles used for subresources
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient dealloc]): Remove bogus "currentURL == nil" assert.
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
Use the new loadWithRequest: call instead of making handle and doing loadWithDelegate:.
This is where the leak was, because no one ever released the handle, but releasing it
right away would be too soon.
* WebView.subproj/WebBaseResourceHandleDelegate.h: Added defersCallbacks field,
loadWithRequest: method, and setDefersCallbacks: method. Removed handle method.
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate loadWithRequest:]): New method. Sets up the handle,
set the defersCallbacks state on it, and calls loadWithDelegate:.
(-[WebBaseResourceHandleDelegate setDefersCallbacks:]): Stores defersCallbacks state,
and also sets it on the handle, if any.
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]): Remove code to set up
the handle, since we now do that at loadWithRequest: time.
* WebView.subproj/WebDataSourcePrivate.h: Remove mainHandle field.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Don't release mainHandle.
(-[WebDataSource _setPrimaryLoadComplete:]): Ditto.
(-[WebDataSource _startLoading]): Use loadWithRequest: on the client, no need to deal
with the handle directly at all.
(-[WebDataSource _addSubresourceClient:]): Call setDefersCallbacks: on the client.
(-[WebDataSource _defersCallbacksChanged]): Ditto.
* WebView.subproj/WebControllerPrivate.m: Remove unneeded include.
* WebView.subproj/WebMainResourceClient.m: Ditto.
2002-10-28 Chris Blumenberg <cblu@apple.com>
Fixed: 3056726 - View Source window always displays the source in current system encoding
Fixed: 3019352 - Text encoding is not handled when viewing plain text
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource stringWithData:]): added, creates a string using the specified encoding.
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation documentSource]): uses the bridge specified encoding when creating the string
* WebView.subproj/WebTextView.h:
* WebView.subproj/WebTextView.m:
(-[WebTextView dataSourceUpdated:]): use stringWithData:
(-[WebTextView supportsTextEncoding]): Yup
2002-10-28 Richard Williamson <rjw@apple.com>
Fixed crasher.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
2002-10-28 John Sullivan <sullivan@apple.com>
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark contentMatches:]): new method, returns YES if
two bookmarks are the same, ignoring group and parent.
2002-10-28 Trey Matteson <trey@apple.com>
Finished 2998200 - access to most-recent in submenu of back & forward buttons
* WebView.subproj/WebDataSourcePrivate.h:
The BF items we are going to and from were moved here from
WebFrame because of timing problems among multiple data sources
when using the BF buttons during a load.
In addition, the datasource has a list of relevant BF items for
which it keeps their titles up to date.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
Free new state.
(-[WebDataSource _setTitle:]):
Update titles of BF items.
(-[WebDataSource _provisionalBackForwardItem]):
(-[WebDataSource _setProvisionalBackForwardItem:]):
(-[WebDataSource _previousBackForwardItem]):
(-[WebDataSource _setPreviousBackForwardItem:]):
(-[WebDataSource _addBackForwardItem:]):
Maintain new state.
(-[WebDataSource _commitIfReady]):
Free up previous and provisional BF items after commit.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:]):
Add the new BF item to the datasource.
(-[WebBridge saveDocumentState:]):
Use the right BF item to save the doc state.
* WebView.subproj/WebFramePrivate.h:
Previous and provisional BF are moved to datasource.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
Use provisional BF from datasource to set position in BF list.
Add new BF item to datasource.
(-[WebFrame _isLoadComplete]):
(-[WebFrame _checkLoadComplete]):
Comments, whitespace.
(-[WebFrame _goToItem:withFrameLoadType:]):
Set item we will use to saveDocState at commit time.
2002-10-27 Darin Adler <darin@apple.com>
- WebKit part of filename width fix
* WebCoreSupport.subproj/WebFileButton.m:
(-[WebFileButton drawRect:]): Compute left position by starting at
the right side of the button frame rather than by starting at the right
side of the overall bounds. Removes dependency on fixed-width filename area.
(-[WebFileButton updateLabel]): Added. Computes ellipsized filename.
(-[WebFileButton setFilename:]): Use updateLabel instead of code in line here.
(-[WebFileButton setFrameSize:]): Call updateLabel.
(-[WebFileButton bestVisualFrameSizeForCharacterCount:]): Compute a width based
on the count passed in rather than a hardcoded 200-pixel constant.
2002-10-27 Darin Adler <darin@apple.com>
- fixed 3037369 -- Status text not cleared after start of drag from page
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
Find the highest-level enclosing WebHTMLView, and call _updateMouseoverWithEvent:
with the mouseUp event after the drag is done.
(-[WebHTMLView mouseMovedNotification:]): Just call _updateMouseoverWithEvent:,
the code from here was moved into there.
* WebView.subproj/WebHTMLViewPrivate.h: Declare _updateMouseoverWithEvent.
* WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
Moved all the code from mouseMovedNotification: in here so it could be used twice.
2002-10-27 Don Melton <gramps@apple.com>
* WebView.subproj/WebController.m:
(-[WebController userAgentForURL:]):
Changed default user agent to Mozilla 1.1.
2002-10-27 Darin Adler <darin@apple.com>
* Bookmarks.subproj/WebBookmarkProxy.m: (-[WebBookmarkProxy dealloc]):
Added, so we don't leak the title.
* Bookmarks.subproj/WebBookmarkGroup.m: (-[WebBookmarkGroup removeBookmark:]):
* Bookmarks.subproj/WebBookmarkList.m: (-[WebBookmarkList removeChild:]):
Added retain/release pairs so we don't use an object after it's deallocated.
In practice this doesn't happen the way these are used by Alex since they are
in an array, but they have windows of vulnerability depending on exactly how
they are used.
2002-10-26 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory inputElementAltText]): Added.
(-[WebViewFactory resetButtonDefaultLabel]): Added.
(-[WebViewFactory searchableIndexIntroduction]): Added.
(-[WebViewFactory submitButtonDefaultLabel]): Added.
(-[WebViewFactory defaultLanguageCode]): Added.
* English.lproj/Localizable.strings: Update.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-10-25 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory runJavaScriptAlertPanelWithMessage:]): Added.
(-[WebViewFactory runJavaScriptConfirmPanelWithMessage:]): Added.
* English.lproj/Localizable.strings: Update.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-10-25 Richard Williamson <rjw@apple.com>
Implemented support for bidi text layout.
* WebCoreSupport.subproj/WebTextRenderer.m:
(_drawGlyphs):
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:]):
2002-10-25 Chris Blumenberg <cblu@apple.com>
Made frameNamed private in WebController and renamed it to _findFrameNamed. Got rid of _frameInThisWindowNamed in WebController because it isn't needed anymore.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController _goToItem:withFrameLoadType:]): call _findFrameNamed
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _findFrameNamed:]): renamed, made private, got rid of call to _frameInThisWindowNamed as it is not needed
* WebView.subproj/WebFrame.m:
(-[WebFrame findFrameNamed:]): call [WebController _findFrameNamed:]
2002-10-25 Chris Blumenberg <cblu@apple.com>
- Fix case where we would name a new window _blank
- If a data source can't be created for a plug-in request, don't create the frame or open a window.
- cleaned up plug-in stream notifications
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView initWithFrame:]): create streamNotifications dict
(-[WebBaseNetscapePluginView dealloc]): release streamNotifications dict
(-[WebBaseNetscapePluginView frameStateChanged:]): cleaned up
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): create data source before frame
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController showURL:inFrame:]): create data source before frame
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _setTopLevelFrameName:]): don't allow _blank frames
* WebView.subproj/WebFrame.m:
(-[WebFrame findOrCreateFramedNamed:]): no need to check for _blank
2002-10-25 Darin Adler <darin@apple.com>
Tighten up the code that observes mouse moved events.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView initWithFrame:]): Don't set up observers here.
(-[WebHTMLView addMouseMovedObserver]): Added some assertions.
(-[WebHTMLView viewWillMoveToWindow:]): Stop observing the "become main" and "resign main"
notifications here.
(-[WebHTMLView viewDidMoveToWindow]): Start observing them here.
(-[WebHTMLView windowDidBecomeMain:]): Assert that the notification is for this window,
instead of checking with if.
(-[WebHTMLView windowDidResignMain:]): Assert that the notification is for this window.
2002-10-25 Chris Blumenberg <cblu@apple.com>
Cleaned up the frame searching shenanigans. Things are much cleaner and clearer now.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call findOrCreateFramedNamed
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController showURL:inFrame:]): call findOrCreateFramedNamed
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge childFrames]): moved
(-[WebBridge mainFrame]): moved
(-[WebBridge findOrCreateFramedNamed:]): call findOrCreateFramedNamed on the frame
(-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call _pluginController
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _frameInThisWindowNamed:]): call _descendantFrameNamed
* WebView.subproj/WebFrame.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame findFrameNamed:]): was frameNamed. First checks special-case frame names, descendant frames, then the whole controller, then other controllers.
(-[WebFrame findOrCreateFramedNamed:]): calls findFrameNamed, opens new window if necessary
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _descendantFrameNamed:]): searches children, children's children etc.
(-[WebFrame _pluginController]): this method needed an "_"
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView addSubview:]): call _pluginController
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]): no need to special case for "_blank" since findFrameNamed will return nil for that name
2002-10-25 Trey Matteson <trey@apple.com>
2919039 - Implement limit on back/forward history list
2998200 - access to most-recent in submenu of back & forward buttons
3022566 - need WebKit API for accessing and visiting back/forward list items
3084051 - forward button incorrectly enabled after going forward all the way
Remaining issues at this point are getting the title of the pages
into the menu items (instead of the URL), and saving document
state properly when you jump around in the list. Solutions are
known and coming soon.
* History.subproj/WebBackForwardList.h:
Added doc comments to API. Made ivars private. Replaced index-
based API with item-based API. Added a sizelimit to the overall
list. Tweaked API to get back and forward lists.
* History.subproj/WebBackForwardList.m:
Straightforward impl of the above, with the note that I dumped
WebHistoryList from the API and impl in favor of an NSArray,
which is efficient for this sort of use (queue, stack).
(-[WebBackForwardList init]):
(-[WebBackForwardList dealloc]):
(-[WebBackForwardList goBack]):
(-[WebBackForwardList goForward]):
(-[WebBackForwardList goToEntry:]):
(-[WebBackForwardList backEntry]):
(-[WebBackForwardList forwardEntry]):
(-[WebBackForwardList maximumSize]):
(-[WebBackForwardList setMaximumSize:]):
(-[WebBackForwardList description]):
* History.subproj/WebHistoryList.h: Removed.
Nuked from API, per above.
* History.subproj/WebHistoryList.m: Removed.
* Misc.subproj/WebKit.h:
WebHistoryList gone from API.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:]):
Use if/else instead of buried "return;", so next person doesn;t
make the same mis-read I did.
(-[WebBridge saveDocumentState:]):
Site of future work.
* WebKit.pbproj/project.pbxproj:
Nuked WebHistoryList.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController goBackOrForwardToItem:]):
New method to support random access nav in backforward list.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setTitle:]):
Site of future work (fixing title in items)
* WebView.subproj/WebFramePrivate.h:
WebFrameLoadTypeIndexedBack/WebFrameLoadTypeIndexedForward are
collapsed into WebFrameLoadTypeIndexedBackForward. Vestigial
WebFrameLoadTypeIntermediateBack is nuked.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate setBackForwardItem:]):
(-[WebFrame _setBackForwardItem:]):
(-[WebFrame _backForwardItem]):
Must remember the BF item we're going to so we can update the
BF list on commit.
(-[WebFrame _transitionToCommitted]):
Update the BF list on commit.
(-[WebFrame _isLoadComplete]):
(-[WebFrame _goToItem:withFrameLoadType:]):
Update BF list on within-page nav.
Remember BF item we are going to for later update on commit.
2002-10-25 Chris Blumenberg <cblu@apple.com>
Minor non-mentionable clean-up.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
2002-10-25 Chris Blumenberg <cblu@apple.com>
Cleaned up the plug-in API headers so they can be sent to other groups.
* Plugins.subproj/WebPlugin.h:
* Plugins.subproj/WebPluginContainer.h:
* Plugins.subproj/WebPluginViewFactory.h:
2002-10-24 Richard Williamson <rjw@apple.com>
Fixed many font substitution related bugs, at least including:
3006966, 3026675, 3071106, and more... (each of these bugs
has a list of related bugs).
Needs little more cleanup to correctly deal with non base characters.
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:]):
(-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:]):
Against Darin's better judgement prevent extra layout when not in live resize. If
this introduces any regressions I owe darin a good bottle of wine.
* WebView.subproj/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView updateScrollers]):
2002-10-24 Chris Blumenberg <cblu@apple.com>
New Java plug-in works! Much faster to load and no spinny cursor! Unfortunately, it very unstable.
* Plugins.subproj/WebPluginController.m: cleaned-up the logging messages.
(-[WebPluginController addPluginView:]):
(-[WebPluginController didAddPluginView:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController stopAllPlugins]):
(-[WebPluginController destroyAllPlugins]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): make height and width an attribute.
2002-10-24 Chris Blumenberg <cblu@apple.com>
Some clean-up and bug fixes for new plug-in support.
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController initWithWebFrame:]): need a colon after windowWillClose
(-[WebPluginController addPluginView:]): added logging
(-[WebPluginController didAddPluginView:]): added logging
(-[WebPluginController startAllPlugins]): added logging
(-[WebPluginController stopAllPlugins]): added logging
(-[WebPluginController destroyAllPlugins]): added logging
* Plugins.subproj/WebPluginPackage.m:
(-[WebPluginPackage getMIMEInformation]): use correct dict key for getting MIME descriptions
* WebCoreSupport.subproj/WebBridge.m: no more didAddSubview
* WebView.subproj/WebFramePrivate.h: no more didAddSubview
* WebView.subproj/WebFramePrivate.m: no more didAddSubview
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView addSubview:]): call didAddPluginView on WebPluginController
2002-10-24 John Sullivan <sullivan@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:response:size:]):
added ASSERT(response != nil), leftover from debugging
session on Tuesday, seems worth leaving in.
2002-10-24 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-10-24 Chris Blumenberg <cblu@apple.com>
Changed some method names in WebPluginController.
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController didAddPluginView:]):
(-[WebPluginController startAllPlugins]):
(-[WebPluginController stopAllPlugins]):
(-[WebPluginController destroyAllPlugins]):
(-[WebPluginController windowWillClose:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _didAddSubview:]):
=== Alexander-29 ===
2002-10-24 Richard Williamson <rjw@apple.com>
Don't leak request.
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
2002-10-24 Richard Williamson <rjw@apple.com>
Always copy request, we can't count on it being immutable.
This was the cause of the ASSERT from last night's checkin.
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
Only send serverRedirectedForDataSource: if URL changed.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setRequest:]):
2002-10-24 Chris Blumenberg <cblu@apple.com>
- Use "MIMEType" instead of "serviceType".
* Plugins.subproj/WebBasePluginPackage.h:
* Plugins.subproj/WebBasePluginPackage.m:
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage filename]):
(-[WebBasePluginPackage setPath:]):
* Plugins.subproj/WebNetscapePluginEmbeddedView.h:
* Plugins.subproj/WebNetscapePluginEmbeddedView.m:
(-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributes:]):
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage getMIMEInformation]): changed name.
(-[WebNetscapePluginPackage initWithPath:]):
* Plugins.subproj/WebNullPluginView.h:
* Plugins.subproj/WebNullPluginView.m:
(-[WebNullPluginView initWithFrame:MIMEType:attributes:]):
(-[WebNullPluginView dealloc]):
(-[WebNullPluginView viewDidMoveToWindow]): send missing plug-ins notification here
* Plugins.subproj/WebPluginPackage.m:
(-[WebPluginPackage getMIMEInformation]): new, gets MIME info from plist
(-[WebPluginPackage initWithPath:]):
(-[WebPluginPackage dealloc]):
(-[WebPluginPackage viewFactory]):
(-[WebPluginPackage load]):
(-[WebPluginPackage unload]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
2002-10-24 Richard Williamson <rjw@apple.com>
Flag error instead of ASSERTing as a result of fix to 3083013.
Not clear why this condition occurs, but better than ASSERTing
for Alex 29.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setRequest:]):
2002-10-24 Darin Adler <darin@apple.com>
- fixed a crash I ran into in the new delegate code
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate _releaseResources]): Retain self across this
deallocation to avoid reentering and being deallocated midstream. This happens
because the handle holds the only reference to us, and we may be releasing the
last reference to it.
(-[WebBaseResourceHandleDelegate dealloc]): Add call to [super dealloc].
* Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage dealloc]):
Add call to [super dealloc].
* WebView.subproj/WebMainResourceClient.m: Tweak.
2002-10-23 Darin Adler <darin@apple.com>
- fixed 3083013 -- REGRESSION: Cookie refused at http://directory/ even on reload
Restore a bit of the cruft.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
We need to change the request on the data source when a redirect happens,
because the data source goes on to ultimately communicate this to WebCore.
Restored the code that did that, with some changes to fit into the new regime.
2002-10-23 Richard Williamson <rjw@apple.com>
Cleaned up months of accumulated cruft.
Added base class to the three WebResourceHandleDelegate implementors.
Removed superfluous handle references to controller callbacks.
More can still be done.
All in the name of fixing 3076050.
* Misc.subproj/WebKitErrors.h:
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream setResponse:]):
* Plugins.subproj/WebNetscapePluginRepresentation.m:
(-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
(-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
(-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
* Plugins.subproj/WebNetscapePluginStream.h:
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
(-[WebNetscapePluginStream dealloc]):
(-[WebNetscapePluginStream start]):
(-[WebNetscapePluginStream stop]):
(-[WebNetscapePluginStream handle:willSendRequest:]):
(-[WebNetscapePluginStream handle:didReceiveResponse:]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportBadURL:]):
* WebCoreSupport.subproj/WebSubresourceClient.h:
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient initWithLoader:dataSource:]):
(-[WebSubresourceClient dealloc]):
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
(-[WebSubresourceClient receivedError:]):
(-[WebSubresourceClient handle:willSendRequest:]):
(-[WebSubresourceClient handle:didReceiveResponse:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
(-[WebSubresourceClient handle:didFailLoadingWithError:]):
(-[WebSubresourceClient cancel]):
* WebView.subproj/WebBaseResourceHandleDelegate.h:
* WebView.subproj/WebBaseResourceHandleDelegate.m:
(-[WebBaseResourceHandleDelegate init]):
(-[WebBaseResourceHandleDelegate _releaseResources]):
(-[WebBaseResourceHandleDelegate dealloc]):
(-[WebBaseResourceHandleDelegate setDataSource:]):
(-[WebBaseResourceHandleDelegate dataSource]):
(-[WebBaseResourceHandleDelegate resourceLoadDelegate]):
(-[WebBaseResourceHandleDelegate downloadDelegate]):
(-[WebBaseResourceHandleDelegate setIsDownload:]):
(-[WebBaseResourceHandleDelegate isDownload]):
(-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
(-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]):
(-[WebBaseResourceHandleDelegate handle:didReceiveData:]):
(-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
(-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
(-[WebBaseResourceHandleDelegate cancel]):
(-[WebBaseResourceHandleDelegate handle]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _mainReceivedBytesSoFar:fromDataSource:complete:]):
(-[WebController _receivedError:fromDataSource:]):
(-[WebController _mainReceivedError:fromDataSource:]):
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _startLoading]):
(-[WebDataSource _stopLoading]):
(-[WebDataSource _clearErrors]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _isLoadComplete]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]):
(-[WebMainResourceClient dealloc]):
(-[WebMainResourceClient receivedError:]):
(-[WebMainResourceClient cancel]):
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient _notifyDelegatesOfInterruptionByPolicyChange]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
(-[WebMainResourceClient handle:didFailLoadingWithError:]):
* WebView.subproj/WebResourceLoadDelegate.h:
2002-10-23 Chris Blumenberg <cblu@apple.com>
Support for new plug-in API. This is about as much as I can do without the new java plug-in and java root.
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController initWithWebFrame:]): observe window close changes
(-[WebPluginController dealloc]): remove observer, assert if we're still tracking plug-ins
(-[WebPluginController didAddSubview:]): start the plug-in
(-[WebPluginController stopAllPlugins]): stop and destroy all plug-ins.
(-[WebPluginController windowWillClose:]): call stopAllPlugins if the window in question is closing
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): call stopAllPlugins on WebPluginController
2002-10-23 Chris Blumenberg <cblu@apple.com>
Changed the plug-in package API to return key enumerators instead dictionaries.
* Plugins.subproj/WebBasePluginPackage.h:
* Plugins.subproj/WebBasePluginPackage.m:
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage unload]):
(-[WebBasePluginPackage dealloc]):
(-[WebBasePluginPackage extensionEnumerator]):
(-[WebBasePluginPackage MIMETypeEnumerator]):
(-[WebBasePluginPackage descriptionForMIMEType:]):
(-[WebBasePluginPackage MIMETypeForExtension:]):
(-[WebBasePluginPackage extensionsForMIMEType:]):
(-[WebBasePluginPackage setName:]):
(-[WebBasePluginPackage setPath:]):
(-[WebBasePluginPackage setFilename:]):
(-[WebBasePluginPackage setPluginDescription:]):
(-[WebBasePluginPackage setMIMEToDescriptionDictionary:]):
(-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
* Plugins.subproj/WebNetscapePluginPackage.h:
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage getPluginInfo]):
(-[WebNetscapePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
(-[WebNetscapePluginPackage initWithPath:]):
(-[WebNetscapePluginPackage executableType]):
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController didAddSubview:]):
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
(-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
(-[WebPluginDatabase pluginForMIMEType:]):
(-[WebPluginDatabase pluginForExtension:]):
(-[WebPluginDatabase MIMETypes]):
(-[WebPluginDatabase init]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
(-[WebBridge didAddSubview:]): new
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _didAddSubview:]): new
2002-10-23 Darin Adler <darin@apple.com>
- finished up the job of moving the file button here from WebCore.
I did this mainly for localization reasons.
* WebCoreSupport.subproj/WebFileButton.m:
(-[WebFileButton initWithFrame:]): Set up button control size, font, bezel style,
target, and action. Also add it as a subview.
(-[WebFileButton drawRect:]): Center icon in the "visual frame" part of the view,
not the entire bounds.
(-[WebFileButton setFilename:]): Don't show any icon when the filename is empty.
(-[WebFileButton bestVisualFrameSize]): Implemented this.
(-[WebFileButton visualFrame]): Ditto.
(-[WebFileButton setVisualFrame:]): Ditto.
(-[WebFileButton baseline]): Ditto.
(-[WebFileButton beginSheet]): Added. Shared between button presses and other clicks.
(-[WebFileButton chooseButtonPressed:]): Call beginSheet.
(-[WebFileButton mouseDown:]): Ditto.
(-[WebFileButton openPanelDidEnd:returnCode:contextInfo:]): Send the notification,
WebCoreFileButtonFilenameChanged, when the filename is changed.
* WebView.subproj/WebController.m: (-[WebController policyDelegate]):
Add a FIXME about the leak I found here.
2002-10-23 Chris Blumenberg <cblu@apple.com>
Call the arguments for plug-ins "attributes" everywhere.
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView setAttributes:]):
* Plugins.subproj/WebNetscapePluginEmbeddedView.h:
* Plugins.subproj/WebNetscapePluginEmbeddedView.m:
(-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:attributes:]):
* Plugins.subproj/WebNullPluginView.h:
* Plugins.subproj/WebNullPluginView.m:
(-[WebNullPluginView initWithFrame:mimeType:attributes:]):
(-[WebNullPluginView drawRect:]):
* Plugins.subproj/WebPluginController.h:
* Plugins.subproj/WebPluginController.m:
(-[WebPluginController initWithWebFrame:]):
(-[WebPluginController dealloc]):
(-[WebPluginController addPluginView:]):
* Plugins.subproj/WebPluginPackage.h:
* Plugins.subproj/WebPluginPackage.m:
(-[WebPluginPackage viewFactory]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
(-[WebBridge viewForPluginWithURL:attributes:baseURL:serviceType:]):
(-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
2002-10-23 Chris Blumenberg <cblu@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge requestedURL]):
(-[WebBridge viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebBridge viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory fileButton]):
(-[WebViewFactory pluginsInfo]):
2002-10-23 Darin Adler <darin@apple.com>
- fix bug where plugins crashed closing a stream that was never opened
* Plugins.subproj/WebBaseNetscapePluginStream.h: Change type for parameter of
receivedError: to NPReason. It's not NPError.
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream dealloc]): Assert that stream is destroyed by
checking stream.ndata.
(-[WebBaseNetscapePluginStream setResponse:]): Set stream.ndata to nil if the
stream is not successfully created by NPP_NewStream.
(-[WebBaseNetscapePluginStream destroyStreamWithReason:]): Added. Destroys the
stream, but only if it's present. Also set stream.ndata to nil. This was the bug fix.
(-[WebBaseNetscapePluginStream receivedError:]): Call destroyStreamWithReason:.
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Call destroyStreamWithReason:.
* English.lproj/Localizable.strings: Update.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-10-23 Chris Blumenberg <cblu@apple.com>
Forgot to add WebPluginController back to the project after I had a project conflict.
* WebKit.pbproj/project.pbxproj:
2002-10-23 Chris Blumenberg <cblu@apple.com>
Added WebPluginController which controls and reacts to plug-in requests. Its owned by the WebFrame.
* Plugins.subproj/WebPluginController.h: Added.
* Plugins.subproj/WebPluginController.m: Added.
(-[WebPluginController initWithWebFrame:]):
(-[WebPluginController showURL:inFrame:]):
(-[WebPluginController showStatus:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]):
(-[WebFrame pluginController]):
2002-10-23 Darin Adler <darin@apple.com>
Add WebFileButton, to be used by WebCore soon. It's about 1/2
done right now. Compiles but not used yet.
* WebCoreSupport.subproj/WebViewFactory.m: (-[WebViewFactory fileButton]): Added.
* WebCoreSupport.subproj/WebFileButton.h: Added.
* WebCoreSupport.subproj/WebFileButton.m: Added.
* WebKit.pbproj/project.pbxproj: Added WebFileButton files.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:didReceiveResponse:]): Add an assertion.
2002-10-23 Maciej Stachowiak <mjs@apple.com>
- fixed 2876448 - The authentication panel should give a note when
the user tried to log in and failed
Also, made the message different (and more helpful) when the
authentication is for a proxy server.
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForRequest:]): Use different
messages depending on proxy and previous failure count.
Updated localized strings:
* English.lproj/Localizable.strings:
* English.lproj/StringsNotToBeLocalized.txt:
2002-10-23 Maciej Stachowiak <mjs@apple.com>
- fixed 2876446 - The label in the authentication panel needs to
adjust its height depending on content
Also improved [NSControl sizeToFitAndAdjustWindowHeight] method.
* Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Adjusted
springs.
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForRequest:]): Use
sizeToFitAndAdjustWindowHeight on main label.
* Misc.subproj/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]): Improved the logic
so the best height is picked while leaving the width
alone. Before, the label would always come out to be a very wide
single line.
2002-10-22 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Made WebControllerSets.h
private. Also alphabetized headers in target pane and subproject
folders.
2002-10-22 Chris Blumenberg <cblu@apple.com>
load and unload is only a WebNetscapePluginPackage thing since you can't unload an NSBundle.
* Plugins.subproj/WebBasePluginPackage.h:
* Plugins.subproj/WebBasePluginPackage.m:
* Plugins.subproj/WebNetscapePluginPackage.h:
2002-10-22 Chris Blumenberg <cblu@apple.com>
More moving stuff around for the new plug-in API. Added WebBasePluginPackage and added subclass WebPluginPackage. Also made WebNetscapePluginPackage a subclass of WebBasePluginPackage.
* Plugins.subproj/WebBasePluginPackage.h: Added.
* Plugins.subproj/WebBasePluginPackage.m: Added.
(+[WebBasePluginPackage pluginWithPath:]): creates a WebPluginPackage or WebNetscapePluginPackage
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage name]):
(-[WebBasePluginPackage path]):
(-[WebBasePluginPackage filename]):
(-[WebBasePluginPackage pluginDescription]):
(-[WebBasePluginPackage extensionToMIMEDictionary]):
(-[WebBasePluginPackage MIMEToExtensionsDictionary]):
(-[WebBasePluginPackage MIMEToDescriptionDictionary]):
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage unload]):
(-[WebBasePluginPackage isLoaded]):
(-[WebBasePluginPackage description]):
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]):
* Plugins.subproj/WebNetscapePluginPackage.h:
* Plugins.subproj/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage initWithPath:]):
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
(-[WebPluginDatabase pluginForMIMEType:]):
(-[WebPluginDatabase pluginForExtension:]):
(-[WebPluginDatabase pluginForFilename:]):
(-[WebPluginDatabase MIMETypes]):
(-[WebPluginDatabase init]):
* Plugins.subproj/WebPluginPackage.h: Added.
* Plugins.subproj/WebPluginPackage.m: Added.
(-[WebPluginPackage initWithPath:]):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): check the class of the plug-in when deciding which view to create.
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]): same here.
* WebKit.pbproj/project.pbxproj:
2002-10-22 David Hyatt <hyatt@apple.com>
Getting XML docs at least made for XML files...
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation setDataSource:]):
2002-10-22 Chris Blumenberg <cblu@apple.com>
Made new plug-in API headers private.
* WebKit.pbproj/project.pbxproj:
2002-10-22 Darin Adler <darin@apple.com>
* Misc.subproj/WebKitErrors.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
Rename WebErrorLocationChangeInterruptedByURLPolicyChange to
WebErrorLocationChangeInterruptedByPolicyChange.
2002-10-22 Darin Adler <darin@apple.com>
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
Send the new error whenever a policy change happens. The old code was
sending a successful completion in the download and ignore cases.
2002-10-22 John Sullivan <sullivan@apple.com>
- fixed 3080873 -- Error in console when no bookmark file
found -[WebBookmarkGroup _loadBookmarkGroupGuts]
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup _loadBookmarkGroupGuts]):
removed ERROR that was useful only long ago.
2002-10-22 Richard Williamson <rjw@apple.com>
Added stubs from common WebResourceHandleDelegate base
class.
* Plugins.subproj/WebBaseNetscapePluginStream.h:
* Plugins.subproj/WebNetscapePluginStream.h:
* WebCoreSupport.subproj/WebSubresourceClient.h:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebBaseResourceHandleDelegate.h: Added.
* WebView.subproj/WebBaseResourceHandleDelegate.m: Added.
* WebView.subproj/WebMainResourceClient.h:
2002-10-22 Darin Adler <darin@apple.com>
Make the panel position itself above the main window.
Too bad we can't use a sheet, but this is better than a random position.
* WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m:
(-[WebJavaScriptTextInputPanel initWithPrompt:text:]):
Use the new [NSWindow sizeToFitAndAdjustWindowHeight]
and [NSControl sizeToFitAndAdjustWindowHeight].
* Misc.subproj/WebNSControlExtras.h: Added.
* Misc.subproj/WebNSControlExtras.m: Added.
* Misc.subproj/WebNSWindowExtras.h: Added.
* Misc.subproj/WebNSWindowExtras.m: Added.
* WebKit.pbproj/project.pbxproj: Added above files.
* English.lproj/StringsNotToBeLocalized.txt: Update.
2002-10-22 Ken Kocienda <kocienda@apple.com>
* Misc.subproj/WebKitErrors.h: Add new error code to signify that a location
change has been interrupted by a change in the URLPolicy governing the load.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]): Add code to check the URLPolicy
for the URL in the request that is submitted to us in this delegate method. Send
a locationChangeDone:forDataSource: message with an error using the newly-defined
code in cases where the location change should be cancelled.
2002-10-22 Chris Blumenberg <cblu@apple.com>
Added protocol headers for new plug-in API.
* Plugins.subproj/WebPlugin.h: Added.
* Plugins.subproj/WebPluginContainer.h: Added.
* Plugins.subproj/WebPluginViewFactory.h: Added.
* WebKit.pbproj/project.pbxproj:
2002-10-22 Chris Blumenberg <cblu@apple.com>
- Moved things around to make room for new plug-in API.
- Renamed WebNetscapePlugin to WebNetscapePluginPackage.
- Renamed WebNetscapePluginDatabase to WebPluginDatabase.
* Plugins.subproj/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream setPluginPointer:]):
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView plugin]):
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]):
* Plugins.subproj/WebNetscapePluginEmbeddedView.h:
* Plugins.subproj/WebNetscapePluginEmbeddedView.m:
(-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
* Plugins.subproj/WebNetscapePluginNullEventSender.h: Added.
* Plugins.subproj/WebNetscapePluginNullEventSender.m: Added.
(-[WebNetscapePluginNullEventSender initWithPluginView:]):
(-[WebNetscapePluginNullEventSender dealloc]):
(-[WebNetscapePluginNullEventSender sendNullEvents]):
(-[WebNetscapePluginNullEventSender stop]):
* Plugins.subproj/WebNetscapePluginPackage.h: Added.
* Plugins.subproj/WebNetscapePluginPackage.m: Added.
(-[WebNetscapePluginPackage openResourceFile]):
(-[WebNetscapePluginPackage closeResourceFile:]):
(-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
(-[WebNetscapePluginPackage getPluginInfo]):
(-[WebNetscapePluginPackage stringByResolvingSymlinksAndAliasesInPath:]):
(-[WebNetscapePluginPackage initWithPath:]):
(-[WebNetscapePluginPackage load]):
(-[WebNetscapePluginPackage unload]):
(-[WebNetscapePluginPackage NPP_SetWindow]):
(-[WebNetscapePluginPackage NPP_New]):
(-[WebNetscapePluginPackage NPP_Destroy]):
(-[WebNetscapePluginPackage NPP_NewStream]):
(-[WebNetscapePluginPackage NPP_StreamAsFile]):
(-[WebNetscapePluginPackage NPP_DestroyStream]):
(-[WebNetscapePluginPackage NPP_WriteReady]):
(-[WebNetscapePluginPackage NPP_Write]):
(-[WebNetscapePluginPackage NPP_HandleEvent]):
(-[WebNetscapePluginPackage NPP_URLNotify]):
(-[WebNetscapePluginPackage NPP_GetValue]):
(-[WebNetscapePluginPackage NPP_SetValue]):
(-[WebNetscapePluginPackage NPP_Print]):
(-[WebNetscapePluginPackage MIMEToExtensionsDictionary]):
(-[WebNetscapePluginPackage extensionToMIMEDictionary]):
(-[WebNetscapePluginPackage MIMEToDescriptionDictionary]):
(-[WebNetscapePluginPackage name]):
(-[WebNetscapePluginPackage filename]):
(-[WebNetscapePluginPackage path]):
(-[WebNetscapePluginPackage isLoaded]):
(-[WebNetscapePluginPackage pluginDescription]):
(-[WebNetscapePluginPackage description]):
(functionPointerForTVector):
(tVectorForFunctionPointer):
* Plugins.subproj/WebPlugin.h: Removed.
* Plugins.subproj/WebPlugin.m: Removed.
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
(+[WebPluginDatabase installedPlugins]):
(-[WebPluginDatabase pluginForMIMEType:]):
(-[WebPluginDatabase pluginForExtension:]):
(-[WebPluginDatabase pluginForFilename:]):
(-[WebPluginDatabase MIMETypes]):
(-[WebPluginDatabase init]):
* Plugins.subproj/WebPluginNullEventSender.h: Removed.
* Plugins.subproj/WebPluginNullEventSender.m: Removed.
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebViewFactory pluginsInfo]):
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.m:
(+[WebController canShowMIMEType:]):
2002-10-22 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added missing import.
2002-10-22 Darin Adler <darin@apple.com>
- fixed 3077305 -- js dialog not yet implemented - crash (fatal error)
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
Create a WebJavaScriptTextInputPanel and run it.
* English.lproj/WebJavaScriptTextInputPanel.nib: Added.
* WebCoreSupport.subproj/WebJavaScriptTextInputPanel.h: Added.
* WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m: Added.
* WebKit.pbproj/project.pbxproj: Added
2002-10-22 Chris Blumenberg <cblu@apple.com>
Use the mouseDown point instead of the mouseDragged point to determine the mouseOffset when dragging images. When you drag an image now, the point where you clicked is the point where the cursor is in relation to the drag image.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDown:]): retain the mouse down event
(-[WebHTMLView mouseDragged:]): use the mouse down event
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLViewPrivate dealloc]): release the mouse down event
2002-10-21 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebViewFactory.h: Changed to use new protocol scheme so we
get an error if we forget to implement something.
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]): Stub.
2002-10-21 Richard Williamson <rjw@apple.com>
More incremental tweaks. Will be factoring common
handle delegate behavior into base class.
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:response:size:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _finsishedLoadingResourceFromDataSource:]):
2002-10-21 Trey Matteson trey@apple.com
Fixed typos and other doc comment errors found during API review.
* WebView.subproj/WebController.h:
2002-10-21 Richard Williamson <rjw@apple.com>
Changed WebResourceLoadDelegate methods to include an identifier
as first parameter. This will help clients track callbacks relating
to a particular resource. Added identifierForInitialRequest:fromDataSource:
so clients can create their own identifier.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:response:size:]):
* WebCoreSupport.subproj/WebSubresourceClient.h:
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:willSendRequest:]):
(-[WebSubresourceClient handle:didReceiveResponse:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
(-[WebSubresourceClient handle:didFailLoadingWithError:]):
* WebView.subproj/WebController.m:
(-[WebResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
(-[WebResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
(-[WebResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
(-[WebResourceLoadDelegate resource:didReceiveContentLength:fromDataSource:]):
(-[WebResourceLoadDelegate resource:didFinishLoadingFromDataSource:]):
(-[WebResourceLoadDelegate resource:didFailLoadingWithError:fromDataSource:]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:forHandle:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
(-[WebMainResourceClient handle:didFailLoadingWithError:]):
* WebView.subproj/WebResourceLoadDelegate.h:
2002-10-21 Chris Blumenberg <cblu@apple.com>
Changed content policy API to pass a response instead of MIME type so client can get the mime type and filename from one class.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-10-21 Darin Adler <darin@apple.com>
- fixed 3080512 -- REGRESSION: moving from old page to new one, we get blank white
before the new one is ready
Roll out a bunch of my changes, because they weren't complete. Added FIXMEs for the
problems I was unsuccessfully trying to fix.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
* WebView.subproj/WebView.m:
(-[WebView initWithFrame:]), (-[WebView isOpaque]), (-[WebView drawRect:]):
Roll back.
2002-10-21 Darin Adler <darin@apple.com>
- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
Once more, with feeling.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView _setNeedsLayoutIfSizeChanged:]): Added setNeedsDisplay:YES here. The lack
of this is what caused the bug. But also don't do any work when the size doesn't change.
This prevents this from being called at all in the scrolling case, which is what we want.
(-[WebHTMLView viewWillMoveToSuperview:]): Just the name change.
(-[WebHTMLView layout]): Store the layout size for the above methods.
* WebView.subproj/WebHTMLViewPrivate.h: Add a place to store the size.
* WebView.subproj/WebImageView.m: (-[WebImageView layout]):
Roll this change back in.
2002-10-21 Darin Adler <darin@apple.com>
- fixed 3080246 -- REGRESSION: Animated GIFs sometimes disappear after drag or scroll
* WebView.subproj/WebImageView.m: (-[WebImageView layout]):
My change to this caused the regression. Not sure why, but I'll just back out
because the change wasn't important.
2002-10-20 Chris Blumenberg <cblu@apple.com>
Fixed: 3025847 - Can't use any menu command keys after clicking on a plugin
Don't give plug-ins command-modified keys anymore because the ability wasn't worth the annoyance. If only plug-ins truthfully responded t events! Anyway, filed 3080103 so that I can look into a way to make this work for everybody.
* Plugins.subproj/WebBaseNetscapePluginView.m:
2002-10-20 Chris Blumenberg <cblu@apple.com>
Fixed: 3025868 - Plugin context menu disappears then reappears if you click off of it
Also fixed some rare dragging weirdness in WebHTMLView. If you attempted to drag a plug-in after dragging an image, the image would drag again.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView mouseDragged:]): subclass and do nothing to prevent calling mouseDragged in WebHTMLView
(-[WebBaseNetscapePluginView performKeyEquivalent:]): no changes to this method, removed menuForEvent, wasn't needed after all
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream stop]): minor clean-up
2002-10-20 Darin Adler <darin@apple.com>
- fixed a minor problem with autorelease I just ran into
* WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
Create an autorelease pool for the benefit of the class initialize
functions that will be called.
2002-10-20 Chris Blumenberg <cblu@apple.com>
Fixed 3050010: Should show contextual menu for WebImageView
Also made drags from WebImageView work.
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m: added _web_setPromisedImageDragImage which does the hackery to extend the promised file drag for images
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _menuForElement:]): added, gets menu items from delegate and creates menu
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]): simplified, gets element and calls -[WebController _menuForElement:]
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage: when dragging image
* WebView.subproj/WebImageRepresentation.h:
* WebView.subproj/WebImageRepresentation.m:
(-[WebImageRepresentation dealloc]): release the URL
(-[WebImageRepresentation URL]): added so WebImageView can get the URL
(-[WebImageRepresentation setDataSource:]): retain the URL
* WebView.subproj/WebImageView.h: use new drag bools
* WebView.subproj/WebImageView.m:
(-[WebImageView initWithFrame:]): ditto
(-[WebImageView setAcceptsDrags:]): ditto
(-[WebImageView acceptsDrags]): ditto
(-[WebImageView setAcceptsDrops:]): ditto
(-[WebImageView acceptsDrops]): ditto
(-[WebImageView controller]): new
(-[WebImageView menuForEvent:]): new, creates element and calls -[WebController _menuForElement:]
(-[WebImageView mouseDragged:]): drag promised file
(-[WebImageView dragImage:at:offset:event:pasteboard:source:slideBack:]): call _web_setPromisedImageDragImage:
(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): new
2002-10-20 Darin Adler <darin@apple.com>
- fixed a problem where you would get garbage bits when resizing while loading a standalone image
Cleaned up some of the complexity of how we were handling resizing.
* WebView.subproj/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):
Do the update twice to properly handle the case where a disappearing scroller makes a second
scroller appear or vice versa.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Remove the code that was trying
to set the setDrawsBackground flag on the scroll view. It was doing it wrong, causing bugs with
drawing non-HTML views while loading. Also, it wasn't working as an optimization, since the
window was still drawing the metallic background behind. We can revisit adding an optimization
at the WebHTMLView level if it creates a measurable speed increase, but we must be careful to
test loading with non-HTML views along with the HTML cases.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView _setNeedsLayoutToYes:]): Added. Calls setNeedsLayout:YES.
(-[WebHTMLView viewWillMoveToSuperview:]): Added. Registers so we get _setNeedsLayoutToYes:
calls when the superview's size changes. This allows us to do a layout at all the right times.
(-[WebHTMLView layout]): Call setNeedsDisplay:YES, because if we do a layout without a complete
display the screen will look bad. Also do a reapplyStyles, because if there are pending style
changes we want to apply them before doing a layout since they could affect the layout.
(-[WebHTMLView drawRect:]): Remove the special case that says to always relayout during live
resize, because it works without a special case now. For the other live resize case, turn it from
a special case into a general one. Any time layout is done, make sure to draw the entire view,
not just the passed-in rectangle, and call setNeedsDisplay:NO so we don't do it all over again.
* WebView.subproj/WebImageView.m: (-[WebImageView layout]): Explicitly set frame size to
0,0 when there is no image.
* WebView.subproj/WebView.m: Remove now-unnecessary viewWillStartLiveResize, setFrame:,
viewDidEndLiveResize, isOpaque, and drawRect overrides.
(-[WebView initWithFrame:]): Don't call setDrawsBackground:NO for the reasons above.
Don't set scroll bar visibility because the dynamic scroll bars view handles that already.
2002-10-19 Darin Adler <darin@apple.com>
- fixed 3073693 -- flash drawn to screen even when window minimized
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView start]): Set up additional notifications.
Don't start the null event sender if the window is miniaturized.
(-[WebBaseNetscapePluginView windowDidMiniaturize:]): Stop the null event sender.
(-[WebBaseNetscapePluginView windowDidDeminiaturize:]): Start the null event sender.
2002-10-19 Darin Adler <darin@apple.com>
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted]):
Removed stray printf.
2002-10-18 Richard Williamson <rjw@apple.com>
Changed name to setUsesBackForwardList: from
setUseBackForwardList. ditto for useBackForwardList
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setUsesBackForwardList:]):
(-[WebController usesBackForwardList]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _isLoadComplete]):
Fixed history items that have "untitled" title after
redirect. (3078577).
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setTitle:]):
2002-10-18 Darin Adler <darin@apple.com>
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController stringByEvaluatingJavaScriptFromString:]):
Changed to return a string and changed name.
2002-10-18 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-10-18 Ken Kocienda <kocienda@apple.com>
Removed unneeded import of WebFoundation/WebResourceLoadManager.h
* Misc.subproj/WebIconLoader.m
2002-10-18 Darin Adler <darin@apple.com>
* Makefile.am: Move dependency so clean happens before build.
2002-10-18 Darin Adler <darin@apple.com>
* force-clean-timestamp: Dependencies don't work well enough, so
we need a clean build here after the WebFoundation domain change.
2002-10-18 Darin Adler <darin@apple.com>
Update for WebFoundation error domain changes.
* Misc.subproj/WebKitErrors.h: Put WebErrorDomainWebKit in here.
Also remove WebErrorNoError and the WebErrorCode name for the enum.
* WebKit.exp: Export the WebErrorDomainWebKit constant.
* WebView.subproj/WebView.m: Define the WebErrorDomainWebKit.
* WebKit.pbproj/project.pbxproj: Always use WebKit.exp.
* Makefile.am: Don't generate WebKit-combined.exp any more.
* WebKit-tests.exp: Removed.
2002-10-17 Darin Adler <darin@apple.com>
- fixed 3078644 -- Odd clipping in frame
* WebView.subproj/WebClipView.h: Add hasAdditionalClip and additionalClip methods.
* WebView.subproj/WebClipView.m:
(-[WebClipView resetAdditionalClip]): Add an assertion.
(-[WebClipView setAdditionalClip:]): Ditto.
(-[WebClipView hasAdditionalClip]): Added.
(-[WebClipView additionalClip]): Added.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView visibleRect]):
Turn off the additional clip while computing our visibleRect. This way, the additional
clip only affects people who ask for the clip view's visibleRect directly, which basically
means just the focus rectangle drawing code we are trying to influence.
2002-10-17 Richard Williamson <rjw@apple.com>
Support for drawing frame borders (fixes 2982466).
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView _drawBorder:]):
(-[WebHTMLView drawRect:]):
2002-10-17 John Sullivan <sullivan@apple.com>
- added support for bookmark identifiers, to be used for marking
bookmark proxies uniquely (independent of localized title). This
is not the old unique-identifier scheme; now identifiers are optional,
and initially nil, but the client can use them for its own purposes.
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark dealloc]): release identifier
(-[WebBookmark identifier]): return identifier
(-[WebBookmark setIdentifier:]): set identifier
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
restore identifier
(-[WebBookmarkLeaf dictionaryRepresentation]):
save identifier
(-[WebBookmarkLeaf copyWithZone:]):
copy identifier
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
restore identifier
(-[WebBookmarkList dictionaryRepresentation]):
save identifier
(-[WebBookmarkList copyWithZone:]):
copy identifier
* Bookmarks.subproj/WebBookmarkPrivate.h:
* Bookmarks.subproj/WebBookmarkProxy.m:
(-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
restore identifier
(-[WebBookmarkProxy dictionaryRepresentation]):
save identifier
(-[WebBookmarkProxy copyWithZone:]):
copy identifier
=== Alexander-28 ===
2002-10-17 Darin Adler <darin@apple.com>
- fixed 3062613 -- too many redirects at nytimes.com and apple
Our cookie policy was rejecting the cookies from nytimes.com -- the policy base
URL was still the news.com URL from before the redirect.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
Update the cookie policy URL when a redirect changes the data source's URL.
2002-10-17 Darin Adler <darin@apple.com>
- fixed 3077910 -- REGRESSION: download window open at startup time -> no scrollbars
* WebView.subproj/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView updateScrollers]):
Check for WebDocumentView protocol before making the layout method
call. Prevents exception when WebDynamicScrollBarsView is used with
a document that is not a WebDocumentView.
2002-10-16 Richard Williamson <rjw@apple.com>
Added some drawing debug code (ifdef excluded).
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]):
2002-10-16 Darin Adler <darin@apple.com>
Fixed anomalies with plugin positioning caused by my switch to
NSViewFocusDidChangeNotification. Turns out that is not sent during
live resize, but we need things to work during live resize.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView start]): Register for changes in the
bounds and frame of all superviews again, instead of using
NSViewFocusDidChangeNotification.
2002-10-16 Richard Williamson <rjw@apple.com>
Fixed 2969367. Ensure layout happens before doing check
to determine if scrollbars are needed. Ahhh, dynamic
scrollbars work so much better now.
* WebView.subproj/WebDynamicScrollBarsView.m:
(-[WebDynamicScrollBarsView updateScrollers]):
2002-10-16 Darin Adler <darin@apple.com>
Fixed the problem where we would leave white bits when making the window larger.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): During live resize,
use the visible rectangle after doing layout, not before.
2002-10-16 Richard Williamson <rjw@apple.com>
Fixed regression in visited links due to change is semantics of
[dataSource request], added [dataSource _originalRequest]. Items
always need to be added to history with the original request.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithRequest:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _defersCallbacksChanged]):
(-[WebDataSource _originalRequest]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
2002-10-16 Darin Adler <darin@apple.com>
- fixed 3017152 -- intra-page anchors not updating page address field
* WebView.subproj/WebLocationChangeDelegate.h: Rearrange methods so they are
in the order they are delivered. Add locationChangedWithinPageForDataSource method.
Renamed the redirect methods to match the verb tenses used in the others.
Removed the URL parameter from the server redirect method.
* WebView.subproj/WebLocationChangeDelegate.m: Update the class to match the
changes to the protocol.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]):
Update for change to clientWillRedirectTo method name.
(-[WebBridge loadURL:]): Call locationChangedWithinPageForDataSource:.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setRequest:]):
Update for change to serverRedirectedForDataSource method name.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseMovedNotification:]):
Remove overzealous assert that was firing for me.
* WebCoreSupport.subproj/WebSubresourceClient.m: Update comment.
* WebView.subproj/WebDataSource.h: Fix comment.
2002-10-15 Darin Adler <darin@apple.com>
- fixed 3062393 -- need to send proper referrer for "open in new window" menu items and keyboard shortcuts
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createWindowWithURL:frameName:]): Don't take a referrer parameter any more.
Get the referrer by calling to the other side of the bridge, instead.
(-[WebBridge startLoadingResource:withURL:]): Ditto.
(-[WebBridge loadURL:]): Ditto.
(-[WebBridge postWithURL:data:contentType:]): Ditto.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Ditto.
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:]): Don't take a referrer parameter,
which was always nil anyway. Instead, get the referrer from the bridge.
(-[WebDefaultContextMenuDelegate openLinkInNewWindow:]): Don't pass nil for referrer.
(-[WebDefaultContextMenuDelegate openImageInNewWindow:]): Ditto.
(-[WebDefaultContextMenuDelegate openFrameInNewWindow:]): Ditto.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass a referrer from the bridge, rather
than nil, for both WebClickPolicyOpenNewWindow and WebClickPolicyOpenNewWindowBehind.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Add a FIXME.
2002-10-15 Darin Adler <darin@apple.com>
* WebView.subproj/WebDataSourcePrivate.h: Remove unused stuff.
* WebView.subproj/WebDataSourcePrivate.m: Ditto.
2002-10-15 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadURL:referrer:]): Add a special case for when the URL is the
same as the previous URL for the same frame. This relies on some logic in
KHTML's openURL method that handles this case too.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithRequest:]): Don't bother keeping an inputURL.
(-[WebDataSource URL]): Just return [[self request] URL]. Maybe we can
remove this altogether.
* WebView.subproj/WebDataSourcePrivate.h: Remove inputURL, finalURL.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): No need to release inputURL, finalURL.
(-[WebDataSource _setURL:]): Used only by the new code above. Makes a copy
of the request, changes the URL, and then drops the old request.
(-[WebDataSource _setRequest:]): Changed to no longer call _setURL. Now
does much of the work that _setURL used to do.
2002-10-15 Darin Adler <darin@apple.com>
WebKit part of improved frame name support.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
Call setName on the newly created part.
2002-10-15 John Sullivan <sullivan@apple.com>
- fixed 3075777 -- hysteresis for dragging links on web pages
is still too large
* WebView.subproj/WebHTMLView.m: changed hysteresis constants;
added comment.
2002-10-15 Darin Adler <darin@apple.com>
Fix problem where timer was lasting after window was closed.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _detachFromParent]):
Add a call to [_private->bridge closeURL].
2002-10-15 Richard Williamson <rjw@apple.com>
Added attributed string to pasteboard. Fixes 3006760.
We may want to scale back the content that is included in the
attributed string. Currently all text nodes in the selection
are converted. This include text nodes for non-visible content,
i.e. scripts.
[Note we may also want to put HTML snippet on the pboard. The appkit
does support reading text using htmldisplay today. Of course this should
eventually migrate to use WebView.]
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView copy:]):
2002-10-15 Darin Adler <darin@apple.com>
Fixed bug where URLs dragged to the content area were not made canonical
the way URLs dragged to the page address field are.
* Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_bestURL]):
Make URLs canonical before returning them.
2002-10-15 Chris Blumenberg <cblu@apple.com>
If a file is renamed during download because a file of the same name already exists, show this in the UI.
* Misc.subproj/WebDownloadHandler.h:
* Misc.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler receivedResponse:]): added, create file here
(-[WebDownloadHandler receivedData:]): don't create file here
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:]): call [dataSource _setPrimaryLoadComplete:YES] for downloads
(-[WebMainResourceClient handle:didReceiveResponse:]): call [WebDownloadHandler receivedResponse:]
(-[WebMainResourceClient handle:didReceiveData:]): no download error to handle
2002-10-14 Chris Blumenberg <cblu@apple.com>
- Made all downloads no matter how prompted, pass through the content policy API so the client can properly choose the file name and correct the extension if necessary. We now ask for the content policy even if one has been predetermined.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _downloadURL:withContentPolicy:]): Renamed, set the predetermined content policy.
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate downloadURL:]): call [WebController _downloadURL:withContentPolicy:]
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebController _downloadURL:withContentPolicy:]
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): call [WebController _downloadURL:withContentPolicy:]
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]): ask for content policy even if one is predetermined
2002-10-14 Chris Blumenberg <cblu@apple.com>
- Cleaned up download handler and download progress delegate interactions.
- Got rid of error suppression junk.
- Only send 1 final message to the download progress delegate
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:forHandle:]): no error suppression
(-[WebMainResourceClient didCancelWithHandle:]): ignore cancel errors because 1 download error is enough
(-[WebMainResourceClient handleDidFinishLoading:]): don't send the special and odd final message to the download progress delegate
(-[WebMainResourceClient handle:didReceiveData:]): no error suppression
(-[WebMainResourceClient handle:didFailLoadingWithError:]): ignore cancel errors because 1 download error is enough
2002-10-14 Darin Adler <darin@apple.com>
* Bookmarks.subproj/WebBookmark.m:
(+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
* Bookmarks.subproj/WebBookmarkProxy.m:
(-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
Add checking since we don't "trust" the dictionary passed in.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem initFromDictionaryRepresentation:]):
Add FIXME about adding the checking.
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup initWithFile:]): Use copy, not retain.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate dealloc]): Fix storage leak by releasing
the default context menu delegate.
* WebView.subproj/WebControllerPrivate.h: Tweak.
2002-10-14 Chris Blumenberg <cblu@apple.com>
Made WebNetscapePluginStream retain a WebNetscapePluginEmbeddedView not a WebBaseNetscapePluginView.
* Plugins.subproj/WebNetscapePluginStream.h:
* Plugins.subproj/WebNetscapePluginStream.m:
(-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
2002-10-13 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Added strings from WebBookmarkProxy.m.
2002-10-13 Chris Blumenberg <cblu@apple.com>
- Eliminated the dual-role behavior of WebPluginStream.
Renamed WebPluginStream to WebBaseNetscapePluginStream.
WebNetscapePluginRepresentation, a subclass of WebBaseNetscapePluginStream,
is the document representation for standalone plug-ins.
WebNetscapePluginStream, also a subclass of WebBaseNetscapePluginStream,
is the general plug-in stream loader for embedded plug-ins or plug-in requested streams.
23 plug-in source files with more likely to come!
* Plugins.subproj/WebBaseNetscapePluginStream.h: Added.
* Plugins.subproj/WebBaseNetscapePluginStream.m: Added.
(-[WebBaseNetscapePluginStream dealloc]):
(-[WebBaseNetscapePluginStream setPluginPointer:]):
(-[WebBaseNetscapePluginStream setResponse:]):
(-[WebBaseNetscapePluginStream receivedData:]):
(-[WebBaseNetscapePluginStream receivedError:]):
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView setWindow]):
(-[WebBaseNetscapePluginView pluginPointer]):
(-[WebBaseNetscapePluginView drawRect:]):
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* Plugins.subproj/WebNetscapePluginDocumentView.m:
* Plugins.subproj/WebNetscapePluginRepresentation.h: Added.
* Plugins.subproj/WebNetscapePluginRepresentation.m: Added.
(-[WebNetscapePluginRepresentation setDataSource:]):
(-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
(-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
(-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]):
* Plugins.subproj/WebNetscapePluginStream.h: Added.
* Plugins.subproj/WebNetscapePluginStream.m: Added.
(-[WebNetscapePluginStream setCurrentURL:]):
(-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
(-[WebNetscapePluginStream dealloc]):
(-[WebNetscapePluginStream start]):
(-[WebNetscapePluginStream stop]):
(-[WebNetscapePluginStream loadEnded]):
(-[WebNetscapePluginStream handle:willSendRequest:]):
(-[WebNetscapePluginStream handle:didReceiveResponse:]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
* Plugins.subproj/WebPluginDatabase.m:
(-[WebNetscapePluginDatabase init]):
* Plugins.subproj/WebPluginStream.h: Removed.
* Plugins.subproj/WebPluginStream.m: Removed.
* WebKit.pbproj/project.pbxproj:
2002-10-11 Richard Williamson <rjw@apple.com>
More DOM/attributed string work.
* WebView.subproj/WebHTMLRepresentation.h:
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
* WebView.subproj/WebHTMLRepresentationPrivate.h:
2002-10-11 Richard Williamson <rjw@apple.com>
* WebView.subproj/WebHTMLRepresentation.m:
* WebView.subproj/WebHTMLRepresentationPrivate.h:
2002-10-11 Ken Kocienda <kocienda@apple.com>
Fixed uninitialized variable build breaker I got when
doing a Deployment build.
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
2002-10-11 John Sullivan <sullivan@apple.com>
Added the concept of bookmark proxies; items that can be
stored and displayed with other bookmarks but represent
a source of bookmark-like items (e.g. Rendezvous, History)
* Bookmarks.subproj/WebBookmarkProxy.h: Added.
* Bookmarks.subproj/WebBookmarkProxy.m: Added.
(-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
(-[WebBookmarkProxy dictionaryRepresentation]):
(-[WebBookmarkProxy bookmarkType]):
(-[WebBookmarkProxy copyWithZone:]):
(-[WebBookmarkProxy title]):
(-[WebBookmarkProxy setTitle:]):
(-[WebBookmarkProxy icon]):
New class, has a title and that's about it
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
Handle proxy case
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
Handle proxy case
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]),
(-[WebBookmarkList dictionaryRepresentation]):
Handle proxy case
* Bookmarks.subproj/WebBookmarkPrivate.h:
Add #define for proxy
* WebKit.pbproj/project.pbxproj: updated for new files
2002-10-11 Chris Blumenberg <cblu@apple.com>
Thought I has checking for nil enough, but not enough as I raised an exception on Avie's machine.
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin getPluginInfo]): check for the nil extension case
2002-10-11 Darin Adler <darin@apple.com>
Apply a simplified technique I learned while working on the Favorites button
class in the browser code.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView start]): Use the NSViewFocusDidChangeNotification
to track the plugin rectangles instead of the NSViewFrameDidChangeNotification
and NSViewBoundsDidChangeNotification on all the superviews.
2002-10-11 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff: new generic URL icon -- no more @!
2002-10-10 Darin Adler <darin@apple.com>
- fixed 3069366 -- REGRESSION: no pop-up window at inkfinder.com
The window now pops up, but it doesn't seem to work right. But I
think the window working right is a separate issue.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]): Make sure we
use the copy of the request that we're keeping around when we call
_setRequest on the data source, rather than the copy we're returning
which can be modified by WebFoundation. Also rearrange things so we're
more likely to get things right when the delegate changes the URL on
the request.
2002-10-10 Chris Blumenberg <cblu@apple.com>
No need to send update event when activating/deactivating.
This was as old workaround for the plug-in drawing problems.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView windowBecameKey:]):
(-[WebBaseNetscapePluginView windowResignedKey:]):
=== Alexander-27 ===
2002-10-10 Darin Adler <darin@apple.com>
- fixed 3071799 -- REGRESSION: hang and strange download loading about:blank
Chris fixed the strange download earlier. This fixes the "hang' by making sure
we commit even if we receive 0 bytes of data.
* WebView.subproj/WebDataSourcePrivate.h: Added a _finishedLoading method.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _finishedLoading]):
Added. Sets the "first byte of data received" flag, and calls _commitIfReady.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:]): Call _finishedLoading.
2002-10-10 Darin Adler <darin@apple.com>
- fixed 3072015 -- REGRESSION: frames multiply endlessly
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]):
Remove code that sets the parent from here, because it's too early, always nil.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _addChild:]):
Do it here instead.
2002-10-09 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:]):
* WebKit.exp:
* WebView.subproj/WebController.m:
(-[WebResourceLoadDelegate resourceRequest:willSendRequest:fromDataSource:]):
(-[WebResourceLoadDelegate resourceRequest:didReceiveResponse:fromDataSource:]):
(-[WebResourceLoadDelegate resourceRequest:didReceiveContentLength:fromDataSource:]):
(-[WebResourceLoadDelegate resourceRequest:didFinishLoadingFromDataSource:]):
(-[WebResourceLoadDelegate resourceRequest:didFailLoadingWithError:fromDataSource:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:]):
* WebView.subproj/WebResourceLoadDelegate.h:
2002-10-09 John Sullivan <sullivan@apple.com>
- removed unnecessary concept of unique identifiers for bookmarks
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark dealloc]):
(-[WebBookmark _setGroup:]):
* Bookmarks.subproj/WebBookmarkGroup.h:
* Bookmarks.subproj/WebBookmarkGroup.m:
* Bookmarks.subproj/WebBookmarkGroupPrivate.h:
removed all references to unique identifiers
2002-10-09 Darin Adler <darin@apple.com>
WebKit support for creating windows and then showing them later
after setting them up.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createWindowWithURL:referrer:frameName:]): Replaced the old
openNewWindowWithURL with this. It calls the new window operations delegate
method.
(-[WebBridge showWindow]): Added. Calls the window operations delegate showWindow method.
(-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Call _createFrameNamed instead of createFrameNamed.
* WebView.subproj/WebWindowOperationsDelegate.h: Replaced the openNewWindowWithURL
method with a new method named createWindowWithURL. Added showWindow and showWindowBehindFrontmost.
* WebView.subproj/WebControllerPrivate.h: Renamed createFrameNamed to _createFrameNamed
and removed the data source parameter. Added _openNewWindowWithURL:referrer:behind:
for the convenience of those who used to call the window operations delegate directly
to open the window.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _createFrameNamed:inParent:allowsScrolling:]): Renamed, and removed
the data source parameter.
(-[WebController _openNewWindowWithURL:referrer:behind:]): Added.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
* WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]):
Use a private WebController method instead of calling the delegate directly,
because it now takes two method calls to create and display a new window.
* Misc.subproj/WebNSViewExtras.m:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebView.subproj/WebController.m:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebHTMLView.m:
* WebView.subproj/WebMainResourceClient.m:
* WebView.subproj/WebPreferences.m:
* WebView.subproj/WebView.m:
* WebView.subproj/WebViewPrivate.m:
Tweaked comments.
2002-10-09 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
Fix positioning of progressively loading images that are flipped.
2002-10-09 Darin Adler <darin@apple.com>
- fixed 3069764 -- REGRESSION: Plug-ins sometimes don't respond to
update events, causes disappearing
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView drawRect:]): Set the visible region of the port to the
port bounds to work around the fact that NSWindow tries to help us by doing a
BeginUpdate call. This ensures we can draw where we think we are dirty, not just
where Carbon thinks we are dirty.
* Plugins.subproj/WebNetscapePluginDocumentView.m: Tweak includes.
* Plugins.subproj/WebNetscapePluginEmbeddedView.m: Tweak includes.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:referrer:frameName:]): Tweak.
* English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
2002-10-08 Darin Adler <darin@apple.com>
Make WebFrame do the entire frame hierarchy, instead of having the
parent and child pointers in the data source.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge childFrames]): Get children from the frame, not the data source.
(-[WebBridge setFrame:]): Do the setParent: call on the bridge here, instead of
in dataSourceChanged, since the parent relationship is now established even without
having the data source.
(-[WebBridge dataSourceChanged]): Remove the setParent: call.
(-[WebBridge loadRequest:]): Remove the parent parameter. It's already set up at
this point so we don't need to set it.
(-[WebBridge loadURL:referrer:]): Don't pass a parent.
(-[WebBridge postWithURL:referrer:data:contentType:]): Don't pass a parent.
(-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Don't pass a parent.
(-[WebBridge addBackForwardItemWithURL:anchor:]): Get the parent frame by just calling
the parent method instead of the more roundabout way that it was doing it before.
* WebView.subproj/WebController.m:
(-[WebController _frameForDataSource:fromFrame:]): Get the children list from the frame,
no need to ask the data source. And no need to deal with the provisional data source, since
those can't have children any more.
(-[WebController _frameForView:fromFrame:]): Ditto.
* WebView.subproj/WebControllerPrivate.h: Change parent parameter when creating a new
frame to be a frame, not a data source.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate _clearControllerReferences:]): Get the children list from the frame.
(-[WebControllerPrivate dealloc]): Rename the _reset method _controllerWillBeDeallocated
to be more concrete. More simplification can happen here later.
(-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Call _addChild on the
parent frame rather than calling addFrame on the parent data source.
* WebView.subproj/WebDataSource.h: Remove the parent, children, frameNamed, frameNames, and
frameExists methods.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource controller]): Remove the assertion here about parents, since we don't have
a parent pointer any more.
(-[WebDataSource isLoading]): Get the list of children from the frame.
* WebView.subproj/WebDataSourcePrivate.h: Remove the parent pointer and the frames dictionary,
also remove the _setParent: and addFrame: methods.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Don't release the frames list.
(-[WebDataSource _recursiveStopLoading]): Get the frames list from the frame.
(-[WebDataSource _layoutChildren]): Ditto.
(-[WebDataSource _defersCallbacksChanged]): Ditto.
* WebView.subproj/WebFrame.h: Add parent and children methods.
* WebView.subproj/WebFrame.m:
(-[WebFrame dealloc]): Call _detachFromParent.
(-[WebFrame setProvisionalDataSource:]): Set the encoding of the data source to match
the encoding of the parent's data source. This used to be done in [WebDataSource _setParent:].
Further simplification can probably be done here.
(-[WebFrame reload]): Remove the call to [WebDataSource _setParent:].
(+[WebFrame _frameNamed:fromFrame:]): Get the children from the frame.
(-[WebFrame frameNamed:]): Get the parent from the frame.
(-[WebFrame parent]): Added.
(-[WebFrame children]): Added.
* WebView.subproj/WebFramePrivate.h: Added parent and children fields, changed reset to
_controllerWillBeDeallocated, changed _parentDataSourceWillBeDeallocated to _detachFromParent,
added _addChild method. Further simplification can probably be done here.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]): Release the children array.
(-[WebFrame _controllerWillBeDeallocated]): Renamed from reset. Now just calls _detachFromParent.
(-[WebFrame _detachFromParent]): Does all the work that reset and _parentDataSourceWillBeDeallocated
used to do.
(-[WebFrame _setDataSource:]): Call _detachFromParent on all the children and release them
before setting up the new data source.
(-[WebFrame _transitionToCommitted]): Get the parent from self instead of the data source.
(-[WebFrame _isLoadComplete]): Ditto.
(+[WebFrame _recursiveCheckCompleteFromFrame:]): Get the children from self instead of the data source.
(-[WebFrame _textSizeMultiplierChanged]): Ditto.
(-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Remove the call to [WebDataSource _setParent:].
(-[WebFrame _addChild:]): Added. Puts the child in a children list, and also sets the override
encoding of the child based on our data source's override encoding.
2002-10-08 John Sullivan <sullivan@apple.com>
* WebKit.pbproj/project.pbxproj:
Project Builder says I changed it only by setting
"hasScannedForEncodings" to 1 -- version wars again?
2002-10-08 Richard Williamson <rjw@apple.com>
Removed unnecessary (and incorrect) include.
The *.m files in DOM.subproj might be removed,
they are empty now.
* DOM.subproj/WebDOMDocument.m:
2002-10-08 Richard Williamson <rjw@apple.com>
Added selection API.
* WebView.subproj/WebHTMLRepresentation.h:
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:]):
2002-10-08 Richard Williamson <rjw@apple.com>
Add accessor for DOM document.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebHTMLRepresentation.h:
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation DOMDocument]):
2002-10-08 Richard Williamson <rjw@apple.com>
Made getAttributeNodeNamed match spec, changed
to getAttributeNode.
* DOM.subproj/WebDOMElement.h:
2002-10-08 John Sullivan <sullivan@apple.com>
- WebKit part of fix for 3069150 -- eliminate "separator"
feature from Bookmarks
* Bookmarks.subproj/WebBookmarkSeparator.h: Removed.
* Bookmarks.subproj/WebBookmarkSeparator.m: Removed.
Removed class
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(+[WebBookmark bookmarkOfType:]):
(+[WebBookmark bookmarkFromDictionaryRepresentation:withGroup:]):
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:URLString:type:]):
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
* Bookmarks.subproj/WebBookmarkPrivate.h:
* English.lproj/StringsNotToBeLocalized.txt:
Removed all references to class.
* WebKit.pbproj/project.pbxproj: Updated for removed files.
2002-10-08 Richard Williamson <rjw@apple.com>
Fixes to the DOM API.
* DOM.subproj/WebDOMDocument.h:
* DOM.subproj/WebDOMDocument.m:
* DOM.subproj/WebDOMNode.h:
* DOM.subproj/WebDOMNode.m:
* DOM.subproj/WebDOMNamedNodeMap.h: Removed.
* DOM.subproj/WebDOMNamedNodeMap.m: Removed.
* WebKit.pbproj/project.pbxproj:
2002-10-08 Ken Kocienda <kocienda@apple.com>
Use WebFrameLoadType variable to set the request cache policy for the WebResourceRequest.
This will help us to provide cached results for POST requests when the user navigates
using the back/forward list or history for navigation, while making sure we do not
use cached results when the user pokes the submit button for a form they have
submitted previously.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _goToItem:withFrameLoadType:])
2002-10-08 Chris Blumenberg <cblu@apple.com>
Moved assumption that a resource without a content type or extension is HTML to WebFoundation.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-10-08 Chris Blumenberg <cblu@apple.com>
Minor plug-in code clean-up.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView sendActivateEvent:]):
(-[WebBaseNetscapePluginView sendUpdateEvent]):
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:]):
2002-10-08 Chris Blumenberg <cblu@apple.com>
Partial fix for 2967073 - should open all TEXT type files, at least
* WebView.subproj/WebControllerPrivate.m:
(+[WebController _MIMETypeForFile:]): Sniff for HTML in the fail case.
2002-10-07 Darin Adler <darin@apple.com>
WebKit part of implementation of multipart forms posting.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge postWithURL:referrer:data:contentType:]):
Add a contentType parameter to match change in WebCore API.
Put the contentType value into the request.
2002-10-07 Chris Blumenberg <cblu@apple.com>
Icing fix for: 3063517 - crash loading .png in separate window
* Plugins.subproj/WebPluginDatabase.m:
(-[WebNetscapePluginDatabase init]): Don't override document view and rep
types for types that have already been registered.
2002-10-07 Darin Adler <darin@apple.com>
WebKit part of the page up/down fix.
* WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView scrollPoint:]):
If we are called from the handling of a page up or page down keyboard
event, then ignore the specific scrolling requested, and do our idea of
page up and page down. This guarantees that we will get the smarter
idea of how to page from WebView instead of the one that's hardcoded
into NSTextView.
* WebView.subproj/WebView.m: (-[WebView keyDown:]): Use scrollPageUp:,
scrollPageDown:, scrollLineUp:, and scrollLineDown: instead of _pageUp,
_pageDown, _lineUp, and _lineDown. This lets other classes see and use
these selectors, which is useful when passing calls up the responder chain.
* WebView.subproj/WebViewPrivate.h: Remove the private methods that are
being changed to match the NSResponder keyboard methods.
* WebView.subproj/WebViewPrivate.m:
(-[WebView scrollPageUp:]): Rename from _pageUp, and also pass a scrollPageUp:
selector along the responder chain if we are already scrolled to the top.
(-[WebView scrollPageDown:]): Ditto.
(-[WebView scrollLineUp:]): Rename from _lineUp.
(-[WebView scrollLineDown:]): Rename from _lineDown.
2002-10-07 Richard Williamson <rjw@apple.com>
'Re'play the delegate messages when an item is loaded from
the WebCore cache.
Note that the client will NOT receive a willSendRequest: message. The client
presumably already did any request substitution before the object was loaded
into the cache. Allowing the delegate to override the request and replace
the object in the WebCore cache would introduce significant complexity.
Fixes 3069138.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:response:size:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:didReceiveResponse:]):
2002-10-05 Darin Adler <darin@apple.com>
- fixed 3068323 -- nil object inserted in dictionary exception on mouse move
* WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
Add some assertions in the hope of finding if my assumptions about this are
wrong, and use the version of the dictionary setter that does nothing if it's
passed nil when putting in the frame found by name.
2002-10-04 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Add a localization
exception for the WebKit bundle identifier.
2002-10-04 Darin Adler <darin@apple.com>
* Misc.subproj/WebKitLocalizableStrings.m: Added.
Contains the definition of the WebKitLocalizableStringsBundle.
* WebKit.pbproj/project.pbxproj: Add -DFRAMEWORK_NAME=WebKit.
2002-10-04 Richard Williamson <rjw@apple.com>
Stubs for DOM level 2 core API.
* DOM.subproj/WebDOMDocument.h: Added.
* DOM.subproj/WebDOMDocument.m: Added.
* DOM.subproj/WebDOMElement.h: Added.
* DOM.subproj/WebDOMElement.m: Added.
* DOM.subproj/WebDOMNamedNodeMap.h: Added.
* DOM.subproj/WebDOMNamedNodeMap.m: Added.
* DOM.subproj/WebDOMNode.h: Added.
* DOM.subproj/WebDOMNode.m: Added.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebHTMLViewPrivate.m: tweak.
2002-10-04 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Add the last few exceptions.
We now have a completely-clean run of extract-localizable-strings in WebKit!
2002-10-04 Darin Adler <darin@apple.com>
- fixed 3060140 -- REGRESSION: frames of animated gif drawn in wrong position.
I got the "fromRect" and "toRect" parameters backwards when I made the changes
to fix bug 3050810.
* WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer nextFrame:]):
Reverse targetRect and imageRect.
* WebKit.pbproj/project.pbxproj: Mark some new files as UTF-8 because Project
Builder asked me to.
2002-10-04 Darin Adler <darin@apple.com>
* Panels.subproj/WebPanelCookieAcceptHandler.h: Removed.
* Panels.subproj/WebPanelCookieAcceptHandler.m: Removed.
2002-10-04 Richard Williamson <rjw@apple.com>
Danger Will Robinson. We have to poseAsClass: as early as possible
so that any NSViews will be created with the appropriate poser.
This problem manifested itself with SimpleViewer failing
immediately. NSViews were created by loading a nib before
WebHTMLView class initialization occured. After posing the
already instantiated instances of NSView had a %NSView class,
causing many things to break.
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView load]):
2002-10-04 Richard Williamson <rjw@apple.com>
Ensure that we return non-nil request from handle:willSendRequest:
even when WK's laod delegate is nil.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:willSendRequest:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
2002-10-04 Darin Adler <darin@apple.com>
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel loadNib]): Use ERROR instead of NSLog here.
(-[WebAuthenticationPanel setUpForRequest:]): Mark some strings for localization.
* WebKit.pbproj/project.pbxproj: Change the encoding on a lot more files to UTF-8.
* English.lproj/StringsNotToBeLocalized.txt: Added some new exceptions.
* English.lproj/Localizable.strings: Re-generated.
2002-10-04 Richard Williamson <rjw@apple.com>
Changed WebDOMNode name to WebDebugDOMNode to make room for
real node.
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDOMNode.h: Removed.
* WebView.subproj/WebDOMNode.m: Removed.
2002-10-04 Richard Williamson <rjw@apple.com>
* WebKit.pbproj/project.pbxproj:
2002-10-03 Richard Williamson <rjw@apple.com>
Changed name of controller's resourceProgressDelegate methods to resourceLoadDelegate.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient initWithLoader:dataSource:]):
(-[WebSubresourceClient handle:didReceiveResponse:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
(-[WebSubresourceClient handle:didFailLoadingWithError:]):
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setResourceLoadDelegate:]):
(-[WebController resourceLoadDelegate]):
(-[WebController setDownloadDelegate:]):
(-[WebController downloadDelegate]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
2002-10-03 Richard Williamson <rjw@apple.com>
Always call resourceRequest:willSendRequest: on resourceProgressDelegate.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
2002-10-03 Richard Williamson <rjw@apple.com>
Add calls to downloadProgressDelegate.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
(-[WebMainResourceClient handle:didFailLoadingWithError:]):
2002-10-03 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:]):
Hack to prevent handle creation with nil delegate,
still perform frame complete check.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]):
Removed unused code.
(-[WebMainResourceClient handle:willSendRequest:]):
Copy the request, ugh.
2002-10-03 Darin Adler <darin@apple.com>
Add API for executing JavaScript.
* WebView.subproj/WebController.h: Add method.
* WebView.subproj/WebController.m:
(-[WebController executeJavaScriptFromString:]): Call through to
WebCore to do the heavy lifting.
2002-10-03 Darin Adler <darin@apple.com>
* English.lproj/Localizable.strings: Generated by the script.
* English.lproj/StringsNotToBeLocalized.txt: Added many more strings to ignore.
* English.lproj/WebError.strings: Removed.
* WebView.subproj/WebDefaultContextMenuDelegate.m:
* WebView.subproj/WebView.m:
Use UI_STRING instead of NSLocalizedString.
* WebKit.pbproj/project.pbxproj: Changed encodings of some files to UTF-8.
Removed WebError.strings.
2002-10-03 Richard Williamson <rjw@apple.com>
Renamed WebResourceProgressDelegate.h to WebResourceLoadDelegate.h
* Misc.subproj/WebKit.h:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.m:
* WebView.subproj/WebControllerPrivate.m:
* WebView.subproj/WebMainResourceClient.m:
* WebView.subproj/WebResourceLoadDelegate.h:
* WebView.subproj/WebResourceProgressDelegate.h: Removed.
2002-10-03 Richard Williamson <rjw@apple.com>
Changed to reflect new WebResourceLoadDelegate API.
* Misc.subproj/WebIconLoader.m:
* Misc.subproj/WebKit.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream cancel]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:]):
(-[WebBridge reportBadURL:]):
* WebCoreSupport.subproj/WebSubresourceClient.h:
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient initWithLoader:dataSource:]):
(-[WebSubresourceClient dealloc]):
(-[WebSubresourceClient receivedProgressWithComplete:]):
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
(-[WebSubresourceClient receivedError:]):
(-[WebSubresourceClient handle:willSendRequest:]):
(-[WebSubresourceClient handle:didReceiveResponse:]):
(-[WebSubresourceClient handle:didReceiveData:]):
(-[WebSubresourceClient handleDidFinishLoading:]):
(-[WebSubresourceClient handle:didFailLoadingWithError:]):
(-[WebSubresourceClient cancel]):
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setResourceProgressDelegate:]):
(-[WebController resourceProgressDelegate]):
(-[WebController setDownloadProgressDelegate:]):
(-[WebController downloadProgressDelegate]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedProgressForResourceHandle:fromDataSource:complete:]):
(-[WebController _mainReceivedProgressForResourceHandle:bytesSoFar:fromDataSource:complete:]):
(-[WebController _receivedError:forResourceHandle:fromDataSource:]):
(-[WebController _mainReceivedError:forResourceHandle:fromDataSource:]):
* WebView.subproj/WebLoadProgress.h: Removed.
* WebView.subproj/WebLoadProgress.m: Removed.
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]):
(-[WebMainResourceClient dealloc]):
(-[WebMainResourceClient receivedProgressWithHandle:complete:]):
(-[WebMainResourceClient receivedError:forHandle:]):
(-[WebMainResourceClient handleDidFinishLoading:]):
(-[WebMainResourceClient handle:willSendRequest:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
(-[WebMainResourceClient handle:didFailLoadingWithError:]):
* WebView.subproj/WebResourceProgressDelegate.h:
=== Alexander-26 ===
2002-10-02 Maciej Stachowiak <mjs@apple.com>
- Added "remember my password" checkbox (underlying feature not
yet implemented).
- Fixed a bug that caused a crash when cancelling the auth sheet.
* Panels.subproj/English.lproj/WebAuthenticationPanel.nib: Added
"remember this password" checkbox.
* Panels.subproj/WebAuthenticationPanel.h:
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel cancel:]): Make sure the panel gets
retained a bit longer, so the cleanup that happens after this
message is sent can use the panel object.
(-[WebAuthenticationPanel logIn:]): Make sure the panel gets
retained a bit longer, so the cleanup that happens after this
message is sent can use the panel object.
(-[WebAuthenticationPanel runAsModalDialogWithRequest:]): Pass
proper remembered value with credential.
(-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
Pass proper remembered value with credential.
* WebKit.pbproj/project.pbxproj: Project Builder had its way with
this file.
2002-10-02 Darin Adler <darin@apple.com>
Machinery so we can handle mouseover feedback at the browser level.
* WebView.subproj/WebWindowOperationsDelegate.h: Added mouseDidMoveOverElement:modifierFlags:.
* WebKit.exp: Export WebElementLinkTargetFrameKey.
* WebView.subproj/WebController.h: Add WebElementLinkTargetFrameKey.
* WebView.subproj/WebController.m: Ditto.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView removeMouseMovedObserver]): Send a callback when we
stop tracking the mouse altogether.
(-[WebHTMLView viewDidMoveToWindow]): Only set up the mouse moved
observer if we are the top-level HTML view.
(-[WebHTMLView windowDidBecomeMain:]): Ditto.
(-[WebHTMLView mouseMovedNotification:]): Handle mouse over if we are
over any subview of the HTML view. Also send the callback.
* WebView.subproj/WebHTMLViewPrivate.h: Added lastMouseOverElementWasNotNil,
_mouseOverElement:modifierFlags: and _insideAnotherHTMLView.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]): Copy over each element separately so
we don't rely on keys matching. Find the target frame given the target string,
and include it in the dictionary.
(-[WebHTMLView _mouseOverElement:modifierFlags]): Added. Calls the window
operations delegate method, but doesn't call it over and over again if the
information is still "nil".
(-[WebHTMLView _insideAnotherHTMLView]): Added.
(-[NSMutableDictionary _web_setObjectIfNotNil:forKey:]): Added. Helper for
the _elementAtPoint method which could be moved to WebNSDictionaryExtras some day.
2002-10-02 Ken Kocienda <kocienda@apple.com>
Implemented HTTP-specific subclass for WebResourceResponse.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:]): Add import for WebHTTPResourceResponse.
2002-10-02 Darin Adler <darin@apple.com>
Add return value to willSendRequest callback.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader handle:willSendRequest:]):
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream handle:willSendRequest:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:willSendRequest:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:willSendRequest:]):
Update to return the request.
2002-10-02 Darin Adler <darin@apple.com>
Use the text encoding name from the response and got rid of
[WebDataSource encoding]. Also remove the "first chunk" logic since we
now get a separate callback for the response.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge receivedData:withDataSource:]): Get the encoding name
from the response, or fall back on the default.
* WebView.subproj/WebDataSource.h: Removed encoding.
* WebView.subproj/WebDataSource.m: Ditto.
* WebView.subproj/WebDataSourcePrivate.h: Removed _setEncoding.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): No need to release encoding any more.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]): No isFirstChunk to initialize.
(-[WebMainResourceClient handle:didReceiveResponse:]): Moved the response handling
in here, including the policy logic.
(-[WebMainResourceClient handle:didReceiveData:]): This has only what's left.
2002-10-02 Chris Blumenberg <cblu@apple.com>
Replaced contentType on WebDataSource to response.
* Plugins.subproj/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView setDataSource:]):
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:]):
(-[WebNetscapePluginStream setResponse:]):
(-[WebNetscapePluginStream setDataSource:]):
(-[WebNetscapePluginStream receivedData:withDataSource:]):
(-[WebNetscapePluginStream handle:didReceiveResponse:]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource response]):
(-[WebDataSource fileType]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _representationClass]):
(-[WebDataSource _setResponse:]):
(-[WebDataSource _setContentPolicy:]):
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient dealloc]):
(-[WebMainResourceClient handleDidFinishLoading:]):
(-[WebMainResourceClient handle:didReceiveResponse:]):
(-[WebMainResourceClient handle:didReceiveData:]):
* WebView.subproj/WebTextView.m:
(-[WebTextView dataSourceUpdated:]):
* WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]):
2002-10-02 Darin Adler <darin@apple.com>
More work on "open window behind".
* WebView.subproj/WebControllerPolicyDelegate.h: Add new OpenNewWindowBehind
constants to the enums.
* WebView.subproj/WebWindowOperationsDelegate.h: Add a behind: parameter to
the openNewWindowWithURL method.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): In the new
WebClickPolicyOpenNewWindowBehind case, pass YES for behind.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:referrer:frameName:]):
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame frameNamed:]):
Pass NO for behind.
2002-10-02 Darin Adler <darin@apple.com>
Cut down on unnecessary use of WebFoundation private stuff.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad]): Remove unnecessary use of
[WebResourceHandle _request].
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:]): Remove assert about
status code, since status codes are going away.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]): Use currentURL for logging.
(-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
(-[WebMainResourceClient handle:didReceiveData:]): Ditto.
2002-10-02 Darin Adler <darin@apple.com>
* WebView.subproj/WebControllerPolicyDelegate.h: Change modifierMask to
modifierFlags to match NSEvent.
* WebView.subproj/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate clickPolicyForElement:button:modifierFlags:]): Ditto.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): Ditto.
2002-10-02 Darin Adler <darin@apple.com>
Get rid of uses of canonicalURL.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
Start with normal URL. The change to the canonical URL will come in as a redirect.
(-[WebSubresourceClient handle:didReceiveData:]): Remove assert.
(-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithRequest:]):Start with normal URL. The change to the
canonical URL will come in as a redirect.
2002-10-02 Ken Kocienda <kocienda@apple.com>
Added import of WebHTTPResourceRequest.h to get access to methods
which have moved to the HTTP-sepcific request category.
* WebView.subproj/WebDataSourcePrivate.m
2002-10-01 John Sullivan <sullivan@apple.com>
* WebKit.exp: added .objc_class_name_WebTextRendererFactory
so I could use it from WebBrowser.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge startLoadingResource:withURL:referrer:]):
Just changed whitespace so the .exp change would be built.
2002-10-01 Chris Blumenberg <cblu@apple.com>
Fixed build breakage.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView setWindow]):
2002-10-01 Ken Kocienda <kocienda@apple.com>
Implemented WebResourceRequest "category" design for extending a
request with protocol-specific data.
* WebCoreSupport.subproj/WebBridge.m: Now imports WebHTTPResourceRequest.h.
* WebCoreSupport.subproj/WebSubresourceClient.m: Ditto.
* WebView.subproj/WebMainResourceClient.m: Ditto.
2002-10-01 Chris Blumenberg <cblu@apple.com>
- Added debug drawing
- removed unnecessary ifdef'ing.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView sendActivateEvent:]):
(-[WebBaseNetscapePluginView becomeFirstResponder]):
(-[WebBaseNetscapePluginView resignFirstResponder]):
(-[WebBaseNetscapePluginView mouseDown:]):
(-[WebBaseNetscapePluginView mouseUp:]):
(-[WebBaseNetscapePluginView mouseEntered:]):
(-[WebBaseNetscapePluginView mouseExited:]):
(-[WebBaseNetscapePluginView menuForEvent:]):
(-[WebBaseNetscapePluginView setWindow]):
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView drawRect:]):
2002-10-01 Ken Kocienda <kocienda@apple.com>
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:]): Fixed Development build breakage. Call to [response statusCode]
now calls the handle's private method to get the status code.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
(-[WebMainResourceClient handle:didReceiveData:]): Calls new textEncodingName method, replacing call to characterSet.
2002-10-01 Ken Kocienda <kocienda@apple.com>
* WebView.subproj/WebLoadProgress.m:
(-[WebLoadProgress initWithResourceHandle:]): Status code moved from WebResourceResponse
to WebResourceHandle private API.
2002-10-01 Ken Kocienda <kocienda@apple.com>
Changed WebResourceHandle so that the init method no longer starts the
loading of the request to begin. Added new loadWithDelegate: method which
is called separatetly from the init method, to start loads.
All of the changes here update code that depends on WebResourceHandle. The
changes move the code to the modified API.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad])
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading])
2002-10-01 Chris Blumenberg <cblu@apple.com>
Fixed copyright comments.
* Plugins.subproj/WebBaseNetscapePluginView.h:
* Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
* Plugins.subproj/WebNetscapePluginDocumentView.h:
* Plugins.subproj/WebNetscapePluginDocumentView.m:
* Plugins.subproj/WebNetscapePluginEmbeddedView.h:
* Plugins.subproj/WebNetscapePluginEmbeddedView.m:
* Plugins.subproj/WebNullPluginView.h:
* Plugins.subproj/WebNullPluginView.m:
* Plugins.subproj/WebPlugin.h:
* Plugins.subproj/WebPlugin.m:
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
* Plugins.subproj/WebPluginNullEventSender.h:
* Plugins.subproj/WebPluginNullEventSender.m:
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
* Plugins.subproj/npapi.h:
* Plugins.subproj/npapi.m:
2002-10-01 Ken Kocienda <kocienda@apple.com>
Many changes to coincide with API work in WebFoundation. Most of the modifications
here have to do with changes for the new callback scheme.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader handleDidFinishLoading:])
(-[WebIconLoader handle:willSendRequest:]): New method. A no-op here.
(-[WebIconLoader handle:didReceiveResponse:]): Ditto.
* Plugins.subproj/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView stop]): Fix for Deployment build breakage.
* Plugins.subproj/WebPluginStream.h: Add response ivar.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad]): Tweak method name for new API.
(-[WebNetscapePluginStream receivedData:withHandle:]):
(-[WebNetscapePluginStream handle:willSendRequest:]): New method. Replaces old redirect callback.
(-[WebNetscapePluginStream handle:didReceiveResponse:]): New method. Set the response ivar.
* WebCoreSupport.subproj/WebSubresourceClient.h: Add response ivar.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient dealloc]): Release response ivar.
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Set the request user agent here.
(-[WebSubresourceClient handle:willSendRequest:]): New method. Handle like a redirect.
(-[WebSubresourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
(-[WebSubresourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
(-[WebSubresourceClient handleDidFinishLoading:]): Ditto.
(-[WebSubresourceClient handle:didFailLoadingWithError:]): Ditto.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]): Ditto.
* WebView.subproj/WebDataSourcePrivate.h: Add _setRequest method.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading]): Call didStartLoadingWithURL with request URL instead of handle URL.
(-[WebDataSource _setRequest:]): Add implementation.
* WebView.subproj/WebLoadProgress.m:
(-[WebLoadProgress initWithResourceHandle:]): Tweaks for new WebFoundation API and method names.
* WebView.subproj/WebMainResourceClient.h: Add response ivar.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]): Set user agent on request here.
(-[WebMainResourceClient dealloc]): Release response ivar.
(-[WebMainResourceClient didCancelWithHandle:]): Tweaks for new WebFoundation API and method names.
(-[WebMainResourceClient handleDidFinishLoading:]): Tweaks for new WebFoundation API and method names.
(-[WebMainResourceClient handle:willSendRequest:]): New method. Handle like a redirect.
(-[WebMainResourceClient handle:didReceiveResponse:]): New method. Set the response ivar.
(-[WebMainResourceClient handle:didReceiveData:]): Tweaks for new WebFoundation API and method names.
(-[WebMainResourceClient handle:didFailLoadingWithError:]): Ditto.
2002-09-30 Chris Blumenberg <cblu@apple.com>
A ton o' plugin view clean-up and arch changes. Turned WebPluginView into WebBaseNetscapePluginView. New classes WebNetscapePluginEmbeddedView and WebNetscapePluginDocumentView are subclasses of WebBaseNetscapePluginView. WebNetscapePluginDocumentView ha
ndles non-HTML plug-in content and WebNetscapePluginEmbeddedView is the WebHTMLView subview.
Found that we leak the world on complex pages with plug-ins such as macromedia.com and marvel.com when closing the window. Still need to figure this out.
* Plugins.subproj/WebBaseNetscapePluginView.h: Added.
* Plugins.subproj/WebBaseNetscapePluginView.m: Added.
(+[WebBaseNetscapePluginView getCarbonEvent:]):
(-[WebBaseNetscapePluginView getCarbonEvent:]):
(-[WebBaseNetscapePluginView modifiersForEvent:]):
(-[WebBaseNetscapePluginView getCarbonEvent:withEvent:]):
(-[WebBaseNetscapePluginView keyMessageForEvent:]):
(-[WebBaseNetscapePluginView sendEvent:]):
(-[WebBaseNetscapePluginView sendActivateEvent:]):
(-[WebBaseNetscapePluginView sendUpdateEvent]):
(-[WebBaseNetscapePluginView acceptsFirstResponder]):
(-[WebBaseNetscapePluginView becomeFirstResponder]):
(-[WebBaseNetscapePluginView resignFirstResponder]):
(-[WebBaseNetscapePluginView mouseDown:]):
(-[WebBaseNetscapePluginView mouseUp:]):
(-[WebBaseNetscapePluginView mouseEntered:]):
(-[WebBaseNetscapePluginView mouseExited:]):
(-[WebBaseNetscapePluginView keyUp:]):
(-[WebBaseNetscapePluginView keyDown:]):
(-[WebBaseNetscapePluginView isInResponderChain]):
(-[WebBaseNetscapePluginView performKeyEquivalent:]):
(-[WebBaseNetscapePluginView menuForEvent:]):
(-[WebBaseNetscapePluginView setUpWindowAndPort]):
(-[WebBaseNetscapePluginView setWindow]):
(-[WebBaseNetscapePluginView removeTrackingRect]):
(-[WebBaseNetscapePluginView resetTrackingRect]):
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView stop]):
(-[WebBaseNetscapePluginView dataSource]):
(-[WebBaseNetscapePluginView webFrame]):
(-[WebBaseNetscapePluginView controller]):
(-[WebBaseNetscapePluginView plugin]):
(-[WebBaseNetscapePluginView setMIMEType:]):
(-[WebBaseNetscapePluginView setBaseURL:]):
(-[WebBaseNetscapePluginView setArguments:]):
(-[WebBaseNetscapePluginView setMode:]):
(-[WebBaseNetscapePluginView initWithFrame:]):
(-[WebBaseNetscapePluginView dealloc]):
(-[WebBaseNetscapePluginView drawRect:]):
(-[WebBaseNetscapePluginView isFlipped]):
(-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
(-[WebBaseNetscapePluginView viewDidMoveToWindow]):
(-[WebBaseNetscapePluginView viewHasMoved:]):
(-[WebBaseNetscapePluginView windowWillClose:]):
(-[WebBaseNetscapePluginView windowBecameKey:]):
(-[WebBaseNetscapePluginView windowResignedKey:]):
(-[WebBaseNetscapePluginView defaultsHaveChanged:]):
(-[WebBaseNetscapePluginView frameStateChanged:]):
(-[WebBaseNetscapePluginView pluginInstance]):
(-[WebBaseNetscapePluginView pluginURLFromCString:]):
(-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
(-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
(-[WebBaseNetscapePluginView getURL:target:]):
(-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
(-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
(-[WebBaseNetscapePluginView newStream:target:stream:]):
(-[WebBaseNetscapePluginView write:len:buffer:]):
(-[WebBaseNetscapePluginView destroyStream:reason:]):
(-[WebBaseNetscapePluginView status:]):
(-[WebBaseNetscapePluginView invalidateRect:]):
(-[WebBaseNetscapePluginView invalidateRegion:]):
(-[WebBaseNetscapePluginView forceRedraw]):
* Plugins.subproj/WebBaseNetscapePluginViewPrivate.h: Added.
* Plugins.subproj/WebNetscapePluginDocumentView.h: Added.
* Plugins.subproj/WebNetscapePluginDocumentView.m: Added.
(-[WebNetscapePluginDocumentView initWithFrame:]):
(-[WebNetscapePluginDocumentView dealloc]):
(-[WebNetscapePluginDocumentView drawRect:]):
(-[WebNetscapePluginDocumentView dataSource]):
(-[WebNetscapePluginDocumentView setDataSource:]):
(-[WebNetscapePluginDocumentView dataSourceUpdated:]):
(-[WebNetscapePluginDocumentView setNeedsLayout:]):
(-[WebNetscapePluginDocumentView layout]):
* Plugins.subproj/WebNetscapePluginEmbeddedView.h: Added.
* Plugins.subproj/WebNetscapePluginEmbeddedView.m: Added.
(-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
(-[WebNetscapePluginEmbeddedView dealloc]):
(-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
(-[WebNetscapePluginEmbeddedView start]):
(-[WebNetscapePluginEmbeddedView dataSource]):
* Plugins.subproj/WebNetscapePluginViewPrivate.h: Removed.
* Plugins.subproj/WebPluginDatabase.m:
(-[WebNetscapePluginDatabase init]):
* Plugins.subproj/WebPluginNullEventSender.h:
* Plugins.subproj/WebPluginNullEventSender.m:
(-[WebNetscapePluginNullEventSender initWithPluginView:]):
(-[WebNetscapePluginNullEventSender sendNullEvents]):
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
(-[WebNetscapePluginStream dealloc]):
(-[WebNetscapePluginStream startLoad]):
(-[WebNetscapePluginStream receivedData:withDataSource:]):
(-[WebNetscapePluginStream handleWillUseUserAgent:forURL:]):
(-[WebNetscapePluginStream handle:didReceiveData:]):
(-[WebNetscapePluginStream handleDidFinishLoading:]):
(-[WebNetscapePluginStream cancel]):
(-[WebNetscapePluginStream handle:didFailLoadingWithError:]):
(-[WebNetscapePluginStream handleDidRedirect:toURL:]):
* Plugins.subproj/WebPluginView.h: Removed.
* Plugins.subproj/WebPluginView.m: Removed.
* Plugins.subproj/npapi.m:
(NPN_GetURLNotify):
(NPN_GetURL):
(NPN_PostURLNotify):
(NPN_PostURL):
(NPN_NewStream):
(NPN_Write):
(NPN_DestroyStream):
(NPN_Status):
(NPN_InvalidateRect):
(NPN_InvalidateRegion):
(NPN_ForceRedraw):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[NSView _web_stopIfPluginView]):
2002-09-30 Darin Adler <darin@apple.com>
* WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
Remove the ill-advised "don't even create a WebDataSource if WebResourceHandle
can't handle this request" code.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
Rearrange checks so we won't get confused if we can't create a handle.
2002-09-30 Darin Adler <darin@apple.com>
* English.lproj/StringsNotToBeLocalized.txt: Added.
2002-09-30 Darin Adler <darin@apple.com>
- fixed crashing part of 3063517 -- crash loading .png in separate window
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView start]): Don't try to start if the NPP_New is 0.
This indicates the the plugin hasn't been loaded.
2002-09-30 Darin Adler <darin@apple.com>
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _setLoading:]):
Remove extra quotes in use of ASSERT_ARG.
2002-09-29 Darin Adler <darin@apple.com>
* Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
Don't be case sensitive about filename extensions.
* Misc.subproj/WebDownloadHandler.m:
* Misc.subproj/WebIconLoader.m:
* Plugins.subproj/WebPluginStream.m:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDefaultContextMenuDelegate.m:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebView.m:
Don't use WebFoundation.h -- faster building to just import what we really use.
2002-09-29 Chris Blumenberg <cblu@apple.com>
Fixed: 2978258 - quake3arena.com sends me to the flash=false site
The page has a flash plugin that once loaded, requests the flash=true page. If the plugin doesn't load, the meta refresh tag to the flash=false page fires after 3 seconds. This is how this site's flash detection works.
The reason this doesn't work for us is because the flash movie is at the bottom of the page. Plugins don't start until the initial drawRect. Since the movie is at the bottom of the page and out of site, the plugin never gets the drawRect and thus, never
starts. We now start plug-ins when they are added to the window.
Fixed: 3062224 - context menu includes "Download Item to Disk" for mailto links
- Fixed click then click and drag causes crash.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView drawRect:]): don't start plug-in here
(-[WebNetscapePluginView viewDidMoveToWindow]): start it here
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]): don't provide "Download Link To Disk" and "Open Link In New Window" items for URLs we cant handle.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): clean-up
(-[WebHTMLView mouseDragged:]): Don't allow drag if the frame has a provisional data source because this view may be released and the drag callbacks might reference this released view.
2002-09-28 Darin Adler <darin@apple.com>
* WebView.subproj/WebDataSource.m: (-[WebDataSource initWithRequest:]):
Catch a request that we can't use here instead of failing later.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading]):
Added an assert so the failure was less confusing; good idea to leave it in.
2002-09-28 Chris Blumenberg <cblu@apple.com>
Support for latest Flash plug-in. It requests a javascript URL for every plug-in instance.
Until javascript URLs work, we return an error to the plug-in.
Fixed: 3035582 - flash animations don't work after upgrading flash
Fixed: 3021936 - links in flash at foggypetronasracing.com doesn't work
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]):
Make the request here and return nil if we can't create a handle with it.
(-[WebNetscapePluginStream dealloc]): release the request
(-[WebNetscapePluginStream startLoad]): use the request when creating the handle
2002-09-28 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsLayout]): Added.
2002-09-27 Chris Blumenberg <cblu@apple.com>
Fixed KJS crasher caused by nil plug-in returned from WebPlugin.
Got the RealPlayer plug-in loaded, nothing playing yet.
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin getPluginInfo]): check for nil plug-in names/descriptions
(-[WebNetscapePlugin stringByResolvingSymlinksAndAliasesInPath:]): new, resolves old-style aliases
(-[WebNetscapePlugin initWithPath:]): call stringByResolvingSymlinksAndAliasesInPath
2002-09-27 Richard Williamson <rjw@apple.com>
Fix 3058315: crash in WebHTMLRepresentation receivedData:withDataSource
http://www.u2.com/lite/ does some whacky things with its framset's onLoad
handler. The fix ensures that data isn't sent to the bridge once
the bridge has been dealloced.
* WebKit.pbproj/project.pbxproj: Nothing changed. PB dorkiness.
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation receivedData:withDataSource:]):
2002-09-27 Chris Blumenberg <cblu@apple.com>
Fixed: 3056559 - QT plugin doesn't load
Fixed: 3042850 - Enable Java by default
Cleaned up WebPlugin and WebPluginDatabase.
* Plugins.subproj/WebPlugin.h:
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin openResourceFile]):
(-[WebNetscapePlugin closeResourceFile:]):
(-[WebNetscapePlugin stringForStringListID:andIndex:]):
(-[WebNetscapePlugin getPluginInfo]):
(-[WebNetscapePlugin initWithPath:]):
(-[WebNetscapePlugin load]):
(-[WebNetscapePlugin unload]):
(-[WebNetscapePlugin MIMEToExtensionsDictionary]):
(-[WebNetscapePlugin extensionToMIMEDictionary]):
(-[WebNetscapePlugin MIMEToDescriptionDictionary]):
(-[WebNetscapePlugin description]):
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
(-[WebNetscapePluginDatabase pluginForMIMEType:]):
(-[WebNetscapePluginDatabase pluginForExtension:]):
(-[WebNetscapePluginDatabase pluginForFilename:]):
(-[WebNetscapePluginDatabase MIMETypes]):
(-[WebNetscapePluginDatabase init]):
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView setDataSource:]):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]): Enable Java by default
2002-09-27 Richard Williamson <rjw@apple.com>
Fixed 3060158: REGRESSION: iframes added to session history
Also moved setting title in history to WebKit.
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(+[WebHistory sharedHistory]):
(+[WebHistory webHistoryWithFile:]):
(-[WebHistory addEntryForURL:]):
(-[WebHistory addEntries:]):
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge requestedURL]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setTitle:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-26 Richard Williamson <rjw@apple.com>
More twiddling. Changed the color of the drag labels to
match the favorites bar.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-27 Chris Blumenberg <cblu@apple.com>
Added support for dragging links the the dock.
Created new pasteboard types WebURLPboardType WebURLNamePboardType that the dock requires.
* Misc.subproj/WebNSPasteboardExtras.h:
* Misc.subproj/WebNSPasteboardExtras.m:
(+[NSPasteboard initialize]): set WebURLPboardType and WebURLNamePboardType
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]): use WebURLPboardType and WebURLNamePboardType
* WebKit.exp: export WebURLPboardType and WebURLNamePboardType
2002-09-27 Maciej Stachowiak <mjs@apple.com>
* Panels.subproj/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel setUpForRequest:]):
(-[WebAuthenticationPanel runAsModalDialogWithRequest:]):
(-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
* Panels.subproj/WebPanelAuthenticationHandler.h:
* Panels.subproj/WebPanelAuthenticationHandler.m:
(-[WebPanelAuthenticationHandler isReadyToStartAuthentication:]):
(-[WebPanelAuthenticationHandler startAuthentication:]):
(-[WebPanelAuthenticationHandler _authenticationDoneWithRequest:result:]):
2002-09-26 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge receivedData:withDataSource:]): Use NSString for encoding.
* WebView.subproj/WebController.h: Update names to use separate boolean
for user agent and strings for text encodings instead of CFStringEncoding.
* WebView.subproj/WebController.m:
(-[WebController setCustomUserAgent:]): Name change.
(-[WebController resetUserAgent]): Added.
(-[WebController hasCustomUserAgent]): Added.
(-[WebController customUserAgent]): Name change.
(-[WebController setCustomTextEncodingName:]): Take NSString.
(-[WebController resetTextEncoding]): Update for NSString.
(-[WebController _mainFrameOverrideEncoding]): Ditto.
(-[WebController hasCustomTextEncoding]): Ditto.
(-[WebController customTextEncodingName]): Return NSString.
* WebView.subproj/WebDataSourcePrivate.h: Use NSString instead of
CFStringEncoding.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate init]): No need to init.
(-[WebDataSource _setContentType:]): Copy, don't retain.
(-[WebDataSource _setEncoding:]): Copy, don't retain.
(-[WebDataSource _setOverrideEncoding:]): Use NSString.
(-[WebDataSource _overrideEncoding]): Use NSString.
* WebView.subproj/WebFramePrivate.h: Use NSString.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Use NSString.
* WebView.subproj/WebPreferences.h: Use NSString instead of
CFStringEncoding.
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]): Use NSString.
(-[WebPreferences defaultTextEncodingName]): Use NSString.
(-[WebPreferences setDefaultTextEncodingName:]): Use NSString.
2002-09-26 Chris Blumenberg <cblu@apple.com>
Made WebTextView super-private.
* WebKit.pbproj/project.pbxproj:
2002-09-26 Richard Williamson <rjw@apple.com>
Use a rectangle with rounded corners for dragged label.
Put a subtle shadow behind text in label.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-26 Chris Blumenberg <cblu@apple.com>
- When dragging an image, use the image itself for the drag image
- Support promised file and image data drag types for dragged images.
* Misc.subproj/WebNSImageExtras.h: Added.
* Misc.subproj/WebNSImageExtras.m: Added.
(-[NSImage _web_scaleToMaxSize:]): new, scales an image is greater than max
(-[NSImage _web_dissolveToFraction:]): new, dissolves image in place
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h: Added WebElementImageLocationKey to the element dictionary
* WebView.subproj/WebController.m: ditto
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): subclassed for only for image drags
(-[WebHTMLView mouseDragged:]): use the promised file api again.
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): use the retained element dictionary instead of the dragged URL which I deleted.
* WebView.subproj/WebHTMLViewPrivate.h:
=== Alexander-25 ===
2002-09-25 Richard Williamson <rjw@apple.com>
API tweaks.
* Misc.subproj/WebKit.h:
Added headers.
* Misc.subproj/WebKitErrors.h:
Removed #defines.
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading]):
(-[WebDataSource _loadIcon]):
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
Removed isMainDocument.
Moved errors string #defines here.
* WebView.subproj/WebView.m:
2002-09-25 John Sullivan <sullivan@apple.com>
- fixed 3060773 -- Wrong title proposed when image link
dropped on favorites bar
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): Claim the pasteboard (via
declareTypes:) before putting data on it.
2002-09-25 Richard Williamson <rjw@apple.com>
API and documentation tweaks.
WebDocumentDragSettings: canDrag -> acceptsDrag
WebDataSource: removed originalURL
WebStandardPanels: use -> uses
* History.subproj/WebBackForwardList.h:
* Misc.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler initWithDataSource:]):
* Panels.subproj/WebStandardPanels.h:
* Panels.subproj/WebStandardPanels.m:
(-[WebStandardPanels setUsesStandardAuthenticationPanel:]):
(-[WebStandardPanels usesStandardAuthenticationPanel]):
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView frameStateChanged:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient cancel]):
* WebView.subproj/WebController.h:
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]):
* WebView.subproj/WebDocument.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
(-[WebFrame startLoading]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _setState:]):
(-[WebFrame _goToItem:withFrameLoadType:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView setAcceptsDrags:]):
(-[WebHTMLView acceptsDrags]):
(-[WebHTMLView setAcceptsDrops:]):
(-[WebHTMLView acceptsDrops]):
* WebView.subproj/WebImageView.m:
(-[WebImageView setAcceptsDrags:]):
(-[WebImageView acceptsDrags]):
(-[WebImageView setAcceptsDrops:]):
(-[WebImageView acceptsDrops]):
* WebView.subproj/WebLoadProgress.h:
* WebView.subproj/WebLocationChangeDelegate.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]):
* WebView.subproj/WebView.h:
2002-09-25 Ken Kocienda <kocienda@apple.com>
Changes to move the WebResourceHandle API closer to the
specified design. This includes:
- Removed loadInBackground method from the public interface.
- Start asynchronous loading in WebResourceHandle init method. This required some
code reorganization in callers.
- Remove loadInForeground: from WebResourceHandle interface.
- Move WebResourceHandle callback deferral methods to SPI header file.
- Change name of WebResourceHandle cancelLoadInBackground method to cancel.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
(-[WebIconLoader stopLoading])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad])
(-[WebNetscapePluginStream cancel])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
(-[WebSubresourceClient cancel])
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading])
(-[WebDataSource _addSubresourceClient:])
(-[WebDataSource _stopLoading])
(-[WebDataSource _defersCallbacksChanged])
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveData:])
2002-09-25 Chris Blumenberg <cblu@apple.com>
Fixed: 3050665 - REGRESSION: mp3 audio loads and plays, but no progress or play control is visible
* Plugins.subproj/WebPluginView.h:
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView setNeedsLayout:]):
(-[WebNetscapePluginView layout]):
(-[WebNetscapePluginView drawRect:]):
2002-09-25 Darin Adler <darin@apple.com>
Make the "set aside subviews" logic stronger so it can handle a display
while inside drawRect. But note, this recursive display is most likely
the cause of the redrawing problems we have while resizing, like bug 2969367.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]): Restore views and then set them aside again, but don't
leave the "views set aside" boolean set.
* WebView.subproj/WebHTMLViewPrivate.h: Add private _setAsideSubviews and _restoreSubviews methods.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _setAsideSubviews]): Added.
(-[WebHTMLView _restoreSubviews]): Added.
(-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
Use the new _setAsideSubviews and _restoreSubviews methods.
(-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
2002-09-25 Ken Kocienda <kocienda@apple.com>
Removed this method from WebResourceHandle:
+(BOOL)canInitWithURL:(NSURL *)theURL;
replaced with:
+(BOOL)canInitWithRequest:(WebResourceRequest *)request;
Callers have been updated to reflect the change.
* WebView.subproj/WebDefaultPolicyDelegate.m:
(+[WebDefaultPolicyDelegate defaultURLPolicyForURL:])
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowURL:])
2002-09-25 Ken Kocienda <kocienda@apple.com>
More moves to the new WebResourceHandleDelegate API.
This change moves all WebResourceHandleDelegate implementors to:
-(void)handle:(WebResourceHandle *)handle didReceiveData:(NSData *)data;
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader handle:didReceiveData:])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream handle:didReceiveData:])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:didReceiveData:])
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didReceiveData:])
2002-09-25 Ken Kocienda <kocienda@apple.com>
Moving to the new WebResourceHandleDelegate API.
This change moves all WebResourceHandleDelegate implementors to:
- (void)handle:(WebResourceHandle *)handle didFailLoadingWithError:(WebError *)result;
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader handle:didFailLoadingWithError:])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream handle:didFailLoadingWithError:])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handle:didFailLoadingWithError:])
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handle:didFailLoadingWithError:])
2002-09-25 Ken Kocienda <kocienda@apple.com>
Begin change from WebResourceClient to WebResourceHandleDelegate.
In this step, I have just changed the name of the protocol; the
protocol interface is the same.
I made other cosmetic changes to variable names and such.
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad])
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:])
* WebCoreSupport.subproj/WebSubresourceClient.h:
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:])
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading])
* WebView.subproj/WebMainResourceClient.h:
2002-09-25 Maciej Stachowiak <mjs@apple.com>
- fixed 2854536 - New cookie policy: "accept cookies only from the
same domain as the main page"
* WebCoreSupport.subproj/WebCookieAdapter.h:
* WebCoreSupport.subproj/WebCookieAdapter.m:
(-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
(-[WebSubresourceClient handleDidRedirect:toURL:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidRedirect:toURL:]):
2002-09-24 Richard Williamson <rjw@apple.com>
More documentation tweaks.
* History.subproj/WebHistory.h:
* History.subproj/WebHistoryItem.h:
* WebView.subproj/WebContextMenuDelegate.h:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebLocationChangeDelegate.h:
* WebView.subproj/WebResourceProgressDelegate.h:
2002-09-24 Darin Adler <darin@apple.com>
- fixed 3059513 -- REGRESSION: Scrolling to fragment doesn't work
Turns out it was better to just put the extra smarts into the clip view
that we are already creating. Making WebHTMLView be a second clip view
was silly and broke things.
* WebView.subproj/WebView.m: (-[WebView initWithFrame:]): Create a WebClipView
and use it as the content view rather than the NSClipView created by default.
* WebKit.pbproj/project.pbxproj: Added WebClipView.
* WebView.subproj/WebClipView.h: Added.
* WebView.subproj/WebClipView.m: Added.
* WebView.subproj/WebHTMLView.h: Don't be a subclass of NSClipView any more.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]): Call setAdditionalClip and resetAdditionalClip on
the clip view.
* WebView.subproj/WebHTMLViewPrivate.h: Remove inDrawRect and drawRect.
* WebView.subproj/WebHTMLViewPrivate.m: Remove visibleRect override. This is
now in WebClipView.
2002-09-24 Chris Blumenberg <cblu@apple.com>
More documentation changes.
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultContextMenuDelegate.h:
* WebView.subproj/WebDocument.h:
2002-09-24 Richard Williamson <rjw@apple.com>
Added FIXME note about unresolved issue with CFStringEncoding/NSStringEncoding.
* WebView.subproj/WebController.h:
2002-09-24 Richard Williamson <rjw@apple.com>
Documentation for WebDataSource and WebFrame.
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource frameExists:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource addFrame:]):
* WebView.subproj/WebFrame.h:
2002-09-24 Darin Adler <darin@apple.com>
- fixed 3059266 -- REGRESSION: clicking in web view when location field is
focused does not focus web view
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView needsPanelToBecomeKey]):
Must override this to return YES, because NSClipView makes it return NO
even though we accept the first responder.
2002-09-24 John Sullivan <sullivan@apple.com>
- fixed 3056158 -- REGRESSION: Page up/down should scroll one
whole contentView minus at least one readable line of text
This was broken a while back when the keyboard scrolling code
migrated into WebKit.
* WebView.subproj/WebViewPrivate.m:
(-[WebView _verticalKeyboardScrollAmount]),
(-[WebView _horizontalKeyboardScrollAmount]):
New private methods, return one arrow key's worth of scrolling.
(-[WebView _scrollLineVertically:]),
(-[WebView _scrollLineHorizontally:]):
Now use the broken-out methods.
(-[WebView _pageVertically:]),
(-[WebView _pageHorizontally:]):
overlap by one arrow key's worth of scrolling instead of the
teensy-weensy one click's worth.
2002-09-24 Chris Blumenberg <cblu@apple.com>
Documentation for WebHTMLView
* WebView.subproj/WebHTMLView.h:
2002-09-24 Richard Williamson <rjw@apple.com>
Documentation changes. Removal of imports from
some headers required modification of .m.
* Plugins.subproj/WebNullPluginView.m:
* WebCoreSupport.subproj/WebBridge.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
* WebView.subproj/WebDefaultPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
(+[WebDefaultPolicyDelegate defaultURLPolicyForURL:]):
(-[WebDefaultPolicyDelegate URLPolicyForURL:inFrame:]):
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebHTMLViewPrivate.m:
2002-09-24 Chris Blumenberg <cblu@apple.com>
Renamed element info keys to WebElement* instead of WebContextMenuElement*
Added WebKit API documentation
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin load]): clean-up
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebContextMenuDelegate.h:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebControllerPolicyDelegate.h:
* WebView.subproj/WebDefaultContextMenuDelegate.h:
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
(-[WebDefaultContextMenuDelegate downloadURL:]):
(-[WebDefaultContextMenuDelegate openLinkInNewWindow:]):
(-[WebDefaultContextMenuDelegate downloadLinkToDisk:]):
(-[WebDefaultContextMenuDelegate copyLinkToClipboard:]):
(-[WebDefaultContextMenuDelegate openImageInNewWindow:]):
(-[WebDefaultContextMenuDelegate downloadImageToDisk:]):
(-[WebDefaultContextMenuDelegate copyImageToClipboard:]):
(-[WebDefaultContextMenuDelegate openFrameInNewWindow:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
2002-09-24 Darin Adler <darin@apple.com>
Cleaned up some loose ends from adding setNeedsLayout to the WebDocumentView
protocol. Was causing exceptions.
* Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView setNeedsLayout:]):
* WebView.subproj/WebTextView.m: (-[WebTextView setNeedsLayout:]):
Added missing stubs.
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setNeedsReapplyStyles]):
Removed unneeded cast.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]): Remove an
unneeded cast and call to isDocumentHTML.
* WebView.subproj/WebHTMLView.h: No need to re-declare setNeedsLayout.
* WebView.subproj/WebView.m: (-[WebView setFrame:]): Get rid of unneeded check
of isDocumentHTML.
2002-09-24 Darin Adler <darin@apple.com>
- fixed 3057383 -- focus rectangles are being drawn multiple times
- fixed 3051025 -- focus ring on password field gets darker and darker
To make focus rings clip too, we have to do more than just set the clip.
We also have to set the visible rectangle to make clipping happen, and we
need to be a subclass of NSClipView so that the focus ring drawing code will
consult us rather than one of our superviews.
* WebView.subproj/WebHTMLView.h: Be a subclass of NSClipView.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Set a inDrawRect
flag, and a drawRect rectangle. This tells us to clip to this rectangle.
what we need to clip to.
* WebView.subproj/WebHTMLViewPrivate.h: Added inDrawRect and drawRect.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView visibleRect]): Clip the visible rect based on the drawRect while
inDrawRect is set.
2002-09-23 Chris Blumenberg <cblu@apple.com>
Factored URL pasteboard initialization to 1 place.
Fixed: 3048924 - regression: drag & drop broken for initial empty page
Fixed: 3045997 - Dragging a link from one Alex window to another one doesn't work
* Misc.subproj/WebNSPasteboardExtras.h:
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeURL:andTitle:withOwner:]): new
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate copyLinkToClipboard:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): call -[NSPasteboard _web_writeURL:andTitle:withOwner:]
* WebView.subproj/WebView.m:
(-[WebView draggingEntered:]): handle nil cases
2002-09-23 Maciej Stachowiak <mjs@apple.com>
Added documentation for these two delegate protocols.
* WebView.subproj/WebLocationChangeDelegate.h:
* WebView.subproj/WebResourceProgressDelegate.h:
2002-09-23 Richard Williamson <rjw@apple.com>
Made WebIconLoader and WebIconDatabase SPI.
* WebKit.pbproj/project.pbxproj:
2002-09-23 Richard Williamson <rjw@apple.com>
WebContextMenuHandler becomes WebContextMenuDelegate
WebControllerPolicyHandler becomes WebControllerPolicyDelegate
WebLocationChangeHandler becomes WebLocationChangeDelegate
WebResourceProgressHandler becomes WebResourceProgressDelegate
WebWindowContext becomes WebWindowOperationsDelegate
* Misc.subproj/WebDownloadHandler.m:
* Plugins.subproj/WebNullPluginView.m:
(-[WebNullPluginView drawRect:]):
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
(-[WebNetscapePluginView status:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:referrer:frameName:]):
(-[WebBridge areToolbarsVisible]):
(-[WebBridge setToolbarsVisible:]):
(-[WebBridge isStatusBarVisible]):
(-[WebBridge setStatusBarVisible:]):
(-[WebBridge setWindowFrame:]):
(-[WebBridge window]):
(-[WebBridge setStatusText:]):
(-[WebBridge reportClientRedirectTo:delay:fireDate:]):
(-[WebBridge reportClientRedirectCancelled]):
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebContextMenuDelegate.h:
* WebView.subproj/WebContextMenuHandler.h: Removed.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setWindowOperationsDelegate:]):
(-[WebController windowOperationsDelegate]):
(-[WebController setResourceProgressDelegate:]):
(-[WebController resourceProgressDelegate]):
(-[WebController setDownloadProgressDelegate:]):
(-[WebController downloadProgressDelegate]):
(-[WebController setContextMenuDelegate:]):
(-[WebController contextMenuDelegate]):
(-[WebController setPolicyDelegate:]):
(-[WebController policyDelegate]):
(-[WebController setLocationChangeDelegate:]):
(-[WebController locationChangeDelegate]):
* WebView.subproj/WebControllerPolicyDelegate.m: Added.
(-[WebPolicyPrivate dealloc]):
(-[WebPolicy _setPolicyAction:]):
(-[WebPolicy policyAction]):
(-[WebPolicy path]):
(-[WebPolicy URL]):
(-[WebPolicy _setPath:]):
(-[WebPolicy dealloc]):
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:andPath:]):
* WebView.subproj/WebControllerPolicyDelegatePrivate.h:
* WebView.subproj/WebControllerPolicyHandler.h: Removed.
* WebView.subproj/WebControllerPolicyHandler.m: Removed.
* WebView.subproj/WebControllerPolicyHandlerPrivate.h: Removed.
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate init]):
(-[WebControllerPrivate dealloc]):
(-[WebController _defaultContextMenuDelegate]):
(-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
(-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
(-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading]):
(-[WebDataSource _setTitle:]):
(-[WebDataSource _setURL:]):
(-[WebDataSource _loadIcon]):
* WebView.subproj/WebDefaultContextMenuDelegate.h:
* WebView.subproj/WebDefaultContextMenuDelegate.m:
(-[WebDefaultContextMenuDelegate openNewWindowWithURL:referrer:]):
(-[WebDefaultContextMenuDelegate downloadURL:]):
* WebView.subproj/WebDefaultContextMenuHandler.h: Removed.
* WebView.subproj/WebDefaultContextMenuHandler.m: Removed.
* WebView.subproj/WebDefaultPolicyDelegate.h:
* WebView.subproj/WebDefaultPolicyDelegate.m:
* WebView.subproj/WebDefaultPolicyHandler.h: Removed.
* WebView.subproj/WebDefaultPolicyHandler.m: Removed.
* WebView.subproj/WebDocument.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
(-[WebFrame frameNamed:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _timedLayout:]):
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _isLoadComplete]):
(-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
(-[WebFrame _shouldShowURL:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]):
* WebView.subproj/WebImageView.m:
(-[WebImageView setNeedsLayout:]):
* WebView.subproj/WebLocationChangeDelegate.h:
* WebView.subproj/WebLocationChangeDelegate.m:
* WebView.subproj/WebLocationChangeHandler.h: Removed.
* WebView.subproj/WebLocationChangeHandler.m: Removed.
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient dealloc]):
(-[WebMainResourceClient receivedProgressWithHandle:complete:]):
(-[WebMainResourceClient receivedError:forHandle:]):
(-[WebMainResourceClient handleDidReceiveData:data:]):
* WebView.subproj/WebResourceProgressDelegate.h:
* WebView.subproj/WebResourceProgressHandler.h: Removed.
* WebView.subproj/WebView.m:
(-[WebView window]):
* WebView.subproj/WebWindowContext.h: Removed.
* WebView.subproj/WebWindowOperationsDelegate.h:
2002-09-23 Darin Adler <darin@apple.com>
- fixed 3052543 -- iframes don't work with z-index
- fixed 3057382 -- code to prevent subviews from drawing not working
perfectly for subframes
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView isOpaque]): Change this back to always return YES. We handle
this issue at another level now.
(-[WebHTMLView drawRect:]): Clip to the passed-in rect. This was the big change
that fixed most of the trouble.
* WebView.subproj/WebHTMLViewPrivate.h: Remove _isMainFrame.
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView initialize]): Add an imposter for NSView too, so we can make opaqueAncestor
do what we need it to do. This will only work if the application doesn't also poseAsClass
NSView, but it does work.
(-[WebNSView opaqueAncestor]): Always return the topmost WebHTMLView if the object is
inside one, even if there is an intervening opaque object.
* WebView.subproj/WebView.m:
(-[WebView setFrame:]): Do the display call at the window level so the topmost WebHTMLView
always gets involved.
* WebView.subproj/WebViewPrivate.h: Remove _controller, since we already have a public
controller method. Add _isMainFrame.
* WebView.subproj/WebViewPrivate.m: (-[WebView _isMainFrame]): Added.
2002-09-23 Maciej Stachowiak <mjs@apple.com>
* Panels.subproj/WebStandardPanels.h: Added inline header docs.
2002-09-23 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/WebWindowContext.h: Added inline header docs.
2002-09-23 Ken Kocienda <kocienda@apple.com>
Fixes for some build problems I missed earlier due to the fact that PB can't handle header dependencies,
and I did not do a clean build of WebKit.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedError:withDataSource:]): WebFoundation error constant name change.
(-[WebNetscapePluginStream cancel]): Ditto.
* WebCoreSupport.subproj/WebCookieAdapter.m:
(-[WebCookieAdapter cookiesEnabled]): Modified to use [[WebCookieManager sharedCookieManager] acceptPolicy]
rather than reaching down into CFPreferences directly.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): WebFoundation error constant name change.
(-[WebSubresourceClient cancel]): Ditto.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]): Ditto.
2002-09-23 Darin Adler <darin@apple.com>
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
Don't special case the top level frame's view so much.
(-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
(-[NSView _web_propagateDirtyRectToAncestor]): Use public method here instead of private.
2002-09-23 Ken Kocienda <kocienda@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportBadURL:]): WebFoundation error code constant name change
* WebView.subproj/WebView.m:
(+[WebView initialize]): WebError addErrorsFromDictionary changed to addErrorsWithCodesAndDescriptions
2002-09-22 Darin Adler <darin@apple.com>
- fixed 3057380 -- insertion point shows through elements in front of text fields
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView initialize]): Make WebNSTextView pose as NSTextView.
(-[WebNSTextView _web_inHTMLView]): Helper method.
(-[WebNSTextView isOpaque]): Override to return NO for all text views that are inside
an WebHTMLView, so they don't try to do insertion point caching.
(-[WebNSTextView drawInsertionPointInRect:color:turnedOn:]): Use setNeedsDisplayInRect
to trigger insertion point drawing outside drawRect instead of drawing right away.
(-[WebNSTextView _drawRect:clip:]): Set flag so the above can know when it's inside
drawRect and when it's not.
2002-09-21 Darin Adler <darin@apple.com>
WebKit part of the new approach to AppKit drawing control.
Works better than the previous try. Once we fix anomalies with focus rectangles
and a some remaining problems with subframes this should work perfectly.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView isOpaque]): Return NO for frames other than the main frame.
(-[WebHTMLView drawRect:]): Restore the subviews that were set aside.
* WebView.subproj/WebHTMLViewPrivate.h: Add _isMainFrame. Add savedSubviews and subviewsSetAside.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _isMainFrame]): Added.
(-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
Added. If this is the main frame, get all the dirty rects from the subviews and then set
them aside so the AppKit machinery won't draw them.
(-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]): Ditto.
(-[NSView _web_propagateDirtyRectToAncestor]): Added. Propagates dirty rects the same
way that AppKit does, but always does it, ignoring the value of isOpaque.
2002-09-20 Darin Adler <darin@apple.com>
* History.subproj/WebHistory.m: (-[WebHistory addEntryForURLString:]):
Use _web_URLWithString so we can handle unusual characters.
* WebView.subproj/WebDefaultPolicyHandler.m: Remove stray semicolon.
2002-09-20 Chris Blumenberg <cblu@apple.com>
Fixed wasteful memory usage in the WebIconDatabase:
- Rather than have multiple NSImages with multiple representations at multiple sizes, have 1 NSImage per size
- Added API to allow client to control memory caching
* Misc.subproj/WebIconDatabase.h:
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase iconForSiteURL:withSize:]): call iconForSiteURL:withSize:cache:YES
(-[WebIconDatabase iconForSiteURL:withSize:cache:]): new, was iconForSiteURL:withSize:
(-[WebIconDatabase defaultIconWithSize:]): call _iconFromDictionary:forSize:cache:
(-[WebIconDatabase _updateFileDatabase]): write the largest icon to disk
(-[WebIconDatabase _hasIconForSiteURL:]): cleaned-up
(-[WebIconDatabase _iconsForIconURL:]): call _iconFromDictionary:forSize:cache:
(-[WebIconDatabase _iconForFileURL:withSize:]): call _iconFromDictionary:forSize:cache:
(-[WebIconDatabase _builtInIconsForHost:]): call _iconFromDictionary:forSize:cache:
(-[WebIconDatabase _setIcon:forIconURL:]): _iconsBySplittingRepresentationsOfIcon:
(-[WebIconDatabase _releaseIconForIconURL:]): icons at different sizes are now stored in dictionaries
(-[WebIconDatabase _largestIconFromDictionary:]): new, scans the icon dictionary
(-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]): creates the icon dictionary
(-[WebIconDatabase _iconFromDictionary:forSize:cache:]): returns icon from dict, resizes if necessary
(-[WebIconDatabase _iconByScalingIcon:toSize:]): tweak
* Misc.subproj/WebIconDatabasePrivate.h:
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading]): don't call _iconsForIconURL: because it doesn't exist.
2002-09-19 Maciej Stachowiak <mjs@apple.com>
* Makefile.am: Make `doc' target depend on `all'.
* WebView.subproj/WebContextMenuHandler.h: Fix typo found by `make doc'.
* WebView.subproj/WebLocationChangeHandler.h: Likewise.
2002-09-19 Maciej Stachowiak <mjs@apple.com>
* Makefile.am: Added `make doc' target.
2002-09-19 John Sullivan <sullivan@apple.com>
- cleaned up some SPI for handling URLs on pasteboard
* Misc.subproj/WebNSPasteboardExtras.h: Added.
* Misc.subproj/WebNSPasteboardExtras.m: Added.
(+[NSPasteboard _web_dragTypesForURL]): Moved this here; was
-[NSView _web_acceptableDragTypes]
(-[NSPasteboard _web_bestURL]): Moved this here; was
+[NSView _web_bestURLFromPasteboard:]
* WebView.subproj/WebView.m:
(-[WebView initWithFrame:]),
(-[WebView draggingEntered:]),
(-[WebView concludeDragOperation:]):
Updated for SPI change; also removed methods now in NSPasteboard.
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragOperationForDraggingInfo:]):
Updated for SPI change.
* WebKit.pbproj/project.pbxproj: Updated for new files.
=== Alexander-24 ===
2002-09-18 Darin Adler <darin@apple.com>
Fix two problems that led to an assertion now that a bogus
load progress doesn't pass the "bytesReceived == total" test.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out the
resource at the start of the function so that a cancel doesn't
do anything if called in the middle when we stop.
(-[WebNetscapePluginStream cancel]): Send a cancel error instead
of a _receivedProgress. And make a partial progress rather than
sending an empty progress.
(-[WebNetscapePluginStream handleDidFailLoading:withError:]):
Same as handleDidFinishLoading.
2002-09-18 Richard Williamson <rjw@apple.com>
More documentation stuff.
Added attributed text API as requested (yuck!).
Add reconstructedDocumentSource API as requested.
Removed cruft (stale API, bogus comments).
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebHTMLRepresentation.h:
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation reconstructedDocumentSource]):
(-[WebHTMLRepresentation attributedText]):
* WebView.subproj/WebHTMLRepresentationPrivate.h:
* WebView.subproj/WebHTMLView.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView selectedAttributedText]):
(-[WebHTMLView selectedText]):
* WebView.subproj/WebView.h:
2002-09-18 Richard Williamson <rjw@apple.com>
Added document keywords to headers.
Made bookmark related APIs private (for now).
* Misc.subproj/WebIconDatabase.h:
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebKitErrors.h:
* Panels.subproj/WebStandardPanels.h:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDefaultContextMenuHandler.h:
* WebView.subproj/WebLoadProgress.h:
* WebView.subproj/WebLocationChangeHandler.h:
* WebView.subproj/WebPreferences.h:
Made public
* WebHTMLRepresentation.h
* WebHTMLRepresentation.m
2002-09-18 John Sullivan <sullivan@apple.com>
WebKit part of fix for
- 3000823 -- special-case drag of webloc file to bookmarks
- 3004466 -- favorites bar doesn't accept drops of URL strings
or webloc files
* Misc.subproj/WebNSViewExtras.h:
- make _web_bestURLForDraggingInfo: a class method and have it
take an NSPasteboard * instead of an NSDraggingInfo *; change
name to _web_bestURLFromPasteboard:
* Misc.subproj/WebNSViewExtras.m:
(+[NSView _web_bestURLFromPasteboard:]):
- make this a class method and have it take an NSPasteboard *
instead of an NSDraggingInfo *
(-[NSView _web_dragOperationForDraggingInfo:]): Updated for
SPI change.
* WebView.subproj/WebView.m:
(-[WebView draggingEntered:]),
(-[WebView concludeDragOperation:]): Updated for SPI change.
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to headers.
Create seperate files for the protocols
that were defined in WebController.h.
Made -[WebController createFrameNamed:for:inParent:allowsScrolling:]):
private.
* Plugins.subproj/WebPluginView.m:
* WebCoreSupport.subproj/WebBridge.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebContextMenuHandler.h: Added.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
* WebView.subproj/WebDefaultContextMenuHandler.m:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebHTMLView.m:
* WebView.subproj/WebHTMLViewPrivate.m:
* WebView.subproj/WebMainResourceClient.m:
* WebView.subproj/WebResourceProgressHandler.h: Added.
* WebView.subproj/WebView.m:
* WebView.subproj/WebWindowContext.h: Added.
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to header.
* WebView.subproj/WebControllerPolicyHandler.h:
Made WebDynamicScrollBarsView private
* WebKit.pbproj/project.pbxproj:
2002-09-18 Darin Adler <darin@apple.com>
- fixed 3053155 -- REGRESSION: Activity Window thinks 0-byte
images are "complete"
I thought I had fixed it before, but this is needed too.
* WebView.subproj/WebLoadProgress.m:
(-[WebLoadProgress init]): Set "bytes so far" to 0, not -1.
(-[WebLoadProgress initWithResourceHandle:]): Make sure we set total
to -1, not 0, when the response is nil.
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to header.
* WebView.subproj/WebDocument.h:
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to headers.
Made reset a private method.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebFrame.h:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame reset]):
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to headers.
* WebView.subproj/WebView.h:
2002-09-18 Richard Williamson <rjw@apple.com>
Added documentation keywords to headers.
* WebView.subproj/WebDataSource.h:
2002-09-18 Darin Adler <darin@apple.com>
* WebView.subproj/WebController.h: Fix typo.
2002-09-18 Darin Adler <darin@apple.com>
* WebView.subproj/WebController.h: Add getters.
* WebView.subproj/WebController.m:
(-[WebController applicationNameForUserAgent]): Added.
(-[WebController userAgent]): Added.
2002-09-17 Darin Adler <darin@apple.com>
Fix bug where image documents were broken.
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer drawClippedToValidInRect:fromRect:]): loadStatus of 0
means the whole image is ready, not 0 scan lines; so check > 0, not >= 0.
* WebKit.pbproj/project.pbxproj: Let Project Builder be the boss of me.
2002-09-17 Richard Williamson <rjw@apple.com>
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(-[WebHistory addEntryForURLString:]):
(-[WebHistory containsEntryForURLString:]):
Added URL string API. We should remove use of
NSURL from this API.
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate _entryForURLString:]):
(-[WebHistoryPrivate containsEntryForURLString:]):
Implementation of above.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
Use ((int)(x + (1.0 - FLT_EPSILON))) instead of ceil().
2002-09-16 Darin Adler <darin@apple.com>
* History.subproj/WebHistoryPrivate.m: Do that for real.
2002-09-16 Richard Williamson <rjw@apple.com>
Remove fix (according to John, partial fix) for 3051288.
Canonicalizing the URL strings used in the history db
is very slow! ~8% slower.
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate addEntry:]):
(-[WebHistoryPrivate removeEntry:]):
(-[WebHistoryPrivate containsURL:]):
(-[WebHistoryPrivate entryForURL:]):
* WebView.subproj/WebHTMLView.h:
Removed cruft from header.
2002-09-16 Darin Adler <darin@apple.com>
- fixed 3050810 -- while an image is loading progressively, it draws
white rather then page background
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer drawClippedToValidInRect:fromRect:]): Added. Used instead
of a direct call to drawInRect:fromRect:operation:fraction:, this only draws
the part of the image that is valid according to loadStatus.
(-[WebImageRenderer nextFrame:]): Use drawClippedToValidInRect:fromRect:.
(-[WebImageRenderer beginAnimationInRect:fromRect:]): Ditto.
(-[WebImageRenderer tileInRect:fromPoint:]): Ditto.
2002-09-13 Richard Williamson (Home) <rjw@apple.com>
Fixed 3051288. URLs were not being canonicalized, so matching failed.
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate addEntry:]):
(-[WebHistoryPrivate removeEntry:]):
(-[WebHistoryPrivate containsURL:]):
(-[WebHistoryPrivate entryForURL:]):
2002-09-13 Richard Williamson (Home) <rjw@apple.com>
Fixed 3050636. 90% solution. The "Display Images Automatically"
preference will be used to disallow image draggging. So if this
is set after pages have loaded, their images will not be draggable,
and vice-versa. Not disastrous as dragging in either case has little
or no negative consequences.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-13 Maciej Stachowiak <mjs@apple.com>
WebKit changes for:
- fixed 3032238 - Eliminate "Ask each time" choice for cookies
* Panels.subproj/WebStandardPanels.h:
* Panels.subproj/WebStandardPanels.m:
(-[WebStandardPanels useStandardAuthenticationPanel]):
* WebCoreSupport.subproj/WebCookieAdapter.m:
(-[WebCookieAdapter cookiesEnabled]):
* WebKit.pbproj/project.pbxproj:
2002-09-13 Darin Adler <darin@apple.com>
Added assertions, and dealt with some breakage I created while
trying to fix, here, what I broke in WebCore.
* Plugins.subproj/WebPluginView.m: (-[WebNetscapePluginView start]):
Do get the dataSource from our parent when we are being used as an
object in a view rather than a document view.
* Plugins.subproj/WebPluginStream.m:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebFrame.m:
Leave in the assertions I used to debug.
2002-09-13 Darin Adler <darin@apple.com>
- fixed 3031685 -- The text encoding setting is not propagated to subframes
* WebView.subproj/WebDocument.h: Remove old WebDocumentTextEncoding methods,
add supportsTextEncoding.
* WebView.subproj/WebController.m:
(-[WebController supportsTextEncoding]): Check the document view to see if
it supports WebDocumentTextEncoding and returns YES.
(-[WebController setCustomTextEncoding:]): Call _reloadAllowingStaleDataWithOverrideEncoding.
(-[WebController resetTextEncoding]): Ditto.
(-[WebController _mainFrameOverrideEncoding]): Added. Gets encoding from the data source
of the main frame; provisional if there, main if not.
(-[WebController hasCustomTextEncoding]): Call _mainFrameOverrideEncoding.
(-[WebController customTextEncoding]): Ditto.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setParent:]): Set the override encoding to the parent's.
* WebView.subproj/WebFrame.m:
(-[WebFrame reload]): Release request to fix storage leak. Set the override encoding
on the new data source to match the old.
* WebView.subproj/WebFramePrivate.h: New name for stale data reload method.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]): Do pretty much the
same thing reload does with a few differences. Get the encoding from the parameter
rather than the old data source, and set the policy to the one that uses data from
the cache, even stale data, if present
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView supportsTextEncoding]): Return YES.
2002-09-13 Richard Williamson (Home) <rjw@apple.com>
Adding padding and widths buffer to our canonical measurement
method. The padding argument is used to 'pad' measurements in
that same way that drawing is padded. The widths parameter
allows a caller to pass a buffer to get all the individual
character widths for the run of characters in the string.
* Misc.subproj/WebStringTruncator.m:
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
(+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer widthForCharacters:length:]):
(-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
2002-09-13 Darin Adler <darin@apple.com>
Fix dataSource-related plugin crash.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView start]): Don't grab dataSource here.
It's too early.
(-[WebNetscapePluginView setDataSource:]): Grab it here.
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
Simplified includes and added asserts while debugging.
2002-09-13 Richard Williamson (Home) <rjw@apple.com>
Changed drag hysteresis to 5 and disallow selection initiation within
a link.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-12 Darin Adler <darin@apple.com>
Prep work for fixes to the text encoding for subframes.
* WebCoreSupport.subproj/WebBridge.h: Remove [loadURL:withParent:].
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Added referrer parameter.
* WebView.subproj/WebController.h: Add new methods, not implemented yet.
* WebView.subproj/WebController.m:
(-[WebController supportsTextEncoding]): Here is one.
(-[WebController setCustomTextEncoding:]): Another.
(-[WebController resetTextEncoding]): Etc.
(-[WebController hasCustomTextEncoding]): Etc.
(-[WebController customTextEncoding]): Etc.
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource startLoading]): Remove the forceRefresh flag.
This is now controlled by the WebResourceRequest.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading]): Same for this private version.
* WebView.subproj/WebFrame.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame startLoading]): Remove the forceRefresh flag.
(-[WebFrame reload]): Remove the forceRefresh flag.
A reload without a forceRefresh is only used internally, not requested
by the caller.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): Add handling for the case where we
reload, but allow stale data.
(-[WebFrame _isLoadComplete]): Ditto.
(-[WebFrame _reloadAllowingStaleData]): Placeholder, not implemented yet.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView setTextEncoding:]): Update for new API, but this is going away.
(-[WebHTMLView setDefaultTextEncoding]): Ditto.
2002-09-12 Richard Williamson <rjw@apple.com>
Don't initiate a drag if an autoscroll happened.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-12 Richard Williamson <rjw@apple.com>
Added absolute position column to render node for
render tree view.
* WebView.subproj/WebRenderNode.h:
* WebView.subproj/WebRenderNode.m:
(-[WebRenderNode initWithName:position:rect:view:children:]):
(-[WebRenderNode absolutePositionString]):
(-[WebKitRenderTreeCopier nodeWithName:position:rect:view:children:]):
2002-09-12 David Hyatt <hyatt@apple.com>
Add text/xml to our list of MIME types that should use the
Web view. With this fix we now render XML and XHTML
correctly!
* WebView.subproj/WebDataSourcePrivate.m:
(+[WebDataSource _repTypes]):
* WebView.subproj/WebViewPrivate.m:
(+[WebView _viewTypes]):
2002-09-12 Ken Kocienda <kocienda@apple.com>
Removed load flags as a design concept. Replaced with new "caching policy" concept
which are set on a WebResourceRequest. These policies determine how a load will
be processed with regards to the cache.
* WebCoreSupport.subproj/WebBridge.h: Removed flags from loadURL method.
* WebCoreSupport.subproj/WebBridge.m: Removed calls to load flags and replaced with calls to new request policies.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
(-[WebBridge isReloading]): Ditto.
(-[WebBridge loadURL:referrer:]): Ditto.
(-[WebBridge loadURL:withParent:]): Removed flags from loadURL method.
(-[WebBridge postWithURL:referrer:data:]): Removed calls to load flags and replaced with calls to new request policies.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Ditto.
* WebView.subproj/WebDataSource.h: Removed flags from init method.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithURL:]): Ditto.
(-[WebDataSource initWithRequest:]): Ditto.
* WebView.subproj/WebDataSourcePrivate.h: Removed flags ivar, and dangling attributes ivar.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Ditto.
* WebView.subproj/WebFrame.m:
(-[WebFrame reload:]): Removed calls to load flags and replaced with calls to new request policies.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _goToItem:withFrameLoadType:]): Ditto.
2002-09-12 Chris Blumenberg <cblu@apple.com>
Make WebTextView private and exported.
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebTextView.h:
2002-09-11 Maciej Stachowiak <mjs@apple.com>
Combined provisionalDataSourceChanged: and
provisionalDataSourceCommitted: methods into a single
setDataSource:, since they are always called one immediately after
the other.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView setDataSource:]):
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]):
* WebView.subproj/WebDocument.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView setDataSource:]):
* WebView.subproj/WebImageView.m:
(-[WebImageView setDataSource:]):
* WebView.subproj/WebTextView.m:
(-[WebTextView setDataSource:]):
* WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]):
2002-09-11 Richard Williamson <rjw@apple.com>
Better fix for previous problem.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
2002-09-11 Richard Williamson (Local) <rjw@apple.com>
Remove ceiling of text width at end of fragment. This was screwing up
intra fragment text measurements.
Selection of justified text is still screwed up. This is a fundamental problem
in khtml and will require a rewrite of their justification code. Konq has the
same problems selecting justified text. The drawing of code applies the justification
factor, but checking the selection doesn't add the justification factor, so selection
will be incorrect by the justification amount.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
2002-09-11 Darin Adler <darin@apple.com>
* WebView.subproj/WebFrame.m: (-[WebFrame reload:]): Use the current
URL, not the original URL, when doing a reload. This prevents the URL from
changing back and forth when you reload on a page that involved a redirect.
2002-09-11 Darin Adler <darin@apple.com>
Add machinery needed for fix to 3021137, changing font prefs
doesn't redraw frames other than the main frame.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge setNeedsReapplyStyles]): Added. Lets the web views know that they
need to reapply styles. If we did this over on the WebCore side, we'd have to do
it right away. Maybe that would be OK; we can move that that later.
* WebView.subproj/WebTextView.m: (-[WebTextView setFixedWidthFont]): Use the
fixed-width size, rather than using the other size with the fixed-width family.
2002-09-11 Ken Kocienda <kocienda@apple.com>
Major change to the API and design of WebFoundation. WebKit has been modified
to use the new API.
WebFoundation attributes, as a design concept, are now completely gone. The old usages of
attributes have been replaced with new API on the WebResourceRequest
and WebResourceResponse classes.
* Plugins.subproj/WebPluginStream.h: Removed attribute usage in init API. No need for replacement.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream initWithURL:pluginPointer:]): Removed attribute usage in init API.
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:]): Ditto.
(-[WebNetscapePluginStream dealloc]): Remove attribute release.
(-[WebNetscapePluginStream startLoad]): Removed attribute usage. Replace with calls to new API.
(-[WebNetscapePluginStream receivedData:withHandle:]): Ditto.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView pluginURLFromCString:]): Added this helper method.
(-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:]): Added.
(-[WebNetscapePluginView getURLNotify:target:notifyData:]): Modified to call new loadRequest:inTarget:withNotifyData: method.
(-[WebNetscapePluginView getURL:target:]): Ditto.
(-[WebNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): Ditto.
* WebCoreSupport.subproj/WebBridge.h: Removed attribute usage in loadURL API. No need for replacement.
* WebCoreSupport.subproj/WebBridge.m: Added loadRequest:withParent:
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
(-[WebBridge startLoadingResource:withURL:referrer:]): Removed attribute usage. Replace with calls to new API.
(-[WebBridge isReloading]): Ditto.
(-[WebBridge loadRequest:withParent:]): Added.
(-[WebBridge loadURL:]): Modified to use new loadRequest:withParent: API
(-[WebBridge loadURL:referrer:]): Ditto.
(-[WebBridge loadURL:flags:withParent:]): Ditto.
(-[WebBridge postWithURL:data:]): Ditto.
* WebCoreSupport.subproj/WebSubresourceClient.h: Changed API to use an NSString referrer instead of an attributes dictionary.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Removed attribute usage. Replace with calls to new API.
* WebView.subproj/WebDataSource.h: Added initWithRequest: method.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithURL:]): Removed attribute usage in init API.
(-[WebDataSource initWithURL:flags:]): Ditto.
(-[WebDataSource initWithRequest:]): Added.
(-[WebDataSource request]): Added.
* WebView.subproj/WebDataSourcePrivate.h: Added WebResourceRequest ivar.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Added WebResourceRequest ivar.
(-[WebDataSource _startLoading:]): Removed attribute usage. Replace with calls to new API.
* WebView.subproj/WebFrame.m:
(-[WebFrame reload:]): Removed attribute usage. Replace with calls to new API.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _goToItem:withFrameLoadType:]): Use new WebDataSource init API.
2002-09-10 Darin Adler <darin@apple.com>
WebKit part of support for the "Referer" header.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:referrer:frameName:]): Add referrer parameter,
and pass it on to the window context method.
(-[WebBridge addAttributeForReferrer:toDictionary:]): Added.
(-[WebBridge attributesForReferrer:]): Added.
(-[WebBridge startLoadingResource:withURL:referrer:]): Put the referrer into an
attributes dictionary and pass it to the WebSubresourceClient method.
(-[WebBridge loadURL:referrer:]): Put the referrer into an attributes dictionary
and pass it along.
(-[WebBridge postWithURL:referrer:data:]): Put the referrer into an attributes
dictionary and pass it along.
* WebCoreSupport.subproj/WebSubresourceClient.h: Add an attributes parameter to
the method that starts loading.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:attributes:forDataSource:]):
Put the attributes into the WebResourceRequest.
* WebView.subproj/WebController.h: Add a referrer parameter to the WebWindowContext
openNewWindowWithURL method.
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler openNewWindowWithURL:referrer:]): Pass the referrer
on to the window context.
(-[WebDefaultContextMenuHandler openLinkInNewWindow:]): Pass nil for the referrer
for now. Not sure if this is best.
(-[WebDefaultContextMenuHandler openImageInNewWindow:]): Ditto.
(-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Ditto.
* WebView.subproj/WebFrame.m: (-[WebFrame frameNamed:]): Pass nil for the referrer
here where we are creating a new empty window.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): Pass nil for the referrer here
in the WebClickPolicyOpenNewWindow. The policy API doesn't provide a way for the
policy handler to specify the referrer; we might want to change that later.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
Pass nil for the referrer here. But it seems wrong that this function discards
the handle attributes that are passed in for the case where it opens a new window.
2002-09-11 Chris Blumenberg <cblu@apple.com>
Fixed: 3048158 - Crash at google in _destroyInitializingClassList
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]):
2002-09-10 Richard Williamson (Local) <rjw@apple.com>
Renamed method.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(-[WebPreferences _updateWebCoreSettings]):
(-[WebPreferences setWillLoadImagesAutomatically:]):
(-[WebPreferences willLoadImagesAutomatically]):
2002-09-10 Chris Blumenberg <cblu@apple.com>
Report download handler errors
Renamed error constants
Added new errors
* Misc.subproj/WebDownloadHandler.h:
* Misc.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler errorWithCode:]): added
(-[WebDownloadHandler receivedData:]): return an error
(-[WebDownloadHandler finishedLoading]): return an error
(-[WebDownloadHandler cancel]): return an error
* Misc.subproj/WebKitErrors.h: added new errors
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowURL:]): use renamed error constants
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedError:forHandle:]): don't send an error when errors are suppressed
(-[WebMainResourceClient didCancelWithHandle:]): report download handler errors
(-[WebMainResourceClient handleDidFinishLoading:]): report download handler errors
(-[WebMainResourceClient handleDidReceiveData:data:]): report download handler errors
(-[WebMainResourceClient handleDidFailLoading:withError:]): report download handler errors
* WebView.subproj/WebView.m:
(+[WebView initialize]): add new errors to WebError
2002-09-10 John Sullivan <sullivan@apple.com>
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate _loadHistoryGuts:]):
removed the ERROR message in the case where the history file was
not found, as this is normal initial-state behavior.
2002-09-10 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for:
2952837 - Slide shows on homepage.mac.com don't show pictures, captions
2942073 - Deferring [BrowserDocument goToInitialURL] can cause problems
3021360 - second window pops up on 'Search' at chrysler.com
3030485 - Unexpected new window created with no scroll bars at sony.com
This is done by adding a concept of named controller sets, so that
less browser-like uses of WebKit won't be affected.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:frameName:]): Pass frameName
parameter to controller initializer.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController init]): Pass nil for controllerSetName.
(-[WebController dealloc]):
(-[WebController frameNamed:]): Check other windows in the same set too.
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate dealloc]):
(-[WebController _setDefersCallbacks:]):
(-[WebController _setTopLevelFrameName:]):
(-[WebController _frameInThisWindowNamed:]):
* WebView.subproj/WebControllerSets.h: Added.
* WebView.subproj/WebControllerSets.m: Added.
(+[WebControllerSets addController:toSetNamed:]): Method to
maintain controller sets.
(+[WebControllerSets removeController:fromSetNamed:]): Likewise.
* WebKit.pbproj/project.pbxproj: Add new files.
2002-09-10 Ken Kocienda <kocienda@apple.com>
Changed API for setting the WebResourceClient for a request/load.
This has been removed from WebResourceRequest, and has been moved to
WebResourceHandle. The result is that the init method for a WebResourceHandle
now takes a WebResourceRequest and a WebResourceClient.
All of the changes below are simple code modifications to use the new API.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad])
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:])
2002-09-10 Chris Blumenberg <cblu@apple.com>
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(-[WebHistory entryForURL:]): added
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate entryForURL:]): added
* Misc.subproj/WebIconDatabase.h: added WebIconLargeSize
* Misc.subproj/WebIconDatabase.m: added WebIconLargeSize
* WebKit.exp: export link label key and WebIconLargeSize
2002-09-10 Darin Adler <darin@apple.com>
WebKit part of weaning WebCore from getting directly at WebKit defaults.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(-[WebPreferences _updateWebCoreSettings]): Added. Propagates all preferences
to WebCore. This way WebCore doesn't have to actively ask for the values
of preferences using defaults keys that are WebKit secrets.
(+[WebPreferences load]): Set up an observer that calls _updateWebCoreSettings
whenever NSUserDefaultsDidChangeNotification is posted.
(-[WebPreferences setStandardFontFamily:]): Call _updateWebCoreSettings right
away, don't wait for NSUserDefaultsDidChangeNotification.
(-[WebPreferences setFixedFontFamily:]): Ditto.
(-[WebPreferences setSerifFontFamily:]): Ditto.
(-[WebPreferences setSansSerifFontFamily:]): Ditto.
(-[WebPreferences setCursiveFontFamily:]): Ditto.
(-[WebPreferences setFantasyFontFamily:]): Ditto.
(-[WebPreferences setDefaultFontSize:]): Ditto.
(-[WebPreferences setDefaultFixedFontSize:]): Ditto.
(-[WebPreferences setMinimumFontSize:]): Ditto.
(-[WebPreferences setUserStyleSheetEnabled:]): Ditto.
(-[WebPreferences setUserStyleSheetLocation:]): Ditto.
(-[WebPreferences setJavaEnabled:]): Ditto.
(-[WebPreferences setJavaScriptEnabled:]): Ditto.
(-[WebPreferences setJavaScriptCanOpenWindowsAutomatically:]): Ditto.
(-[WebPreferences setPluginsEnabled:]): Ditto.
(-[WebPreferences setDisplayImages:]): Ditto.
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge reportBadURL:]):
Add this method, which replaces reportError. Now WebCore doesn't use
WebFoundation directly at all! Pretty neat.
2002-09-09 Richard Williamson (Home) <rjw@apple.com>
Implemented disable images automatically (2896319).
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
(-[WebPreferences setDisplayImages:]):
(-[WebPreferences displayImages]):
2002-09-09 Darin Adler <darin@apple.com>
- fixed 3003605 -- Leaking 1 WebView after second run of static PLT
Fixing this should also help with footprint.
* WebView.subproj/WebFrame.m:
(-[WebFrame dealloc]): Remove old workaround for problem where we
always deallocated the frames from timer cleanup. I found a better
fix for this.
(-[WebFrame stopLoading]): Explicitly fire the scheduled layout
timer if any when we stop loading, rather than leaving it hanging.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]):
Explicitly fire the scheduled layout timer if any.
* WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
Use an autorelease pool here so we don't end up putting all the
frames in the main event loop's autorelease pool.
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark init]): Use copy instead of retain.
(-[WebBookmark identifier]): Use copy instead of retain.
2002-09-09 ken <kocienda@apple.com>
Missed one call through asking WebResourceHandle for contentLength
instead of WebResourceResponse.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:withHandle:]):
2002-09-09 ken <kocienda@apple.com>
Content length information now accessible via WebResourceResponse object,
rather than from WebResourceHandle.
* WebView.subproj/WebLoadProgress.m:
(-[WebLoadProgress initWithResourceHandle:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:]):
2002-09-09 Richard Williamson <rjw@apple.com>
Make both calls to adjust CG font cache dynamic.
The new CGFontCacheSetMaxSize() adds a font cache
parameter. Ugh! This is needed so we can compile
w/o warnings on stock Jag.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
2002-09-09 Ken Kocienda <kocienda@apple.com>
Character set information now accessible via WebResourceResponse object,
rather than from WebResourceHandle.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:]):
2002-09-09 Chris Blumenberg <cblu@apple.com>
Re-enable wizzy scaling.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _iconByScalingIcon:toSize:]):
2002-09-09 Ken Kocienda <kocienda@apple.com>
WebResourcehandle no longer has a contentType method.
Call through to WebResourceResponse object to get content type.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:withHandle:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:]):
2002-09-09 Darin Adler <darin@apple.com>
Fixed lifetime problems happening due to new cancel mechanism.
* WebCoreSupport.subproj/WebSubresourceClient.m: Add comments explaining why
retain/release is needed.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _recursiveStopLoading]): Add a retain/release so that we don't
run into problems if _stopLoading causes the data source to go away.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]): Add retain/release for similar reasons,
with comment explaining why.
(-[WebMainResourceClient handleDidFinishLoading:]): Ditto.
(-[WebMainResourceClient handleDidFailLoading:withError:]): Ditto.
Fixed the problem that was leading to the NSImage exception, but didn't turn on
the whizzy scaling -- leaving that to Chris.
* Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase iconForSiteURL:withSize:]):
Eliminate the "size 0x0" feature. It was only implemented in one place, and tons
of other places would actually make a size 0x0 icon. But also, we don't need it any more.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource iconLoader: receivedPageIcon:),
(-[WebDataSource _loadIcon]): Don't bother actually passing the icon to
[WebLocationChangeHandler receivedPageIcon:forDataSource:]. We should probably eventually
either just get rid of this method, or remove the icon parameter.
2002-09-09 Chris Blumenberg <cblu@apple.com>
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _iconByScalingIcon:toSize:]): Commented out wizzy scaling as it was causing an NSImage exception to be raised.
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin _getPluginInfo]): Check Resource Manager errors
2002-09-08 Darin Adler <darin@apple.com>
* Plugins.subproj/WebPluginStream.m:
* Plugins.subproj/WebPluginView.m:
Use #if ! rather than #ifndef with LOG_DISABLED, since it
is set to 0 rather than not defined when LOG is enabled.
2002-09-08 Darin Adler <darin@apple.com>
* Bookmarks.subproj/WebBookmarkGroup.m:
* History.subproj/WebHistoryPrivate.m:
* History.subproj/WebURLsWithTitles.m:
* Misc.subproj/WebDownloadHandler.m:
* Misc.subproj/WebIconDatabase.m:
* Misc.subproj/WebIconLoader.m:
* WebView.subproj/WebController.m:
* WebView.subproj/WebDataSourcePrivate.m:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebHTMLView.m:
* WebView.subproj/WebHTMLViewPrivate.m:
* WebView.subproj/WebMainResourceClient.m:
* WebView.subproj/WebPreferences.m:
* WebView.subproj/WebViewPrivate.m:
Remove unnecessary includes.
2002-09-08 Darin Adler <darin@apple.com>
Update logging to use new implementation. Remove old.
* Misc.subproj/WebKitDebug.h: Removed.
* Misc.subproj/WebKitDebug.m: Removed.
* Misc.subproj/WebKitLogging.h: Added.
* Misc.subproj/WebKitLogging.m: Added.
* Misc.subproj/WebKitReallyPrivate.h: Removed.
* WebKit.pbproj/project.pbxproj: Update for above changes.
* WebKit-tests.exp: Now empty.
* History.subproj/WebHistoryItem.m: Remove unneeded include.
* Bookmarks.subproj/WebBookmarkGroup.m:
* History.subproj/WebHistoryPrivate.m:
* Misc.subproj/WebDownloadHandler.m:
* Misc.subproj/WebIconDatabase.m:
* Plugins.subproj/WebPlugin.m:
* Plugins.subproj/WebPluginDatabase.m:
* Plugins.subproj/WebPluginNullEventSender.m:
* Plugins.subproj/WebPluginStream.m:
* Plugins.subproj/WebPluginView.m:
* Plugins.subproj/npapi.m:
* WebCoreSupport.subproj/WebTextRenderer.m:
* WebView.subproj/WebDataSourcePrivate.m:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebHTMLView.m:
* WebView.subproj/WebMainResourceClient.m:
Change to use new log channels.
2002-09-08 Darin Adler <darin@apple.com>
Remove empty handleDidBeginLoading and handleDidCancelLoading
methods, now that they will never be called.
* Misc.subproj/WebIconLoader.m:
* Plugins.subproj/WebPluginStream.m:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebView.subproj/WebMainResourceClient.m:
2002-09-08 Darin Adler <darin@apple.com>
Forgot to save out files from the editor in my last change.
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
Oops.
2002-09-08 Darin Adler <darin@apple.com>
Finished weaning us from handleDidCancelLoading. Now I will remove both
handleDidBeginLoading and handleDidCancelLoading.
* WebCoreSupport.subproj/WebSubresourceClient.h: Add a handle method.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidCancelLoading:]): Remove guts, move to cancel.
(-[WebSubresourceClient handleDidFinishLoading:]): Remove the client from the
data source now, not the handle.
(-[WebSubresourceClient handleDidFailLoading:withError:]): Ditto.
(-[WebSubresourceClient cancel]): Move guts here, also make the above change.
(-[WebSubresourceClient handle]): Added.
* WebView.subproj/WebDataSource.m: Use clients list, not handles list.
* WebView.subproj/WebDataSourcePrivate.h: Keep a list of subresource clients rather
than a list of handles for the subresources.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Update to match new field names.
(-[WebDataSource _updateLoading]): Use clients, not handles.
(-[WebDataSource _startLoading:]): Move line about starting loading out of the if
statement. I suspect the if statement is always true, though.
(-[WebDataSource _addSubresourceClient:]): New name. Keep client pointer instead of
handle now.
(-[WebDataSource _removeSubresourceClient:]): Ditto.
(-[WebDataSource _stopLoading]): Move download handler line into WebMainResourceClient
since the "not sent when application is quitting" issue is gone now. Stop the subresource
clients using the cancel call, not by cancelling the handle directly.
(-[WebDataSource _defersCallbacksChanged]): Update for clients list, not handles list.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient didCancelWithHandle:]): Cancel the download handler here.
(-[WebMainResourceClient handleDidReceiveData:data:]): Call didCancelWithHandle here.
A loose end from the previous change.
2002-09-07 Chris Blumenberg <cblu@apple.com>
Made the wizzy scaling an experiment.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _iconByScalingIcon:toSize:]):
2002-09-06 Darin Adler <darin@apple.com>
Almost weaned WebKit entirely from the handleDidBeginLoading and handleDidCancelLoading
loading callbacks. We are planning to remove both of them.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad]): Call _didStartLoading here so we don't need
to rely on handleDidBeginLoading any more.
(-[WebNetscapePluginStream stop]): Call cancel here so we don't need to rely on
handleDidCancelLoading any more.
(-[WebNetscapePluginStream handleDidBeginLoading:]): Empty out.
(-[WebNetscapePluginStream handleDidFinishLoading:]): Nil out resource here.
(-[WebNetscapePluginStream handleDidCancelLoading:]): Empty out.
(-[WebNetscapePluginStream cancel]): Put cancel code here.
(-[WebNetscapePluginStream handleDidFailLoading:withError:]): Nil out resource here.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge startLoadingResource:withURL:]): Change to use WebCoreResourceHandle.
* WebCoreSupport.subproj/WebSubresourceClient.h: Change to use WebCoreResourceHandle.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient dealloc]): Release handle too, now that we have it.
(-[WebSubresourceClient receivedProgressWithComplete:]): Moved up here and removed handle
parameter.
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Do work here so
we don't need to rely on handleDidBeginLoading any more.
(-[WebSubresourceClient receivedError:]): Removed handle parameter.
(-[WebSubresourceClient handleWillUseUserAgent:forURL:]):
(-[WebSubresourceClient handleDidBeginLoading:]): Emptied out.
(-[WebSubresourceClient handleDidCancelLoading:]): Updated, still needs to be emptied out.
(-[WebSubresourceClient handleDidFinishLoading:]): Nil out handle.
(-[WebSubresourceClient handleDidFailLoading:withError:]): Nil out handle.
(-[WebSubresourceClient cancel]): New method, used by WebCore.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer widthForCharacters:length:]): Moved up in the file to fix build failure.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:]): Call didStartLoadingWithURL so we don't have to
rely on handleDidBeginLoading.
(-[WebDataSource _stopLoading]): Call didCancelWithHandle so we don't have to rely
on handleDidCancelLoading.
* WebView.subproj/WebMainResourceClient.h: Add didStartLoadingWithURL and
didCancelWithHandle to the public methods.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]):
(-[WebMainResourceClient handleDidBeginLoading:]): Empty out.
(-[WebMainResourceClient didCancelWithHandle:]): Move the bulk of handleDidCancelLoading here.
(-[WebMainResourceClient handleDidCancelLoading:]): Empty out.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView mouseDragged:]): Move the mouse up a little
bit so it's "on" the dragged area, but not over the text.
2002-09-06 Richard Williamson <rjw@apple.com>
Added support for khtml's justified text drawing. Additional padding is distributed
to space widths. (Sites like www.osnews.com now render correctly.)
Change word end rounding hack to use ceil of word width. I'm still noticing a spacing anomaly
that is fixed by a reload. Occasionally text runs are still crammed together, but a reload uses
correct spacing. This anomaly is often visible on www.arstechnica.com. Still investigating.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:attemptFontSubstitution:]):
(-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:]):
(-[WebTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
Tweaks to dragged image.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-06 Richard Williamson (Home) <rjw@apple.com>
Fixed symbol lookup problem. NSLookupAndBindSymbol() dies horribly
if symbol is missing. Use NSIsSymbolNameDefined() first to check if
symbol is present.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
2002-09-06 Darin Adler <darin@apple.com>
Fix some minor anomalies and leaks.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem initWithURL:target:parent:title:]): Use copy, not retain.
(-[WebHistoryItem dealloc]): Release the anchor, fix leak.
(-[WebHistoryItem setURL:]): Check for URLs that are equal, not just ==.
(-[WebHistoryItem setTitle:]): Copy, not retain.
(-[WebHistoryItem setTarget:]): Copy, not retain.
(-[WebHistoryItem setParent:]): Copy, not retain.
(-[WebHistoryItem setDisplayTitle:]): Copy, not retain.
(-[WebHistoryItem setAnchor:]): Copy, not retain.
* WebView.subproj/WebControllerPolicyHandler.m:
(-[WebPolicyPrivate dealloc]): Release the URL, call super, fix leaks.
(-[WebPolicy _setPath:]): Use copy, not retain.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate dealloc]): Release downloadProgressHandler,
contextMenuHandler, locationChangeHandler, fix leaks.
Some fun with Richard's new code.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): Center image around mouse instead of
putting it up and to the right. Add more X space than Y space.
2002-09-06 Richard Williamson (Home) <rjw@apple.com>
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
More fun and games with dragged links.
Draw both a label and url (in a smaller font)
into the dragged image.
* Misc.subproj/WebStringTruncator.h:
* Misc.subproj/WebStringTruncator.m:
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
Added right string truncator. Not optimized, but not used
very often. Currently just for dragged link experiment.
=== Alexander-22 ===
2002-09-06 Ken Kocienda <kocienda@apple.com>
Declaration and initialization of variable on one line caused unused variable
warning when building under deployment since the only use of the variable was
in a debug statement.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedError:])
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Experiment w/ dragging link label as drag image.
Needs some visual tweaking, but good concept, I think.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Use the first text child node of the link element
as the title for a dragged link. We'll use this for
the dragged image later too.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Correctly save of document state in current
document when going back.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentState:]):
(-[WebBridge documentState]):
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Fixed 3043505. Disallows drag drops on originating view.
* WebView.subproj/WebView.m:
(-[WebView draggingEntered:]):
2002-09-05 Darin Adler <darin@apple.com>
Update to use the new style of assertions.
A few places still use the WebKitDebug.h, for logging.
* Bookmarks.subproj/WebBookmark.m:
* Bookmarks.subproj/WebBookmarkGroup.m:
* Bookmarks.subproj/WebBookmarkLeaf.m:
* Bookmarks.subproj/WebBookmarkList.m:
* Bookmarks.subproj/WebBookmarkSeparator.m:
* History.subproj/WebHistory.m:
* History.subproj/WebHistoryList.m:
* History.subproj/WebHistoryPrivate.m:
* History.subproj/WebURLsWithTitles.m:
* Misc.subproj/WebDownloadHandler.m:
* Misc.subproj/WebIconDatabase.m:
* Misc.subproj/WebIconLoader.m:
* Misc.subproj/WebKitDebug.h:
* Misc.subproj/WebStringTruncator.m:
* Panels.subproj/WebAuthenticationPanel.m:
* Plugins.subproj/WebPlugin.m:
* Plugins.subproj/WebPluginDatabase.m:
* Plugins.subproj/WebPluginNullEventSender.m:
* Plugins.subproj/WebPluginStream.m:
* Plugins.subproj/WebPluginView.m:
* Plugins.subproj/npapi.m:
* WebCoreSupport.subproj/WebBridge.m:
* WebCoreSupport.subproj/WebCookieAdapter.m:
* WebCoreSupport.subproj/WebImageRenderer.m:
* WebCoreSupport.subproj/WebImageRendererFactory.m:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebCoreSupport.subproj/WebTextRenderer.m:
* WebCoreSupport.subproj/WebTextRendererFactory.m:
* WebCoreSupport.subproj/WebViewFactory.m:
* WebView.subproj/WebController.m:
* WebView.subproj/WebControllerPrivate.m:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDataSourcePrivate.m:
* WebView.subproj/WebDefaultPolicyHandler.m:
* WebView.subproj/WebFrame.m:
* WebView.subproj/WebFramePrivate.m:
* WebView.subproj/WebHTMLView.m:
* WebView.subproj/WebHTMLViewPrivate.m:
* WebView.subproj/WebMainResourceClient.m:
* WebView.subproj/WebPreferences.m:
* WebView.subproj/WebViewPrivate.m:
Use new assertions.
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Removed debugging.
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList addEntry:]):
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Added support for saving/restoring document state
in back/forward list.
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList addEntry:]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem setLastVisitedDate:]):
(-[WebHistoryItem documentState]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge saveDocumentState:]):
(-[WebBridge documentState]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:]):
Lookup post Jaguar CG SPI. Can now run and build
w/o patched CG.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
Changed image links to drag file contents.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-09-05 Ken Kocienda <kocienda@apple.com>
The WebError object has been removed from WebResourceHandle.
Objects of that class now rely on the WebError object in WebResourceResponse.
This code has been updated to ask WebResourceResponse for it WebError object,
rather than asking WebResourceHandle.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:])
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:])
2002-09-05 Chris Blumenberg <cblu@apple.com>
Fixed 3021365 - Crash failing to load plugin from local file
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream receivedData:withHandle:]):
(-[WebNetscapePluginStream receivedError:]):
(-[WebNetscapePluginStream receivedData:withDataSource:]):
(-[WebNetscapePluginStream handleDidReceiveData:data:]):
2002-09-05 Ken Kocienda <kocienda@apple.com>
The first use of the WebResourceResponse object. This is just a baby step, though.
I only use one variable in the new class, the statusCode, but all the code in
the framework has been updated to use the statusCode from the response object.
Each of these methods was modified to call through to a WebResourceResponse to get
the status code.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:])
* WebView.subproj/WebLoadProgress.m:
(-[WebLoadProgress initWithResourceHandle:])
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:])
2002-09-05 Richard Williamson (Local) <rjw@apple.com>
Only disable timed expiration of CG glyph cache if SPI is available.
(per Bertrand's request)
* WebCoreSupport.subproj/WebTextRendererFactory.m:
2002-09-05 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff: New generic icon from Steve Lemay.
The @ sign lives, but does not spring.
2002-09-04 Darin Adler <darin@apple.com>
One more pass of refinement on that last change.
* History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
Replace the last entry instead of just ignoring if this one matches.
* History.subproj/WebHistoryList.h: Add replaceEntryAtIndex. Remove addURL: and removeURL:.
* History.subproj/WebHistoryList.m:
(-[WebHistoryList addEntry:]): Call removeEntry: rather than using an entire pasted copy here.
(-[WebHistoryList removeEntry:]): Use a hash of the URL and the URL rather than relying on the
fact that WebHistoryItem hashes and does isEqual based on the URL only.
(-[WebHistoryList replaceEntryAtIndex:withEntry:]): Added. Used by the code above.
2002-09-04 Darin Adler <darin@apple.com>
Fix bug where doing a reload adds an entry to the back/forward list.
* History.subproj/WebBackForwardList.m: (-[WebBackForwardList addEntry:]):
If URL, target, and parent all match, then don't add an entry.
* WebKit.pbproj/project.pbxproj: Let Project Builder be the boss; I guess
this means Chris is still using the old version.
2002-09-04 Chris Blumenberg <cblu@apple.com>
- don't set nil data on the web file db
- store absolute URLs in the db, not base URL/path combination URLs
- support for multiple hosts with the same built-in icon
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase init]): renamed some dictionaries
(-[WebIconDatabase iconForSiteURL:withSize:]): call _builtInIconsForHost
(-[WebIconDatabase _updateFileDatabase]): check for nil
(-[WebIconDatabase _hasIconForSiteURL:]): call _pathForBuiltInIconForHost
(-[WebIconDatabase _pathForBuiltInIconForHost:]): new
(-[WebIconDatabase _builtInIconsForHost:]): call _pathForBuiltInIconForHost
* Misc.subproj/WebIconDatabasePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]): use absolute URL
2002-09-04 Chris Blumenberg <cblu@apple.com>
Made the icon DB take a a path for built-in icons so that we only load them when necessary.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase init]):
(-[WebIconDatabase iconForSiteURL:withSize:]):
(-[WebIconDatabase _hasIconForSiteURL:]):
(-[WebIconDatabase _builtInIconsForHost:]):
(-[WebIconDatabase _setBuiltInIconAtPath:forHost:]):
* Misc.subproj/WebIconDatabasePrivate.h:
* WebKit.pbproj/project.pbxproj:
2002-09-04 Darin Adler <darin@apple.com>
Fix unused variable warnings for deployment builds.
* Plugins.subproj/WebPluginView.m: Add ifndef NDEBUG around variable
used only in log statements.
2002-09-04 Darin Adler <darin@apple.com>
Removed the now-unnecessary iconURL from bookmarks and history.
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
* Bookmarks.subproj/WebBookmarkGroup.h:
* Bookmarks.subproj/WebBookmarkGroup.m:
* Bookmarks.subproj/WebBookmarkLeaf.h:
* Bookmarks.subproj/WebBookmarkLeaf.m:
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
Removed iconURL instance variables, methods, and parameters.
2002-09-04 Darin Adler <darin@apple.com>
Did some minor plugin cleanup, mostly to make sure we don't
change pages while a plugin is tracking.
* Plugins.subproj/WebPluginView.h: Add sendEvent and sendUpdateEvent.
Remove the NPP_HandleEvent method.
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView sendEvent:]): Sets up the "defersCallbacks"
state, then sends the event.
* Plugins.subproj/WebNetscapePluginViewPrivate.h: Added.
This stuff was shared in a different way before, and it
hadn't even been renamed.
* WebKit.pbproj/project.pbxproj: Added file.
* Plugins.subproj/npapi.m: Use the new private header.
* Plugins.subproj/WebPluginNullEventSender.h: Hold a reference
to the view.
* Plugins.subproj/WebPluginNullEventSender.m:
(-[WebNetscapePluginNullEventSender initWithPluginView:]):
Retain the view.
(-[WebNetscapePluginNullEventSender dealloc]): Release the view.
(-[WebNetscapePluginNullEventSender sendNullEvents]): Use sendEvent:.
(-[WebNetscapePluginNullEventSender stop]): No need for shouldStop.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate init]): Don't set contentPolicy to an enum value,
when it's an object reference.
(-[WebDataSourcePrivate dealloc]): Release contentPolicy to fix a leak.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): Set draggedURL to nil in the else case,
it was uninitialized before. Also center the icon better when dragging,
but shouldn't we be dragging something more than the icon here?
* Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase defaultIconWithSize:]):
Add a call to release. Doesn't really plug a leak, but cleaner this way.
* Plugins.subproj/WebPlugin.m: Tweaks.
* WebView.subproj/WebMainResourceClient.m: Tweaks only.
2002-09-04 Ken Kocienda <kocienda@apple.com>
Made more adjustments for API and behavior change that occurred in WebFoundation,
now that WebResourceHandle objects no buffer resource data as it is loaded. Where
necessary, the WebKit objects now do their own buffering, however, in many cases,
buffering is not necessary to maintain correct behavior.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoaderPrivate dealloc]): Release new buffered resource data object.
(-[WebIconLoader initWithURL:]): Allocate new buffered resource data object.
(-[WebIconLoader handleDidFinishLoading:]): Modify API to remove data parameter.
(-[WebIconLoader handleDidReceiveData:data:]): Buffer data as it is received.
* Plugins.subproj/WebPluginStream.h: Added new buffered resource data object.
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]): Allocate new buffered resource data object.
(-[WebNetscapePluginStream dealloc]): Release new buffered resource data object.
(-[WebNetscapePluginStream receivedData:]): Buffer data as it is received (when necessary maintain correct behavior).
(-[WebNetscapePluginStream handleDidFinishLoading:]): Modify API to remove data parameter.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidFinishLoading:]): Modify API to remove data parameter.
(-[WebMainResourceClient handleDidReceiveData:data:]): Buffer data as it is received (when necessary maintain correct behavior).
2002-09-04 Chris Blumenberg <cblu@apple.com>
Fixed: 3043024 - Built-in icons should match on *whatever.com or *whatever.whatever
implemented wizzy scaling, but ifdef'd it out
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase iconForSiteURL:withSize:]): call _builtItIconsForHost
(-[WebIconDatabase _hasIconForSiteURL:]): call _builtItIconsForHost
(-[WebIconDatabase _iconForFileURL:withSize:]): call _iconByScalingIcon:toSize:
(-[WebIconDatabase _builtItIconsForHost:]): use better host matching
(-[WebIconDatabase _cachedIconFromArray:withSize:]): call _iconByScalingIcon:toSize:
(-[WebIconDatabase _iconByScalingIcon:toSize:]): renamed, ifdef'd out wizzy scaling
2002-09-04 Ken Kocienda <kocienda@apple.com>
Changed WebKit so that it no longer relies on WebResourceHandle to buffer
resource data as it is loaded. Instead, this buffering task has been moved
out to the WebResourceClient, WebMainResourceClient in this case. This
change is a "proof of concept" for the upcoming change where the API in
WebFoundation for buffering resource data in WebResourceHandle will be
removed altogether.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource data]): Changed to call WebMainResourceClient when resource data is needed.
* WebView.subproj/WebMainResourceClient.h: Added mutable data ivar.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient initWithDataSource:]): Added mutable data ivar.
(-[WebMainResourceClient dealloc]): Release new mutable data ivar.
(-[WebMainResourceClient resourceData]): Added accessor method.
(-[WebMainResourceClient handleDidReceiveData:data:]): Append received data to the new mutable data object.
2002-09-03 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff: New image (still a placeholder)
from HI. For the moment the default page icon is the legendary
@-sign-on-a-spring. I've been promised a replacement by
tomorrow sometime.
2002-09-03 John Sullivan <sullivan@apple.com>
- removed small folder image used for bookmark lists; it is now
up to clients to display an icon for bookmark lists.
* Bookmarks.subproj/WebBookmarkList.h: Removed _icon ivar
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList dealloc]): Don't release _icon
(-[WebBookmarkList icon]): just return nil
* Resources/bookmark_folder.tiff: Removed.
* WebKit.pbproj/project.pbxproj: Updated for removed file.
2002-09-03 Chris Blumenberg <cblu@apple.com>
- Moved the default icon method to WebIconDatabase
- Removed "icon URL" from the location change handler API
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem icon]): don't worry about iconForSiteURL:withSize: returning nil
* Misc.subproj/WebIconDatabase.h:
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase iconForSiteURL:withSize:]): return defaultIconWithSize if none found
(-[WebIconDatabase defaultIconWithSize:]): added, loads, caches default icon
(-[WebIconDatabase _hasIconForSiteURL:]): added, called by webdatasource to determine if icon is necessary
* Misc.subproj/WebIconDatabasePrivate.h: added _hasIconForSiteURL
* Misc.subproj/WebIconLoader.h: removed default icon method
* Misc.subproj/WebIconLoader.m: removed default icon method
* Resources/url_icon.tiff: resized to 32 x 32
* WebKit.exp: export symbol for a dictionary key
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]): call _hasIconForSiteURL
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]): call defaultIconWithSize
* WebView.subproj/WebLocationChangeHandler.h:
* WebView.subproj/WebLocationChangeHandler.m:
(-[WebLocationChangeHandler receivedPageIcon:forDataSource:]): renamed
2002-09-03 Ken Kocienda <kocienda@apple.com>
Modify calls into WebFoundation to use the new WebResourceRequest class,
and the modified API that kicks off load requests using WebResourceHandle.
More changes are planned for this code as the WebFoundation API modifications
progress.
* Misc.subproj/WebIconDatabase.m:
(-[WebIconDatabase _iconForFileURL:withSize:])
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading])
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream startLoad])
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge objectLoadedFromCache:size:])
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:])
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:])
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _startLoading:])
2002-09-03 Darin Adler <darin@apple.com>
Fix a reproducible crash pulling down the Go menu.
* Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase _iconForFileURL:withSize:]):
Add a missing retain.
* WebKit.pbproj/project.pbxproj: Project Builder wants what it wants.
2002-09-02 Chris Blumenberg <cblu@apple.com>
Icon DB.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem _retainIconInDatabase:]): calls retainIconForSiteURL: or releaseIconForSiteURL:
(-[WebHistoryItem initWithURL:target:parent:title:]): call _retainIconInDatabase:
(-[WebHistoryItem dealloc]): call _retainIconInDatabase:
(-[WebHistoryItem icon]): call iconForSiteURL:withSize:
(-[WebHistoryItem setURL:]): call _retainIconInDatabase:
(-[WebHistoryItem initFromDictionaryRepresentation:]): call _retainIconInDatabase:
* Misc.subproj/WebIconDatabase.h: Added.
* Misc.subproj/WebIconDatabase.m: Added.
(+[WebIconDatabase sharedIconDatabase]):
(-[WebIconDatabase init]):
(-[WebIconDatabase iconForSiteURL:withSize:]):
(-[WebIconDatabase setIcon:forSiteURL:]):
(-[WebIconDatabase setIcon:forHost:]):
(-[WebIconDatabase retainIconForSiteURL:]):
(-[WebIconDatabase releaseIconForSiteURL:]):
(-[WebIconDatabase delayDatabaseCleanup]):
(-[WebIconDatabase allowDatabaseCleanup]):
(-[WebIconDatabase applicationWillTerminate:]):
(-[WebIconDatabase _createFileDatabase]):
(-[WebIconDatabase _loadIconDictionaries]):
(-[WebIconDatabase _updateFileDatabase]):
(-[WebIconDatabase _iconForIconURL:]):
(-[WebIconDatabase _iconsForIconURL:]):
(-[WebIconDatabase _iconForFileURL:withSize:]):
(-[WebIconDatabase _setIcon:forIconURL:]):
(-[WebIconDatabase _setIconURL:forSiteURL:]):
(-[WebIconDatabase _setBuiltInIcon:forHost:]):
(-[WebIconDatabase _retainIconForIconURL:]):
(-[WebIconDatabase _releaseIconForIconURL:]):
(-[WebIconDatabase _retainFutureIconForSiteURL:]):
(-[WebIconDatabase _releaseFutureIconForSiteURL:]):
(-[WebIconDatabase _retainOriginalIconsOnDisk]):
(-[WebIconDatabase _releaseOriginalIconsOnDisk]):
(-[WebIconDatabase _sendNotificationForSiteURL:]):
(-[WebIconDatabase _addObject:toSetForKey:inDictionary:]):
(-[WebIconDatabase _uniqueIconURL]):
(-[WebIconDatabase _cachedIconFromArray:withSize:]):
(-[WebIconDatabase _scaleIcon:toSize:]):
* Misc.subproj/WebIconDatabasePrivate.h: Added.
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(+[WebIconLoader iconForFileAtPath:]):
(-[WebIconLoader startLoading]):
(-[WebIconLoader handleDidFinishLoading:data:]):
* WebKit.exp:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]):
2002-08-30 Ken Kocienda <kocienda@apple.com>
Removed one last reference to the now-removed WebDefaultMIMEType symbol.
I missed it earlier.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:])
2002-08-30 Ken Kocienda <kocienda@apple.com>
Failed to remove debugging spam before my last checkin. Sorry.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPrivate.m:
(+[WebController _MIMETypeForFile:])
2002-08-30 Ken Kocienda <kocienda@apple.com>
* WebView.subproj/WebControllerPrivate.m:
(+[WebController _MIMETypeForFile:]): Small tweak to account for change
in behavior of a WebFoundation method upon which this method depends.
The WebFoundation now returns nil when it cannot find a suitable mime
type rather than returning a default. This function now checks for a nil
return value and sets @"application/octet-stream" in that case.
2002-08-30 Richard Williamson (Home) <rjw@apple.com>
Change link dragging behavior. Drags URL, not URL contents.
Still need to generate better image for dragging, will copy OmniWeb
and drag link text.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-08-30 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Allowed the new Project Builder to put in
encodings for each file.
=== Alexander-21 ===
2002-08-28 Darin Adler <darin@apple.com>
- fixed 3036440 -- Crash running PLT with "Check for 'world leaks'" enabled
* WebView.subproj/WebDataSourcePrivate.h: Add defersCallbacks boolean.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setController:]): Don't try to look at the controller before,
it might already be deallocated.
(-[WebDataSource _defersCallbacksChanged]): Use a boolean to record whether the
"defers callbacks" state changed since last time and do no work if it didn't.
This replaces the check in _setController:.
2002-08-28 Richard Williamson (Local) <rjw@apple.com>
Tell CG to not use time expiration of glyph cache and increase it's
size.
THIS CHANGE REQUIRES THAT YOU INSTALL THE CG ROOT.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
2002-08-28 Richard Williamson (Home) <rjw@apple.com>
Fixed selection horkage I introduced with drag
fix yesterday.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDragged:]):
2002-08-27 Richard Williamson (Local) <rjw@apple.com>
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDown:]):
(-[WebHTMLView mouseDragged:]):
(-[WebHTMLView mouseMovedNotification:]):
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
Fixed active link style. Cleaned up and fixed drag initiation
for links and images. Dotted lines not drawing correcly, but
other styles are applied correctly.
* WebKit.exp:
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
Added some constants.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
Code to change CG caching policy. Not enabled until
we receive a root from CG team.
2002-08-27 Darin Adler <darin@apple.com>
- fixed 3031583 -- directory.apple.com now gives "unsupported" redirect
* WebView.subproj/WebDataSource.m: (-[WebDataSource initWithURL:attributes:flags:]):
Don't create the resource handle here. It's a bit too early.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
Create the resource handle here, now that we have a controller to get a user agent from.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleWillUseUserAgent:forURL:]): Add an assert that will catch
any future problems of this kind.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge defersLoading]): Added. New call for use in WebCore.
(-[WebBridge setDefersLoading:]): Added. New call for use in WebCore.
2002-08-26 Darin Adler <darin@apple.com>
Add machinery for deferring callbacks. Not used yet.
* WebView.subproj/WebControllerPrivate.h: Add methods.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _defersCallbacks]): Returns old state.
(-[WebController _setDefersCallbacks:]): Changes state and calls _defersCallbacksChanged
on the main frame.
* WebView.subproj/WebFramePrivate.h: Add _defersCallbacksChanged.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _defersCallbacksChanged]):
Calls _defersCallbacksChanged on both data sources.
* WebView.subproj/WebDataSourcePrivate.h: Add _defersCallbacksChanged.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setController:]): Call _defersCallbacksChanged if changing the controller
changes the state.
(-[WebDataSource _addResourceHandle:]): Call setDefersCallbacks:YES on the new handle if
we are already attached to a controller that defers callbacks.
(-[WebDataSource _defersCallbacksChanged]): Call setDefersCallbacks on all the handles, and
call _defersCallbacksChanged on the child frames as well.
* WebView.subproj/WebDataSource.m: (-[WebDataSource controller]):
We need to know about all controller changes, so it's unacceptable to consult our
parent about the controller. But we already do know about it and this code was unnecessary.
Leave the old code around as an assert only.
2002-08-26 Richard Williamson <rjw@apple.com>
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(+[WebHistory webHistoryWithFile:]):
Stage 1, set the shared history instance. This'll move to
WebKit soon.
* WebView.subproj/WebView.m:
(-[WebView setFrame:]):
Only force display if in live resize.
2002-08-26 John Sullivan <sullivan@apple.com>
- fixed bug where dragging a separator in the Bookmarks window
would hit an assertion.
* Bookmarks.subproj/WebBookmarkSeparator.m:
(-[WebBookmarkSeparator initWithGroup:]): Removed obsolete
assertion that group is not nil.
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initWithTitle:group:]):
Removed a similar obsolete assertion here.
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initWithTitle:group:]):
Removed a similar obsolete assertion here.
2002-08-23 Darin Adler <darin@apple.com>
* WebView.subproj/WebFrame.m: (-[WebFrame reset]): Remove unneeded call to _reset.
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _setDataSource:]): Add code that
removes the KHTML stuff from the frame when switching to another type of view.
It would be better to do this at some other level, but without this code, we end
up leaving the entire KHTMLView behind when we switch to a non-HTML page.
2002-08-22 Richard Williamson <rjw@apple.com>
Changed public string from #define to extern NSString.
* WebKit.exp:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
(-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
(-[WebDefaultContextMenuHandler downloadURL:]):
(-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
(-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
(-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
(-[WebDefaultContextMenuHandler openImageInNewWindow:]):
(-[WebDefaultContextMenuHandler downloadImageToDisk:]):
(-[WebDefaultContextMenuHandler copyImageToClipboard:]):
(-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
(-[WebHTMLView _continueAfterCheckingDragForEvent:]):
2002-08-22 Ken Kocienda <kocienda@apple.com>
Passing the main load's attributes to the subresource loads causes
breakage (most visible when we POST).
Right now, we just rely on flags to handle "back/forward" loads, so
the attributes were not actually being used.
A better fix needs to be put in place when the soon-to-be-done
attributes/flags rework is done.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
=== Alexander-20 ===
2002-08-21 Richard Williamson <rjw@apple.com>
Simple name change. Plugin -> NetscapePlugin in anticipation
of other plugin related API.
Removed vestigal WebDocumentLoading.
* Plugins.subproj/WebPlugin.h:
* Plugins.subproj/WebPlugin.m:
(-[WebNetscapePlugin load]):
* Plugins.subproj/WebPluginDatabase.h:
* Plugins.subproj/WebPluginDatabase.m:
(+[WebNetscapePluginDatabase installedPlugins]):
(-[WebNetscapePluginDatabase pluginForMimeType:]):
(-[WebNetscapePluginDatabase pluginForExtension:]):
(-[WebNetscapePluginDatabase pluginWithFilename:]):
(-[WebNetscapePluginDatabase MIMETypes]):
(-[WebNetscapePluginDatabase init]):
* Plugins.subproj/WebPluginNullEventSender.h:
* Plugins.subproj/WebPluginNullEventSender.m:
(-[WebNetscapePluginNullEventSender initWithPluginView:]):
(-[WebNetscapePluginNullEventSender sendNullEvents]):
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebNetscapePluginStream getFunctionPointersFromPluginView:]):
(-[WebNetscapePluginStream initWithURL:pluginPointer:notifyData:attributes:]):
* Plugins.subproj/WebPluginView.h:
* Plugins.subproj/WebPluginView.m:
(-[WebNetscapePluginView initWithFrame:plugin:URL:baseURL:mime:arguments:]):
(-[WebNetscapePluginView start]):
(-[WebNetscapePluginView provisionalDataSourceChanged:]):
(-[WebNetscapePluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
(-[WebNetscapePluginView destroyStream:reason:]):
* WebCoreSupport.subproj/WebViewFactory.m:
(-[WebViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[WebViewFactory pluginsInfo]):
(-[WebViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(+[WebController canShowMIMEType:]):
* WebView.subproj/WebDocument.h:
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView provisionalDataSourceChanged:]):
(-[WebHTMLView provisionalDataSourceCommitted:]):
(-[WebHTMLView dataSourceUpdated:]):
* WebView.subproj/WebHTMLViewPrivate.m:
(-[NSView _web_stopIfPluginView]):
* WebView.subproj/WebImageView.h:
* WebView.subproj/WebTextView.h:
* WebView.subproj/WebView.h:
* WebView.subproj/WebViewPrivate.h:
* WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]):
Still need to muck with cvs server to change file names.
2002-08-20 David Hyatt <hyatt@apple.com>
Raising the layout delay from 0.75 to 1.00. This should be
a little more conservative and matches the value used by Gecko.
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
2002-08-20 David Hyatt <hyatt@apple.com>
Lower the paint/layout delay from 1.85 to 0.75, since we've
gotten a lot faster.
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
2002-08-20 John Sullivan <sullivan@apple.com>
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:]):
Fixed uninitialized variable that Maciej's deployment build found.
2002-08-20 John Sullivan <sullivan@apple.com>
Fixed problem with previous checkin that was causing
drag-and-drop for files to fail (at least).
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowURL:]): pass isDirectory, not YES,
to fileURLPolicyForMIMEType:inFrame:isDirectory:
2002-08-20 John Sullivan <sullivan@apple.com>
WebKit part of fixes for:
- 3027491 -- failure loading frame's resource leads to misbehaving panel
- 3027494 -- failure loading frame's resource leads to error message in Alex, silence in IE
- 3027697 -- alert box for missing file covered by browser window; should be a sheet
- 3014123 -- error sheet when iframe has URL with bad path
Cleaned up the WebPolicy APIs to pass frames and URLs consistently. Also cleaned
up _shouldShowURL: (formerly _shouldShowDataSource:) method quite a bit.
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler downloadURL:]):
* WebView.subproj/WebDefaultPolicyHandler.m:
(-[WebDefaultPolicyHandler URLPolicyForURL:inFrame:]):
(-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:inFrame:isDirectory:]):
(-[WebDefaultPolicyHandler unableToImplementPolicy:error:forURL:inFrame:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient handleDidReceiveData:data:]):
Made various Policy-related methods pass the frame and when necessary the
URL instead of the dataSource (or not even that in some broken cases).
Collapsed the three unableToImplementXXXPolicy: methods into one.
* WebView.subproj/WebFramePrivate.h: Change _shouldShowDataSource: to
_shouldShowURL:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]): New helper method.
(-[WebFrame _shouldShowURL:]): use case statements instead of nested ifs;
use handleUnimplementablePolicy: to reduce duplicated code; update for API
changes; eliminate non-useful local variables.
2002-08-20 Darin Adler <darin@apple.com>
- fixed 3023076 -- Strange font chosen, widths screwed up, when text includes 007F characters
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
(-[WebTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
(-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
Treat 007F as a control character, skipping it just as we do other control characters.
2002-08-20 Darin Adler <darin@apple.com>
* WebView.subproj/WebController.m:
(-[WebController setApplicationNameForUserAgent:]):
Lock in here, in anticipation of actually using the name in the
user agent string.
2002-08-20 Darin Adler <darin@apple.com>
WebKit part of support for tabbing into and out of the toolbar.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge nextKeyViewOutsideWebViews]): Ask the main WebView for its
nextKeyView on behalf of WebCore.
(-[WebBridge previousKeyViewOutsideWebViews]): Ask the main WebView for its
previousKeyView on behalf of WebCore.
* WebView.subproj/WebHTMLView.m: (-[WebHTMLView becomeFirstResponder]):
When we are being tabbed-into, make the first or last view in the bridge
first responder, instead of taking it ourselves.
* WebView.subproj/WebView.m: (-[WebView becomeFirstResponder]):
Always make the document view the first responder instead of taking it
ourselves.
2002-08-19 Chris Blumenberg <cblu@apple.com>
Fixed 3025019: "only-if-cached" attribute fetches data from network if cached but expired
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader iconFromCache]):
2002-08-19 Darin Adler <darin@apple.com>
- fixed 2863025 -- Need to implement TABing between widgets in forms
Implemented tabbing into a web view's fields. I now consider the task of
tabbing between widgets done. But there are many loose ends, each with its
own bug report.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView dealloc]): Set _private to nil so we can properly handle calls
that come from NSView dealloc.
(-[WebHTMLView provisionalDataSourceChanged:]): No need to pass width and height
to createKHTMLViewWithNSView any more. Also, just pass self rather than making
the roung trip to the WebFrame and the WebView back here.
(-[WebHTMLView nextKeyView]): Added. Calls the bridge version when we are called
from nextValidKeyView, the normal version the rest of the time.
(-[WebHTMLView previousKeyView]): Added. Calls the bridge version when we are called
from nextValidKeyView, the normal version the rest of the time.
(-[WebHTMLView nextValidKeyView]): Set inNextValidKeyView and call super.
(-[WebHTMLView previousValidKeyView]): Set inNextValidKeyView and call super.
* WebView.subproj/WebHTMLViewPrivate.h: Add inNextValidKeyView flag.
2002-08-18 Darin Adler <darin@apple.com>
Update WebResourceClient instances for new API, including adding
the handleWillUseUserAgent:forURL: method.
* Misc.subproj/WebIconLoader.m:
* Plugins.subproj/WebPluginStream.m:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebView.subproj/WebMainResourceClient.m:
These were all the clients that needed updating.
* WebView.subproj/WebController.m:
(-[WebController setUserAgent:]): Lock so that we can set the user agent
even though another thread could be calling userAgentForURL:.
(-[WebController userAgentForURL:]): Ditto.
* WebView.subproj/WebControllerPrivate.h: Add lock.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate init]): Create lock.
(-[WebControllerPrivate dealloc]): Release lock.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _stopLoading]): Improve comment.
2002-08-18 Darin Adler <darin@apple.com>
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader iconFromCache]):
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
Don't process each icon twice. We need to have the loader as a client even for the
synchronous case because of the user agent issue, but that causes double work.
2002-08-16 Darin Adler <darin@apple.com>
Step 3 in adding user agent API to WebKit and WebFoundation.
Add the calls to WebKit to configure the user-agent string.
Change WebCore to get the user-agent from WebKit via the bridge.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge userAgentForURL:]): Added. Calls [WebController userAgentForURL:].
* WebView.subproj/WebController.h: Add three new methods.
* WebView.subproj/WebController.m:
(-[WebController setApplicationNameForUserAgent:]): Store an application name that
will be used to build up the user-agent string.
(-[WebController setUserAgent:]): Set an override user agent; mainly useful for
testing user-agent strings different from the one WebKit supplies.
(-[WebController userAgentForURL:]): Public API for getting the user agent string
that the WebController will use for a particular URL.
* WebView.subproj/WebControllerPrivate.h: Add fields for the user-agent parameters.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate dealloc]): Release both strings when the controller goes away.
2002-08-16 Darin Adler <darin@apple.com>
Missed one call to [WebResourceHandle initWithURL:].
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCache:size:]):
Change to call [WebResourceHandle initWithClient:URL:] with nil for the client.
2002-08-16 Darin Adler <darin@apple.com>
Oops. Forgot to save in Project Builder before committing.
* Plugins.subproj/WebPluginStream.m:
* WebView.subproj/WebDataSource.m:
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
2002-08-16 Darin Adler <darin@apple.com>
Update for change to the WebResourceHandle API where the client is
passed in at init time.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader iconFromCache]): Pass self as client when creating handle for
foreground "only if cached" load. Also don't put the handle into the class's
data structure in this case.
(-[WebIconLoader startLoading]): Pass self as client when creating handle
instead of making a separate addClient call. Also fix potential leak if this
is called when we are already loading.
(-[WebIconLoader stopLoading]): Release the handle and nil it out right here.
* Plugins.subproj/WebPluginStream.m:
(-[WebPluginStream startLoad]): Pass client when creating handle rather than
doing an addClient afterward.
(-[WebPluginStream stop]): Don't do a removeClient.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithURL:attributes:flags:]): Pass client when creating handle.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]):
Since client is not created in init, don't bother creating it here.
2002-08-16 John Sullivan <sullivan@apple.com>
Split searchability out from WebTextView so it could be used
elsewhere (specifically, in DOM window).
* Misc.subproj/WebSearchableTextView.h: Added.
* Misc.subproj/WebSearchableTextView.m: Added.
(-[WebSearchableTextView searchFor:direction:caseSensitive:]):
(-[NSString findString:selectedRange:options:wrap:]):
New class, split out from WebTextView, which now inherits from it.
* WebView.subproj/WebTextView.h:
* WebView.subproj/WebTextView.m:
Took out the searching stuff and put it in WebSearchableTextView;
made WebTextView inherit from WebSearchableTextView.
* WebKit.pbproj/project.pbxproj: Added new files, made
WebSearchableTextView.h be Private.
2002-08-16 John Sullivan <sullivan@apple.com>
- fixed 3025394 -- Bookmarks & History items do not remember their icons
across launches
- fixed 3025421 -- Dragging from location field proxy icon to favorites bar
loses page icon
- part of fix for 3026279 -- Bookmarks should lose their favIcons when the
URL is edited
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
(-[WebBookmarkLeaf dictionaryRepresentation]):
Removed the #ifdeffed-out code for storing iconURL in dictionary; this was
unnecessary because it is also done by the lower-level WebHistoryItem.
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem _setIcon:]): New method, extracted from -icon for clarity.
(-[WebHistoryItem icon]): Fixed problem where once an icon was set it would
never be changed, even if the iconURL is changed. Also, use _setIcon for
clarity and to fix retainCount bugs.
(-[WebHistoryItem dictionaryRepresentation]):
Removed the #ifdef around the line that stores the URL in the dictionary.
Gramps decided that this architecture is OK after all.
2002-08-16 Darin Adler <darin@apple.com>
Fixed broken build.
* Misc.subproj/WebTestController.m: Added empty placeholder methods.
2002-08-15 John Sullivan <sullivan@apple.com>
- fixed 3025770 -- "New Bookmark" button hits assertion and crashes
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf setURLString:]): Instead of asserting that parameter
is not nil, handle the nil case by converting to empty string. This was
another regression from yesterday's favIcon changes.
=== Alexander-19 ===
2002-08-15 John Sullivan <sullivan@apple.com>
Disabled support for storing favIcon URLs in bookmarks; Gramps realized
this is an architecture problem that needs a better solution, and he
didn't want to ship Alex-18 with this problem.
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf dictionaryRepresentation]):
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem dictionaryRepresentation]):
Commented out the code that added the iconURLString in the dictionary used
for writing out file. This dictionary is also used on the pasteboard, so this
change causes the favIcon not to be remembered when you drag from proxy icon
to favorites bar.
=== Alexander-18 ===
2002-08-14 Chris Blumenberg <cblu@apple.com>
Support for showing favicons in bookmarks and history.
Renamed "image" to "icon" in all places.
Made history and bookmarks take and save an icon URL
* Bookmarks.subproj/WebBookmark.h:
* Bookmarks.subproj/WebBookmark.m:
(-[WebBookmark icon]):
(-[WebBookmark iconURL]):
(-[WebBookmark setIconURL:]):
* Bookmarks.subproj/WebBookmarkGroup.h:
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup _setTopBookmark:]):
(-[WebBookmarkGroup addNewBookmarkToBookmark:withTitle:iconURL:URLString:type:]):
(-[WebBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:iconURL:URLString:type:]):
* Bookmarks.subproj/WebBookmarkLeaf.h:
* Bookmarks.subproj/WebBookmarkLeaf.m:
(-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
(-[WebBookmarkLeaf dictionaryRepresentation]):
(-[WebBookmarkLeaf copyWithZone:]):
(-[WebBookmarkLeaf icon]):
(-[WebBookmarkLeaf iconURL]):
(-[WebBookmarkLeaf setIconURL:]):
(-[WebBookmarkLeaf setURLString:]):
* Bookmarks.subproj/WebBookmarkList.h:
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList initWithTitle:group:]):
(-[WebBookmarkList dealloc]):
(-[WebBookmarkList copyWithZone:]):
(-[WebBookmarkList icon]):
* Bookmarks.subproj/WebBookmarkSeparator.m:
(-[WebBookmarkSeparator icon]):
* History.subproj/WebHistory.h:
* History.subproj/WebHistory.m:
(-[WebHistory updateURL:title:displayTitle:iconURL:forURL:]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem init]):
(-[WebHistoryItem initWithURL:title:]):
(-[WebHistoryItem initWithURL:target:parent:title:]):
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem iconURL]):
(-[WebHistoryItem icon]):
(-[WebHistoryItem setIconURL:]):
(-[WebHistoryItem dictionaryRepresentation]):
(-[WebHistoryItem initFromDictionaryRepresentation:]):
* History.subproj/WebHistoryPrivate.h:
* History.subproj/WebHistoryPrivate.m:
(-[WebHistoryPrivate updateURL:title:displayTitle:iconURL:forURL:]):
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(+[WebIconLoader iconLoaderWithURL:]):
(-[WebIconLoader initWithURL:]):
(-[WebIconLoader URL]):
(-[WebIconLoader _icons]):
(-[WebIconLoader delegate]):
(-[WebIconLoader iconFromCache]):
(-[WebIconLoader startLoading]):
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
* WebCoreSupport.subproj/WebBridge.m:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
* WebView.subproj/WebLocationChangeHandler.h:
* WebView.subproj/WebLocationChangeHandler.m:
(-[WebLocationChangeHandler receivedPageIcon:fromURL:forDataSource:]):
2002-08-14 Darin Adler <darin@apple.com>
Remove some unused things. Fix minor problems.
* Plugins.subproj/WebPluginNullEventSender.m:
* Plugins.subproj/WebPluginView.m:
* WebCoreSupport.subproj/WebTextRenderer.m:
Fixed places that were using the C++ bool instead of
the Objective C BOOL.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _receivedData:]):
Remove old code related to the dummy data source.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
Remove _changeBridge, since we don't any more. Hoist the creation of the
bridge up here.
* WebView.subproj/WebFramePrivate.h: Remove _changeBridge.
* WebView.subproj/WebFramePrivate.m: Remove _changeBridge.
* WebView.subproj/WebHTMLRepresentation.h:
* WebView.subproj/WebHTMLView.h:
* WebView.subproj/WebImageRepresentation.h:
* WebView.subproj/WebTextRepresentation.h:
* WebView.subproj/WebTextView.h:
Don't re-declare methods that are part of protocols we implement.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView initWithFrame:]): Don't add the mouse moved observer until
the view gets put into a window.
(-[WebHTMLView addMouseMovedObserver]): Added.
(-[WebHTMLView removeMouseMovedObserver]): Added.
(-[WebHTMLView viewWillMoveToWindow:]): Remove observer if we were in the
main window.
(-[WebHTMLView viewDidMoveToWindow]): Add observer if we are now in the main
window.
* WebView.subproj/WebHTMLViewPrivate.h: Add _frame method. Remove unused
controller and cursor instance variables.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _frame]): Added.
(-[WebHTMLView _bridge]): Call _frame.
* WebView.subproj/WebTextRepresentation.m: Add now-needed import.
* WebView.subproj/WebHTMLRepresentation.m: Tweak.
2002-08-13 Maciej Stachowiak <mjs@apple.com>
Add the ability to determine the classes of live JavaScript
objects, to help with leak fixing.
* Misc.subproj/WebCoreStatistics.h:
* Misc.subproj/WebCoreStatistics.m:
(+[WebCoreStatistics javaScriptLiveObjectClasses]):
2002-08-12 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge isReloading]):
Change dataSourceIsReloading to isReloading.
2002-08-12 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m: Remove private _flags
and _attributes accessors, now that Ken added public versions.
* WebView.subproj/WebFrame.m:
(-[WebFrame reload:]): Remove sole use thereof.
=== Alexander-17 ===
2002-08-10 Ken Kocienda <kocienda@apple.com>
Added support for "stale mode" (loads triggered by use of back/forward), and
added support for reload.
Also added a bridge function so the WebCore cache can tell if a load is a reload.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge dataSourceIsReloading]): New method.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Use same flags that were used for main resource load.
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource attributes]): New accessor.
(-[WebDataSource flags]): New accessor.
* WebView.subproj/WebFrame.m:
(-[WebFrame reload:]): Reload adds WebResourceHandleFlagLoadFromOrigin flag to load.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _goToItem:withFrameLoadType:]): Adds flags so that WebFoundation can tell when back/forward
has been used.
=== milestone 0.5 ===
=== Alexander-16 ===
2002-08-09 Chris Blumenberg <cblu@apple.com>
- Cache icon image for HTML files
- resize the icon in WebIconLoader instead of in multiple places elsewhere
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(+[WebIconLoader _resizeImage:]):
(+[WebIconLoader defaultIcon]): call _resizeImage
(+[WebIconLoader iconForFileAtPath:]): added, caches html icon
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): call _resizeImage
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]): call iconForFileAtPath
2002-08-08 Maciej Stachowiak <mjs@apple.com>
Fix to get onLoad to fire, so the iBench test works.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Return the bridge for the new child frame.
2002-08-08 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Change the group name back to Debug.
2002-08-08 Richard Williamson <rjw@apple.com>
Added flag to turn on/off buffered text drawing to help
determine if we get any speed boost. Run from console
with "-BufferTextDrawing YES" to enable buffered text
drawing.
Moved buffered text drawing out of web core.
* WebCoreSupport.subproj/WebTextRenderer.h:
* WebCoreSupport.subproj/WebTextRenderer.m:
(+[WebTextRenderer shouldBufferTextDrawing]):
(+[WebTextRenderer initialize]):
(-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
* WebCoreSupport.subproj/WebTextRendererFactory.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]):
2002-08-08 Darin Adler <darin@apple.com>
Placeholders for the "drawing observer" method that I'll be using
to implement the "dump page as diffable text" feature.
* Misc.subproj/WebTestController.h: Added.
* Misc.subproj/WebTestController.m: Added.
* WebKit.pbproj/project.pbxproj: Mention new files.
* WebKit.exp: Mention new class.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
Changed "fixed font size" to "default fixed font size".
2002-08-08 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/WebPluginStream.m:
(-[WebPluginStream finishedLoadingWithData:]): call [NSFileManager _web_carbonPathForPath:]
2002-08-08 Maciej Stachowiak <mjs@apple.com>
- fixed 2957197 - Need API for getting/setting default text encoding
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate init]): Set default encoding if no other is set.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]): Added support for default text encoding pref.
(-[WebPreferences defaultTextEncoding]): Likewise.
(-[WebPreferences setDefaultTextEncoding:]): Likewise.
2002-08-08 Richard Williamson <rjw@apple.com>
Changes to coalesce all drawing calls of the same text
style and color into one call to CG. Significantly
improves drawing time. My tests should about 7-8% on
ALL pages. Disabled the code for now until I can verify
on speed improvements on Ken's test rig.
* WebCoreSupport.subproj/WebGlyphBuffer.h: Added.
* WebCoreSupport.subproj/WebGlyphBuffer.m: Added.
(-[WebGlyphBuffer initWithFont:color:]):
(-[WebGlyphBuffer font]):
(-[WebGlyphBuffer color]):
(-[WebGlyphBuffer reset]):
(-[WebGlyphBuffer dealloc]):
(-[WebGlyphBuffer drawInView:]):
(-[WebGlyphBuffer addGlyphs:advances:count:at::]):
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
* WebCoreSupport.subproj/WebTextRendererFactory.h:
* WebCoreSupport.subproj/WebTextRendererFactory.m:
(-[WebTextRendererFactory coalesceTextDrawing]):
(-[WebTextRendererFactory startCoalesceTextDrawing]):
(-[WebTextRendererFactory endCoalesceTextDrawing]):
(-[WebTextRendererFactory glyphBufferForFont:andColor:]):
(-[WebTextRendererFactory dealloc]):
* WebKit.pbproj/project.pbxproj:
2002-08-07 Maciej Stachowiak <mjs@apple.com>
WebKit work for:
- fixed 2956008 - Need API for getting/setting text encoding for current page
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge receivedData:withDataSource:]): Handle override encoding,
if any.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithURL:attributes:flags:]): Remember the flags and
attributes.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate init]): Initialize overrideEncoding
(-[WebDataSourcePrivate dealloc]): Release attributes
(-[WebDataSource _setOverrideEncoding:]): Added.
(-[WebDataSource _overrideEncoding]): Added.
(-[WebDataSource _flags]): Added.
(-[WebDataSource _attributes]): Added.
* WebView.subproj/WebFrame.m:
(-[WebFrame startLoading]): Pass proper forceRefresh value to data source
based on load type (but the data source will ignore it).
(-[WebFrame reload:]): Made this work a bit better. Now instead of
crashing, it will actually reload, but it won't force a refresh
(and may not handle the back/forward issues properly).
* WebView.subproj/WebDocument.h: Defined new WebDocumentTextEncoding protocol.
* WebView.subproj/WebHTMLView.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView textEncoding]): Implemented WebDocumentTextEncoding
protocol.
(-[WebHTMLView setTextEncoding:]): Implemented WebDocumentTextEncoding
protocol.
(-[WebHTMLView setDefaultTextEncoding]): Implemented WebDocumentTextEncoding
protocol.
(-[WebHTMLView usingDefaultTextEncoding]): Implemented
WebDocumentTextEncoding protocol.
2002-08-07 John Sullivan <sullivan@apple.com>
- fixed 3017245 -- Shift-Delete should go forward
* WebView.subproj/WebView.m:
(-[WebView keyDown:]): Check for shift-delete.
2002-08-07 Richard Williamson <rjw@apple.com>
Fixed scrollview related drawing turd problems.
(3000844 and 2896459).
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView drawRect:]):
* WebView.subproj/WebView.m:
(-[WebView setFrame:]):
2002-08-07 Darin Adler <darin@apple.com>
* WebView.subproj/WebFrame.m: (-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.m: (-[WebFrame _goToItem:withFrameLoadType:]):
Call _web_URLWithoutFragment by its new name _web_URLByRemovingFragment.
2002-08-07 Chris Blumenberg <cblu@apple.com>
Fixed: 3018632 - the show javascript files inline bug
* WebView.subproj/WebDataSourcePrivate.m:
(+[WebDataSource _repTypes]): support application/x-javascript
* WebView.subproj/WebViewPrivate.m:
(+[WebView _viewTypes]): support application/x-javascript
2002-08-07 John Sullivan <sullivan@apple.com>
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_superviewOfClass:]): Changed name from
_web_superviewWithName: and made it take a Class object
instead of a string.
* Plugins.subproj/WebNullPluginView.m:
(-[WebNullPluginView drawRect:]):
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView start]):
(-[WebPluginView layout]):
Updated callers of _web_superviewWithName:
* WebKit.pbproj/project.pbxproj: Changed WebNSViewExtras.h from
Public to Private
2002-08-06 Darin Adler <darin@apple.com>
Fix assert I saw while fixing bug 2965321.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
Create a suitable resource identifier from the failing URL in the WebError for cases
where we fail before we are able to construct a resource handle.
2002-08-06 Darin Adler <darin@apple.com>
- fixed 2970516 -- Activate Events don't appear to be coming in to the
Java Applet.plugin correctly.
* Plugins.subproj/WebPluginView.m: (-[WebPluginView sendActivateEvent:]):
Use activeFlag to set modifiers, not activMask, which is an event mask.
2002-08-06 John Sullivan <sullivan@apple.com>
Add mechanism to store userStyleSheet preferences in WebKit in
preparation for Dave wiring up the implementation.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(-[WebPreferences userStyleSheetEnabled]),
(-[WebPreferences setUserStyleSheetEnabled:]),
(-[WebPreferences userStyleSheetLocation]),
(-[WebPreferences setUserStyleSheetLocation:]):
New methods, read and write UserDefaults values.
(+[WebPreferences load]): Set initial values for
userStyleSheetEnabled and userStyleSheetLocation
2002-08-06 Maciej Stachowiak <mjs@apple.com>
Removed some APPLE_CHANGES no longer needed after the part change.
* WebCoreSupport.subproj/WebBridge.m: Remove setOpenedByScript: and
openedByScript methods now that they are not needed.
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m: Remove setOpenedByScript: and
openedByScript methods now that they are not needed.
2002-08-06 Darin Adler <darin@apple.com>
- fixed 3017761 -- dataSource != nil assertion navigating at yahoo.com
* WebView.subproj/WebLocationChangeHandler.h:
* WebView.subproj/WebLocationChangeHandler.m:
Change client redirect calls to pass the frame, not the data source.
At the time a client redirect is requested, it's not even clear yet
which data source will be involved. We may want to make some of the
other calls pass frames, also, aside from the "start", "committed", "done",
calls, which must specify the data source.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]): Pass frame, not data source.
(-[WebBridge reportClientRedirectCancelled]): Pass frame, not data source.
2002-08-06 Darin Adler <darin@apple.com>
* lots of files: Changed url to URL in many places and renamed URL-related methods.
2002-08-06 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge dataSourceChanged]): Call setParent:.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate init]): Initialize the text size multiplier to 1.
* WebView.subproj/WebDataSource.h: Removed [redirectedURL], deprecated [inputURL], added [URL].
* WebView.subproj/WebDataSource.m:
(-[WebDataSource URL]): Added. Returns current URL, without requiring separate logic for the
redirected and not-yet-redirected cases.
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _loadIcon]): Use [WebDataSource URL].
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler openFrameInNewWindow:]): Use [WebDataSource URL].
2002-08-06 John Sullivan <sullivan@apple.com>
WebKit part of fix for 3017539 -- Replace Serif and Sans-serif
font preferences with Default preference; let fixed width font
size be independent.
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]): Add default value for fixed width size
(-[WebPreferences fixedFontSize]),
(-[WebPreferences setFixedFontSize:]): New methods.
2002-08-06 Darin Adler <darin@apple.com>
- fixed 3017536 -- Change default font to Lucida Grande 14 pt.
* WebView.subproj/WebPreferences.m: (+[WebPreferences load]):
Changed default font and sans serif font family names to Lucida Grande.
Changed default font size to 14 point.
2002-08-05 Maciej Stachowiak <mjs@apple.com>
fixed 2974993 - window.open does not return the right window object
fixed 3017140 - WebKit creates a new KHTMLPart per page; should
reuse it like KHTML does
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation setDataSource:]): Don't swap the part at
this point. Now it gets reused.
2002-08-05 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Fix tyops that broke Development
build.
2002-08-05 Darin Adler <darin@apple.com>
* .cvsignore: Ignore WebCore-combined.exp.
2002-08-05 Maciej Stachowiak <mjs@apple.com>
- fixed 3007072 - need to be able to build fat
* WebKit.pbproj/project.pbxproj: Fixed DeploymentFat build.
* Makefile.am: Build WebCore-combined.exp for Development and
Mixed build.
* WebKit-tests.exp: Added.
* WebKit.exp: Remove test-only function.
2002-08-05 Darin Adler <darin@apple.com>
Do the wiring for the "text size multiplier" feature. The rest of the work will probably be done
at the WebCore level.
* WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setFrame:]): Set the text size multiplier.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setTextSizeMultiplier:]): Added. Calls _textSizeMultiplierChanged on the main frame.
(-[WebController textSizeMultiplier]): Added.
* WebView.subproj/WebControllerPrivate.h: Added textSizeMultiplier instance variable.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _textSizeMultiplierChanged]): Added. Calls setTextSizeMultiplier: on the bridge,
and _textSizeMultiplierChanged on all the child frames.
2002-08-05 Chris Blumenberg <cblu@apple.com>
Renamed icon loader delegate method to include the icon loader.
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
* WebView.subproj/WebDataSourcePrivate.m:
2002-08-05 Richard Williamson <rjw@apple.com>
Added additional check to find appropriate fonts with available
weight, rather than always using a weight of 5.
Regarding "kCGErrorFailure : can't find name id 4 for font id 8395" errors:
CG appears to be lying to us about some fonts, Verdana in particular.
It claims to have an available Verdana font w/ the correct traits, but spits errors
when we request that font. Further, the Font Panel behaves oddly when you request
Verdana. The panel displays the font but if you select the font it doesn't
'stick'. A mystery.
* WebCoreSupport.subproj/WebTextRendererFactory.m:
(-[WebTextRendererFactory fontWithFamily:traits:size:]):
2002-08-05 Darin Adler <darin@apple.com>
- fixed 2986567 -- suppress return characters from title in title bar, status bar, menu items
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge setTitle:]): Call _web_stringByCollapsingNonPrintingCharacters.
2002-08-05 Richard Williamson <rjw@apple.com>
Added exported symbols file.
* WebKit.exp: Added.
* WebKit.pbproj/project.pbxproj:
2002-08-05 Darin Adler <darin@apple.com>
- fixed 3014122 -- spinner never stops spinning when iframe has URL with bad path
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Initialize the
state in WebFramePrivate init instead.
* WebView.subproj/WebFramePrivate.h: Remove WebFrameStateUninitialized.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate init]): Set initial state to WebFrameStateComplete.
(-[WebFrame _transitionToLayoutAcceptable]): Remove WebFrameStateUninitialized case.
(-[WebFrame _transitionToCommitted]): Remove WebFrameStateUninitialized case.
(-[WebFrame _isLoadComplete]): Remove WebFrameStateUninitialized case.
* WebView.subproj/WebDataSource.h: Tweak.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource stopLoading]): Move downloadHandler logic from here into _stopLoading.
(-[WebDataSource isLoading]): Rewrite for simplicity.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _stopLoading]): Move downloadHandler logic here from stopLoading.
Also make this work even if handles are removed from the list during the stop process.
(-[WebDataSource _recursiveStopLoading]): Simplify a lot by using WebFrame's stopLoading.
(-[WebDataSource _setTitle:]): Use the committed boolean rather than the state to check
if the title change should be sent to the location change handler.
2002-08-05 Maciej Stachowiak <mjs@apple.com>
* Misc.subproj/WebKitDebug.h: Put WEBKIT_ASSERT_NOT_REACHED()
inside the appropriate #ifdef, and remove the various _log macros,
which are onsolete in WebKit.
2002-08-05 Maciej Stachowiak <mjs@apple.com>
Some changes related to re-merging the KHTMLPart end() method:
* Misc.subproj/WebKitDebug.h: Added WEBKIT_ASSERT_NOT_REACHED().
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToLayoutAcceptable]): Replace NSException with
ASSERT_NOT_REACHED (this is an internal consistency check, not an
argument check on a public API, so an assert is more appropriate than
an exception).
(-[WebFrame _transitionToCommitted]): Likewise.
(-[WebFrame _isLoadComplete]): Likewise; also, remove bridge call
to scrollToBaseAnchor:, since that will now happen automatically
when calling end.
2002-08-02 Darin Adler <darin@apple.com>
WebKit support for feature where client redirects are treated as if the
page was continuing to load.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportClientRedirectTo:delay:fireDate:]): Added. Passes the client
redirect along to the location change handler.
(-[WebBridge reportClientRedirectCancelled]): Passes client redirect cancel along
to the location change handler.
(-[WebBridge dataSourceChanged]): Remove hack related to dummy data source.
(-[WebBridge dataSource]): Remove hack related to dummy data source.
* WebView.subproj/WebLocationChangeHandler.h: Added client redirect methods.
Added class for base implementation of protocol. Updated stale comment.
* WebView.subproj/WebLocationChangeHandler.m: Added. Provides base implementation
of the WebLocationChangeHandler protocol so that clients don't need to implement
all the methods if they are only interested in some of them.
* WebKit.pbproj/project.pbxproj: Added WebLocationChangeHandler.m.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _goToItem:withFrameLoadType:]): Call scrollToAnchor under its new name.
* Misc.subproj/WebIconLoader.h:
* Misc.subproj/WebIconLoader.m:
* WebView.subproj/WebControllerPolicyHandler.m:
* WebView.subproj/WebControllerPolicyHandlerPrivate.h:
Replaced __MyCompanyName__ with the actual name of our company.
2002-08-02 John Sullivan <sullivan@apple.com>
- fixed 3015705 -- Command-up-arrow and -down-arrow should go to
beginning and end of web page
* WebView.subproj/WebView.m:
(-[WebView keyDown:]):
Added checks for command key.
2002-08-01 Richard Williamson <rjw@apple.com>
Effort towards 3014555 (going back to frame), but not fixed.
Need to think more about appropriate solution and compromises.
* History.subproj/WebBackForwardList.h:
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList backEntryAtIndex:]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem initWithURL:title:]):
(-[WebHistoryItem initWithURL:title:image:]):
(-[WebHistoryItem initWithURL:target:parent:title:image:]):
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem parent]):
(-[WebHistoryItem setTitle:]):
(-[WebHistoryItem setTarget:]):
(-[WebHistoryItem setParent:]):
(-[WebHistoryItem setDisplayTitle:]):
* WebCoreSupport.subproj/WebBridge.m:
* WebView.subproj/WebController.m:
(-[WebController _goToItem:withFrameLoadType:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _isLoadComplete]):
(-[WebFrame _scrollToTop]):
2002-08-01 Chris Blumenberg <cblu@apple.com>
Only send command key events if the plug-in is in the responder chain.
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView isInResponderChain]):
(-[WebPluginView performKeyEquivalent:]):
(-[WebPluginView setWindow]): added some more logging
2002-08-01 Chris Blumenberg <cblu@apple.com>
Only send command keyDown once by ignoring the keyDown that comes after performKeyEquivalent.
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView keyDown:]):
2002-08-01 Chris Blumenberg <cblu@apple.com>
Fixed: 2970530 - Command keys are not getting passed in to plugins
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView performKeyEquivalent:]):
2002-08-01 Richard Williamson <rjw@apple.com>
More back/forward work. Support for restoring scroll position.
We still have a big remaining issue. We don't record the entire
frame tree in back/forward items. This means going back or forward
to a frame will looose the context of the containing frameset,
see 3014555.
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList currentEntry]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem anchor]):
(-[WebHistoryItem setAnchor:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportError:]):
* WebView.subproj/WebController.m:
(-[WebController _goToItem:withFrameLoadType:]):
(-[WebController goBack]):
(-[WebController goForward]):
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _isLoadComplete]):
(-[WebFrame _goToItem:withFrameLoadType:]):
(-[WebFrame _restoreScrollPosition]):
(-[WebFrame _scrollToTop]):
2002-08-01 Chris Blumenberg <cblu@apple.com>
Fixed:
2938010 - PLUGINS: right-click support
2938011 - PLUGINS: extended key events support
2970523 - Arrow key events not correctly passed to applets
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView modifiersForEvent:]):
(-[WebPluginView getCarbonEvent:withEvent:]):
(-[WebPluginView mouseDown:]):
(-[WebPluginView keyUp:]):
(-[WebPluginView keyDown:]):
(-[WebPluginView menuForEvent:]):
=== Alexander-15 ===
2002-08-01 Don Melton <gramps@apple.com>
Fixed deployment build compile problem.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
2002-08-01 Maciej Stachowiak <mjs@apple.com>
Remove stuff formerly useful for "View Reconstructed Source"
feature but now useless.
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource documentTextFromDOM]): Removed.
2002-07-31 Maciej Stachowiak <mjs@apple.com>
Changed things around so that WebFrame, not WebDataSource, owns
WebBridge. This allows us to remove the dummy data source.
* WebView.subproj/WebFrame.m:
(-[WebFrame
initWithName:webView:provisionalDataSource:controller:]): Remove
all dummy data source-related crud, but call _changeBridge to
create the initial bridge.
(-[WebFrame setProvisionalDataSource:]): Remove dummy data
source-related epicycles.
* WebView.subproj/WebFramePrivate.h: Add bridge member to private class.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate setDataSource:]): Don't remove old data source from frame,
this is no longer needed and may even be harmful.
(-[WebFrame _transitionToCommitted]): Remove much now-unneeded code.
(-[WebFrame _isLoadComplete]): Get location change handler from controller.
Don't call end on the bridge if the document is not html.
(-[WebFrame _changeBridge]): Free the old bridge and make a new one.
(-[WebFrame _bridge]): Get it directly, not from the data source.
* WebView.subproj/WebDataSourcePrivate.h: Remove everything related to the
`dummy' concept.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setFinalURL:]): Reorder code a bit.
(-[WebDataSource _bridge]): Get bridge from frame.
(-[WebDataSource _commitIfReady]): No more need to set the bridge's frame.
(-[WebDataSource _makeRepresentation]): Set data source on the rep.
(-[WebDataSource _startLoading:]): Get location change handler from controller.
(-[WebDataSource _setTitle:]): Likewise.
(-[WebDataSource receivedPageIcon:]): Likewise.
(-[WebDataSource _loadIcon]): Likewise.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient
WebResourceHandle:dataDidBecomeAvailable:]): Get location change
handler from the controller.
* WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]): Change *and* commit
the data source. This could probably be collapsed down to one
method now.
* WebView.subproj/WebDocument.h: Added setDataSource: method to
the WebDocumentRepresenation protocol. For now it is only useful
for the HTML representation, but could potentially be useful for
other representation classes. It should also allow the data source
to be removed as a parameter from other methods, but I have not
done that yet. It may be even better still to pass the data source
as a paremeter to the init method.
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation init]): Remove allocation of bridge.
(-[WebHTMLRepresentation dealloc]): Remove release of bridge.
(-[WebHTMLRepresentation setDataSource:]): Store unretained reference
to the data source's frame's bridge.
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _bridge]): Fetch the bridge from the frame, not the
data source.
* WebView.subproj/WebImageRepresentation.m:
(-[WebImageRepresentation setDataSource:]): Added empty
implementation.
* WebView.subproj/WebTextRepresentation.m:
(-[WebTextRepresentation setDataSource:]): Added empty
implementation.
* Plugins.subproj/WebPluginStream.m:
(-[WebPluginStream setDataSource:]): Added empty implementation.
2002-07-30 Maciej Stachowiak <mjs@apple.com>
Fixes of various bugs that prevented Alexander from running the
Mozilla page load test.
- fixed 3008682 - Alexander cannot run Mozilla-PLT
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge dataSourceChanged]): Don't call setURL: to set a URL
that we got from a redirect; just pass it directly to
openURL:. The inputURL is irrelevant.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setFinalURL:]): Don't call setURL: on the
bridge; instead, assert that the data source is committed, because
it would be a mistake to get a redirect after having received
data.
2002-07-30 Richard Williamson <rjw@apple.com>
Remove annoying log, it's really annoying. Added FIX ME
comment instead.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
2002-07-30 John Sullivan <sullivan@apple.com>
- fixed 3012083 "Looked for URLs on the pasteboard, but found
none" spam dragging nil-target bookmark
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_bestURLForDraggingInfo:]):
This method was getting data for types on the pasteboard without
first checking whether the types were on the pasteboard, a no-no.
Restructured this method and tweaked it here and there also.
(-[NSView _web_dragOperationForDraggingInfo:]): moved a fast
test in front of a slow test
2002-07-29 Richard Williamson <rjw@apple.com>
Removed setDirectsAllLinksToSystemBrowser: method, not needed
and antiquated by the policy APIs.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
2002-07-29 Richard Williamson <rjw@apple.com>
Changes to support the migration of back/forward list to WebKit.
Back/forward in frames now works (2946164), still not done w/
restoring scroll positions (2927633).
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(+[WebHistoryItem entryWithURL:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController initWithView:provisionalDataSource:]):
(-[WebController setUseBackForwardList:]):
(-[WebController useBackForwardList]):
(-[WebController goBack]):
(-[WebController goForward]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebFrame.m:
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]):
(-[WebFrame _setProvisionalDataSource:]):
(-[WebFrame _goToURL:withFrameLoadType:]):
* WebView.subproj/WebViewPrivate.m:
(-[WebView _goBack]):
(-[WebView _goForward]):
2002-07-29 Richard Williamson <rjw@apple.com>
Fixed 3009074. Added [WebHTMLView jumpToSelection:] and related user interface
item validation.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView jumpToSelection:]):
(-[WebHTMLView validateUserInterfaceItem:]):
2002-07-29 Richard Williamson <rjw@apple.com>
Fixed 3009085. Implemented takeFindStringFromSelection: on WebHTMLView and WebTextView.
Also added user interface item validation for that method.
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView hasSelection]):
(-[WebHTMLView takeFindStringFromSelection:]):
(-[WebHTMLView validateUserInterfaceItem:]):
* WebView.subproj/WebTextView.m:
(-[WebTextView canTakeFindStringFromSelection]):
(-[WebTextView takeFindStringFromSelection:]):
2002-07-29 Chris Blumenberg <cblu@apple.com>
Fixed:
2971845 - text view uses default "user font" (Helvetica), not fonts chosen in Alexander preferences
* WebView.subproj/WebTextView.m:
(-[WebTextView initWithFrame:]): add observer
(-[WebTextView dealloc]): remove observer
(-[WebTextView setFixedWidthFont]): added, checks defaults
(-[WebTextView dataSourceUpdated:]): calls setFixedWidthFont
(-[WebTextView searchFor:direction:caseSensitive:]): no changes
(-[WebTextView defaultsChanged:]): calls setFixedWidthFont
2002-07-27 Chris Blumenberg <cblu@apple.com>
Implemented click policy, support for option-click
Implemented dragging of links and images from WebHTMLView
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]): added, moved from WebBrowser
(-[NSView _web_dragOperationForDraggingInfo:]): don't accept drag if source == destination
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebControllerPolicyHandler.m:
(-[WebPolicy URL]): needed for click policy
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:andPath:]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _downloadURL:toPath:]): added, simply downloads a URL
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler downloadURL:]): calls [WebController _downloadURL:toPath:]
* WebView.subproj/WebDefaultPolicyHandler.m:
(-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView mouseDown:]): calls _continueAfterCheckingDragForEvent
(-[WebHTMLView mouseUp:]): calls _continueAfterClickPolicyForEvent
(-[WebHTMLView draggingSourceOperationMaskForLocal:]): added
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): added, starts download
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLViewPrivate dealloc]):
(-[WebHTMLView _elementAtPoint:]):
(-[WebHTMLView _continueAfterClickPolicyForEvent:]): added, implements click policy
(-[WebHTMLView _continueAfterCheckingDragForEvent:]): added, checks if mouse event is a drag
2002-07-26 Richard Williamson <rjw@apple.com>
WebframeLoadType enum first value wasn't explicitly set, so 0 was used.
I assumed 0 was unitialized, and depended on that to not execute some 'transitional'
back/forward. This problem broke back/forward.
* WebView.subproj/WebFramePrivate.h:
2002-07-26 John Sullivan <sullivan@apple.com>
WebKit part of fix for 3009404 -- Back/Forward menu items should use [ and ],
but command-arrows should still work too.
* WebView.subproj/WebController.h:
- added goForward to windowContext protocol. This is temporary, just like goBack
here is temporary; they can be migrated into the new back-forward-in-WebKit design
together.
* WebView.subproj/WebView.m:
(-[WebView keyDown:]): call _goBack and _goForward for command-arrow keys
* WebView.subproj/WebViewPrivate.h,
* WebView.subproj/WebViewPrivate.m:
(-[WebView _goForward]): add _goForward, parallel to _existing goBack.
2002-07-26 Chris Blumenberg <cblu@apple.com>
Fixed crash in unknown_text
Fixed full-window plug-ins. I think darin broken this :)
Cleaned up WebPluginStream a bit
* Plugins.subproj/WebPluginDatabase.m:
(-[WebPluginDatabase init]):
* Plugins.subproj/WebPluginStream.m:
(-[WebPluginStream getFunctionPointersFromPluginView:]):
(-[WebPluginStream initWithURL:pluginPointer:notifyData:attributes:]):
(-[WebPluginStream startLoad]):
(-[WebPluginStream stop]):
(-[WebPluginStream setUpGlobalsWithHandle:]):
(-[WebPluginStream receivedError:]):
(-[WebPluginStream receivedData:withDataSource:]):
(-[WebPluginStream receivedError:withDataSource:]):
(-[WebPluginStream WebResourceHandle:dataDidBecomeAvailable:]):
(-[WebPluginStream WebResourceHandleDidCancelLoading:]):
(-[WebPluginStream WebResourceHandle:didFailLoadingWithResult:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _mainHandle]): added, WebPluginStream needs this
2002-07-25 Richard Williamson <rjw@apple.com>
More incremental changes for back/forward migration.
* History.subproj/WebBackForwardList.h:
* History.subproj/WebBackForwardList.m:
(-[WebBackForwardList init]):
(-[WebBackForwardList dealloc]):
(-[WebBackForwardList addEntry:]):
(-[WebBackForwardList goBack]):
(-[WebBackForwardList goBackToIndex:]):
(-[WebBackForwardList backEntry]):
(-[WebBackForwardList currentEntry]):
(-[WebBackForwardList forwardEntry]):
(-[WebBackForwardList goForward]):
(-[WebBackForwardList goForwardToIndex:]):
(-[WebBackForwardList canGoBack]):
(-[WebBackForwardList canGoForward]):
(-[WebBackForwardList description]):
* History.subproj/WebHistoryItem.h:
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem initWithURL:title:]):
(-[WebHistoryItem initWithURL:title:image:]):
(-[WebHistoryItem initWithURL:target:title:image:]):
(-[WebHistoryItem dealloc]):
(-[WebHistoryItem target]):
(-[WebHistoryItem setTarget:]):
(-[WebHistoryItem setLastVisitedDate:]):
(-[WebHistoryItem scrollPoint]):
(-[WebHistoryItem setScrollPoint:]):
* History.subproj/WebHistoryList.m:
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate setLoadType:]):
(-[WebFrame _setLoadType:]):
(-[WebFrame _loadType]):
(-[WebFrame _transitionToCommitted]):
2002-07-25 Chris Blumenberg <cblu@apple.com>
Made some WebPolicy API's private
Added support for download link/image to disk
* Misc.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler receivedData:]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebControllerPolicyHandler.m:
(-[WebPolicyPrivate dealloc]):
(-[WebPolicy _setPolicyAction:]):
(-[WebPolicy policyAction]):
(-[WebPolicy path]):
(-[WebPolicy _setPath:]):
(-[WebPolicy dealloc]):
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:andPath:]):
(+[WebClickPolicy webPolicyWithClickAction:andPath:]):
* WebView.subproj/WebControllerPolicyHandlerPrivate.h: Added.
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler downloadURL:]):
(-[WebDefaultContextMenuHandler downloadLinkToDisk:]):
(-[WebDefaultContextMenuHandler openImageInNewWindow:]):
(-[WebDefaultContextMenuHandler downloadImageToDisk:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
2002-07-25 Chris Blumenberg <cblu@apple.com>
Fixed crasher caused by not retaining the content policy.
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebMainResourceClient.h:
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
2002-07-25 Chris Blumenberg <cblu@apple.com>
Made policy APIs return a WebPolicy object.
Added click policy.
* Misc.subproj/WebDownloadHandler.m:
(-[WebDownloadHandler receivedData:]):
(-[WebDownloadHandler finishedLoading]):
(-[WebDownloadHandler cancel]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(+[WebController defaultURLPolicyForURL:]):
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebControllerPolicyHandler.m: Added.
(-[WebPolicy initWithPolicyAction:]):
(-[WebPolicy policyAction]):
(+[WebURLPolicy webPolicyWithURLAction:]):
(+[WebFileURLPolicy webPolicyWithFileAction:]):
(+[WebContentPolicy webPolicyWithContentAction:andPath:]):
(-[WebContentPolicy initWithContentPolicyAction:andPath:]):
(-[WebContentPolicy dealloc]):
(-[WebContentPolicy path]):
(-[WebClickPolicy initWithClickPolicyAction:andPath:]):
(+[WebClickPolicy webPolicyWithClickAction:andPath:]):
(-[WebClickPolicy dealloc]):
(-[WebClickPolicy path]):
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
* WebView.subproj/WebDataSource.h:
* WebView.subproj/WebDataSource.m:
(-[WebDataSource contentPolicy]):
(-[WebDataSource fileType]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _setContentPolicy:]):
(-[WebDataSource _commitIfReady]):
(-[WebDataSource _isReadyForData]):
* WebView.subproj/WebDefaultPolicyHandler.m:
(-[WebDefaultPolicyHandler URLPolicyForURL:]):
(-[WebDefaultPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
(-[WebDefaultPolicyHandler unableToImplementFileURLPolicy:error:forDataSource:]):
(-[WebDefaultPolicyHandler unableToImplementURLPolicy:error:forURL:]):
(-[WebDefaultPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
(-[WebDefaultPolicyHandler clickPolicyForElement:button:modifierMask:]):
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowDataSource:]):
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient receivedProgressWithHandle:complete:]):
(-[WebMainResourceClient receivedError:forHandle:]):
(-[WebMainResourceClient WebResourceHandleDidFinishLoading:data:]):
(-[WebMainResourceClient WebResourceHandle:dataDidBecomeAvailable:]):
2002-07-25 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Add DeploymentFat build style.
2002-07-25 Darin Adler <darin@apple.com>
WebKit part of fix for 3006054 -- assert error failingURL != nil
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge reportError:]): New. Passes the error to the controller associated with
the dataSource.
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]): Call absoluteString.
(-[WebSubresourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.
* WebView.subproj/WebController.m:
(-[WebController haveContentPolicy:andPath:forDataSource:]): Call absoluteString.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
Don't call absoluteString.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _shouldShowDataSource:]): Call absoluteString.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient WebResourceHandleDidCancelLoading:]): Call absoluteString.
2002-07-25 Chris Blumenberg <cblu@apple.com>
Remove reloadImage until its implemented.
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
2002-07-25 Chris Blumenberg <cblu@apple.com>
Renamed elementInfoAtPoint to elementAtPoint
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDefaultContextMenuHandler.h:
* WebView.subproj/WebDefaultContextMenuHandler.m:
(+[WebDefaultContextMenuHandler addMenuItemWithTitle:action:target:toArray:]): renamed
(-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]):
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementAtPoint:]):
2002-07-24 Chris Blumenberg <cblu@apple.com>
tiny change
* WebView.subproj/WebDefaultContextMenuHandler.m:
2002-07-24 Chris Blumenberg <cblu@apple.com>
Added implmentations for a few context menu items.
* WebView.subproj/WebController.h:
* WebView.subproj/WebDefaultContextMenuHandler.h:
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler dealloc]):
(-[WebDefaultContextMenuHandler contextMenuItemsForElement:defaultMenuItems:]):
(-[WebDefaultContextMenuHandler validateUserInterfaceItem:]):
(-[WebDefaultContextMenuHandler openNewWindowWithURL:]):
(-[WebDefaultContextMenuHandler openLinkInNewWindow:]):
(-[WebDefaultContextMenuHandler copyLinkToClipboard:]):
(-[WebDefaultContextMenuHandler openImageInNewWindow:]):
(-[WebDefaultContextMenuHandler copyImageToClipboard:]):
(-[WebDefaultContextMenuHandler reloadImage:]):
(-[WebDefaultContextMenuHandler openFrameInNewWindow:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]):
2002-07-24 Richard Williamson <rjw@apple.com>
Removed vestigal locationChangeHandler ivar.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]):
2002-07-24 Chris Blumenberg <cblu@apple.com>
Call [self _locationChangeHandler] instead of _private-locationChangeHandler
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource receivedPageIcon:]):
2002-07-24 Richard Williamson <rjw@apple.com>
Implemented find for text views.
* WebView.subproj/WebTextView.m:
(-[NSString findString:selectedRange:options:wrap:]):
(-[WebTextView searchFor:direction:caseSensitive:]):
2002-07-24 Chris Blumenberg <cblu@apple.com>
Implemented initial contextual menus. None activated yet.
* WebView.subproj/WebDefaultContextMenuHandler.h:
* WebView.subproj/WebDefaultContextMenuHandler.m:
(-[WebDefaultContextMenuHandler dealloc]): added
(-[WebDefaultContextMenuHandler addMenuItemWithTitle:action:toArray:]): added
(-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): create menu items
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]):
2002-07-24 Chris Blumenberg <cblu@apple.com>
More renaming for WebDefaultPolicyHandler.
* WebView.subproj/WebController.m:
(-[WebController policyHandler]):
* WebView.subproj/WebDefaultPolicyHandler.h:
* WebView.subproj/WebDefaultPolicyHandler.m:
2002-07-24 Chris Blumenberg <cblu@apple.com>
Renamed WebDefaultControllerPolicyHandler to WebDefaultPolicyHandler.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebDefaultControllerPolicyHandler.h: Removed.
* WebView.subproj/WebDefaultControllerPolicyHandler.m: Removed.
* WebView.subproj/WebDefaultPolicyHandler.h: Added.
* WebView.subproj/WebDefaultPolicyHandler.m: Added.
(-[WebDefaultControllerPolicyHandler initWithWebController:]):
(-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
(-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
(-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
(-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
(-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
(-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
(-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
2002-07-24 Chris Blumenberg <cblu@apple.com>
More plumbing for contextual menu support.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController setContextMenuHandler:]): added
(-[WebController contextMenuHandler]): added
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate init]): alloc WebDefaultContextMenuHandler
(-[WebControllerPrivate dealloc]): dealloc WebDefaultContextMenuHandler
(-[WebController _defaultContextMenuHandler]):
* WebView.subproj/WebDefaultContextMenuHandler.h: Added.
* WebView.subproj/WebDefaultContextMenuHandler.m: Added.
(-[WebDefaultContextMenuHandler contextMenuItemsForElementInfo:defaultMenuItems:]): new
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]): call contextMenuHandlers
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _setController:]): added comment
(-[WebHTMLView _controller]): added
2002-07-24 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer xHeight]): Added. Calls [NSFont xHeight].
* WebView.subproj/WebPreferences.h:
* WebView.subproj/WebPreferences.m:
(+[WebPreferences load]):
(-[WebPreferences defaultFontSize]):
(-[WebPreferences setDefaultFontSize:]):
Renamed minimumFont to defaultFont, and changed it from 11 to 16.
Also changed default monospaced font to Courier instead of Monaco.
2002-07-24 Richard Williamson <rjw@apple.com>
Support for find in HTML, find in text view coming soon.
* WebView.subproj/WebDocument.h:
* WebView.subproj/WebHTMLView.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView searchFor:direction:caseSensitive:]):
* WebView.subproj/WebTextView.h:
* WebView.subproj/WebTextView.m:
(-[WebTextView searchFor:direction:caseSensitive:]):
2002-07-23 Chris Blumenberg <cblu@apple.com>
More plumbing for contextual menu support.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]):
* WebView.subproj/WebHTMLViewPrivate.h:
* WebView.subproj/WebHTMLViewPrivate.m:
(-[WebHTMLView _elementInfoAtPoint:]): added
2002-07-23 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Fix file reference types to be more consistent.
2002-07-23 Chris Blumenberg <cblu@apple.com>
Initial plumbing for contextual menu support.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge elementInfoForMouseEvent:]): added
* WebView.subproj/WebController.h:
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView menuForEvent:]): added
2002-07-23 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Fix paths for newly added files.
2002-07-23 Richard Williamson <rjw@apple.com>
Cleaned up LocationChangeHandler. We now have one per controller.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController policyHandler]):
(-[WebController setLocationChangeHandler:]):
(-[WebController locationChangeHandler]):
* WebView.subproj/WebControllerPolicyHandler.h:
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _setIsDummy:)
(-[WebDataSource _isDummy]):
Hack on hack. MJS will remove when the dummy data source hack is removed.
(-[WebDataSource _locationChangeHandler]):
(-[WebDataSource _removeFromFrame]):
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
(-[WebFrame setProvisionalDataSource:]):
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]):
Added default policy handler. This is used if no policy handler is
set on the controller.
* WebView.subproj/WebDefaultControllerPolicyHandler.h: Added.
* WebView.subproj/WebDefaultControllerPolicyHandler.m: Added.
(-[WebDefaultControllerPolicyHandler initWithWebController:]):
(-[WebDefaultControllerPolicyHandler URLPolicyForURL:]):
(-[WebDefaultControllerPolicyHandler fileURLPolicyForMIMEType:dataSource:isDirectory:]):
(-[WebDefaultControllerPolicyHandler unableToImplementFileURLPolicy:forDataSource:]):
(-[WebDefaultControllerPolicyHandler requestContentPolicyForMIMEType:dataSource:]):
(-[WebDefaultControllerPolicyHandler unableToImplementURLPolicyForURL:error:]):
(-[WebDefaultControllerPolicyHandler unableToImplementContentPolicy:forDataSource:]):
(-[WebDefaultControllerPolicyHandler pluginNotFoundForMIMEType:pluginPageURL:]):
* WebView.subproj/WebFrame.m:
2002-07-23 Darin Adler <darin@apple.com>
* Makefile.am: Clean based on all, not all-am, so it happens before subdirs
if any.
2002-07-23 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer drawUnderlineForCharacters:stringLength:atPoint:withColor:]):
Change API to take character array instead of a string.
* WebKit.pbproj/project.pbxproj: Took "subproj" off the names of some groups.
=== Alexander-14 ===
2002-07-22 Richard Williamson <rjw@apple.com>
Moved back/forward list from Alex's document to WebController. First step
to address a series of back/forward related issues.
* WebView.subproj/WebController.h:
* WebView.subproj/WebController.m:
(-[WebController backForwardList]):
* WebView.subproj/WebControllerPrivate.h:
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate init]):
(-[WebControllerPrivate dealloc]):
2002-07-22 Chris Blumenberg <cblu@apple.com>
Strip white space before and after URL string 2998696
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_bestURLForDraggingInfo:]):
2002-07-22 Ken Kocienda <kocienda@apple.com>
* WebView.subproj/WebHTMLView.m: import of removed WebFrame bridge header was
left in, causing a build break.
2002-07-22 Maciej Stachowiak <mjs@apple.com>
Merged WebBridge and WebFrameBridge.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge childFrames]): Return bridges, not frameBridges.
(-[WebBridge descendantFrameNamed:]): Return bridge, not frameBridge.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Return a bridge, not a frameBridge.
(-[WebBridge mainFrame]): Return a bridge, not a frameBridge.
(-[WebBridge frameNamed:]):Return a bridge, not a frameBridge.
(-[WebBridge loadURL:attributes:flags:withParent:]): Moved from WebFrameBridge.
(-[WebBridge loadURL:]): Moved from WebFrameBridge.
(-[WebBridge postWithURL:data:]): Moved from WebFrameBridge.
* WebCoreSupport.subproj/WebFrameBridge.h: Removed.
* WebCoreSupport.subproj/WebFrameBridge.m: Removed.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Don't create
a WebFrameBridge.
* WebView.subproj/WebFramePrivate.h:
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]): No longer dealloc frameBridge, since we don't have one.
(-[WebFrame _transitionToCommitted]): Pass along the frame's render part, if any.
(-[WebFrame _frameBridge]): Removed.
* WebKit.pbproj/project.pbxproj: Removed deleted files.
2002-07-22 Maciej Stachowiak <mjs@apple.com>
Change WebBridge to hold on to a WebFrame instead of a
WebDataSource. Since we will no longer ever have a bridge for a
provisional data source, we'll just bind the bridge to a
frame. Which means we can merge the bridge and the frame bridge
next.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m: Changed below methods to work
with direct knowledge of the frame but not the bridge (mostly a
simplification).
(-[WebBridge frame]):
(-[WebBridge parent]):
(-[WebBridge childFrames]):
(-[WebBridge descendantFrameNamed:]):
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
(-[WebBridge openNewWindowWithURL:]):
(-[WebBridge areToolbarsVisible]):
(-[WebBridge setToolbarsVisible:]):
(-[WebBridge areScrollbarsVisible]):
(-[WebBridge setScrollbarsVisible:]):
(-[WebBridge isStatusBarVisible]):
(-[WebBridge setStatusBarVisible:]):
(-[WebBridge setWindowFrame:]):
(-[WebBridge window]):
(-[WebBridge setStatusText:]):
(-[WebBridge mainFrame]):
(-[WebBridge frameNamed:]):
(-[WebBridge receivedData:withDataSource:]):
(-[WebBridge objectLoadedFromCache:size:]):
(-[WebBridge setFrame:]):
(-[WebBridge dataSourceChanged]):
(-[WebBridge dataSource]):
(-[WebBridge openedByScript]):
(-[WebBridge setOpenedByScript:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): Set bridge's frame and notify
that the data source changed.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Set
bridge's frame.
* WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
(-[WebFrame _bridge]): Method to get the bridge.
2002-07-21 Maciej Stachowiak <mjs@apple.com>
Removed provisional/committed distinction from WebCore and the
WebCore SPI. WebCore will never see a provisional data source or
provisional anything, any more.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge descendantFrameNamed:]): Don't bother with the provisional
bridge - no such thing.
(-[WebBridge setDataSource:]): Assert the data source is committed.
* WebCoreSupport.subproj/WebFrameBridge.m:
(-[WebFrameBridge bridge]): Return committed bridge always, and remove
committed bridge method.
2002-07-21 Maciej Stachowiak <mjs@apple.com>
Fix a regression in my recent refactoring that broke JavaScript
window opening, by doing some trickery to make a frame's initial
dummy data source committed.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]):
Create dummy data source as committed, not provisional.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToCommitted]): Allow the documentView to be nil
if there is no webView either; this is temporarily needed to handle
the special initial dummy data source, which will be going away soon.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _receivedData:]): Add temporary special case to
avoid sending empty NSData to the representation, to avoid
triggering WebCore assertions.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge openNewWindowWithURL:]): Get the committed data
source, not the provisional one.
2002-07-21 Chris Blumenberg <cblu@apple.com>
Used darin-inspired code factoring to fix 3000801 (alex doesn't accept drag of webloc file) in 3 places where we accept drags.
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_parentWebView]): no changes
(-[NSView _web_acceptableDragTypes]): added
(-[NSView _web_bestURLForDraggingInfo:]): added
(-[NSView _web_dragOperationForDraggingInfo:]): added
* WebKit.pbproj/project.pbxproj: made WebNSViewExtras.h public
* WebView.subproj/WebView.m:
(-[WebView initWithFrame:]): calls _web_acceptableDragTypes
(-[WebView draggingEntered:]): calls _web_dragOperationForDraggingInfo
(-[WebView concludeDragOperation:]): calls _web_bestURLForDraggingInfo
2002-07-21 Chris Blumenberg <cblu@apple.com>
- We were loading icons when page loads ended in error. Fixed.
- Special-case file URLs once instead of twice by moving NSWorkspace
call out of WebIconLoader
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader startLoading]): removed file URL special-case
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadIcon]): check for document error, send file
icon to client if none has been set with the LINK tag
2002-07-21 Maciej Stachowiak <mjs@apple.com>
* Makefile.am: Remove products from symroots on `make clean'.
2002-07-21 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Set directories for the group
folders, so that creating new files in them will put them in the
right directory by default.
2002-07-21 Maciej Stachowiak <mjs@apple.com>
More refactoring. Change bridge to get the data source via a
method instead of straight from the ivar, and in the method,
assert that the data source is not nil and is not
provisional. Turns out no one was using it while provisional,
which is great. This means we can eliminate the provisional
concept from the bridge interface as the next step.
* WebCoreSupport.subproj/WebBridge.h:
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge dataSource]): New method to get data source - assert
it is not nil, and committed.
(-[WebBridge frame]): Get data source from method.
(-[WebBridge childFrames]): Likewise.
(-[WebBridge descendantFrameNamed:]): Likewise.
(-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Likewise.
(-[WebBridge openNewWindowWithURL:]): Likewise.
(-[WebBridge areToolbarsVisible]): Likewise.
(-[WebBridge setToolbarsVisible:]): Likewise.
(-[WebBridge areScrollbarsVisible]): Likewise.
(-[WebBridge setScrollbarsVisible:]): Likewise.
(-[WebBridge isStatusBarVisible]): Likewise.
(-[WebBridge setStatusBarVisible:]): Likewise.
(-[WebBridge setWindowFrame:]): Likewise.
(-[WebBridge window]): Likewise.
(-[WebBridge setTitle:]): Likewise.
(-[WebBridge setStatusText:]): Likewise.
(-[WebBridge mainFrame]): Likewise.
(-[WebBridge frameNamed:]): Likewise.
(-[WebBridge receivedData:withDataSource:]): Likewise.
(-[WebBridge startLoadingResource:withURL:]): Likewise.
(-[WebBridge objectLoadedFromCache:size:]): Likewise.
(-[WebBridge setDataSource:]): Likewise.
(-[WebBridge openedByScript]): Likewise.
(-[WebBridge setOpenedByScript:]): Likewise.
(-[WebBridge setIconURL:]): Likewise.
(-[WebBridge setIconURL:withType:]): Likewise.
* WebView.subproj/WebDataSourcePrivate.h,
WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _isCommitted]): New private method to check if a
data source is committed, for the benefit of WebBridge assertions.
2002-07-20 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Turn stricter warnings back on now that we
don't use C++ any more.
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView sendActivateEvent:]): Fix cast that stricter warning didn't like.
(-[WebPluginView sendUpdateEvent]): Fix cast that stricter warning didn't like.
(-[WebPluginView frameStateChanged:]): Remove unneeded cast that stricter warning didn't like.
2002-07-20 Darin Adler <darin@apple.com>
- fixed 2999643 -- Leak of NSSet in -[IFStandardPanels _didStartLoadingURL:inController:]
This is another case of the leak I fixed a month ago. I don't know how I managed to
overlook this other code path with the identical bug.
* Panels.subproj/WebStandardPanels.m:
(-[WebStandardPanels _didStopLoadingURL:inController:]): Fix a leak caused
by calling the wrong method. This was calling objectForKey: instead of
removeObjectForKey:.
2002-07-20 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge areToolbarsVisible]):
(-[WebBridge isStatusBarVisible]):
Fix misspelling of visible.
2002-07-20 Maciej Stachowiak <mjs@apple.com>
Changed the code to handle "icon" and "SHORTCUT ICON" links
separately, and give higher priority to the former.
Also, we don't start loading the icon the moment khtml finds one
in the document any more, instead we wait until the document is
done loading, in case there are both "icon" and "SHORTCUT ICON"
link tags.
- fixed 3003672 - Assertion failure related to iconloader on metafilter
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge setIconURL:]): Forward to the data source.
(-[WebBridge setIconURL:withType:]): Likewise.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Release iconURL.
(-[WebDataSource _setDefaultIconURLIfUnset]): Renamed from
_loadPageIconIfNecessary, and changed to only set iconURL rather
than actually loading.
(-[WebDataSource _setPrimaryLoadComplete:]): Call _loadIcon
instead of _loadPageIconIfNecessary, since we defer all loads to
this point.
(-[WebDataSource _loadIcon]): Load current iconURL if set.
(-[WebDataSource _setIconURL:]): Set iconURL if not set already
(since typed icons are higher priority).
(-[WebDataSource _setIconURL:withType:]): Set the iconURL.
2002-07-20 Darin Adler <darin@apple.com>
- fixed 2999616 -- Possible leak in +[IFPluginDatabase installedPlugins]
* Plugins.subproj/WebPluginDatabase.m:
(+[WebPluginDatabase installedPlugins]): Move the code into an init function.
(pluginLocations): Simplified.
(-[WebPluginDatabase init]): Added. Cleaned up a bit, and made it release the
WebPlugin objects -- this was the leak.
(-[WebPluginDatabase dealloc]): Added.
* Plugins.subproj/WebPluginDatabase.h: Tweaked formatting.
* Plugins.subproj/WebPluginStream.h:
* Plugins.subproj/WebPluginStream.m:
(-[WebPluginStream startLoad]):
(-[WebPluginStream stop]):
* WebCoreSupport.subproj/WebSubresourceClient.m:
(+[WebSubresourceClient startLoadingResource:withURL:dataSource:]):
(-[WebSubresourceClient WebResourceHandleDidCancelLoading:]):
(-[WebSubresourceClient WebResourceHandleDidFinishLoading:data:]):
(-[WebSubresourceClient WebResourceHandle:didFailLoadingWithResult:]):
* WebView.subproj/WebDataSource.m:
(-[WebDataSource stopLoading]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _setPrimaryLoadComplete:]):
(-[WebDataSource _startLoading:]):
(-[WebDataSource _addResourceHandle:]):
(-[WebDataSource _removeResourceHandle:]):
Changed code that called it a URLHandle to say resourceHandle.
* WebView.subproj/WebFrame.m: (-[WebFrame dealloc]): Add an autorelease pool here since
this is called from a timer and AppKit does not use an explicit autorelease pool
in that case. This makes the "world leak check" work better, and is mildly helpful
in other cases too. Radar 3003650 is a request for the AppKit team to fix this, but
this workaround will do for now.
2002-07-19 Darin Adler <darin@apple.com>
- fixed 3001951 -- Massive memory leak after running base or static PLT
* WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _makeRepresentation]):
Add a missing release.
Reduced our use of autorelease. This allows the page load test to detect leaks of the
world much more easily. We may later find we need to use the "retain autorelease" idiom
in a few more places, but I did a lot of testing and that did not show up.
* Bookmarks.subproj/WebBookmarkGroup.m:
(-[WebBookmarkGroup _setTopBookmark:]): Use a plain release.
(-[WebBookmarkGroup _loadBookmarkGroupGuts]): Use a plain release.
* Bookmarks.subproj/WebBookmarkList.m:
(-[WebBookmarkList copyWithZone:]): Use a plain release.
* Misc.subproj/WebIconLoader.m:
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]): Use a plain release.
* Plugins.subproj/WebPluginView.m:
(-[WebPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]): Use a plain release.
* WebView.subproj/WebController.m:
(-[WebController createFrameNamed:for:inParent:allowsScrolling:]): Use a plain release.
(-[WebController setWindowContext:]): Use a plain release.
(-[WebController setResourceProgressHandler:]): Use a plain release.
(-[WebController setDownloadProgressHandler:]): Use a plain release.
(-[WebController setPolicyHandler:]): Use a plain release.
* WebView.subproj/WebControllerPrivate.m:
(-[WebControllerPrivate dealloc]): Use plain release.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]): Use plain release.
(-[WebDataSource _setPrimaryLoadComplete:]): Use plain release.
(-[WebDataSource _setTitle:]): Use plain release.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Use plain release.
(-[WebFrame reset]): Invalidate and release the timer.
* WebView.subproj/WebFramePrivate.h: Keep a reference to the timer.
* WebView.subproj/WebFramePrivate.m:
(-[WebFramePrivate dealloc]): Invalidate and release the timer. Use plain release.
(-[WebFramePrivate setName:]): Use plain release.
(-[WebFramePrivate setWebView:]): Use plain release.
(-[WebFramePrivate setDataSource:]): Use plain release.
(-[WebFramePrivate setProvisionalDataSource:]): Use plain release.
(-[WebFrame _scheduleLayout:]): Keep a reference to the timer.
(-[WebFrame _timedLayout:]): Release and nil the timer.
* WebView.subproj/WebRenderNode.m:
(-[WebRenderNode initWithName:rect:view:children:]): Use plain release.
* WebView.subproj/WebView.m:
(-[WebView concludeDragOperation:]): Use plain release.
* WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]): Use plain release.
Other changes to make the new page load test feature work.
* Misc.subproj/WebKitStatistics.h:
* Misc.subproj/WebKitStatistics.m:
(+[WebKitStatistics HTMLRepresentationCount]):
Added a stat for WebHTMLRepresentation objects.
* WebView.subproj/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation init]): Bump the count.
(-[WebHTMLRepresentation dealloc]): Decrement the count.
Renaming.
* Misc.subproj/WebCoreStatistics.h:
* Misc.subproj/WebKitStatisticsPrivate.h:
* Misc.subproj/WebCoreStatistics.m:
(+[WebCoreStatistics emptyCache]):
(+[WebCoreStatistics setCacheDisabled:]):
Renamed to include the word cache now that the class does not.
* Plugins.subproj/WebPluginStream.m:
* WebCoreSupport.subproj/WebSubresourceClient.m:
* WebView.subproj/WebMainResourceClient.m:
Updated for the WebFoundation renaming.
2002-07-19 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _loadPageIconIfNecessary]): use the correct relative string to request favicon.ico
2002-07-19 Chris Blumenberg <cblu@apple.com>
* History.subproj/WebHistoryItem.m:
(-[WebHistoryItem image]): call [WebIconLoader defaultIcon]
* Misc.subproj/WebIconLoader.m:
(+[WebIconLoader defaultIcon]): move bundle image loading code from [WebHistoryItem image] to here.
2002-07-19 Chris Blumenberg <cblu@apple.com>
Added support favicons.
* Misc.subproj/WebIconLoader.h: Added.
* Misc.subproj/WebIconLoader.m: Added.
(-[WebIconLoaderPrivate dealloc]):
(+[WebIconLoader defaultIcon]):
(-[WebIconLoader initWithURL:]):
(-[WebIconLoader dealloc]):
(-[WebIconLoader setDelegate:]):
(-[WebIconLoader startLoading]):
(-[WebIconLoader startLoadingOnlyFromCache]):
(-[WebIconLoader stopLoading]):
(-[WebIconLoader WebResourceHandleDidBeginLoading:]):
(-[WebIconLoader WebResourceHandleDidCancelLoading:]):
(-[WebIconLoader WebResourceHandleDidFinishLoading:data:]):
(-[WebIconLoader WebResourceHandle:resourceDataDidBecomeAvailable:]):
(-[WebIconLoader WebResourceHandle:resourceDidFailLoadingWithResult:]):
(-[WebIconLoader WebResourceHandle:didRedirectToURL:]):
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge loadIcon:]): added
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSourcePrivate dealloc]):
(-[WebDataSource _loadPageIconIfNecessary]): added
(-[WebDataSource _setPrimaryLoadComplete:]): start loading icon
(-[WebDataSource _stopLoading]): stop icon loader
(-[WebDataSource receivedPageIcon:]): added
(-[WebDataSource _loadIcon:]): added
* WebView.subproj/WebLocationChangeHandler.h:
2002-07-19 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Forgot to export WebKitStatistics.h so it can
be used by WebBrowser.
2002-07-19 Darin Adler <darin@apple.com>
Added some stats that we can use to sniff out "leak the world" problems.
* Misc.subproj/WebKitStatistics.h: Added.
* Misc.subproj/WebKitStatistics.m: Added.
* Misc.subproj/WebKitStatisticsPrivate.h: Added.
* WebKit.pbproj/project.pbxproj: Added new files.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge init]): Bump count.
(-[WebBridge dealloc]): Decrement count.
* WebView.subproj/WebController.m:
(-[WebController initWithView:provisionalDataSource:]): Bump count.
(-[WebController dealloc]): Decrement count.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource initWithURL:attributes:flags:): Bump count.
(-[WebDataSource dealloc]): Decrement count.
* WebView.subproj/WebFrame.m:
(-[WebFrame initWithName:webView:provisionalDataSource:controller:]): Bump count.
(-[WebFrame dealloc]): Decrement count.
* WebView.subproj/WebView.m:
(-[WebView initWithFrame:]): Bump count.
(-[WebView dealloc]): Decrement count.
2002-07-19 Maciej Stachowiak <mjs@apple.com>
More refactoring: Use assertions to make sure a provisional data
source's bridge is never used - and then fix the places where it
would have been used. :-)
* WebView.subproj/WebDataSource.m:
(-[WebDataSource documentTextFromDOM]): Return nil if the document
is not committed.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _stopLoading]): Don't tell the bridge to stop
if we're provisional, because we won't have one.
(-[WebDataSource _setFinalURL:]): Don't try to set the bridge URL
if we are not committed - it will get set at commit time.
(-[WebDataSource _removeFromFrame]): Assert that the data soource is
committed - a provisional data source should never be removed from a frame
because it should never be in a frame in the first place.
(-[WebDataSource _bridge]): Assert that the view is committed.
(-[WebDataSource _commitIfReady]): Do nothing if already committed.
(-[WebDataSource _receivedData:]): Notice that first byte was read,
if appropriate, and commit when ready.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient WebResourceHandle:didRedirectToURL:]):
Simplify code by using [WebDataSource _receivedData:]
2002-07-19 Maciej Stachowiak <mjs@apple.com>
Fix a regression caused by a previous commit that broke frames.
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge receivedData:withDataSource:]): Instead setting the data source
implicitly here, and doing other special first-time init, simply assert that
we have a data source.
(-[WebBridge setDataSource:]): Do the extra work when setting the data
source here instead.
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]): After making the
representation, set the data source, because we no longer pass the
first data chunk _before_ transitioning to committed, instead we
do it right after, so the logic in WebBridge to do it implicitly
was not going to cut it.
2002-07-18 Maciej Stachowiak <mjs@apple.com>
More refactoring: Simplify a bit more by moving more logic into
the data source.
* WebView.subproj/WebDataSourcePrivate.h, WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _gotFirstByte]): Removed.
(-[WebDataSource _setGotFirstByte]): Removed.
(-[WebDataSource _isReadyForData]): Removed.
(-[WebDataSource _receivedData:]): Commit if appropriate, and pass data to
representation and documentView.
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient
WebResourceHandle:resourceDataDidBecomeAvailable:]): Change the
check back to policy != None, because the first chunk will trigger
a commit in the policy == Show case, so there is no need to worry
about it.
2002-07-18 Maciej Stachowiak <mjs@apple.com>
Rename some methods for clarity. These two methods are defined by
the end state, not the start state (in fact,
transitionToLayoutAcceptable does most of it's work when it starts
in the cimmitted state, not provisional).
* WebView.subproj/WebFramePrivate.h, WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionToLayoutAcceptable]): Renamed from
_transitionProvisionalToLayoutAcceptable.
(-[WebFrame _transitionToCommitted]): Renamed from
_transitionProvisionalToLayoutAcceptable.
And adjust all the calls to them:
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
(-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _commitIfReady]):
2002-07-18 Maciej Stachowiak <mjs@apple.com>
Even more exciting refactoring. Change the rules for committing
the data source and creating the representation so that both
happen when the first byte has been received _and_ the content
policy has been set to show. Previously these actions happened at
different times. Now we maintain the invariant that the data
source has a representation if and only if it is committed.
* WebView.subproj/WebController.m:
(-[WebController haveContentPolicy:andPath:forDataSource:]): Simplify
further by putting more of the work in WebDataSource.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
* WebView.subproj/WebDataSource.h, WebView.subproj/WebDataSource.m: Move
makeRepresentation method to private file.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _setContentPolicy:]): If the policy is set to show,
commit if we have already gotten the first byte.
(-[WebDataSource _commitIfReady]): Create representation and
commit if we have the first byte and have a policy of show.
(-[WebDataSource _gotFirstByte]): Method to check if this data source
has gotten the first byte yet. Commit here if ready.
(-[WebDataSource _setGotFirstByte]): Method to report that some
data has been received.
(-[WebDataSource _makeRepresentation]): Make and set up teh document view too.
(-[WebDataSource _isReadyForData]): Return TRUE if policy is set (and if the policy
is Show, if we have also received the first byte.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionProvisionalToCommitted]): Don't call the datasource (it now
calls us)
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient WebResourceHandle:resourceDataDidBecomeAvailable:]):
* WebView.subproj/WebView.h, WebView.subproj/WebView.m: move
makeDocumentViewForDataSource...
* WebView.subproj/WebViewPrivate.h, WebView.subproj/WebViewPrivate.m:
(-[WebView _makeDocumentViewForDataSource:]): To here.
2002-07-18 Maciej Stachowiak <mjs@apple.com>
Avoid throwing an exception while stopping animations. Image
renders were getting into the array multiple times, which means
the code that iterated over the array backwards could throw an
exception, because callling removeObject: on the array would remove
all instances of the object.
This probably fixes the following crashers, and a bunch of huge leaks:
Radar 2999853 - Uninitialized memory access in plugins on theonion.com
Radar 2999892 - Crash disconnecting view from next view chain on theonion.com
Radar 2999911 - Infinite loop in [WebHTMLView dealloc], resulting in crash
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer scheduleFrame]): Move adding to array of image
renderers from here...
(-[WebImageRenderer beginAnimationInRect:fromRect:]): To here.
=== Alexander-13 ===
2002-07-18 Maciej Stachowiak <mjs@apple.com>
Yet still more refactoring in preparation for the KHTMLPart
change. This is preparing things to change the commit rule to
require receiving at least one byte of data, and having the
content policy set to Show.
* WebView.subproj/WebController.m:
(-[WebController haveContentPolicy:andPath:forDataSource:]): Remove
more code since makeRepresentation now does most of the work.
* WebView.subproj/WebDataSource.m:
(-[WebDataSource makeRepresentation]): Tell the WebView (if any) to create
the documentView now too.
* WebView.subproj/WebView.h:
* WebView.subproj/WebView.m:
(-[WebView makeDocumentViewForDataSource:]): Hook document view up to data
source.
2002-07-18 Maciej Stachowiak <mjs@apple.com>
Some refactoring in preparation for the KHTMLPart change.
* WebView.subproj/WebDataSourcePrivate.h,
WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _stopLoading]): Bail early if not loading.
(-[WebDataSource _commit]): Method to mark when the data source is
committed (it now knows whether it's committed or
provisional). This will be useful for adding assertions later on
about what operations may happen only when committed, and which
can only happen when provisional.
* WebView.subproj/WebFramePrivate.m:
(-[WebFrame _transitionProvisionalToCommitted]): Call data
source's _commit method.
2002-07-17 Richard Williamson <rjw@apple.com>
* WebView.subproj/WebHTMLView.m:
Removed unnecessary (and incorrect) lockFocus.
2002-07-17 Maciej Stachowiak <mjs@apple.com>
Some refactoring in preparation for the KHTMLPart change.
* WebView.subproj/WebController.m:
(-[WebController haveContentPolicy:andPath:forDataSource:]): Move
more of the work of creating and setting the representation and
document view into WebDataSource and WebView.
* WebView.subproj/WebDataSource.h,
WebView.subproj/WebDataSource.m:
(+[(id <WebDocumentRepresentation>) createRepresentationForMIMEType:]): Removed.
(-[WebDataSource makeRepresentation]): A method to build the right
kind of representation for the content type.
* WebView.subproj/WebDataSourcePrivate.h:
* WebView.subproj/WebDataSourcePrivate.m:
(-[WebDataSource _representationClass]): Method to get the right
representation class for the current content type.
(-[WebDataSource _bridge]): Move here from WebBridge.[mh], so we
can later add an assertion that the data source is not provisional.
* WebView.subproj/WebHTMLViewPrivate.m: #import WebDataSourcePrivate.h
* WebView.subproj/WebView.h, WebView.subproj/WebView.m:
(+[(id <WebDocumentRepresentation>) createDocumentViewForMIMEType:]): Removed.
(-[WebView makeDocumentViewForMIMEType:]): Method to build the
right kind of document view for the specified MIME type.
2002-07-16 Darin Adler <darin@apple.com>
* History.subproj/WebBackForwardList.m: Replace MyCompanyName with Apple Computer.
(-[WebBackForwardList init]): Fix strange [super init] logic to be standard.
* History.subproj/WebHistoryItem.h: Replace MyCompanyName with Apple Computer.
* Misc.subproj/WebDownloadHandler.h: Replace MyCompanyName with Apple Computer.
2002-07-16 Darin Adler <darin@apple.com>
- fixed 2997891 -- Alexander confused about base page URL for relative links
* WebCoreSupport.subproj/WebSubresourceClient.m:
(-[WebSubresourceClient WebResourceHandle:didRedirectToURL:]):
Don't tell the bridge the URL changed. The bridge doesn't care about redirects
for subresources (and if it did, we'd need some way to tell it that this was
a subresource redirect).
* WebCoreSupport.subproj/WebBridge.m: Formatting tweaks.
* WebCoreSupport.subproj/WebImageRenderer.m: Formatting tweaks.
* WebView.subproj/WebView.m: Formatting tweaks.
2002-07-16 Richard Williamson <rjw@apple.com>
Really, stop animation if last frame has zero duration, like IE.
Was checking adjustedFrameDuration, which is never zero.
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer unadjustedFrameDuration]):
(-[WebImageRenderer frameDuration]):
(-[WebImageRenderer nextFrame:]):
2002-07-16 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for:
Radar 2982043 - Link mouse-over status should change in response to modifier keys
* WebCoreSupport.subproj/WebBridge.m:
(-[WebBridge modifierTrackingEnabled]): Implemented by checking
bit on WebHTMLView class.
* WebKit.pbproj/project.pbxproj: Install WebHTMLViewPrivate as a
Private header.
* WebView.subproj/WebHTMLViewPrivate.h: Prototype new modifier tracking SPI.
* WebView.subproj/WebHTMLViewPrivate.m:
(+[WebHTMLView _setModifierTrackingEnabled:]): Method to inform
WebHTMLView that modifier tracking is working.
(+[WebHTMLView _modifierTrackingEnabled]): Obligatory getter.
(+[WebHTMLView _postFlagsChangedEvent:]): Method to report
flagsChanged events. Creates corresponding fake mouseMoved event
and sends it as a notification.
2002-07-16 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/WebBridge.m:
Remove childFrameNamed since it's not needed, and every one of these bridge
methods adds potential confusion.
(-[WebBridge descendantFrameNamed:]): Make this look for descendants in the
provisional data sources first. This is the same change Richard made to
childFrameNamed, but it turns out that this is the method that's really used.
2002-07-16 Darin Adler <darin@apple.com>
* almost every file: Renamed IF* -> Web*.
2002-07-15 Richard Williamson <rjw@apple.com>
Removed dependence on window resize notification. We now
use the IFWebView setFrame: method to trigger layouts. Much
cleaner.
Cleaned up image animation timer scheduler.
Stop animation if last frame has zero duration, like IE.
Change minimum duration to 1/30th (used if zero frame duration is
specified). This is closer to what I see in IE empirically.
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer frameDuration]):
(-[IFImageRenderer _scheduleFrame]):
(-[IFImageRenderer nextFrame:]):
(-[IFImageRenderer beginAnimationInRect:fromRect:]):
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView initWithFrame:]):
(-[IFHTMLView removeNotifications]):
* WebView.subproj/IFWebView.mm:
(-[IFWebView setFrame:]):
(-[IFWebView viewWillStartLiveResize]):
(-[IFWebView viewDidEndLiveResize]):
2002-07-15 Maciej Stachowiak <mjs@apple.com>
Fixed Radar 2957209 - Change "JavaScript can open new windows
automatically" preference to off by default
* WebView.subproj/IFPreferences.mm:
(+[IFPreferences load]): Switch default for "Allow JavaScript to
open new windows automatically" to FALSE.
2002-07-15 Darin Adler <darin@apple.com>
More weaning from C++.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): Use malloc instead of new.
(-[IFPluginView dealloc]): Use free instead of delete.
2002-07-15 Darin Adler <darin@apple.com>
Fixes so we are ready to compile as Objective C, not C++.
The C++ front end misses a lot of things the C front end catches.
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]): Add missing cast.
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Use
[IFLoadProgress initWithURLHandle:] instead of getting at private fields.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView setUpWindowAndPort]): Remove unused windowFrame.
(-[IFPluginView start]): Don't use a variable within a for statement.
Add missing cast.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
Use [IFWebFrame _setProvisionalDataSource:] so we don't have to get at the
protected field _private.
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
Use [IFProgress bytesSoFar] so we don't have to get at the protected field bytesSoFar.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]): Add missing cast.
(-[IFWebFrame _setProvisionalDataSource:]): Added.
* WebView.subproj/IFHTMLRepresentation.mm:
* WebView.subproj/IFHTMLViewPrivate.h:
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebViewPrivate.h:
Make data in private class @public, since the main class needs to get at it
directly.
2002-07-15 Richard Williamson <rjw@apple.com>
Only adjustFrames in parent if parent is a frame set.
(Anywhere from 2% to 6% gain, depending on what you believe.)
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
* WebView.subproj/IFPreferences.mm:
(+[IFPreferences load]):
Increment initial layout from 1.5 seconds to 1.85 seconds.
2002-07-15 Darin Adler <darin@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
Tweak a comment that included the word WebController, to smooth things over a
tiny bit for the coming renaming.
2002-07-15 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer widthForCharacters:length:]): Remove implementation of some unused
methods, including at least one that was never used.
2002-07-15 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for Radar 2896356 - cookie "ask for each site" not implemented yet
* Panels.subproj/IFPanelCookieAcceptHandler.h: Added.
* Panels.subproj/IFPanelCookieAcceptHandler.m: Added.
(-[IFPanelCookieAcceptHandler init]):
(-[IFPanelCookieAcceptHandler dealloc]):
(-[IFPanelCookieAcceptHandler readyToStartCookieAcceptCheck:]):
(-[IFPanelCookieAcceptHandler startCookieAcceptCheck:]):
(-[IFPanelCookieAcceptHandler cancelCookieAcceptCheck:]):
(-[IFPanelCookieAcceptHandler doneWithCheck:returnCode:contextInfo:]):
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanels setUseStandardCookieAcceptPanel:]):
(-[IFStandardPanels useStandardCookieAcceptPanel]):
* WebKit.pbproj/project.pbxproj:
2002-07-14 Maciej Stachowiak <mjs@apple.com>
More workarounds for the Objective C++ typecasting bug.
* WebView.subproj/IFDOMNode.mm:
(-[IFDOMNode initWithWebView:]):
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[NSView _IF_stopIfPluginView]):
* WebView.subproj/IFRenderNode.mm:
(-[IFRenderNode initWithWebView:]):
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame reset]):
2002-07-14 Darin Adler <darin@apple.com>
Wean WebKit completely from getting at the C++ parts of WebCore.
We probably don't need to use C++ at all for WebKit any more.
* WebKit.pbproj/project.pbxproj: Remove all the header search paths; we don't need any
special ones now.
* WebKitPrefix.h: Remove <config.h>; we don't need it any more.
* Misc.subproj/IFCache.h: Rename getStatistics to statistics.
* Misc.subproj/IFCache.mm:
(+[IFCache statistics]):
(+[IFCache empty]):
(+[IFCache setDisabled:]):
Call through WebCoreCache instead of going directly to khtml::Cache.
(+[IFCache javaScriptObjectsCount]):
(+[IFCache javaScriptInterpretersCount]):
(+[IFCache javaScriptNoGCAllowedObjectsCount]):
(+[IFCache javaScriptReferencedObjectsCount]):
(+[IFCache garbageCollectJavaScriptObjects]):
Call through WebCoreJavaScript instead of going directly to kjs::Collector.
* WebCoreSupport.subproj/IFWebCoreFrame.m:
(-[IFWebCoreFrame bridge]): Change to return bridge from the provisional data
source if it exists.
(-[IFWebCoreFrame committedBridge]): Do what [bridge] used to do, always returning
the bridge from the committed data source and never the provisional one.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]): Don't store the provisional widget.
It's stored in the bridge for the provisional data source.
(-[IFHTMLView provisionalDataSourceCommitted:]): Use the bridge method installInFrame:
to do most of the work that used to be here. The rest is don in removeFromFrame which
is called elsewhere.
(-[IFHTMLView mouseUp:]): Use the bridge's mouseUp method.
(-[IFHTMLView mouseDown:]): Use the bridge's mouseDown method.
(-[IFHTMLView mouseMovedNotification:]): Use the bridge's mouseMoved method.
(-[IFHTMLView mouseDragged:]): Use the bridge's mouseDragged method.
* WebView.subproj/IFHTMLViewPrivate.h: Remove the widget, widgetOwned, and
provisionalWidget instance variables, and the _widget and _provisionalWidget methods.
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLView _reset]): Remove the code that deleted the widget and the provisional widget.
This is now handled elsewhere.
* WebView.subproj/IFDOMNode.mm: Redo to use the copyDOMTree feature of the bridge.
* WebView.subproj/IFRenderNode.mm: Redo to use the copyRenderTree feature of the bridge.
* WebView.subproj/IFRenderNode.h: Use an NSRect instead of four integers
(the switch to floating point is OK).
* WebView.subproj/IFWebDataSourcePrivate.h: Add private _removeFromFrame method.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _removeFromFrame]): Set the controller and location change handler
references to nil, and also call [WebCoreBridge removeFromFrame].
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate setDataSource:]): Use _removeFromFrame where we formerly would
set the controller and location change handler references to nil.
* WebCoreSupport.subproj/IFWebCoreBridge.h: Tweak.
2002-07-13 Darin Adler <darin@apple.com>
* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView dealloc]):
* WebView.subproj/IFImageRepresentation.m: (-[IFImageRepresentation dealloc]):
Fix leaks by adding calls to [super dealloc].
2002-07-13 Darin Adler <darin@apple.com>
* Misc.subproj/IFNSEventExtras.h: Removed.
* Misc.subproj/IFNSEventExtras.m: Removed.
* WebKit.pbproj/project.pbxproj: Removed IFNSEventExtras.*.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
* WebView.subproj/IFWebFrame.mm:
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
Renamed all bridgeFrame to frameBridge for greater clarity.
* WebView.subproj/IFHTMLView.mm: Updated comments and commented-out code.
* WebView.subproj/IFWebDataSource.h: Fix comment that mentioned IFDefaultWebController.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _transitionProvisionalToCommitted]): Fix exception string that cited
the wrong state name.
2002-07-13 Darin Adler <darin@apple.com>
* History.subproj/IFURIEntry.m: (-[IFURIEntry image]):
Use [IFURIEntry class] instead of [self class] so we get the
icon from the WebKit bundle even if someone subclasses IFURIEntry.
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView initWithFrame:mimeType:arguments:]): Use
bundleForClass instead of bundleWithIdentifier so things work even
if we have two copies of WebKit installed on the same machine.
* Makefile.am: Remove include of embed.am.
* WebKit.pbproj/project.pbxproj: Use embed-into-alex instead of make embed.
Also change bundle identifier to com.apple.WebKit instead of com.apple.webkit
to match standard used by our other frameworks. (Checked that we no longer have
any hard-coding of the bundle identifier anywhere in our code.)
2002-07-13 Richard Williamson <rjw@apple.com>
Fixed 2981849 - frames don't always draw correctly.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge childFrameNamed:]):
Check provisional data source first.
* WebView.subproj/IFHTMLViewPrivate.h:
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLView _adjustFrames]):
Added method to adjust frame geometry.
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _layoutChildren]):
Added method to adjust child frame geometries.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
Removed unnecessary drawing now that frame geometry is
calculated directly.
2002-07-12 Darin Adler <darin@apple.com>
About 1/3 of the remaining work to wean WebKit from its special relationship with WebCore
onto explicit interfaces.
* Misc.subproj/IFCache.mm:
* WebView.subproj/IFDOMNode.mm:
* WebView.subproj/IFRenderNode.mm:
Mark imports from inside WebCore with #ifndef WEBKIT_INDEPENDENT_OF_WEBCORE.
Once these are all gone, the task is done.
* Plugins.subproj/IFPlugin.h:
* WebCoreSupport.subproj/IFCookieAdapter.h:
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRendererFactory.h:
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRendererFactory.h:
* WebCoreSupport.subproj/IFWebCoreBridge.h:
* WebCoreSupport.subproj/IFWebCoreViewFactory.h:
Use #import <WebCore/> for getting at WebCore headers so we don't need to use -I.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Call setRenderPart on the WebCoreFrame rather than on the IFWebFrame.
* WebCoreSupport.subproj/IFWebCoreFrame.h: Subclass from the WebCoreFrame class.
* WebCoreSupport.subproj/IFWebCoreFrame.m:
(-[IFWebCoreFrame HTMLView]): Add a cast.
(-[IFWebCoreFrame widget]): Remove overzealous assert.
* WebKit.pbproj/project.pbxproj: Rearranged things a bit. Removed unneeded build phase.
* WebView.subproj/IFDocument.h:
* WebView.subproj/IFDynamicScrollBarsView.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebControllerPolicyHandler.h:
Changed a few stray #include statements to #import statements.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceCommitted:]): Move the logic for setting up the
renderPart in here from IFWebView.
(-[IFHTMLView reapplyStyles]): Use the bridge.
(-[IFHTMLView layout]): Use the bridge.
(-[IFHTMLView drawRect:]): Use the bridge.
* WebView.subproj/IFHTMLViewPrivate.h: Remove _takeOwnershipOfWidget which is no longer needed.
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[NSView _IF_stopIfPluginView]): Added. Use to clean up _reset a bit.
(-[IFHTMLView _reset]): Use makeObjectsPerformSelector: for simplicity.
* WebView.subproj/IFImageView.h: Remove unneeded IFWebDataSource declaration.
* WebView.subproj/IFImageView.m: Just formatting tweaks.
* WebView.subproj/IFWebControllerPrivate.mm: Removed unneeded import.
* WebView.subproj/IFWebDataSource.mm: Removed unneeded import.
* WebView.subproj/IFWebDataSourcePrivate.mm: Removed unneeded import.
* WebView.subproj/IFWebFrame.mm: Removed unneeded import.
* WebView.subproj/IFWebFramePrivate.h: Remove renderPart field and related declarations.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate dealloc]): No need to let go of renderPart any more.
(-[IFWebFrame _transitionProvisionalToCommitted]): Move logic into IFHTMLView.
* WebView.subproj/IFWebView.h: Be a bit more specific about the type of documentView.
2002-07-12 Chris Blumenberg <cblu@apple.com>
Only accept drags of 1 file.
* WebView.subproj/IFWebView.mm:
(-[IFWebView draggingEntered:]):
2002-07-12 Darin Adler <darin@apple.com>
Fix cancelling. My recent check-in broke it for downloads.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient receivedError:forHandle:]): Helper function to save code.
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
cancel rather than -1,-1 progress.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Remove -1,-1 handling
here; instead we treat it as an error.
(-[IFMainURLHandleClient receivedError:forHandle:]): Remove most of the parameters
since they are things we can compute ourselves.
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use an error for
cancel rather than -1,-1 progress.
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
Remove the -1,-1 cancel handling; we use an error instead.
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
Remove the -1,-1 cancel handling; we use an error instead.
(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
Remove the _isStopping check. We want to do the additional work even if already stopping.
(-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
Remove the _isStopping check. We want to do the additional work even if already stopping.
* WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Use NSDeleteCharacter.
2002-07-12 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebDataSource.mm:
(+[IFWebDataSource registerRepresentationClass:forMIMEType:]):
Use self instead of [self class].
(+[IFWebDataSource createRepresentationForMIMEType:]):
Use the new _IF_objectForMIMEType to simplify and use hash table
instead of linear search.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(+[IFWebDataSource _repTypes]): Use initWithObjectsAndKeys for
brevity and a tiny tiny bit of efficiency.
(+[IFWebDataSource _canShowMIMEType:]):
Use the new _IF_objectForMIMEType to simplify and use hash table
instead of linear search.
* WebView.subproj/IFWebView.mm:
(+[IFWebView registerViewClass:forMIMEType:]):
Use self instead of [self class].
(+[IFWebView createViewForMIMEType:]):
Use the new _IF_objectForMIMEType to simplify and use hash table
instead of linear search.
* WebView.subproj/IFWebViewPrivate.mm:
(+[IFWebView _canShowMIMEType:]):
Use the new _IF_objectForMIMEType to simplify and use hash table
instead of linear search.
2002-07-12 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Re-added JavaScriptCore, which
I removed by accident.
2002-07-12 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Don't include the html4.css file
from WebCore any more. WebCore handles this on its own now. Also,
don't include the document templates; we don't use them any more.
* Resources/image_document_template.html: Removed.
* Resources/plugin_document_template.html: Removed.
* Resources/text_document_template.html: Removed.
* Makefile.am: Small tweak to the force-clean-timestamp logic.
2002-07-11 Chris Blumenberg <cblu@apple.com>
Fix for:
2986548 - Crash if you drop URL of frameset page onto frame
2953421 - document dragged into frame should replace frameset
* WebView.subproj/IFWebView.mm:
(-[IFWebView draggingEntered:]): removed obsolute comment
(-[IFWebView performDragOperation:]): moved implementation from here
(-[IFWebView concludeDragOperation:]): to here, added support for NSURL drags
2002-07-11 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebViewPrivate.mm:
(+[IFWebView _viewTypes]): Changed back to a mutable dictionary. Oops.
2002-07-11 John Sullivan <sullivan@apple.com>
- fixed 2980779 -- no scroll bar in history window
* WebKit.pbproj/project.pbxproj: Removed nonexistent .h file from project list (IFGrabBag.h)
* WebView.subproj/IFDynamicScrollBarsView.h: Renamed field allowsScrolling to disallowsScrolling
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView updateScrollers]):
(-[IFDynamicScrollBarsView setAllowsScrolling:]):
(-[IFDynamicScrollBarsView allowsScrolling]):
Removed initWithFrame override, whose only purpose was to set allowsScrolling to the "default"
value (but not good enough for load-from-nib case). Changed all users of allowsScrolling to
!disallowsScrolling instead.
2002-07-11 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPluginNullEventSender.h:
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender initWithPluginView:]): renamed, simplified
(-[IFPluginNullEventSender stop]): call plugin debug function
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView start]): call new initWithPluginView
(-[IFPluginView windowWillClose:]): added back to fix plugin view leak
(-[IFPluginView NPP_HandleEvent]): added
2002-07-11 Darin Adler <darin@apple.com>
- fixed 2930872 -- option-arrow keys should page up and down
- fixed 2924727 -- Delete does not go to previous page
* WebView.subproj/IFHTMLView.mm: Disable the keyDown and keyUp
methods here. We don't really need to pass these events to KHTMLView
at the moment. See the comment in this file for further explanation.
This paves the way to handle keys other than arrow keys in IFWebView.
* WebView.subproj/IFWebController.h: Add temporary goBack method to
IFWindowContext. See comment for more.
* WebView.subproj/IFWebView.mm: (-[IFWebView keyDown:]): Add handling
for option arrow keys, space (page down), shift-space (page up), and
delete (go back). Also make this call super if the key is not handled
so keys make their way back to the superview in the application.
* WebView.subproj/IFWebViewPrivate.h: Add _pageLeft, _pageRight, _goBack.
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _pageHorizontally:]): Added.
(-[IFWebView _pageLeft]): Added.
(-[IFWebView _pageRight]): Added.
(+[IFWebView _viewTypes]): Simplify.
(-[IFWebView _goBack]): Added. Calls [IFWindowContext goBack].
2002-07-10 Darin Adler <darin@apple.com>
- fixed 2973738 -- box characters
To be consistent with other browsers, we need to draw nothing for 0000-001F.
We were drawing boxes.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
Add the skipControlCharacters parameter. If YES, don't include glyphs for characters
in the 0000-001F range.
(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
Pass skipControlCharacters:YES.
(-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
Skip control characters when creating the glyph array.
(-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
Pass skipControlCharacters:YES.
(-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
Skip control characters when computing the width.
(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Pass skipControlCharacters:NO.
2002-07-10 Darin Adler <darin@apple.com>
- fixed 2986273 -- assert currentURL isEqual:[handle redirectedURL] ? [handle redirectedURL] : [handle url]
Since cancel prevents further notification from getting through, currentURL can get
out of sync before cancelling, so we can't assert in the cancel function.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]): Remove assert.
* WebView.subproj/IFMainURLHandleClient.h: Remove unnecessary includes. Change type
of dataSource to IFWebDataSource from id. Change url to currentURL to match
IFResourceURLHandleClient.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient initWithDataSource:]): Simplify.
(-[IFMainURLHandleClient didStartLoadingWithURL:]): Copied here from IFResourceURLHandleClient
as a first step toward using a common superclass some day.
(-[IFMainURLHandleClient didStopLoading]): Copied here from IFResourceURLHandleClient
as a first step toward using a common superclass some day.
(-[IFMainURLHandleClient dealloc]): Add an assert.
(-[IFMainURLHandleClient receivedProgressWithHandle:complete:]): Removed most of the parameters
to make this match the one in IFResourceURLHandleClient.
(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Use didStartLoadingWithURL.
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Use receivedProgressWithHandle and
didStopLoading.
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Use receivedProgressWithHandle and
didStopLoading.
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Use receivedProgressWithHandle.
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Use receivedProgressWithHandle and
didStopLoading.
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Use didStopLoading and didStartLoadingWithURL.
2002-07-10 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for:
Radar 2953250 - JavaScript window.focus() and window.blur()
methods don't work
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge unfocusWindow]): Use private AppKit interface
to cycle windows if the window is the key window.
2002-07-10 Darin Adler <darin@apple.com>
- fixed 2983025 -- crash in sendEvent on pages with flash playing
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView removeTrackingRect]): New, removes tracking rect and releases window.
(-[IFPluginView resetTrackingRect]): New, adds tracking rect and retains window.
(-[IFPluginView start]): Use resetTrackingRect.
(-[IFPluginView stop]): Use removeTrackingRect.
(-[IFPluginView viewWillMoveToWindow:]): Call removeTrackingRect because the window
will change by the time we get to viewDidMoveToWindow.
(-[IFPluginView viewDidMoveToWindow]): Call resetTrackingRect.
(-[IFPluginView viewHasMoved:]): Call resetTrackingRect.
2002-07-10 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _scrollToBottomLeft]): Fix this to use the document view to define what
the bottom left is, not the content view (which is often much smaller than the document).
2002-07-10 Chris Blumenberg <cblu@apple.com>
Fixes for:
2981866 - Download doesn't appear in Downloads window if link was command-clicked
2965312 - Download progress not shown when clicking on download link with Alex not running
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): retain
the downloadProgressHandler before calling requestContentPolicy as the web controller may be released
in requestContentPolicy
2002-07-10 Chris Blumenberg <cblu@apple.com>
Fix for:
2976311 - Download fails if you close the window that started the download
2976308 - Can't navigate in window while download started in that window is in progress
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient _receivedProgress:forResourceHandle:fromDataSource:complete:]): added, sends progress to correct handler
(-[IFMainURLHandleClient _receivedError:forResourceHandle:partialProgress:fromDataSource:]): added, sends progress to correct handler
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): calls _receivedProgress
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): calls _receivedProgress
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): calls _receivedProgress
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): calls _receivedError
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController setDownloadProgressHandler:]): added
(-[IFWebController downloadProgressHandler]): added
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): removed download special-casing
2002-07-10 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFGrabBag.h: Removed.
* WebView.subproj/IFWebController.h: Move IFContextMenuHandler
here.
2002-07-10 Darin Adler <darin@apple.com>
Did some tweaks that weren't really necessary. But at least one is a significant
improvement so I decided to commit rather then just discarding the changes.
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark title]): Take out special case for separator.
(-[IFBookmark setTitle:]): Take out special case for separator.
(-[IFBookmark image]): Take out special case for separator.
(-[IFBookmark setImage:]): Take out special case for separator.
(-[IFBookmark setURLString:]): Take out special case for non-leaf.
(-[IFBookmark children]): Take out request for concrete implementation;
this is not useful since it's specific to one subclass.
(-[IFBookmark numberOfChildren]): Take out request for concrete implementation;
this is not useful since it's specific to one subclass.
(-[IFBookmark _numberOfDescendants]): Take out request for concrete implementation;
this is not useful since it's specific to one subclass.
(-[IFBookmark insertChild:atIndex:]): Take out special case for non-list.
(-[IFBookmark removeChild:]): Take out special case for non-list.
(+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): Refactored to
eliminate repeated code.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf copyWithZone:]): Use allocWithZone to be more pedantically correct.
* Bookmarks.subproj/IFBookmarkSeparator.m:
(-[IFBookmarkSeparator title]): Override to return nil.
(-[IFBookmarkSeparator image]): Override to return nil.
2002-07-10 Darin Adler <darin@apple.com>
* Misc.subproj/WebKitDebug.m: Remove workaround for long-ago fixed
C compiler bug.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]): Simplify keyboard
scrolling code by passing along all events that the plug-in doesn't handle
rather than special-casing certain events. Also use super rather than
nextResponder to pass along the scroll events (super will do nextResponder).
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView keyDown:]), (-[IFHTMLView keyUp:]): Use super rather than
nextResponder to pass along scroll events (super will do nextResponder).
2002-07-08 Chris Blumenberg <cblu@apple.com>
Fixes for:
2955757 - Keyboard scrolling code needs to move to WebKit
2937231 - Left and right arrows should scroll the content area
* Misc.subproj/IFNSEventExtras.h: Added.
* Misc.subproj/IFNSEventExtras.m: Added.
(-[NSEvent _IF_isScrollEvent]): new
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView keyUp:]): if plug-in doesn't accept it, send to nextResponder
(-[IFPluginView keyDown:]): if plug-in doesn't accept it, send to nextResponder
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView keyDown:]): calls _IF_isScrollEvent, if so send to nextResponder
(-[IFHTMLView keyUp:]): calls _IF_isScrollEvent, if so send to nextResponder
* WebView.subproj/IFWebView.mm:
(-[IFWebView acceptsFirstResponder]): added
(-[IFWebView window]): no changes
(-[IFWebView keyDown:]): added, does the scroll
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _contentView]): added
(-[IFWebView _scrollVerticallyBy:]): added, moved from BrowserWindow.m
(-[IFWebView _scrollHorizontallyBy:]): added, moved from BrowserWindow.m
(-[IFWebView _pageVertically:]): added, moved from BrowserWindow.m
(-[IFWebView _scrollLineVertically:]): added, moved from BrowserWindow.m
(-[IFWebView _scrollLineHorizontally:]): added, moved from BrowserWindow.m
(-[IFWebView _pageDown]): added, moved from BrowserWindow.m
(-[IFWebView _pageUp]): added, moved from BrowserWindow.m
(-[IFWebView _scrollToTopLeft]): added, moved from BrowserWindow.m
(-[IFWebView _scrollToBottomLeft]): added, moved from BrowserWindow.m
(-[IFWebView _lineDown]): added, moved from BrowserWindow.m
(-[IFWebView _lineUp]): added, moved from BrowserWindow.m
(-[IFWebView _lineLeft]): added, moved from BrowserWindow.m
(-[IFWebView _lineRight]): added, moved from BrowserWindow.m
2002-07-08 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFWebCoreBridge.mm: Fix compiles under newer compiler
(Jaguar 6C89 and newer) by adding missing include.
2002-07-07 Maciej Stachowiak <mjs@apple.com>
WebCore part of fix for Radar 2953431 - JavaScript window.close()
method is not working
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge openedByScript]): Implement by calling controller.
(-[IFWebCoreBridge setOpenedByScript:]): Likewise.
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _openedByScript]): Implement.
(-[IFWebController _setOpenedByScript:]): Implement.
2002-07-05 Darin Adler <darin@apple.com>
Fix crashes I saw with zombies enabled caused by messing with windows that are
in the process of being destroyed.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView start]): Remove windowWillClose notification because
we use viewDidMoveToWindow instead.
(-[IFPluginView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
* WebView.subproj/IFHTMLViewPrivate.h: Need a boolean flag to tell window changes
before the first time we are installed from window changes afterward.
* WebView.subproj/IFImageView.m:
(-[IFImageView viewDidMoveToWindow]): Use this instead of viewWillMoveToWindow.
2002-07-04 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView mouseMovedNotification:]): Pass the modifier flags
along for mouse move events.
2002-07-04 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFDynamicScrollBarsView.h:
Updated FIXME to mention bug number.
2002-07-03 Chris Blumenberg <cblu@apple.com>
- Fix for 2975750
- Removed Java workaround since that will be fixed soon.
* Plugins.subproj/IFPlugin.h:
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin _openResourceFile]): added
(-[IFPlugin _closeResourceFile:]): added
(-[IFPlugin _getPluginInfo]): rename
(-[IFPlugin initWithPath:]): simplified
(-[IFPlugin load]): calls _openResourceFile
(-[IFPlugin unload]): calls _closeResourceFile
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView setUpWindowAndPort]): removed Java workaround
2002-07-03 Darin Adler <darin@apple.com>
* Misc.subproj/IFException.h: Use Objective C header style rather than plain C.
=== Alexander-11 ===
2002-07-03 Darin Adler <darin@apple.com>
* Misc.subproj/IFDownloadHandler.mm:
(-[IFDownloadHandler finishedLoading]):
* WebView.subproj/IFWebController.h:
A couple places where it still said IFContentPolicyOpenExternally.
2002-07-03 Maciej Stachowiak <mjs@apple.com>
WebKit part of fixes for:
Radar 2950616 - JavaScript window.screenX and window.screenY always return -1
Radar 2950614 - JavaScript window.screenLeft and window.screenTop
properties are unimplemented
Radar 2950609 - JavaScript window.outerHeight and
window.outerWidth properties always return 0
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]): Pass the real
document view to the newly created bridge, since it will be ready
by now and is needed by JavaScript.
2002-07-03 Maciej Stachowiak <mjs@apple.com>
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView status:]): Fix build problem. Why doesn't
compiling catch these more reliably?
2002-07-03 Richard Williamson <rjw@apple.com>
* Misc.subproj/IFNSViewExtras.m:
(-[NSView _IF_printViewHierarchy:]):
Debugging help.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView layout]):
Added setLayouted(false).
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
Tweaks attempting to fix frame drawing problems.
2002-07-03 Maciej Stachowiak <mjs@apple.com>
WebCore part of fix for:
Radar 2943465 - JavaScript window.defaultStatus property not implemented
Radar 2943464 - JavaScript window.status property is not implemented
Radar 2926213 - show url of moused-over link in status bar
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge setStatusText:]): Connect bridge status text
setting to window context.
* WebView.subproj/IFWebController.h:
2002-07-02 Chris Blumenberg <cblu@apple.com>
Added IFFileURLPolicyReveal. This makes things a little clearer for the client.
* WebView.subproj/IFWebControllerPolicyHandler.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _shouldShowDataSource:]): support for IFFileURLPolicyReveal.
2002-07-02 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
Fixed a syntax error caused by a "just before committing" edit.
2002-07-02 Darin Adler <darin@apple.com>
- fixed 2952837 -- image not rendered if height or width attributes specified incorrectly
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
Set the size of both the image and the image representation.
2002-07-02 Chris Blumenberg <cblu@apple.com>
Can't call startLoading on a frame if setProvisionalDataSource returned NO.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
* WebCoreSupport.subproj/IFWebCoreFrame.m:
(-[IFWebCoreFrame loadURL:attributes:flags:withParent:]):
* WebView.subproj/IFWebView.mm:
(-[IFWebView performDragOperation:]):
2002-07-02 Chris Blumenberg <cblu@apple.com>
Fixed asseration failure caused by an iframe not having a correct mime type.
We now assume that local files without extensions are html files.
* WebView.subproj/IFWebControllerPrivate.mm:
(+[IFWebController _MIMETypeForFile:]):
2002-07-02 Chris Blumenberg <cblu@apple.com>
- Moved all policy methods to IFWebControllerPolicyHandler.h
- Moved all file URL error checking to WebKit
- Implemented file URL policy methods
- Renamed IFContentPolicyOpenExternally to IFContentPolicySaveAndOpenExternally
* Misc.subproj/IFWebKitErrors.h: Added.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFLocationChangeHandler.h: removed content policy stuff
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): IFContentPolicySaveAndOpenExternally rename
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): call the policy handler for content policy stuff
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController haveContentPolicy:andPath:forDataSource:]): sends a unableToImplementContentPolicy:
(+[IFWebController canShowFile:]): now calls _MIMETypeForFile
* WebView.subproj/IFWebControllerPolicyHandler.h: Added.
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]): IFContentPolicySaveAndOpenExternally
rename
(-[IFWebController _didStopLoading:]): no changes
(+[IFWebController _MIMETypeForFile:]): added
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]): calls _shouldShowDataSource
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _bridgeFrame]): no changes
(-[IFWebFrame _shouldShowDataSource:]): does the error handling
* WebView.subproj/IFWebView.mm:
(+[IFWebView initialize]): registers WebKit errors
2002-07-02 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFRenderNode.mm:
(-[IFRenderNode initWithRenderObject:khtml::]):
Fixed regression that prevented showing of nodes in subframes.
2002-07-02 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView setWindow]), (-[IFPluginView start]), (-[IFPluginView stop]):
Fix unused variable issue that affects deployment builds.
2002-07-02 John Sullivan <sullivan@apple.com>
Remove unnecessary code to fill with white from here; this code
path has changed. Now it just bails out early in the case where
there's no widget.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView drawRect:]):
2002-07-02 John Sullivan <sullivan@apple.com>
Made IFWebView fill with white when there's no document view. This fixes:
- 2978210 -- problems with "hide status bar"
- 2978742 -- Resizing initially-empty Alexander window results in garbage in window
* WebView.subproj/IFWebView.mm:
(-[IFWebView drawRect:]):
2002-07-02 Darin Adler <darin@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm: Fix comment.
2002-07-02 Darin Adler <darin@apple.com>
- fixed 2975790 - Ads on salon.com scribble all over page
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView setUpWindowAndPort]): New, sets up the window, but does not
call NPP_SetWindow again.
(-[IFPluginView setWindow]): Call [setUpWindowAndPort] then call NPP_SetWindow.
(-[IFPluginView start]): Register for changes to the bounds or frame of any of
our superviews, not just one particular one. Also, don't bother to register for
notification when the window resizes. Finally, use the constants for the names
of the notifications, not literal strings.
(-[IFPluginView layout]): Just use [setUpWindowAndPort]; no need for a new call
to NPP_SetWindow.
(-[IFPluginView viewHasMoved:]): Just use [setUpWindowAndPort]; no need for a new
call to NPP_SetWindow.
2002-07-01 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFWebView.mm:
(-[IFWebView window]): If the view hasn't been added to a window
yet, get the window from the WindowContext.
2002-07-01 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
Ensure that _didStopLoading is called for both error case and
non-error case.
2002-07-01 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
A completion message was being sent, as well as an error message.
This, no doubt confused Alexander. No only send either the final
error message or the completion message.
2002-07-01 Darin Adler <darin@apple.com>
Ken fixed the load message sequencing problem in WebFoundation, so now we can
go back to the original versions of the asserts.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient dealloc]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
Roll out the stuff that's ifdef'd and marked with bug 2954901.
2002-07-01 Darin Adler <darin@apple.com>
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView updateScrollers]): After a closer reading of
the NSScrollView source code, I see that we don't need to explicitly do
tile or setNeedsDisplay: because the setters take care of that, so I made
this simpler.
(-[IFDynamicScrollBarsView reflectScrolledClipView:]): Replace the anti-
recursion hack that I erroneously removed earlier.
* WebView.subproj/IFTextView.h: Removed the isRTF flag.
* WebView.subproj/IFTextView.m:
(-[IFTextView provisionalDataSourceChanged:]): Do nothing here.
(-[IFTextView dataSourceUpdated:]): Check the MIME type here.
2002-07-01 Richard Williamson <rjw@apple.com>
Fixed 2976913.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView layout]):
Augmented debugging info.
(-[IFHTMLView setNeedsDisplay:]):
Augmented debugging info.
(-[IFHTMLView setNeedsLayout:]):
Removed overload of this method to also set display flag.
Why was this added?
(-[IFHTMLView setNeedsToApplyStyles:]):
Augmented debugging info.
(-[IFHTMLView drawRect:]):
Augmented debugging info.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _timedLayout:]):
If the view size is zero (width or height) force
a layout now, rather than depending on the lazy
layout that will happen in display. If the view
size is 0,0 the AppKit will optimize out the display.
2002-07-01 Chris Blumenberg <cblu@apple.com>
Minor cleanup
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView initWithFrame:mimeType:arguments:]):
(-[IFNullPluginView dealloc]):
2002-07-01 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin _getPluginInfoForResourceFile:]): Fix off-by one error
that would cause a memory trasher if we had a 255-character string.
* WebView.subproj/IFHTMLView.mm:
* WebView.subproj/IFRenderNode.mm:
Touch these files so we don't have to do a full build of WebKit
for my WebCore changes.
2002-07-01 Maciej Stachowiak <mjs@apple.com>
Build fixes (don't know why a plain build didn't catch these):
* Plugins.subproj/IFPluginView.mm: openNewWindowWithURL: is not a
method of the controller any more, nor are the status-related calls.
* WebView.subproj/IFWebController.h: Un-ifdef the status calls.
2002-07-01 Maciej Stachowiak <mjs@apple.com>
Part of fix for Radar 2976618 - links targeting _blank hit
assertion trying to set provisional data source
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame frameNamed:]): Show the window.
2002-07-01 Maciej Stachowiak <mjs@apple.com>
Fix Radar 2953256 - Auth sheet appears detached when clicking
directly on auth link with Alex not running
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanels frontmostWindowLoadingURL:]): Don't consider
windows that are not visible.
2002-06-29 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer tileInRect:fromPoint:]): Fix calculation of oneTileRect.
I think this is finally correct now.
2002-06-29 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for:
Radar 2942074 - JavaScript size, positioning and feature
parameters to window.open are ignored
Also, renamed IFScriptContextHandler protocol to IFWindowContext,
and made it a settable handler like the others rather than
something implemented by the controller, so it can be used w/o
subclassing.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge openNewWindowWithURL:]): Forward to the WindowContext.
(-[IFWebCoreBridge areToolbarsVisisble]): Likewise.
(-[IFWebCoreBridge setToolbarsVisible:]): Likewise.
(-[IFWebCoreBridge areScrollbarsVisible]): Likewise.
(-[IFWebCoreBridge setScrollbarsVisible:]): Likewise.
(-[IFWebCoreBridge isStatusBarVisisble]): Likewise.
(-[IFWebCoreBridge setStatusBarVisible:]): Likewise.
(-[IFWebCoreBridge setWindowFrame:]): Likewise.
(-[IFWebCoreBridge window]): Likewise.
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController setWindowContext:]): Setter for new WindowContext handler
(-[IFWebController windowContext]): Likewise.
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebControllerPrivate dealloc]): Release window context.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame frameNamed:]): Open new windows via WindowContext.
2002-06-28 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.h: Renamed statusOfCache to
patternColorLoadStatus for clarity.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer copyWithZone:]): Add FIXME.
(-[IFImageRenderer tileInRect:fromPoint:]): Add optimization for the
case where a single draw of the image will cover the entire area to be
tiled. Also add comments and make other small improvements.
2002-06-28 Richard Williamson <rjw@apple.com>
Use float character measurement to determine selection
region. Necessary to ensure accuracy of selection
region. First step towards weaning khtml off int
measurements.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer tileInRect:fromPoint:]):
Cleaned up use of loadStatus.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
(-[IFTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
(-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
2002-06-28 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient downloadHandler]): added
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): removed [downloadHandler cancel]
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource stopLoading]): call [downloadHandler cancel] here so clean up is done immediately.
2002-06-27 Richard Williamson <rjw@apple.com>
Fixed tiling of progressively loaded images.
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer initWithSize:]):
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
(-[IFImageRenderer loadStatus]):
(-[IFImageRenderer tileInRect:fromPoint:]):
2002-06-27 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
(-[IFImageRenderer loadStatus]):
(-[IFImageRenderer tileInRect:fromPoint:]):
2002-06-27 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
Fixed uninitialized variable warning. Compile being too aggressive,
broke deployment build.
2002-06-27 Chris Blumenberg <cblu@apple.com>
Fixed plug-in positioning.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView
initWithFrame:plugin:url:baseURL:mime:arguments:]): added some logging.
(-[IFPluginView setWindow]): Use the window's content view as the
guide for the port's coordinates. Also added a workaround for Java.
2002-06-27 Darin Adler <darin@apple.com>
Fixed DOM tree viewer.
* WebView.subproj/IFDOMNode.mm: (-[IFDOMNode initWithDOMNode:DOM::]):
A typo got in here somehow, leading to an infinite loop.
2002-06-27 Darin Adler <darin@apple.com>
- fixed 2973212 -- bad arg string != nil in _IF_URLWithString
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _startLoading:]): Get rid of essentially-dead code that
computed but did not use a URL. Also order operations so that we first
set the flag to say that we're loading, then tell the location change
handler, and only then ask for the actual I/O to being.
* WebView.subproj/IFBaseLocationChangeHandler.h: Removed.
* WebView.subproj/IFBaseLocationChangeHandler.m: Removed.
=== Alexander-10 ===
2002-06-27 Richard Williamson <rjw@apple.com>
Method name changes in preparation for fixing
TextSlave::checkSelectionPoint(). Stubbed
only, no support for new parameters yet.
* Misc.subproj/IFStringTruncator.m:
(+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer slowFloatWidthForCharacters:stringLength:fromCharacterPostion:numberOfCharacters:applyRounding:]):
(-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
(-[IFTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:applyRounding:attemptFontSubstitution:]):
(-[IFTextRenderer widthForCharacters:length:]):
(-[IFTextRenderer widthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
2002-06-27 Richard Williamson <rjw@apple.com>
Removed old methods and references.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawString:atPoint:withColor:]):
(-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
(-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
Fixed final fragment rendering glitch.
2002-06-27 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
(-[IFWebCoreViewFactory viewForJavaAppletWithFrame:baseURL:parameters:]):
Pass baseURL as a separate parameter.
* WebView.subproj/IFBaseLocationChangeHandler.m: Fix a typo. I think this
file might be unneeded, but I won't delete it until I hear from Chris.
2002-06-27 Richard Williamson <rjw@apple.com>
Fix selection in 'slow' code path (non-base characters and font substitution).
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
(-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
2002-06-27 Richard Williamson <rjw@apple.com>
Implemented auto scrolling.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView mouseDragged:]):
2002-06-27 Richard Williamson <rjw@apple.com>
Implement selectAll.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView selectAll:]):
2002-06-27 Maciej Stachowiak <mjs@apple.com>
WebKit part of fixes for JavaScript cookie bugs:
2943749 - JavaScript navigator.cookieEnabled property is always "true"
2856039 - JavaScript document.cookies property is not implemented
Thereby also fixing:
2944378 - Trying to log into my Yahoo web mail account sent
Alexander into a loop
* WebCoreSupport.subproj/IFCookieAdapter.h: Added.
* WebCoreSupport.subproj/IFCookieAdapter.m: Added.
(+[IFCookieAdapter createSharedAdapter]): Set up an instance of
IFCookieAdapter as the WebCoreCookieAdapter shared instance.
(-[IFCookieAdapter cookiesEnabled]): Implement in terms of
WebFoundation stuff.
(-[IFCookieAdapter cookiesForURL:]): Likewise.
(-[IFCookieAdapter setCookies:forURL:]): Likewise.
* WebKit.pbproj/project.pbxproj: Add new files to build.
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]): Hook up the cookie adapter just
like the various factory classes.
2002-06-27 Chris Blumenberg <cblu@apple.com>
Support for Java.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): set DOCBASE argument
* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
(-[IFWebCoreViewFactory viewForJavaAppletWithFrame:andArguments:]): renamed
2002-06-26 Richard Williamson <rjw@apple.com>
Many improvements to selection. More Cocoa like,
normalized all text drawing code paths for selected
and unselected cases.
Still need to work on:
1. 'slow' drawing cases, i.e. runs with non-base characters
or runs requiring font substitution.
2. Select All menu item.
3. Auto scrolling.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawString:atPoint:withColor:]):
(-[IFTextRenderer drawGlyphs:numGlyphs:fromGlyphPosition:toGlyphPosition:atPoint:withTextColor:backgroundColor:]):
(-[IFTextRenderer slowDrawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:attemptFontSubstitution:]):
(-[IFTextRenderer _drawCharacters:length:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:backgroundColor:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withTextColor:]):
(-[IFTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withTextColor:backgroundColor:]):
2002-06-26 Darin Adler <darin@apple.com>
- fixed 2969280 -- if trailing / not specified for site, relative URLs are
incorrectly expanded
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge receivedData:withDataSource:]): Update the URL for the
case where we've already been redirected before we receive any data.
2002-06-26 Darin Adler <darin@apple.com>
- fixed 2971532 -- crash with null KHTMLView at gramicci.com
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView reapplyStyles]): Handle widget == 0 case.
(-[IFHTMLView layout]): Handle widget == 0 case.
Fixed a crash I have seen many times where a data source tries
to use its parent to locate the controller after its parent is
deallocated.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]): Use _parentDataSourceWillBeDeallocated
instead of _setController:nil.
* WebView.subproj/IFWebFramePrivate.h: Add _parentDataSourceWillBeDeallocated.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _parentDataSourceWillBeDeallocated]): Does both
a _setController:nil, and a _setParent:nil on both data sources.
2002-06-26 John Sullivan <sullivan@apple.com>
- fixed 2971024 -- wrong item is bookmarked
-[IFWebDataSource redirectedURL] was returning the URL of a
sub-page resource.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
Removed evil call to _setFinalURL here. It had no right to live.
2002-06-26 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRendererFactory.m:
(-[IFImageRendererFactory imageRenderer]): Fix NSBitmapImageRep leak.
2002-06-26 Chris Blumenberg <cblu@apple.com>
- added "complete" to to progress methods to indicate last progress message
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView setWindow]): added a draw test
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
2002-06-26 Richard Williamson <rjw@apple.com>
Fixed recursion problems. +[NSFont findFontLike:forString:withRange:inLanguage:]
will alternate between suggested fonts with bogus answers. The work
around involves adding an explicit flag indicating whether or not
font substitution should be attempted.
* Misc.subproj/IFStringTruncator.m:
(+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:attemptFontSubstitution:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:attemptFontSubstitution:]):
(-[IFTextRenderer widthForCharacters:length:]):
2002-06-26 Darin Adler <darin@apple.com>
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView validateUserInterfaceItem:]): Switch to this instead
of validateMenuItem: so that a Copy toolbar button would work.
2002-06-25 Richard Williamson <rjw@apple.com>
Disable the copy menu item when IFHTMLView has is key
and has no selection.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView validateMenuItem:]):
Disable menu if selection is empty.
(-[IFHTMLView copy:]):
Factored code that gets the bridge.
* WebView.subproj/IFHTMLViewPrivate.h:
Added _bridge.
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLView _bridge]):
We need to access the bridge from the view
to get the part's selection.
2002-06-25 Chris Blumenberg <cblu@apple.com>
Remove downloaded file if cancelled.
* Misc.subproj/IFDownloadHandler.mm:
(-[IFDownloadHandler cancel]):
2002-06-25 Richard Williamson <rjw@apple.com>
Support for rudimentary plain text 'copy'.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView copy:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _controller]):
2002-06-25 Richard Williamson <rjw@apple.com>
Enabled progressive image loading code.
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer initWithSize:]):
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
* WebCoreSupport.subproj/IFImageRendererFactory.m:
(-[IFImageRendererFactory imageRenderer]):
2002-06-25 Richard Williamson <rjw@apple.com>
Extended our text measurement rounding work-around for integer-float
mismatch to round on word boundaries as well as spaces.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
(-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
2002-06-25 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
Don't remove the URL handle from the data source until we've finished the
loading process in KDE code. This may fix 2968527.
* WebCoreSupport.subproj/IFTextRenderer.m: Keep around commented printfs so
I can do the "dump all strings as they are rendered" again.
* WebKit.pbproj/project.pbxproj: Re-add -Wmissing-format-attribute.
2002-06-25 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer tileInRect:fromPoint:]): Remove stray NSLog.
2002-06-25 Darin Adler <darin@apple.com>
- fixed 2968298 -- IFImageRenderer crash at download.com
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer initWithSize:]): Override this instead of [init].
This is the designated initializer and all the others call this.
(-[IFImageRenderer copyWithZone:]): Override to nil out fields that
can't be shared by the copy.
Fix leaks.
* History.subproj/IFURIEntry.m:
(-[IFURIEntry initWithURL:title:image:]): Use copy instead of retain
in case we are passed a mutable string.
(-[IFURIEntry dealloc]): Release _displayTitle. Fixes a leak.
(-[IFURIEntry setTitle:]): Use copy instead of retain in case we are
passed a mutable string.
(-[IFURIEntry setDisplayTitle:]): Use copy instead of retain in case
we are passed a mutable string.
(-[IFURIEntry initFromDictionaryRepresentation:]): Lose the extra
retain for _lastVisitedDate. Fixes a leak.
2002-06-24 Darin Adler <darin@apple.com>
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanels didStopLoadingURL:inWindow:]): Fix a leak caused
by calling the wrong method. This was calling objectForKey: instead of
removeObjectForKey:.
2002-06-24 Richard Williamson <rjw@apple.com>
Changed our usage of +[NSFont findFontLike:forString:withRange:inLanguage:]
after talking with Aki. We were erroneously passing a complete
string rather than a character cluster. Fixed 2964793.
* WebCoreSupport.subproj/IFTextRenderer.m:
(findLengthOfCharacterCluster):
(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
(-[IFTextRenderer drawGlyphs:numGlyphs:atPoint:withColor:]):
(-[IFTextRenderer slowDrawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer _drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
2002-06-24 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _transitionProvisionalToCommitted]): Take ownership before
doing the setWidget. The other way the widget was getting deleted.
2002-06-24 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPlugin.h:
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin initWithPath:]): Close resource files when done.
(-[IFPlugin load]): Remove Java plug-in workaround, load as mach-o
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:baseURL:mime:arguments:]): take NSURLs
(-[IFPluginView dealloc]): release baseURL
* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): take NSURLs
(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):
2002-06-24 Darin Adler <darin@apple.com>
Remove some unused stuff. Other minor cleanup.
* WebView.subproj/IFDynamicScrollBarsView.h: Remove breakRecursionCycle,
don't declare updateScrollers or resetCursorRects.
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView updateScrollers]): Make this work even for a view
that doesn't allow scrolling, turning off both scrollers in that case.
(-[IFDynamicScrollBarsView reflectScrolledClipView:]): Call updateScrollers
unconditionally, letting it decide what to do, rather than looking at
allowsScrolling. Also, no need to use a boolean to break the recursion cycle,
now that updateScrollers does no work if none is needed.
(-[IFDynamicScrollBarsView setCursor:]): Do nothing if the cursor is not
changing. Also handle arrowCursor case here.
(-[IFDynamicScrollBarsView resetCursorRects]): Call discardCursorRects so
the old rects won't keep accumulating.
(-[IFDynamicScrollBarsView setAllowsScrolling:]): Always call updateScrollers,
not just when turning scrolling off.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView initWithFrame:]): Remove unneeded NSWindowWillCloseNotification
and isFlipped field.
(-[IFHTMLView removeNotifications]): Moved here from NSWindowWillCloseNotification.
(-[IFHTMLView viewWillMoveToWindow:]): Remove all the notifications when the
view is removed from the window.
(-[IFHTMLView setNeedsLayout:]): Call setNeedsDisplay in the YES case, so the
callers don't all have to.
(-[IFHTMLView isFlipped]): Just return YES. No need to store it.
(-[IFHTMLView windowResized:]): Add a FIXME, since this is not the way we want
to handle view resizing for the long run.
* WebView.subproj/IFHTMLViewPrivate.h: Remove isFlipped.
2002-06-24 Darin Adler <darin@apple.com>
Fix the last of the "leak the world" problems. The KHTMLView was leaking
in IFHTMLView.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView dealloc]): Call _reset instead of _stopPlugins, so we get rid
of the widget too.
(-[IFHTMLView viewWillMoveToWindow:]): Use _reset now instead of the old
_stopPlugins; also check that the window isn't already nil so we don't do a
reset as part of our first install.
(-[IFHTMLView provisionalDataSourceCommitted:]): Use the new widgetOwned
flag to tell if the widget should be deleted instead of deciding based on
whether the dataSource is the main document.
* WebView.subproj/IFHTMLViewPrivate.h: Add a widgetOwned boolean and a
private _takeOwnershipOfWidget method. Combine _resetWidget and _stopPlugins
into a single _reset call. Remove _removeSubviews.
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLView _reset]): New name for the combination of _resetWidget and
_stopPlugins. Now it decides whether to delete the widget based on the
widget owned flag, so it is safe to call even for non-main-document views.
(-[IFHTMLView _takeOwnershipOfWidget]): Sets widgetOwned to NO.
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame reset]): Use _resetWidget
under its new name _reset.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _transitionProvisionalToCommitted]): Don't bother doing
explicit _stopPlugins and _removeSubviews. It's now the view's own responsibility
to do this in viewWillMoveToWindow:. Call _takeOwnershipOfWidget after attaching
the widget to the RenderPart.
* WebView.subproj/IFImageView.m: (-[IFImageView viewWillMoveToWindow:]): Added.
Break the reference cycle by stopping animated IFImageRenderer here instead of
waiting for dealloc.
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView setWindow]): Fix a warning
by changing the printf format string to match the parameter type.
* Misc.subproj/WebKitDebug.h: Re-add the __format__ attribute, now that Radar
2920557 is fixed.
2002-06-23 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m: (-[IFImageRenderer nextFrame:]):
Use hasAlpha instead of isOpaque because the latter does not work (Radar 2966937).
2002-06-21 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer nextFrame:]): Add back the higher-speed case where
we draw directly for opaque animated images.
2002-06-21 Darin Adler <darin@apple.com>
Cache the patterns we make for tiled images for added speed.
* WebCoreSupport.subproj/IFImageRenderer.h: Removed declarations of
methods inherited from WebCoreImageRenderer. Added patternColor field.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer dealloc]): Release patternColor.
(-[IFImageRenderer beginAnimationInRect:fromRect:]): Get the view with
[NSView focusView] rather than taking a parameter that's used only for
the animating case.
(-[IFImageRenderer tileInRect:fromPoint:]): New. Caches the pattern in
the patternColor field.
* WebView.subproj/IFImageView.m: (-[IFImageView drawRect:]): No need to
pass view to image renderer any more.
2002-06-21 Darin Adler <darin@apple.com>
Fix rendering of non-opaque animated images.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer nextFrame:]): Use [NSView displayRect:] instead of
drawing explicitly so that views behind us get a chance to draw too.
This is less efficient than just drawing for opaque images, but NSImage
doesn't offer a way to find out if the image is opaque. Also, this changes
things a bit because beginAnimationInView gets called again, so we don't
have to reschedule the timer.
2002-06-20 Richard Williamson <rjw@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer frameDuration]):
Added minimum 1/60th second duration per frame.
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView updateScrollers]):
Only display scrollview if scrollers changed.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _setState:]):
Explicity turn on copiesOnScroll. This may cause problems w/
plugins. Need to verify once plugins are no longer crashing.
2002-06-20 Darin Adler <darin@apple.com>
Fix for leak where sub-frame IFHTMLViews would not call _stopPlugins.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView viewWillMoveToWindow:]):
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView viewWillMoveToWindow:]):
Use this viewWillMoveToWindow instead of removeFromSuperview; it's a more
reliable way to handle cases where the view is removed from the view hierarchy.
Fix for IFWebFrame -> IFWebDataSource -> LoadProgressMonitor -> IFWebFrame
reference cycle.
* WebView.subproj/IFLocationChangeHandler.h: Add dataSource parameters for the
methods that don't have them so this can be "delegate" style.
* WebView.subproj/IFWebController.h: Pass a dataSource instead of a frame
when asking for a location change handler.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
Pass dataSource for locationChangeDone.
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
Pass dataSource for locationChangeStarted.
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
Pass a dataSource instead of a frame when asking for a location change handler.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _transitionProvisionalToCommitted]): Pass dataSource for
locationChangeCommitted.
(-[IFWebFrame _isLoadComplete]): Pass dataSource for locationChangeDone.
* force-clean-timestamp: Give this mechanism a try. I'm not sure
we really need a clean build right now.
* WebView.subproj/IFWebDataSource.mm: Simplify.
2002-06-20 Kenneth Kocienda <kocienda@apple.com>
A more complete fix for this bug:
Radar 2942728 (Link to Yahoo! Finance stocks page fails, says URL is "not a valid location")
I added a new +(NSURL)_IF_URLWithString: method to IFNSURLExtensions.
This is now the suggested way to create a URL from a string.
* History.subproj/IFURIEntry.m:
(-[IFURIEntry initFromDictionaryRepresentation:])
* History.subproj/IFURLsWithTitles.m:
(+[IFURLsWithTitles URLsFromPasteboard:])
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:])
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView initWithFrame:mimeType:arguments:])
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:])
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:])
* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:])
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _startLoading:])
* WebView.subproj/IFWebView.mm:
(-[IFWebView performDragOperation:])
=== Alexander-9 ===
2002-06-19 Richard Williamson <rjw@apple.com>
Break image renderer reference cycle. When a view is removed from the view
hierarchy active image renderers are told to stop animating,
which will, in turn, cause them to release their view. We leverage
the existing _stopPlugins mechanism.
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
(+[IFImageRenderer stopAnimationsInView:]):
(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
(-[IFImageRenderer frameView]):
(-[IFImageRenderer stopAnimation]):
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLView _stopPlugins]):
2002-06-19 John Sullivan <sullivan@apple.com>
- fixed 2960677 -- attempt to insert nil key; content policy set twice on particular page.
The problem here was a bad URL not being propogated through the error-handling machinery
correctly because the url handle was nil, but used to get its string.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
* WebView.subproj/IFWebControllerPrivate.mm: Use IFError init method that takes
failingURL.
(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
Check [error failingURL] when resource handle is nil.
2002-06-19 Darin Adler <darin@apple.com>
Fixed a storage leak and made some other changes to go along with
corresponding WebCore changes.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient didStartLoadingWithURL:]): Added.
(-[IFResourceURLHandleClient didStopLoading]): Added.
(-[IFResourceURLHandleClient dealloc]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFResourceURLHandleClient IFURLHandle:didRedirectToURL:]):
Use didStartLoadingWithURL and didStopLoading to cure problems where the
handle would be left in the data sources list of loading handles.
* WebView.subproj/IFDynamicScrollBarsView.h: Changed to conform to the
WebCoreFrameView protocol.
* Misc.subproj/WebKitDebug.h: Cloned improved assert code from WebFoundation.
* WebView.subproj/IFDynamicScrollBarsView.m: Fixed comment.
2002-06-19 Chris Blumenberg <cblu@apple.com>
Call setWindow in layout so that plug-in content is drawn without
needing to resize.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView layout]):
(-[IFPluginView viewHasMoved:]):
2002-06-19 Kenneth Kocienda <kocienda@apple.com>
I just played alchemical voodoo games with the linker to
make all our frameworks and Alexander prebound.
* WebKit.pbproj/project.pbxproj
2002-06-18 Chris Blumenberg <cblu@apple.com>
Fix for 2961733 - Progress of plug-in files not shown in activity window
Plugin classed must call _IF_superviewWithName: not _IF_parentWebView
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]):
* Plugins.subproj/IFPluginStream.mm: minor cleanup
(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView start]):
(-[IFPluginView layout]):
2002-06-18 Chris Blumenberg <cblu@apple.com>
Enabled the viewing of plug-in content inline
(aka direct links to plugin media). Made IFPluginView a
IFDocumentView and IFPluginStream a IFDocumentRespresentation.
Renamed content policy API's to include the data source.
* Plugins.subproj/IFPluginDatabase.h:
* Plugins.subproj/IFPluginDatabase.m:
(+[IFPluginDatabase installedPlugins]): registers plugins as IFDocument*
* Plugins.subproj/IFPluginStream.h:
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream init]): added for IFDocumentRepresentation
(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): removed load initiliazatoin
(-[IFPluginStream dealloc]):
(-[IFPluginStream startLoad]): added
(-[IFPluginStream stop]):
(-[IFPluginStream receivedData:]): added as the base implementation
(-[IFPluginStream receivedError]): added as the base implementation
(-[IFPluginStream finishedLoadingWithData:]): added as the base implementation
(-[IFPluginStream receivedData:withDataSource:]): added for IFDocumentRepresentation
(-[IFPluginStream receivedError:withDataSource:]): added for IFDocumentRepresentation
(-[IFPluginStream finishedLoadingWithDataSource:]): added for IFDocumentRepresentation
(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]): call receivedData
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): call finishedLoadingWithData
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): call receivedError
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): call receivedError
(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:]): removed special-case code for NP_FULL mose
(-[IFPluginView start]):
(-[IFPluginView initWithFrame:]): added for IFDocumentView
(-[IFPluginView provisionalDataSourceChanged:]): added for IFDocumentView
(-[IFPluginView provisionalDataSourceCommitted:]): added for IFDocumentView
(-[IFPluginView dataSourceUpdated:]): added for IFDocumentView
(-[IFPluginView layout]): added for IFDocumentView
(-[IFPluginView removeFromSuperview]): call stop
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
(-[IFPluginView pluginInstance]): added
* WebCoreSupport.subproj/IFWebCoreViewFactory.m:
(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]): call new init method
(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]): call new init method
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFLocationChangeHandler.h: content policy method name changes
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): content policy method name changes
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController haveContentPolicy:andPath:forDataSource:]): content policy method name changes
* WebView.subproj/IFWebDataSourcePrivate.h:
2002-06-18 Kenneth Kocienda <kocienda@apple.com>
Fix for this bug:
Radar 2928483 (activity viewer does not show all the pieces of a web page when the page is cached)
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge objectLoadedFromCache:size:]): New method that sends the appropriate progress indication.
2002-06-17 Richard Williamson <rjw@apple.com>
Fixed window.open regression.
Partial fix to targeting frame of new name.
* WebCoreSupport.subproj/IFWebCoreBridge.h:
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge openNewWindowWithURL:]):
Return the newly created bridge.
(-[IFWebCoreBridge receivedData:withDataSource:]):
Use setDataSource: method
(-[IFWebCoreBridge startLoadingResource:withURL:]):
No change.
(-[IFWebCoreBridge setDataSource:]):
New method.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView mouseMovedNotification:]):
Selection support.
(-[IFHTMLView mouseDragged:]):
Selection support.
* WebView.subproj/IFWebController.mm:
(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
Only change representation if it hasn't been pre-bound, or if it's
class changed.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
More hackery to support window.open.
2002-06-17 Darin Adler <darin@apple.com>
Fixed many of the reasons that we were leaking the world. But we still leak
KHTMLPart objects, so there must be more problems.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(+[IFResourceURLHandleClient startLoadingResource:withURL:dataSource:]):
Add missing autorelease. Without this, we leak the world.
(-[IFResourceURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
Weaken assert. It was firing before.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge receivedData:withDataSource:]): Don't retain the
dataSource any more. Without this, we leak the world.
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebControllerPrivate dealloc]): Release the policy handler too.
Without this, we leak the world.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]): Release resourceData, representation,
downloadPath, encoding, and contentType. Without this, we leak the world.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
Release the dummy data source after setting it up so it doesn't leak.
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLViewPrivate dealloc]): Don't release the controller, we didn't retain it.
(-[IFHTMLView _resetWidget]): Delete the provisional widget too.
* WebView.subproj/IFWebDataSourcePrivate.h: Remove unused "children" array.
* WebCoreSupport.subproj/IFImageRenderer.m: Fix comment.
* WebView.subproj/IFHTMLView.mm: Fix comments.
2002-06-17 Richard Williamson <rjw@apple.com>
Fixed call to renamed progress method.
* Plugins.subproj/IFPluginStream.mm:
2002-06-17 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource contentType]): no changes
(-[IFWebDataSource fileType]): added. Returns extension based on MIME.
2002-06-17 Richard Williamson <rjw@apple.com>
Added explicit complete check for resources, rather
than depend on bytesSoFar == totalToLoad.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
(-[IFResourceURLHandleClient receivedProgressWithHandle:complete:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidBeginLoading:]):
(-[IFResourceURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFResourceURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:complete:]):
2002-06-17 Chris Blumenberg <cblu@apple.com>
Fix for 2939881. No more overwritting of one's files.
* Misc.subproj/IFDownloadHandler.mm:
(-[IFDownloadHandler receivedData:]):
(-[IFDownloadHandler finishedLoading]):
2002-06-17 Richard Williamson <rjw@apple.com>
Fixed IFImageViews not drawing correctly.
Changed compeletion to explicity use IFURLHandleResourceDidFinishLoading, rather
than depend on bytesSoFar == totalToLoad.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:complete:]):
2002-06-16 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFWebCoreFrame.m: (-[IFWebCoreFrame bridge]): Added.
2002-06-16 Darin Adler <darin@apple.com>
Add a separate WebCoreFrame alongside WebCoreBridge to facilitate
handling of frames with no HTML content in them. This probably fixes
frames named "_blank".
* WebCoreSupport.subproj/IFResourceURLHandleClient.m:
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge frame]): Added.
(-[IFWebCoreBridge parent]): Changed name from parentFrame, to emphasize that this gives a WebCoreBridge.
(-[IFWebCoreBridge childFrames]): Return IFWebCoreFrame objects.
(-[IFWebCoreBridge childFrameNamed:]): Return IFWebCoreFrame object.
(-[IFWebCoreBridge descendantFrameNamed:]): Return IFWebCoreFrame object.
(-[IFWebCoreBridge createChildFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
Use the loadURL operation in IFWebCoreFrame.
(-[IFWebCoreBridge mainFrame]): Return IFWebCoreFrame object.
(-[IFWebCoreBridge frameNamed:]): Return IFWebCoreFrame object.
* WebCoreSupport.subproj/IFWebCoreFrame.h: Added.
* WebCoreSupport.subproj/IFWebCoreFrame.m: Added.
* WebKit.pbproj/project.pbxproj: Update for added files.
* WebView.subproj/IFHTMLViewPrivate.h: Made this includable from plain Objective C.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]): Create the IFWebCoreFrame.
* WebView.subproj/IFWebFramePrivate.h: Add _bridgeFrame method for getting IFWebCoreFrame.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate dealloc]): Release the IFWebCoreFrame.
(-[IFWebFrame _bridgeFrame]): Added.
2002-06-16 Darin Adler <darin@apple.com>
Moved the IFURLHandleClient subclass here from WebCore, so it can some day be merged
with the one for the frames themselves; this one is for resources.
* WebCoreSupport.subproj/IFResourceURLHandleClient.h: Added.
* WebCoreSupport.subproj/IFResourceURLHandleClient.m: Added.
* WebKit.pbproj/project.pbxproj: Added IFResourceURLHandleClient.h and .m.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge startLoadingResource:withURL:]): Added.
Removed all the old methods, with their guts moved into IFResourceURLHandleClient.
2002-06-15 Darin Adler <darin@apple.com>
Update for frame-related changes in WebCore.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebFrame _bridge]): Look at provisional data source first.
(-[IFWebCoreBridge dealloc]): Release the data source.
(-[IFWebCoreBridge parentFrame]): Renamed.
(-[IFWebCoreBridge childFrames]): Renamed.
(-[IFWebCoreBridge childFrameNamed:]): Added.
(-[IFWebCoreBridge descendantFrameNamed:]): Added.
(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Don't call _didStopLoading twice
when we finish loading.
Also changed controller getters to call [dataSource controller] and got rid of the
[IFWebCoreBridge controller] method.
2002-06-15 Richard Williamson <rjw@apple.com>
* Misc.subproj/IFNSViewExtras.h:
* Misc.subproj/IFNSViewExtras.m:
(-[NSView _IF_superviewWithName:]):
(-[NSView _IF_parentWebView]):
Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]):
Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
Call _receiveProgress instead of directly calling handler.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView start]):
Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]):
Handle changing top frame correctly. Parent may be nil.
(-[IFWebCoreBridge didFinishLoadingWithHandle:]):
Added non-terminal error case.
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceCommitted:]):
Replaced use of _IF_superviewWithName w/ safer _IF_parentWebView.
* WebView.subproj/IFMainURLHandleClient.mm:
* WebView.subproj/IFWebControllerPrivate.mm:
Comment changes.
2002-06-15 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
Added a lot of assertions that I had used while debugging.
(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]):
Commented out the line of code that calls [serverRedirectTo:forDataSource:].
Our old code was sending this to the web controller (that was a bug).
But if we send it to the location change handler, then we confuse Alexander.
We may return to this later, uncomment it, and change the interface so the
client can tell what is being redirected. We'll need to do that if we want
the activity window to show redirected URLs at the time of the redirect.
2002-06-15 Richard Williamson <rjw@apple.com>
Fixed _bridge not accounting for provisional data source,
broke access to window.frames during load.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebFrame _bridge]):
(-[IFWebCoreBridge children]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-06-15 Darin Adler <darin@apple.com>
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]): Don't turn negative numbers into
0 for margins. This was a mistake.
2002-06-15 Darin Adler <darin@apple.com>
- fixed 2942808 -- remove all calls to WebKit from WebCore
Update to use the WebCore bridge for more things, reducing
dependencies in both directions. Besides using the bridge for all the
remaining WebCore to WebKit calls, almost no WebKit code deals with
KHTMLPart directly any more, instead the other side of the bridge handles it.
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Remove unneeded casts.
(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
Use the new IFProgress methods to simplify code.
* WebCoreSupport.subproj/IFWebCoreBridge.h: Use the new WebCoreBridge protocol
so we get a compiler error if we forget to implement anything. Add a method for
IFWebDataSource that gets the WebCoreBridge if it has an IFHTMLRepresentation,
and nil otherwise.
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebDataSource _bridge]): Add; does checking so that it returns
nil if the representation is not an IFHTMLRepresentation. This is now used
almost everywhere so we don't have to do so much type casting.
(-[IFWebCoreBridge loadURL:attributes:flags:inFrame:withParent:]): Remove a
stray use of [IFWebCoreBridge dataSource] so we can remove it.
(-[IFWebCoreBridge receivedData:withDataSource:]): Use the
new [WebCoreBridge openURL:] and [WebCoreBridge addData:] methods from the
other side of the bridge so we don't have to deal with the KHTMLPart directly.
(-[IFWebCoreBridge addHandle:]): Added.
(-[IFWebCoreBridge removeHandle:]): Added.
(-[IFWebCoreBridge didStartLoadingWithHandle:]): Added.
(-[IFWebCoreBridge receivedProgressWithHandle:]): Added.
(-[IFWebCoreBridge didFinishLoadingWithHandle:]): Added.
(-[IFWebCoreBridge didCancelLoadingWithHandle:]): Added.
(-[IFWebCoreBridge didFailBeforeLoadingWithError:]): Added.
(-[IFWebCoreBridge didFailToLoadWithHandle:error:]): Added.
(-[IFWebCoreBridge didRedirectWithHandle:fromURL:]): Added.
* WebView.subproj/IFHTMLRepresentation.h: Remove unneeded declarations.
* WebView.subproj/IFHTMLRepresentation.mm: Remove [IFHTMLRepresentation part].
* WebView.subproj/IFHTMLRepresentationPrivate.h: Remove [IFHTMLRepresentation part].
* WebView.subproj/IFHTMLView.mm: (-[IFHTMLView provisionalDataSourceChanged:]): Use the bridge.
* WebView.subproj/IFHTMLViewPrivate.mm: Remove a bunch of unused stuff that was
there for the render and document tree viewers. I had removed it once before but
it got re-added as a side effect of the reorganization process.
* WebView.subproj/IFLoadProgress.h: Remove the unused IFLoadType -- we can add
it back if we find that it's needed. It didn't do much good to have it here
and only partly implemented, and I don't think it's needed. Added some convenient
interfaces for creating IFLoadProgress objects.
* WebView.subproj/IFLoadProgress.mm: Get rid of WCSetIFLoadProgressMakeFunc stuff.
(-[IFLoadProgress init]): Added.
(-[IFLoadProgress initWithBytesSoFar:totalToLoad:]): Remove type part.
(-[IFLoadProgress initWithURLHandle:]): Added.
(+[IFLoadProgress progress]): Added.
(+[IFLoadProgress progressWithBytesSoFar:totalToLoad:]): Added.
(+[IFLoadProgress progressWithURLHandle:]): Added.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient dealloc]): Add more workaround for 2954901.
(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
Remove unneeded type casts and simplify by using new IFLoadProgress methods.
Also simplify access to _bridge by using [IFWebDataSource _bridge].
* WebView.subproj/IFWebControllerPrivate.mm:
* WebView.subproj/IFWebFrame.mm:
Remove unneeded include of KHTMLPart header.
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
Use bridge.
2002-06-15 Maciej Stachowiak <mjs@apple.com>
Made Development build mode mean what Unoptimized used to mean. Removed Unoptimized build mode.
Added a Mixed build mode which does what Deployment used to. All this to fix:
Radar 2955367 - Change default build style to "Unoptimized"
* WebKit.pbproj/project.pbxproj:
2002-06-15 Maciej Stachowiak <mjs@apple.com>
Added temporary workardound for Radar 2954901 by making the assertion more lenient.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
2002-06-14 Richard Williamson <rjw@apple.com>
Removed redundant private _isDocumentHTML method.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _stopLoading]):
(-[IFWebDataSource _addError:forResource:]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-06-14 Richard Williamson <rjw@apple.com>
Added handlers to IFWebController. Should eventually be possible to use
IFWebController w/o subclassing.
Changed IFResourceProgressHandler to pass back resource handle instead of
string description. This will address the needs descibed in 2954160.
Fixed many incorrect references to datasource reps.
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]):
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebCoreSupport.subproj/IFWebCoreBridge.mm:
(-[IFWebDataSource _bridge]):
(-[IFWebCoreBridge createNewFrameNamed:withURL:renderPart:khtml::allowsScrolling:marginWidth:marginHeight:]):
* WebView.subproj/IFDocument.h:
* WebView.subproj/IFHTMLRepresentation.h:
* WebView.subproj/IFHTMLRepresentationPrivate.h:
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]):
(-[IFHTMLView viewWillStartLiveResize]):
(-[IFHTMLView viewDidEndLiveResize]):
* WebView.subproj/IFImageView.m:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController createFrameNamed:for:inParent:allowsScrolling:]):
(-[IFWebController setResourceProgressHandler:]):
(-[IFWebController resourceProgressHandler]):
(-[IFWebController setPolicyHandler:]):
(-[IFWebController policyHandler]):
(+[IFWebController defaultURLPolicyForURL:]):
* WebView.subproj/IFWebControllerPrivate.h:
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebControllerPrivate dealloc]):
(-[IFWebController _receivedProgress:forResourceHandle:fromDataSource:]):
(-[IFWebController _mainReceivedProgress:forResourceHandle:fromDataSource:]):
(-[IFWebController _receivedError:forResourceHandle:partialProgress:fromDataSource:]):
(-[IFWebController _mainReceivedError:forResourceHandle:partialProgress:fromDataSource:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource representation]):
(-[IFWebDataSource isDocumentHTML]):
(-[IFWebDataSource documentTextFromDOM]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]):
(-[IFWebDataSource _setRepresentation:]):
(-[IFWebDataSource _stopLoading]):
(-[IFWebDataSource _isDocumentHTML]):
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-06-14 Darin Adler <darin@apple.com>
* Panels.subproj/IFStandardPanels.m: Use the real PTHREAD_ONCE_INIT,
remove the workaround for 2905545.
* IFWebCoreBridge.h: Moved into WebCoreSupport.subproj.
* IFWebCoreBridge.mm: Moved into WebCoreSupport.subproj.
* WebCoreSupport.subproj/IFWebCoreBridge.h: Moved from top level.
* WebCoreSupport.subproj/IFWebCoreBridge.mm: Moved from top level.
* WebKit.pbproj/project.pbxproj: Update for new file locations.
Also pass -no-c++filt so we get mangled names (more useful for .exp files),
and remove PFE_FILE_C_DIALECTS.
2002-06-14 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
If content type is the default type and there is no extension, assume HTML.
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: Made isDocumentHTML public
(-[IFWebDataSource isDocumentHTML]):
(-[IFWebDataSource documentSource]):
(-[IFWebDataSource documentTextFromDOM]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _stopLoading]):
(-[IFWebDataSource _addError:forResource:]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-06-14 Darin Adler <darin@apple.com>
* Panels.subproj/IFStandardPanels.m: Fix what I broke last time.
2002-06-14 Darin Adler <darin@apple.com>
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanelsPrivate frontmostWindowLoadingURL:]): Change to call webView
instead of view. Not sure why anyone was able to compile this.
* Plugins.subproj/IFNullPluginView.mm: Remove include of obsolete WCPluginWidget.h.
* WebView.subproj/IFHTMLRepresentation.mm: (-[IFHTMLRepresentation part]):
Call part instead of KHTMLPart. Not sure why anyone was able to compile this.
2002-06-14 Darin Adler <darin@apple.com>
Add the new bridge class that connects us to WebCore in a nicer way.
Started to use it for some things. More to come.
* WebKit.pbproj/project.pbxproj:
* IFWebCoreBridge.h: Added.
* IFWebCoreBridge.mm: Added.
* Misc.subproj/IFDownloadHandler.mm:
(-[IFDownloadHandler initWithDataSource:]): Call [super init].
(-[IFDownloadHandler dealloc]): Call [super dealloc].
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]): Call [super init].
(-[IFPluginNullEventSender dealloc]): Call [super dealloc].
* WebView.subproj/IFDOMNode.mm: (-[IFDOMNode dealloc]): Call [super dealloc].
* WebView.subproj/IFImageView.m: (-[IFImageView dealloc]): Call [super dealloc].
* WebView.subproj/IFRenderNode.mm: (-[IFRenderNode dealloc]): Call [super dealloc].
* WebView.subproj/IFHTMLRepresentation.h: Moved variables into a private structure so
this class can be made public.
* WebView.subproj/IFHTMLRepresentationPrivate.h: Added. Has _bridge method.
* WebView.subproj/IFHTMLRepresentation.mm:
(-[IFHTMLRepresentation init]): Call [super init]. Also use the new private structure,
and allocate the IFWebCoreBridge.
(-[IFHTMLRepresentation dealloc]): Release the private structure and the IFWebCoreBridge.
Also, call [super dealloc].
(-[IFHTMLRepresentation _bridge]): Private method to get to the bridge.
(-[IFHTMLRepresentation receivedData:withDataSource:]): Use IFWebCoreBridge.
* WebView.subproj/IFWebViewPrivate.h: Add _setMarginWidth and _setMarginHeight.
* WebView.subproj/IFWebDataSourcePrivate.h: Tweak.
* WebView.subproj/IFWebDataSource.mm: Tweak.
* History.subproj/IFWebHistoryPrivate.m: Tweak.
2002-06-14 Richard Williamson <rjw@apple.com>
Lots of frame related cleanup. Added attempt to get
nested scrollbars to work correctly with window's resize
corner. Still not quite right.
Name change [IFWebFrame view] -> [IFWebFrame webView].
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView updateScrollers]):
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]):
(-[IFHTMLView viewDidEndLiveResize]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm:
(-[IFWebController initWithView:provisionalDataSource:]):
(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
(-[IFWebController _frameForView:fromFrame:]):
(-[IFWebController frameForView:]):
(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
* WebView.subproj/IFWebControllerPrivate.mm:
(-[IFWebControllerPrivate _clearControllerReferences:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame init]):
(-[IFWebFrame initWithName:webView:provisionalDataSource:controller:]):
(-[IFWebFrame setWebView:]):
(-[IFWebFrame webView]):
(-[IFWebFrame setProvisionalDataSource:]):
(-[IFWebFrame reset]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate dealloc]):
(-[IFWebFramePrivate setWebView:]):
(-[IFWebFrame _timedLayout:]):
(-[IFWebFrame _transitionProvisionalToCommitted]):
(-[IFWebFrame _setState:]):
(-[IFWebFrame _isLoadComplete]):
2002-06-14 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView initWithFrame:]):
Added notification so we can intelligently add/remove
mouse move observation when the window becomes/resigns
main. Also added window close observation so we can
clean up other observers.
(-[IFHTMLView viewWillStartLiveResize]):\
Backed out removal of scroll bars during resize.
(-[IFHTMLView viewDidEndLiveResize]):
Backed out removal of scroll bars during resize.
(-[IFHTMLView windowWillClose:]):
Clean up observers.
(-[IFHTMLView windowDidBecomeMain:]):
Add mouse move observer.
(-[IFHTMLView windowDidResignMain:]):
Remove mouse move observer.
(-[IFHTMLView mouseMovedNotification:]):
Only pay attention to mouse moves for this window.
* WebView.subproj/IFImageView.m:
(-[IFImageView layout]):
Removed unnecessary scroll view setDrawBackground calls.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _setState:]):
Added calls to scroll view setDrawBackground when the view
rect is valid.
2002-06-14 Chris Blumenberg <cblu@apple.com>
Enabled displaying of text, images and RTF
Fixed drag & drop
2002-06-13 John Sullivan <sullivan@apple.com>
Various changes to better support the pasteboard.
* Bookmarks.subproj/IFBookmark.h,
* Bookmarks.subproj/IFBookmark.m:
(+[IFBookmark bookmarkOfType:]): New method.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf init]): start out with a non-nil _entry
(-[IFBookmarkLeaf setTitle:]): added assert
(-[IFBookmarkLeaf setURLString:]): added assert
* History.subproj/IFURLsWithTitles.h,
* History.subproj/IFURLsWithTitles.m:
(+[IFURLsWithTitles arrayWithIFURLsWithTitlesPboardType]),
(+[IFURLsWithTitles writeURLs:andTitles:toPasteboard:]),
(+[IFURLsWithTitles titlesFromPasteboard:]),
(+[IFURLsWithTitles URLsFromPasteboard:]):
New file with methods for reading/writing pasteboard entry representing
a list of URLs with associated titles. Used by Bookmarks window and
History window in Alexander.
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate removeEntryForURLString:]): refactored to turn a
WEBKITDEBUG into a more-appropriate WEBKIT_ASSERT.
* WebKit.pbproj/project.pbxproj: Updated for new files.
2002-06-13 Kenneth Kocienda <kocienda@apple.com>
Fixed typo in ChangeLog comment.
2002-06-13 Kenneth Kocienda <kocienda@apple.com>
Fixed uninitialized variable that broke the build.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])
2002-06-13 Richard Williamson <rjw@apple.com>
Lots of cleanup. Fixed most regressions.
Added removal of scrollbars during resizing,
not sure if it's the correct behavior, but it makes resizing
much smoother. Let's see what people think.
* WebView.subproj/IFDynamicScrollBarsView.h:
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView initWithFrame:]):
(-[IFDynamicScrollBarsView reflectScrolledClipView:]):
(-[IFDynamicScrollBarsView updateScrollers]):
(-[IFDynamicScrollBarsView setCursor:]):
(-[IFDynamicScrollBarsView setAllowsScrolling:]):
(-[IFDynamicScrollBarsView allowsScrolling]):
* WebView.subproj/IFHTMLView.mm:
(-[IFHTMLView provisionalDataSourceChanged:]):
(-[IFHTMLView provisionalDataSourceCommitted:]):
(-[IFHTMLView viewWillStartLiveResize]):
(-[IFHTMLView viewDidEndLiveResize]):
* WebView.subproj/IFHTMLViewPrivate.h:
* WebView.subproj/IFHTMLViewPrivate.mm:
(-[IFHTMLViewPrivate dealloc]):
(-[IFHTMLView _provisionalWidget]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _timedLayout:]):
(-[IFWebFrame _isLoadComplete]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]):
(-[IFWebView setAllowsScrolling:]):
(-[IFWebView allowsScrolling]):
(-[IFWebView frameScrollView]):
(-[IFWebView documentView]):
(+[IFWebView createViewForMIMEType:]):
(-[IFWebView isOpaque]):
(-[IFWebView drawRect:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebViewPrivate dealloc]):
(-[IFWebView _setDocumentView:]):
2002-06-13 Chris Blumenberg <cblu@apple.com>
Removed MIME.subproj. Moved IFDownloadHandler to Misc.
* MIME.subproj/IFDownloadHandler.h: Removed.
* MIME.subproj/IFDownloadHandler.mm: Removed.
* Misc.subproj/IFDownloadHandler.h: Added.
* Misc.subproj/IFDownloadHandler.mm: Added.
(-[IFDownloadHandler initWithDataSource:]):
(-[IFDownloadHandler dealloc]):
(-[IFDownloadHandler receivedData:isComplete:]):
(-[IFDownloadHandler cancel]):
* WebKit.pbproj/project.pbxproj:
2002-06-13 Chris Blumenberg <cblu@apple.com>
Fixed downloads.
Now write out download files as data comes in.
Removed useless lproj's.
* Dutch.lproj/InfoPlist.strings: Removed.
* Dutch.lproj/Localizable.strings: Removed.
* French.lproj/InfoPlist.strings: Removed.
* French.lproj/Localizable.strings: Removed.
* German.lproj/InfoPlist.strings: Removed.
* German.lproj/Localizable.strings: Removed.
* Italian.lproj/InfoPlist.strings: Removed.
* Italian.lproj/Localizable.strings: Removed.
* Japanese.lproj/InfoPlist.strings: Removed.
* Japanese.lproj/Localizable.strings: Removed.
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.mm:
(-[IFDownloadHandler dealloc]):
(-[IFDownloadHandler receivedData:isComplete:]): added
(-[IFDownloadHandler cancel]): added
* Spanish.lproj/InfoPlist.strings: Removed.
* Spanish.lproj/Localizable.strings: Removed.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient initWithDataSource:]): removed unused BOOL
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
2002-06-12 Chris Blumenberg <cblu@apple.com>
Couldn't run ChangeLog because it hung with the massize diffs, so here's
a hand-made one.
Changes to support inline views.
Modified Files:
WebKit/ChangeLog WebKit/Plugins.subproj/IFNullPluginView.mm
WebKit/Plugins.subproj/IFPluginDatabase.h
WebKit/Plugins.subproj/IFPluginDatabase.m
WebKit/Plugins.subproj/IFPluginView.mm
WebKit/WebCoreSupport.subproj/IFImageRenderer.h
WebKit/WebCoreSupport.subproj/IFWebCoreViewFactory.m
WebKit/WebKit.pbproj/project.pbxproj
WebKit/WebView.subproj/IFDOMNode.mm
WebKit/WebView.subproj/IFDynamicScrollBarsView.m
WebKit/WebView.subproj/IFMainURLHandleClient.h
WebKit/WebView.subproj/IFMainURLHandleClient.mm
WebKit/WebView.subproj/IFRenderNode.mm
WebKit/WebView.subproj/IFWebController.h
WebKit/WebView.subproj/IFWebController.mm
WebKit/WebView.subproj/IFWebControllerPrivate.h
WebKit/WebView.subproj/IFWebControllerPrivate.mm
WebKit/WebView.subproj/IFWebDataSource.h
WebKit/WebView.subproj/IFWebDataSource.mm
WebKit/WebView.subproj/IFWebDataSourcePrivate.h
WebKit/WebView.subproj/IFWebDataSourcePrivate.mm
WebKit/WebView.subproj/IFWebFrame.mm
WebKit/WebView.subproj/IFWebFramePrivate.h
WebKit/WebView.subproj/IFWebFramePrivate.mm
WebKit/WebView.subproj/IFWebView.h
WebKit/WebView.subproj/IFWebView.mm
WebKit/WebView.subproj/IFWebViewPrivate.h
WebKit/WebView.subproj/IFWebViewPrivate.mm
Added Files:
WebKit/Misc.subproj/IFNSViewExtras.h
WebKit/Misc.subproj/IFNSViewExtras.m
WebKit/WebView.subproj/IFDocument.h
WebKit/WebView.subproj/IFHTMLRepresentation.h
WebKit/WebView.subproj/IFHTMLRepresentation.mm
WebKit/WebView.subproj/IFHTMLView.h
WebKit/WebView.subproj/IFHTMLView.mm
WebKit/WebView.subproj/IFHTMLViewPrivate.h
WebKit/WebView.subproj/IFHTMLViewPrivate.mm
WebKit/WebView.subproj/IFImageRepresentation.h
WebKit/WebView.subproj/IFImageRepresentation.m
WebKit/WebView.subproj/IFImageView.h
WebKit/WebView.subproj/IFImageView.m
WebKit/WebView.subproj/IFTextRepresentation.h
WebKit/WebView.subproj/IFTextRepresentation.m
WebKit/WebView.subproj/IFTextView.h
WebKit/WebView.subproj/IFTextView.m
Removed Files:
WebKit/MIME.subproj/IFContentHandler.h
WebKit/MIME.subproj/IFContentHandler.m
WebKit/MIME.subproj/IFMIMEHandler.h
WebKit/MIME.subproj/IFMIMEHandler.m
2002-06-12 Kenneth Kocienda <kocienda@apple.com>
* Misc.subproj/WebKitDebug.h: Made assertion failure console message bolder and easier to see.
2002-06-11 Darin Adler <darin@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
Add lots of assertions that allowed me to find the "leak the world" bug that Ken
fixed in WebFoundation. These are a good idea anyway.
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream initWithURL:pluginPointer:notifyData:attributes:]): Use cStringLength
to get the length for the cString rather than assuming that length will be right.
(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Add a FIXME.
2002-06-11 John Sullivan <sullivan@apple.com>
Made methods that convert bookmarks to and from
property-list-compatible dictionaries public so they
can be used in the Bookmarks window for cut/paste.
* Bookmarks.subproj/IFBookmark.h:
* Bookmarks.subproj/IFBookmark.m:
(+[IFBookmark bookmarkFromDictionaryRepresentation:withGroup:]): New method
(-[IFBookmark initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmark dictionaryRepresentation]):
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _loadBookmarkGroupGuts]):
(-[IFBookmarkGroup _saveBookmarkGroupGuts]):
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmarkLeaf dictionaryRepresentation]):
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmarkList dictionaryRepresentation]):
* Bookmarks.subproj/IFBookmarkSeparator.m:
(-[IFBookmarkSeparator initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmarkSeparator dictionaryRepresentation]):
* Bookmarks.subproj/IFBookmark_Private.h: Removed leading underscores from
_initFromDictionaryRepresentation and _dictionaryRepresentation, and made
them public.
2002-06-11 Darin Adler <darin@apple.com>
* WebView.subproj/IFDOMNode.h: Added.
* WebView.subproj/IFDOMNode.mm: Added.
* WebView.subproj/IFRenderNode.h: Added.
* WebView.subproj/IFRenderNode.mm: Added.
These contain all the interesting bits of the code for the render
and DOM tree viewers, mostly moved here from WebBrowser.
* WebView.subproj/IFWebViewPrivate.mm: Remove the methods in here that
aren't declared in the header and are only used for the render and DOM
tree viewers.
* WebKit.pbproj/project.pbxproj: Add new files.
2002-06-10 Darin Adler <darin@apple.com>
* Makefile.am: Do a clean before building if the force-clean-timestamp file is
newer than the previous-clean-timestamp. Edit force-clean-timestamp (doesn't
matter what you change as long as you change it) to force a clean build in WebKit.
* force-clean-timestamp: Added.
* .cvsignore: Ignore previous-clean-timestamp.
2002-06-10 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.h: Remove the flavor of
floatWidthForCharacters without the applyRounding boolean.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]): Remove logic about
characters in the 0x7F-0xA0 range, since it's already handled by the time we get
around to drawing.
(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]): Pass in the
applyRounding boolean when calling through to slowFloatWidthForCharacters.
Move logic about characters in the 0x7F-0xA0 range from here into
[extendCharacterToGlyphMapToInclude:].
(-[IFTextRenderer widthForCharacters:length:]): Call the version of
floatWidthForCharacters that takes the applyRounding parameter; this was the only
client of the flavor that didn't take the parameter.
(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Add the logic about
characters in the 0x7F-0xA0 range into here.
2002-06-10 Richard Williamson <rjw@apple.com>
Tweaks to rounding code.
Added Cocoa-exact width measurement emulation flag to support IFStringTruncator.
Remove code that was already conditionally excluded calls to support
non-specified advance drawing (we now depend on tweaked advances).
* Misc.subproj/IFStringTruncator.m:
(+[IFStringTruncator centerTruncateString:toWidth:withFont:]):
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer initWithFont:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer slowFloatWidthForCharacters:length:applyRounding:]):
(-[IFTextRenderer slowFloatWidthForCharacters:length:]):
(-[IFTextRenderer floatWidthForCharacters:length:applyRounding:]):
(-[IFTextRenderer floatWidthForCharacters:length:]):
(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):
2002-06-10 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFCachedTextRenderer.m: Removed.
2002-06-10 John Sullivan <sullivan@apple.com>
Fixed leaks in History mechanism, found by overriding
release, retain, autorelease, and dealloc and watching
the spam fly.
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate addEntry:]): Make autoreleased array for
entries on a given date.
(-[IFWebHistoryPrivate _loadHistoryGuts:]): autorelease entries
as they are generated from data on disk.
2002-06-10 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
Fix a typo where I left the S off of DRAW_WITHOUT_ADVANCES.
2002-06-10 Richard Williamson <rjw@apple.com>
90% solution to round-off problem. khtml breaks measures text on space
boundaries during layout. It assumes integer measurement, CG uses float
measurements. Some common fonts have non-integer space width. So,
differences in between drawing advances and measurement of space characters
can easily accumulate enough to be visually apparent. We may still accumulate
differences across words, although it's much less visible than for spaces.
As a next step we can fudge the advances of words to force
integer widths, although I think, given how khtml work, just accounting for
consistency in measuring and drawing spaces may be sufficient.
Many sites that looked flaky before now render correctly.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
Force rounding of advance for space characters.
(-[IFTextRenderer floatWidthForCharacters:length:]):
Force rounding of measurement for space characters.
2002-06-09 John Sullivan <sullivan@apple.com>
WebKit part of fix for 2949646 (Can't drag & drop bookmarks
into auto-expanded folder). To get this to work right, I gave
each bookmark a unique (per-session) identifier.
While working on this, I found and fixed some leaks of bookmarks.
* Bookmarks.subproj/IFBookmark.h:
New -[identifier] method and _identifier ivar.
* Bookmarks.subproj/IFBookmark.m:
(+[IFBookmark _generateUniqueIdentifier]):
(-[IFBookmark init]):
(-[IFBookmark dealloc]):
Remember unique identifier in each bookmark as it is created;
delete when dealloc'd.
(-[IFBookmark identifier]): Return unique identifier.
(-[IFBookmark _setParent:]): Don't retain parent, to avoid
circular ownership.
(-[IFBookmark _setGroup:]): Tell coming and going group.
* Bookmarks.subproj/IFBookmarkGroup.h:
New +[bookmarkForIdentifier] method and _bookmarksByID ivar.
* Bookmarks.subproj/IFBookmarkGroup_Private.h:
Declarations of _removedBookmark: and _addedBookmark:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup initWithFile:]): alloc _bookmarksByID.
(-[IFBookmarkGroup dealloc]): release _bookmarksByID.
(-[IFBookmarkGroup _setTopBookmark:]): Don't bail out early;
would now cause leak.
(-[IFBookmarkGroup _removedBookmark:]): New method, removes
bookmark from _bookmarksByID.
(-[IFBookmarkGroup _addedBookmark:]): New method, adds bookmark to
_bookmarksByID.
(-[IFBookmarkGroup bookmarkForIdentifier:]): Looks up bookmark from
_bookmarksByID dictionary.
(-[IFBookmarkGroup _loadBookmarkGroupGuts]): autorelease newTopbookmark;
this had been leaking.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
autorelease children before adding them to parent; this had been leaking.
2002-06-09 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
Fixed a possible uninitialized variable problem that the compiler and Don caught.
2002-06-09 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
Add code to handle drawing when are more than LOCAL_GLYPH_BUFFER_SIZE advances.
I ran into this loading <http://jersey.apple.com/data/20020606-074404M0.html>.
Also fix handling of advances for the obscure case where we hit a non-base character,
slowPackGlyphsForCharacters fails, and substituteFontforCharacters returns nil.
2002-06-07 Darin Adler <darin@apple.com>
* Makefile.am: Use new shared "embed.am" file so we don't need four copies of
the embedding rules for WebFoundation, JavaScriptCore, WebCore, and WebKit.
2002-06-07 Darin Adler <darin@apple.com>
* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):
Fix a warning that shows up with the new C++ compiler (not sure why it
is not showing up with the old one).
2002-06-07 Chris Blumenberg <cblu@apple.com>
Allow plug-ins to make a NPP_*URLNotify request when
the target is _self, _top, _parent or _current. This goes
against the plug-in documentation, but mimics IE.
Need for iTools.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
2002-06-07 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Don't use any warning flags for C that won't work
for C++, because PFE uses the C warning flags on a C++ compile.
2002-06-07 Chris Blumenberg <cblu@apple.com>
Made IFWebController a class.
Fixed all places where IFWebController was referred to as a protocol.
Renamed IFBaseWebController files to IFWebController.
IFWebController.h replaces IFWebBaseController.h.
Added support for IEPL plug-ins.
* Panels.subproj/IFStandardPanels.m:
(-[IFStandardPanels _didStartLoadingURL:inController:]):
(-[IFStandardPanels _didStopLoadingURL:inController:]):
* Panels.subproj/IFStandardPanelsPrivate.h:
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView drawRect:]):
* Plugins.subproj/IFPlugin.h:
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin _getPluginInfoForResourceFile:]):
(-[IFPlugin initWithPath:]):
(-[IFPlugin load]):
(-[IFPlugin description]):
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFPluginStream IFURLHandle:didRedirectToURL:]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView webController]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h: Removed.
* WebView.subproj/IFBaseWebController.mm: Removed.
* WebView.subproj/IFBaseWebControllerPrivate.h: Removed.
* WebView.subproj/IFBaseWebControllerPrivate.mm: Removed.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebController.mm: Added.
(-[IFWebController init]):
(-[IFWebController initWithView:provisionalDataSource:]):
(-[IFWebController dealloc]):
(-[IFWebController setDirectsAllLinksToSystemBrowser:]):
(-[IFWebController directsAllLinksToSystemBrowser]):
(-[IFWebController createFrameNamed:for:inParent:inScrollView:]):
(-[IFWebController setStatusText:forDataSource:]):
(-[IFWebController statusTextForDataSource:]):
(-[IFWebController openNewWindowWithURL:]):
(-[IFWebController receivedProgress:forResource:fromDataSource:]):
(-[IFWebController receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController provideLocationChangeHandlerForFrame:]):
(-[IFWebController receivedPageTitle:forDataSource:]):
(-[IFWebController serverRedirectTo:forDataSource:]):
(-[IFWebController _frameForDataSource:fromFrame:]):
(-[IFWebController frameForDataSource:]):
(-[IFWebController _frameForView:fromFrame:]):
(-[IFWebController frameForView:]):
(-[IFWebController frameNamed:]):
(-[IFWebController mainFrame]):
(-[IFWebController pluginNotFoundForMIMEType:pluginPageURL:]):
(-[IFWebController provideLocationChangeHandlerForFrame:andURL:]):
(-[IFWebController URLPolicyForURL:]):
(-[IFWebController unableToImplementURLPolicyForURL:error:]):
(-[IFWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
(-[IFWebController stopAnimatedImages]):
(-[IFWebController startAnimatedImages]):
(-[IFWebController stopAnimatedImageLooping]):
(-[IFWebController startAnimatedImageLooping]):
* WebView.subproj/IFWebControllerPrivate.h: Added.
* WebView.subproj/IFWebControllerPrivate.mm: Added.
(-[IFWebControllerPrivate init]):
(-[IFWebControllerPrivate _clearControllerReferences:]):
(-[IFWebControllerPrivate dealloc]):
(-[IFWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFWebController _mainReceivedProgress:forResource:fromDataSource:]):
(-[IFWebController _receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
(-[IFWebController _didStartLoading:]):
(-[IFWebController _didStopLoading:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource controller]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _setController:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]):
(-[IFWebFrame controller]):
(-[IFWebFrame setController:]):
(-[IFWebFrame frameNamed:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate setController:]):
(-[IFWebFrame _setController:]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
(-[IFWebView controller]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _setController:]):
=== Alexander-8 ===
2002-06-06 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Update warning flags for compatibility
with new C++.
* WebCoreSupport.subproj/IFTextRenderer.m: (FillStyleWithAttributes):
Remove workaround we copied from AppKit, because it's a workaround for
a bug that was fixed in Puma.
2002-06-06 Chris Blumenberg <cblu@apple.com>
Added support for key codes and other encodings.
Send activate to make Java happy.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView keyMessageForEvent:]): added
(-[IFPluginView keyUp:]): use above.
(-[IFPluginView keyDown:]): use above.
(-[IFPluginView windowBecameKey:]): send activate.
(-[IFPluginView windowResignedKey:]): send activate.
2002-06-06 John Sullivan <sullivan@apple.com>
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList removeChild:]):
(-[IFBookmarkList insertChild:atIndex:]):
* ChangeLog:
2002-06-06 John Sullivan <sullivan@apple.com>
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList removeChild:]): Added assert.
(-[IFBookmarkList insertChild:atIndex:]): Set the group of
the new child, and added assert.
2002-06-06 Darin Adler <darin@apple.com>
* MIME.subproj/IFContentHandler.m:
(-[IFContentHandler initWithURL:MIMEType:MIMEHandlerType:]): Add call to
[super init].
(-[IFContentHandler useTemplate:withGlobal:]): New helper function.
Also got rid of <title> from templates, since there's no need for us to
provide a fake title if it's just the URL.
(-[IFContentHandler HTMLDocument]): Reduce use of copied and pasted code.
(-[IFContentHandler dealloc]): Add call to [super dealloc].
* Resources/image_document_template.html: Remove <title>.
* Resources/plugin_document_template.html: Remove <title>.
* Resources/text_document_template.html: Remove <title>.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
Remove some unneeded type casts.
2002-06-05 Maciej Stachowiak <mjs@apple.com>
Fixed Radar 2936155 - crash in IFAuthenticationPanel
* Panels.subproj/IFAuthenticationPanel.m:
(-[IFAuthenticationPanel runAsSheetOnWindow:withRequest:]): Add
some assertions.
(-[IFAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
Avoid referencing instance variables after performing a selector
that might release this object. Also, add some assertions.
* Panels.subproj/IFPanelAuthenticationHandler.m:
(-[IFPanelAuthenticationHandler startAuthentication:]): Tweak
whitespace.
2002-06-05 Richard Williamson <rjw@apple.com>
Fixed snafu in recursion over frame tree.
* WebView.subproj/IFWebFrame.mm:
(+[IFWebFrame _frameNamed:fromFrame:]):
(-[IFWebFrame frameNamed:]):
2002-06-05 Richard Williamson <rjw@apple.com>
Normalized frame naming. (We still don't support cross
window name lookups.)
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController frameNamed:]):
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame frameNamed:]):
2002-06-04 Chris Blumenberg <cblu@apple.com>
* MIME.subproj/IFDownloadHandler.mm: Use public methods
* WebView.subproj/IFWebDataSource.h: Made downloadPath public
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource downloadPath]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
2002-06-04 Richard Williamson <rjw@apple.com>
More exclusion for pre 6C48.
* ChangeLog:
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
* WebCoreSupport.subproj/IFImageRendererFactory.m:
(-[IFImageRendererFactory imageRenderer]):
2002-06-04 Richard Williamson <rjw@apple.com>
Oops, excluded even more code for < 6C48.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
2002-06-04 Kenneth Kocienda <kocienda@apple.com>
* Misc.subproj/WebKitDebug.h: Added a line of stderr output into
the assertion failure code so that we have some idea of what happened.
2002-06-04 Richard Williamson <rjw@apple.com>
Excluded call to new API until everyone has moved to >= 6C48.
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer incrementalLoadWithBytes:length:complete:]):
2002-06-04 Richard Williamson <rjw@apple.com>
Changes to support progressive image loading. Currently disabled
until 2945218 is fixed.
* WebCoreSupport.subproj/IFImageRenderer.h:
* WebCoreSupport.subproj/IFImageRenderer.m:
* WebCoreSupport.subproj/IFImageRendererFactory.m:
2002-06-04 Darin Adler <darin@apple.com>
- fixed 2932862 -- exception -[NSCFArray getObjects:range:]: index (137)
beyond bounds (10)
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _stopPlugins]):
(-[IFWebView _removeSubviews]):
Make a copy of the subviews list so that changes to the list don't screw
up the iterating logic.
2002-06-04 John Sullivan <sullivan@apple.com>
Made changes here while working on Undo for removing history entries.
* History.subproj/IFWebHistory.h:
New methods addEntries: and removeEntries:, deleted method
removeEntriesForDay: (use removeEntries: instead).
* History.subproj/IFWebHistory.m:
(-[IFWebHistory addEntries:]),
(-[IFWebHistory removeEntries:]): New methods, each takes an array of
entries. Useful for doing multiple things at a time to minimize
notifications.
(-[IFWebHistory removeEntriesForDay:]): deleted this now-unnecessary method.
* History.subproj/IFWebHistoryPrivate.h:
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate removeEntries:]):
(-[IFWebHistoryPrivate removeAllEntries]):
(-[IFWebHistoryPrivate addEntries:]): Private implementations for the
public changes.
2002-06-04 Darin Adler <darin@apple.com>
- fixed 2943513 -- move StringTruncator into WebKit from WebBrowser so we
don't need text measuring API exported
* WebKit.pbproj/project.pbxproj: No longer export the text renderer headers
as Private.
2002-06-04 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Exported IFStringTruncator.h as Private.
2002-06-04 Darin Adler <darin@apple.com>
Moved the string truncator class here from WebBrowser so we don't have to
export our text machinery.
* WebKit.pbproj/project.pbxproj:
* Misc.subproj/IFStringTruncator.h: Added.
* Misc.subproj/IFStringTruncator.m: Added.
2002-06-03 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]): Remove the "fix"
for the nonexistent storage leak. Richard showed me the error of my ways.
2002-06-03 John Sullivan <sullivan@apple.com>
Richard told me which line to change to fix 2944237
(Stop item in View menu enabled on startup if you have
no home page.)
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource isLoading]):
Don't return YES if !_private->loading.
2002-06-01 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.m:
(-[IFImageRenderer beginAnimationInView:inRect:fromRect:]):
Remove an assert I added, since it is firing, and instead fixed the storage leak
that inspired me to put the assert in.
2002-05-31 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebViewPrivate.mm: Add include to prepare for change to WebCore
that will make it required.
2002-05-31 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFImageRenderer.h: Fixed the line endings (they were
Macintosh CRs instead of Unix LFs). Also made all the methods be private for
now since there's no need to have them be public.
* WebCoreSupport.subproj/IFImageRenderer.m: Fixed the line endings (they were
Macintosh CRs instead of Unix LFs). Some minor code tweaks too sharing a bit
more code.
* WebCoreSupport.subproj/IFImageRendererFactory.m:
(-[IFImageRendererFactory imageRendererWithSize:]): Return an IFImageRenderer
rather than just an NSImage, since an NSImage does not satisfy WebCoreImageRenderer.
2002-05-31 Darin Adler <darin@apple.com>
* Misc.subproj/WebKitDebug.h: Use displayableString in DEBUG_OBJECT
for nicer logging.
* WebView.subproj/IFWebView.mm:
(-[IFWebView keyDown:]):
(-[IFWebView keyUp:]):
Use DEBUG_OBJECT so we don't get exceptions when the key characters
are not simple ASCII characters.
2002-05-30 Richard Williamson <rjw@apple.com>
API and comment cleanup.
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
2002-05-30 Maciej Stachowiak <mjs@apple.com>
WebKit parts of fixes for:
Radar 2926169 - no support for window.open
Radar 2890469 - Preference to prevent JavaScript from automatically
opening new windows doesn't work
Radar 2938569 - link cursor does not appear on some pages
* WebView.subproj/IFWebController.h:
Added openNewWindowWithURL: method for the benefit of JavaScript.
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController openNewWindowWithURL:]): No-op default
implementation.
* WebView.subproj/IFDynamicScrollBarsView.h:
* WebView.subproj/IFDynamicScrollBarsView.m:
(-[IFDynamicScrollBarsView setCursor:]): Fix cursor handling.
(-[IFDynamicScrollBarsView resetCursorRects]): Likewise.
* WebView.subproj/IFWebView.mm:
(-[IFWebView mouseMovedNotification:]): Likewise.
(-[IFWebView setCursor:]): Likewise.
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFPreferences.mm:
(-[IFPreferences javaScriptEnabled]): Renamed from jScriptEnabled.
(-[IFPreferences setJavaScriptEnabled:]): Renamed from setJScriptEnabled.
(-[IFPreferences javaScriptCanOpenWindowsAutomatically]): New method.
(-[IFPreferences setJavaScriptCanOpenWindowsAutomatically:]): Likewise.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame initWithName:view:provisionalDataSource:controller:]): Create
a dummy provisional data source if none is provided, so we always have a part
for the frame.
2002-05-30 Darin Adler <darin@apple.com>
Use methods in KWQKHTMLPartImpl that were moved there from KHTMLPart.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]):
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource documentText]):
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _setController:]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
* WebView.subproj/IFWebView.mm:
(-[IFWebView provisionalDataSourceChanged:]):
2002-05-30 Chris Blumenberg <cblu@apple.com>
Use NSWorkspace methods instead of Launch Services and Finder functions.
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.mm:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
2002-05-30 Richard Williamson <rjw@apple.com>
Added 'canDraw' check to ensure that we can render
an image frame.
* WebCoreSupport.subproj/IFImageRenderer.m:
=== Alexander-7 ===
2002-05-29 Richard Williamson <rjw@apple.com>
Changes to support animated image rendering.
Moved image rendering into webkit.
Still need to implement preferences stubs and
start/stop stubs.
* WebCoreSupport.subproj/IFImageRenderer.h: Added.
* WebCoreSupport.subproj/IFImageRenderer.m: Added.
* WebCoreSupport.subproj/IFImageRendererFactory.h: Added.
* WebCoreSupport.subproj/IFImageRendererFactory.m: Added.
(+[IFImageRendererFactory createSharedFactory]):
(+[IFImageRendererFactory sharedFactory]):
(-[IFImageRendererFactory imageRendererWithBytes:length:]):
(-[IFImageRendererFactory imageRendererWithSize:]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController stopAnimatedImages]):
(-[IFBaseWebController startAnimatedImages]):
(-[IFBaseWebController stopAnimatedImageLooping]):
(-[IFBaseWebController startAnimatedImageLooping]):
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFPreferences.mm:
(+[IFPreferences load]):
(-[IFPreferences _resourceTimedLayoutEnabled]):
(-[IFPreferences allowAnimatedImages]):
(-[IFPreferences allowAnimatedImageLooping]):
(-[IFPreferences setAllowAnimatedImageLooping:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]):
2002-05-29 Richard Williamson <rjw@apple.com>
API stubs for image animation.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController stopAnimatedImages]):
(-[IFBaseWebController startAnimatedImages]):
(-[IFBaseWebController stopAnimatedImageLooping]):
(-[IFBaseWebController startAnimatedImageLooping]):
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFPreferences.mm:
(+[IFPreferences load]):
(-[IFPreferences _resourceTimedLayoutEnabled]):
(-[IFPreferences allowAnimatedImages]):
(-[IFPreferences allowAnimatedImageLooping]):
(-[IFPreferences setAllowAnimatedImageLooping:]):
* WebView.subproj/IFWebController.h:
2002-05-29 John Sullivan <sullivan@apple.com>
Removed acceptsFirstMouse override, this fixes at least:
2930713 -- clicking on an empty part of window to bring it to front
takes focus away from page address field
2938028 -- Link cursor doesn't appear when browser window not
frontmost, but clicks activate links
* WebView.subproj/IFWebView.mm:
2002-05-28 John Sullivan <sullivan@apple.com>
Made -[IFBookmark group] and -[IFBookmark parent] public
methods, and renamed them to not use leading underscores,
as part of support for revealing a particular bookmark in
the Bookmarks window.
* Bookmarks.subproj/IFBookmark_Private.h:
removed _group and _parent.
* Bookmarks.subproj/IFBookmark.h:
added group and parent.
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark parent]):
(-[IFBookmark group]):
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup removeBookmark:]):
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf copyWithZone:]):
(-[IFBookmarkLeaf setTitle:]):
(-[IFBookmarkLeaf setImage:]):
(-[IFBookmarkLeaf setURLString:]):
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList copyWithZone:]):
(-[IFBookmarkList setTitle:]):
(-[IFBookmarkList setImage:]):
(-[IFBookmarkList removeChild:]):
(-[IFBookmarkList insertChild:atIndex:]):
(-[IFBookmarkList _setGroup:]):
* Bookmarks.subproj/IFBookmarkSeparator.m:
(-[IFBookmarkSeparator copyWithZone:]):
Fixed up all references to _group and _parent to now refer to
group and parent.
2002-05-28 Richard Williamson <rjw@apple.com>
Backed out band-aid add to fixed malformed resources URLs.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _addURLHandle:]):
2002-05-28 Chris Blumenberg <cblu@apple.com>
Added support for creating a new window from a plug-in (2938004)
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
2002-05-28 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPluginDatabase.h:
* Plugins.subproj/IFPluginDatabase.m:
(-[IFPluginDatabase pluginForMimeType:]): renamed
(-[IFPluginDatabase pluginForExtension:]): renamed
(-[IFPluginDatabase pluginForFilename:]): renamed
(findPlugins):
* WebCoreSupport.subproj/IFWebCoreViewFactory.m: support for above renamed
(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
(-[IFWebCoreViewFactory viewForJavaAppletWithArguments:]):
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _addURLHandle:]): fix for a nil handle being added to an array
2002-05-28 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.m:
(hasMissingGlyphs): Use recordSize instead of assuming records are sizeof(ATSLayoutRecord).
(-[IFTextRenderer convertCharacters:length:toGlyphs:]): Free buffer after calling
ATSUConvertCharToGlyphs; old code was using buffer after freeing it.
(-[IFTextRenderer widthForString:]): Handle case where string is longer than
LOCAL_GLYPH_BUFFER_SIZE.
(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
(-[IFTextRenderer drawString:atPoint:withColor:]): Use recordSize instead of assuming records
are sizeof(ATSLayoutRecord).
(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Use recordSize instead of assuming
records are sizeof(ATSLayoutRecord).
(-[IFTextRenderer floatWidthForCharacters:length:]): Remove extra rounding. The caller that
converts the width to an integer already does the rounding.
(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]): Fix off by one error that caused us
to include one extra character in each glyph map block. Also use recordSize instead of assuming
records are sizeof(ATSLayoutRecord).
2002-05-27 John Sullivan <sullivan@apple.com>
Part of fix for 2922772 -- page title & location field don't
show redirected URLs.
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource wasRedirected]): Fixed this method, now that
we have a client that relies on it. Its logic was backwards, and
it didn't handle the null _finalURL case.
2002-05-26 Maciej Stachowiak <mjs@apple.com>
Fixed Radar 936147 - debug output in console "keyUp: NSEvent: type=KeyUp"
* WebView.subproj/IFWebView.mm:
(-[IFWebView keyDown:]): Turned NSLog into WEBKITDEBUGLEVEL.
(-[IFWebView keyUp:]): Likewise.
2002-05-26 Maciej Stachowiak <mjs@apple.com>
WebKit part of fix for:
Radar 2884085 - add support for changing cursor over links
Also, fix handling of mouseMoved events.
* WebView.subproj/IFWebView.mm:
(-[IFWebView mouseMovedNotification:]): Clip mouseMoved events to
the view rect, otherwise mouseover effects might happen for
elements past the edge of the window.
(-[IFWebView setCursor:]): Implement.
(-[IFWebView resetCursorRects]): Implement.
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebViewPrivate dealloc]): Added NSCursor *cursor field.
2002-05-25 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Link against WebCore.framework,
not libwebcore.dylib.
=== 0.3 ===
2002-05-24 Shelley A Sheridan <sheridan@apple.com>
* ChangeLog:
=== Alexander-6 ===
2002-05-23 Maciej Stachowiak <mjs@apple.com>
WebKit part of the fix for:
Radar 2896391 - command-click should open link in new window
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController openNewWindowWithURL:]): Default
implementation silently does nothing.
* WebView.subproj/IFWebController.h: Add openNewWindowWithURL:
method.
* WebView.subproj/IFWebView.mm:
(-[IFWebView _addModifiers:toState:]): Split out modifier key
handling to here. Treat Command as Meta.
(-[IFWebView mouseUp:]): Use new method to set key modifiers for
mouse events.
(-[IFWebView mouseDown:]): Use new method to set key modifiers for
mouse events.
(-[IFWebView keyDown:]): Use new shared code for key modifiers.
(-[IFWebView keyUp:]): Use new shared code for key modifiers.
2002-05-23 Kenneth Kocienda <kocienda@apple.com>
Fixes for these bugs:
Radar 2883631 (need to implement support for META HTTP_EQUIV=REFRESH)
Radar 2935472 (Non-standard html pages don't always get decoded)
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient setContentPolicy:]): Updated method to use new processData interface.
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Senses when all data has been received for a load.
(-[IFMainURLHandleClient processData:isComplete:allDataReceived:]): Modified interface to add a flag
for when all data for a load has been received.
2002-05-23 Shelley A Sheridan <sheridan@apple.com>
* ChangeLog:
=== Alexander-5 ===
2002-05-23 Maciej Stachowiak <mjs@apple.com>
Move authentication panel to WebKit and make it a sheet, fixing:
Radar 2876445 - Authentication panel should be a sheet
Radar 2876449 - The Alexander authentication panel should be moved
to WebKit for use as a standard one
* Panels.subproj/English.lproj/IFAuthenticationPanel.nib: Added.
* Panels.subproj/IFAuthenticationPanel.h: Added.
* Panels.subproj/IFAuthenticationPanel.m: Added.
* Panels.subproj/IFPanelAuthenticationHandler.h: Added.
* Panels.subproj/IFPanelAuthenticationHandler.m: Added.
* Panels.subproj/IFStandardPanels.h: Added.
* Panels.subproj/IFStandardPanels.m: Added.
* Panels.subproj/IFStandardPanelsPrivate.h: Added.
* WebKit.pbproj/project.pbxproj: Add new files to build.
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream IFURLHandleResourceDidBeginLoading:]): Notify of
load start.
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]): Notify
of load end.
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]): Likewise.
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
(-[IFPluginStream IFURLHandle:didRedirectToURL:]): Notify that old
URL is no longer loading, but new one is.
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _didStartLoading:]): New private method
used to track what URLs are loading on behalf of this controller.
(-[IFBaseWebController _didStopLoading:]): Likewise.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidBeginLoading:]): Notify
of load start.
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]): Notify
of load end.
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]): Likewise.
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]): Likewise.
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]): Likewise.
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]): Notify of
load end and start.
2002-05-22 Chris Blumenberg <cblu@apple.com>
Fixed download data source leaks when downloads are cancelled.
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
2002-05-22 Chris Blumenberg <cblu@apple.com>
Removed activate events as this was causing problems
for the QT plug-in.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView windowBecameKey:]):
(-[IFPluginView windowResignedKey:]):
2002-05-22 Chris Blumenberg <cblu@apple.com>
Fixed crasher caused by not retaining.
Fixed targeting bug.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView getURLNotify:target:notifyData:]):
(-[IFPluginView getURL:target:]):
(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
(-[IFPluginView postURL:target:len:buf:file:]):
2002-05-22 Richard J. Williamson <rjw@apple.com>
Changed semantics of isLoading to only return YES if
the datasource is loading resources related to the intial
load. Other resources loaded later by JS will not be
accounted for by isLoading.
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource isLoading]):
2002-05-22 Chris Blumenberg <cblu@apple.com>
- Removed obsolete MIME/download related code.
- Minor clean-ups.
- Made WebKit support all text MIME types.
- Now send NPP_URLNotify when pages requested by plug-ins are loaded.
- Simplified NPP_Get/NPP_Post code.
* MIME.subproj/IFContentHandler.h:
* MIME.subproj/IFContentHandler.m:
* MIME.subproj/IFDownloadHandler.mm:
* MIME.subproj/IFMIMEDatabase.h: Removed.
* MIME.subproj/IFMIMEDatabase.m: Removed.
* MIME.subproj/IFMIMEHandler.h:
* MIME.subproj/IFMIMEHandler.m:
(+[IFMIMEHandler MIMEHandlerTypeForMIMEType:]):
(+[IFMIMEHandler canShowMIMEType:]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView dealloc]):
(-[IFPluginView frameStateChanged:]):
(-[IFPluginView loadURL:inTarget:withNotifyData:andHandleAttributes:]):
(-[IFPluginView getURLNotify:target:notifyData:]):
(-[IFPluginView getURL:target:]):
(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
(-[IFPluginView postURL:target:len:buf:file:]):
(-[IFPluginView invalidateRect:]):
(-[IFPluginView invalidateRegion:]):
(-[IFPluginView forceRedraw]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient processData:isComplete:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _setState:]):
2002-05-21 Richard J. Williamson <rjw@apple.com>
Fixed baseline regression. Obvious of sites that have tables w/ backgrounds,
i.e. www.slashdot.org.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
2002-05-21 Richard J. Williamson <rjw@apple.com>
Changes to support additional DHTML events.
* WebView.subproj/IFWebView.mm:
(-[IFWebView keyDown:]):
(-[IFWebView keyUp:]):
* WebView.subproj/IFWebViewPrivate.mm:
(+[IFWebView _nodeHTML:DOM::]):
2002-05-21 Chris Blumenberg <cblu@apple.com>
Content policy can now be sent at a later time to avoid blocking.
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient initWithDataSource:part:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-05-21 Chris Blumenberg <cblu@apple.com>
Move the tracking rect after the view has moved.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView viewHasMoved:]):
Fixed logging.
* Plugins.subproj/npapi.m:
(NPN_UserAgent):
(NPN_MemAlloc):
(NPN_MemFree):
(NPN_MemFlush):
(NPN_ReloadPlugins):
2002-05-21 Kenneth Kocienda <kocienda@apple.com>
Merged these four include files into the precompiled header.
These are used for the enhanced assertion/debuggin support I
added yesterday.
<signal.h>
<sys/types.h>
<sys/time.h>
<sys/resource.h>
* WebKitPrefix.h
2002-05-20 Chris Blumenberg <cblu@apple.com>
Added support for plug-ins to send URL requests to certain targets.
Added frameNamed to IFWebFrame.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView getURLNotify:target:notifyData:]):
(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame frameNamed:]):
2002-05-20 Kenneth Kocienda <kocienda@apple.com>
* Misc.subproj/WebKitDebug.h: Now includes <sys/time.h> to prevent possible
build breakage in the inclusion of <sys/resource.h>
2002-05-20 Kenneth Kocienda <kocienda@apple.com>
Changed assertion failure code to send a SIGQUIT instead
of raising an NSException.
* Misc.subproj/WebKitDebug.h
2002-05-20 Chris Blumenberg <cblu@apple.com>
A whole lot of plug-in clean-up.
Moved the following functions from npapi to IFPlugin.
* Plugins.subproj/IFPlugin.m:
(functionPointerForTVector):
(tVectorForFunctionPointer):
Only supply mouse coords when active.
* Plugins.subproj/IFPluginNullEventSender.h:
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender initializeWithNPP:functionPointer:window:]):
(-[IFPluginNullEventSender dealloc]):
(-[IFPluginNullEventSender sendNullEvents]):
Minor clean-ups
* Plugins.subproj/IFPluginStream.mm:
(-[IFPluginStream dealloc]):
(-[IFPluginStream IFURLHandleResourceDidFinishLoading:data:]):
(-[IFPluginStream IFURLHandleResourceDidCancelLoading:]):
(-[IFPluginStream IFURLHandle:resourceDidFailLoadingWithResult:]):
Removed the isMouseDown flag from the following functions
as it was unnecessary.
Cleaned up logging.
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView modifiersForEvent:]):
(-[IFPluginView getCarbonEvent:withEvent:]):
(-[IFPluginView sendUpdateEvent]):
(-[IFPluginView becomeFirstResponder]):
(-[IFPluginView resignFirstResponder]):
(-[IFPluginView mouseDown:]):
(-[IFPluginView mouseUp:]):
(-[IFPluginView mouseExited:]):
(-[IFPluginView setWindow]):
(-[IFPluginView start]):
(-[IFPluginView stop]):
URLForString now uses _IF_looksLikeAbsoluteURL.
(-[IFPluginView URLForString:]):
Implemented the following:
(-[IFPluginView invalidateRect:]):
(-[IFPluginView invalidateRegion:]):
(-[IFPluginView forceRedraw]):
Put implementation of GetValue SetValue in npapi.
* Plugins.subproj/npapi.h:
* Plugins.subproj/npapi.m:
(NPN_GetValue):
(NPN_SetValue):
Added drag & drop support.
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]):
(-[IFWebView setCanDragFrom:]):
(-[IFWebView canDragFrom]):
(-[IFWebView setCanDragTo:]):
(-[IFWebView canDragTo]):
(-[IFWebView draggingEntered:]):
(-[IFWebView prepareForDragOperation:]):
(-[IFWebView performDragOperation:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebViewPrivate dealloc]):
2002-05-20 John Sullivan <sullivan@apple.com>
Support for bookmark separators
* Bookmarks.subproj/IFBookmark.h: Update comments and replace
isLeaf with bookmarkType.
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark bookmarkType]): New method, replaces isLeaf.
(-[IFBookmark title]):
(-[IFBookmark setTitle:]):
(-[IFBookmark image]):
(-[IFBookmark setImage:]):
(-[IFBookmark setURLString:]):
(-[IFBookmark children]):
(-[IFBookmark numberOfChildren]):
(-[IFBookmark _numberOfDescendants]):
(-[IFBookmark insertChild:atIndex:]):
(-[IFBookmark removeChild:]):
Update callers of isLeaf, and don't require concrete implementations
of some methods for some types.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf bookmarkType]): return IFBookmarkTypeLeaf
(-[IFBookmarkLeaf _dictionaryRepresentation]): set value for bookmark type.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
Handle separator case.
(-[IFBookmarkList _dictionaryRepresentation]): set value for bookmark type
(-[IFBookmarkList bookmarkType]): return IFBookmarkTypeList
* Bookmarks.subproj/IFBookmarkSeparator.h: Added.
* Bookmarks.subproj/IFBookmarkSeparator.m: Added.
(-[IFBookmarkSeparator initWithGroup:]): Simple init method.
(-[IFBookmarkSeparator _initFromDictionaryRepresentation:withGroup:]): Just calls
initWithGroup.
(-[IFBookmarkSeparator _dictionaryRepresentation]): set value for bookmark type
(-[IFBookmarkSeparator bookmarkType]): return IFBookmarkTypeSeparator
(-[IFBookmarkSeparator copyWithZone:]): calls initWithGroup
* Bookmarks.subproj/IFBookmark_Private.h: Added key/value #defines for dictionary
representation.
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _setTopBookmark:]):
(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:type:]):
Update callers of isLeaf to use bookmarkType instead.
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:type:]):
if type is IFBookmarkTypeSeparator, instantiate an IFBookmarkSeparator
* WebKit.pbproj/project.pbxproj: Updated for new files.
2002-05-17 Chris Blumenberg <cblu@apple.com>
- Made IFPluginStream the URL handle client instead of IFPluginView.
- Added support for NPP_PostURL and NPP_PostNotify.
- Possible fix for 2928558.
* Plugins.subproj/IFPluginStream.h:
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):NSURL for url
instead of NSString
(-[IFPluginView dealloc]):
(-[IFPluginView setWindow]):
(-[IFPluginView start]):
(-[IFPluginView stop]):
(-[IFPluginView webDataSource]):Accessor for IFPluginStream.
(-[IFPluginView webController]):Accessor for IFPluginStream.
(-[IFPluginView URLForString:]):
(-[IFPluginView getURLNotify:target:notifyData:]):
(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]):
(-[IFPluginView postURL:target:len:buf:file:]):
(-[IFPluginView destroyStream:reason:]):
(-[IFPluginView status:]):
(-[IFPluginView NPP_NewStream]): Accessor for IFPluginStream.
(-[IFPluginView NPP_WriteReady]):Accessor for IFPluginStream.
(-[IFPluginView NPP_Write]): Accessor for IFPluginStream.
(-[IFPluginView NPP_StreamAsFile]): Accessor for IFPluginStream.
(-[IFPluginView NPP_DestroyStream]): Accessor for IFPluginStream.
(-[IFPluginView NPP_URLNotify]): Accessor for IFPluginStream.
* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Use new IFPluginView init method
(-[IFWebCoreViewFactory viewForPluginWithURL:serviceType:arguments:baseURL:]):
* WebKit.pbproj/project.pbxproj:
2002-05-16 Richard J. Williamson <rjw@apple.com>
Fixed 2925638. Don't send last progress message from resourceDataDidBecomeAvailable,
it is sent from IFURLHandleResourceDidFinishLoading, avoiding duplication.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-05-16 Richard J. Williamson <rjw@apple.com>
Fix to fix for 0x7f to 0xa0. I was being overly aggressive about
finding substitute glyphs.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer floatWidthForCharacters:length:]):
2002-05-16 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]):
Use this new getCarbonPath function rather than hardcoding assumptions
about "/tmp" being ":private:tmp".
(getCarbonPath): New.
2002-05-16 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
Fixed log statement so development builds work again.
2002-05-16 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView mouseUp:]):
Remove unused variable that breaks optimized builds.
2002-05-15 Darin Adler <darin@apple.com>
Another quick events cleanup pass.
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender sendNullEvents]): Use [IFPluginView getCarbonEvent:].
* Plugins.subproj/IFPluginView.h: Make almost all methods private.
* Plugins.subproj/IFPluginView.mm:
(+[IFPluginView getCarbonEvent:]): New.
(-[IFPluginView getCarbonEvent:]): New, calls class method.
(-[IFPluginView modifiersForEvent:isMouseDown:]): Reversed sense of btnState.
This flag is set if the mouse is up, not if the mouse is down.
(-[IFPluginView getCarbonEvent:withEvent:isMouseDown:]): New.
(-[IFPluginView getCarbonEvent:withEvent:]): New.
(-[IFPluginView sendActivateEvent:]): Now takes parameter for activate vs.
deactivate and uses [getCarbonEvent:].
(-[IFPluginView sendUpdateEvent]): Uses [getCarbonEvent:].
(-[IFPluginView becomeFirstResponder]): Uses [getCarbonEvent:].
(-[IFPluginView resignFirstResponder]): Uses [getCarbonEvent:].
(-[IFPluginView mouseDown:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
(-[IFPluginView mouseUp:]): Uses [getCarbonEvent:withEvent:isMouseDown:].
(-[IFPluginView mouseEntered:]): Uses [getCarbonEvent:withEvent:].
(-[IFPluginView mouseExited:]): Uses [getCarbonEvent:withEvent:].
(-[IFPluginView keyUp:]): Uses [getCarbonEvent:withEvent:].
(-[IFPluginView keyDown:]): Uses [getCarbonEvent:withEvent:].
(-[IFPluginView start]): Call [sendActivateEvent:YES].
(-[IFPluginView windowBecameKey:]): Call [sendActivateEvent:YES].
(-[IFPluginView windowResignedKey:]): Call [sendActivateEvent:NO].
2002-05-15 Richard J. Williamson <rjw@apple.com>
Fixed problem dealing w/ characters in range 0x7f - 0xa0.
* WebCoreSupport.subproj/IFTextRenderer.m:
(setGlyphForCharacter):
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer floatWidthForCharacters:length:]):
2002-05-15 Chris Blumenberg <cblu@apple.com>
Fixed Flash mouse-down, mouse-over Flash bug.
Added support for modifiers (control-click etc) (2884451).
A lot of events clean-up.
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender sendNullEvents]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(newCString):
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView start]):
(-[IFPluginView drawRect:]):
(-[IFPluginView isFlipped]):
(-[IFPluginView currentModifiers]):
(-[IFPluginView modifiersForEvent:isMouseDown:]):
(-[IFPluginView sendActivateEvent]):
(-[IFPluginView sendUpdateEvent]):
(-[IFPluginView becomeFirstResponder]):
(-[IFPluginView resignFirstResponder]):
(-[IFPluginView mouseDown:]):
(-[IFPluginView mouseUp:]):
(-[IFPluginView mouseEntered:]):
(-[IFPluginView mouseExited:]):
(-[IFPluginView keyUp:]):
(-[IFPluginView keyDown:]):
(-[IFPluginView windowBecameKey:]):
(-[IFPluginView windowResignedKey:]):
Case-sensitivity issue with an include.
* WebView.subproj/IFWebView.mm:
2002-05-15 Darin Adler <darin@apple.com>
* Makefile.am:
Use all-am and clean-am instead of all and clean because it's better and
to make "make check" at the top level work right.
2002-05-14 John Sullivan <sullivan@apple.com>
Work to support copying bookmarks, needed for drag & drop
in Bookmarks window.
* Bookmarks.subproj/IFBookmark.h: Make IFBookmark conform to NSCopying.
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark copyWithZone:]): insist that subclasses implement this.
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
Removed this unnecessary method.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf copyWithZone:]): New method.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList copyWithZone:]): New method.
2002-05-14 Richard J. Williamson <rjw@apple.com>
Fixed exception in log code.
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer floatWidthForCharacters:length:]):
2002-05-14 Richard J. Williamson <rjw@apple.com>
Fixed 2926153, not getting correct messages after cancel.
Fixed leak of mouse events (Darin wanted this ASAP).
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFLocationChangeHandler.h:
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]):
(-[IFWebView layout]):
(-[IFWebView mouseUp:]):
(-[IFWebView mouseDown:]):
(-[IFWebView mouseMovedNotification:]):
2002-05-14 Chris Blumenberg <cblu@apple.com>
Removed retain of the URL handle. This was causing everything to leak.
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient initWithDataSource:part:]):
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
(-[IFMainURLHandleClient processData:isComplete:]):
2002-05-14 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]):
Remove code that makes us the first responder. That's up to the higher levels,
not the web view.
2002-05-14 John Sullivan <sullivan@apple.com>
* History.subproj/IFURIEntry.h:
Oops, deleted the prototype for setLastVisitedDate
accidentally, which made Jersey sad.
2002-05-14 John Sullivan <sullivan@apple.com>
Fixed 2919027 -- Need to remove unused code in WebKit/History.subproj
* History.subproj/IFAttributedURL.h: Removed.
* History.subproj/IFBackForwardList.h: Removed large #ifdef.
* History.subproj/IFURIEntry.h,
* History.subproj/IFURIEntry.m: Removed all mention of unused
fields comment, creationDate, modificationDate
* WebKit.pbproj/project.pbxproj: Updated for removed file.
2002-05-13 Chris Blumenberg <cblu@apple.com>
Added support for setting the content policy on the location change handler
and data source at any time instead of depending on an immediate response.
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient initWithDataSource:part:]):
(-[IFMainURLHandleClient dealloc]):
(-[IFMainURLHandleClient setContentPolicy:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
(-[IFMainURLHandleClient IFURLHandle:didRedirectToURL:]):
(-[IFMainURLHandleClient processData:isComplete:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _setContentPolicy:]):
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
2002-05-13 Maciej Stachowiak <mjs@apple.com>
* WebKitPrefix.h: Gratuitous change to make the prefix file
rebuild.
2002-05-13 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController URLPolicyForURL:]):
Use [IFURLHandle canInitWithURL] instead of hard-coded URL schemes.
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate init]):
(-[IFWebDataSource _setDownloadPath:]):
Removed _contentPolicy as contentPolicy is public.
Initialize contentPolicy in [IFWebDataSourcePrivate init].
2002-05-10 Richard J. Williamson <rjw@apple.com>
Logging changes.
* WebCoreSupport.subproj/IFTextRenderer.m:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource isLoading]):
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-05-10 Chris Blumenberg <cblu@apple.com>
Added support for non-html non-file URL data sources.
Added the init methods below. Removed initWithHandle.
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(IFWebDataSourceMake):
(-[IFWebDataSource initWithURL:]):
(-[IFWebDataSource initWithURL:attributes:]):
(-[IFWebDataSource startLoading:]):
2002-05-10 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFTextRenderer.h: Moved most of the
stuff from here into the .m file so this header can be included
by clients. Also added floatWidthForCharacters:length:.
* WebCoreSupport.subproj/IFTextRenderer.m:
(freeWidthMap): Check for NULL.
(freeGlyphMap): Check for NULL.
(-[IFTextRenderer slowFloatWidthForCharacters:length:]): Renamed,
and made it return the float.
(-[IFTextRenderer floatWidthForCharacters:length:]): Renamed, and
made it return the float.
(-[IFTextRenderer widthForCharacters:length:]): Do rounding here.
* WebCoreSupport.subproj/IFTextRendererFactory.h:
* WebCoreSupport.subproj/IFTextRendererFactory.m:
Make the interface slightly easier to use by using the specific types.
* WebKit.pbproj/project.pbxproj: Exported the headers.
2002-05-10 Kenneth Kocienda <kocienda@apple.com>
Fixed build breakage caused by my previous checkin.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:])
2002-05-10 John Sullivan <sullivan@apple.com>
Fixed 2922756 (@ image in History window is a little too tall)
Fixed 2923790 (bookmark folders need folder icons)
* Resources/bookmark_folder.tiff: New image (small folder, copied from elsewhere)
* Resources/url_icon.tiff: Shrunk this one a little bit.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList image]): Return the default image if no custom image is set.
* History.subproj/IFURIEntry.m:
(-[IFURIEntry image]): If the default image's file isn't found, don't try
to create an NSImage, because it will come out horribly broken and evil if
you do (I ran into this while adding the bookmark folder image; most of Alexander's
menus did not appear at all because the bookmark folder image was using a bogus
NSImage).
* WebKit.pbproj/project.pbxproj: Updated for new files.
2002-05-10 Kenneth Kocienda <kocienda@apple.com>
Reviewed by: Maciej Stachowiak
This code was modified to use the new interface and features of IFError.
These features and changes are described in these four bug reports:
Radar 2923998 (Change IFError private data into a pointer to a private data object)
Radar 2924002 (IFError should include an error domain)
Radar 2924013 (IFError initialization is not threadsafe)
Radar 2924280 (IFError should contain a new field which tells whether the error is terminal)
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-05-09 Richard J. Williamson <rjw@apple.com>
Tuned implementation more. Cleaned up and factored code.
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(-[IFTextRenderer substituteFontForString:]):
(-[IFTextRenderer substituteFontForCharacters:length:]):
(-[IFTextRenderer initWithFont:]):
(-[IFTextRenderer dealloc]):
(-[IFTextRenderer slowPackGlyphsForCharacters:numCharacters:glyphBuffer:numGlyphs:]):
(-[IFTextRenderer drawString:atPoint:withColor:]):
(-[IFTextRenderer drawCharacters:length:atPoint:withColor:]):
(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
(-[IFTextRenderer slowWidthForCharacters:length:]):
(-[IFTextRenderer widthForCharacters:length:]):
(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):
2002-05-09 John Sullivan <sullivan@apple.com>
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
Gave these two methods return values of the new bookmark created, to make callers'
lives easier.
=== Alexander-3 ===
2002-05-08 Richard J. Williamson <rjw@apple.com>
Added optimizations for text rendering.
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(freeWidthMap):
(freeGlyphMap):
(glyphForCharacter):
(widthForGlyph):
(widthForCharacter):
(-[IFTextRenderer substituteFontForCharacters:length:]):
(-[IFTextRenderer convertCharacters:length:glyphs:]):
(-[IFTextRenderer dealloc]):
(-[IFTextRenderer drawString:atPoint:withColor:]):
(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
(-[IFTextRenderer widthForCharacters:length:]):
(-[IFTextRenderer extendCharacterToGlyphMapToInclude:]):
(-[IFTextRenderer extendGlyphToWidthMapToInclude:]):
2002-05-08 Darin Adler <darin@apple.com>
* Misc.subproj/IFCache.h: Add more JavaScript object statistics.
* Misc.subproj/IFCache.mm:
(+[IFCache javaScriptInterpretersCount]): New.
(+[IFCache javaScriptNoGCAllowedObjectsCount]): New.
(+[IFCache javaScriptReferencedObjectsCount]): New.
* WebKit.pbproj/project.pbxproj: Rearranged two files, dunno why.
2002-05-08 Chris Blumenberg <cblu@apple.com>
Cleaned up mach-o plug-in support.
Changed the init method in IFPlugin to initWithPath.
* Plugins.subproj/IFPlugin.h:
* Plugins.subproj/IFPlugin.m:
(-[IFPlugin initWithPath:]):
(-[IFPlugin load]):
* Plugins.subproj/IFPluginDatabase.m:
(findPlugins):
2002-05-08 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
Use _IF_stringByTrimmingWhitespace.
2002-05-07 Richard J. Williamson <rjw@apple.com>
First pass at font substitution. Find a substitute font to
use when the specified font doesn't have glyphs for the characters that
need to be drawn.
Works correctly but hasn't been optimized yet, VERY slow.
Will optimize this evening and tomorrow. Try www.yahoo.co.jp,
it will take a long time to render be eventually will draw correctly.
* WebCoreSupport.subproj/IFTextRenderer.h:
* WebCoreSupport.subproj/IFTextRenderer.m:
(hasMissingGlyphs):
(+[IFTextRenderer initialize]):
(-[IFTextRenderer convertCharacters:length:glyphs:]):
(-[IFTextRenderer initializeCaches]):
(-[IFTextRenderer drawString:atPoint:withColor:]):
(-[IFTextRenderer drawUnderlineForString:atPoint:withColor:]):
(-[IFTextRenderer widthForCharacters:length:]):
2002-05-07 Darin Adler <darin@apple.com>
Oops. These files don't belong at the top level.
* IFWebCoreViewFactory.h: Removed.
* IFWebCoreViewFactory.m: Removed.
* WebCoreSupport.subproj/IFWebCoreViewFactory.h: Added.
* WebCoreSupport.subproj/IFWebCoreViewFactory.m: Added.
* WebKit.pbproj/project.pbxproj:
2002-05-07 Darin Adler <darin@apple.com>
Move more plugin code here from WebCore.
* IFWebCoreViewFactory.h: Added.
* IFWebCoreViewFactory.m: Added.
* Plugins.subproj/IFPlugin.h: Moved from WebCore.
* Plugins.subproj/IFPlugin.m: Moved from WebCore.
* Plugins.subproj/IFPluginDatabase.h: Moved from WebCore.
* Plugins.subproj/IFPluginDatabase.m: Moved from WebCore.
* Plugins.subproj/npapi.h: Moved from WebCore.
* Plugins.subproj/npapi.m: Moved from WebCore.
* WebKit.pbproj/project.pbxproj: Source file names changed
* MIME.subproj/IFMIMEDatabase.m:
* MIME.subproj/IFMIMEHandler.m:
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
Updated for WC -> IF name change.
* WebCoreSupport.subproj/IFCachedTextRenderer.h: Renamed to IFTextRenderer.
* WebCoreSupport.subproj/IFCachedTextRenderer.m: Renamed to IFTextRenderer.
* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Renamed to IFTextRendererFactory.
* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Renamed to IFTextRendererFactory.
* WebCoreSupport.subproj/IFTextRenderer.h: Renamed from IFCachedTextRenderer.
* WebCoreSupport.subproj/IFTextRenderer.m: Renamed from IFCachedTextRenderer.
* WebCoreSupport.subproj/IFTextRendererFactory.h: Renamed from IFCachedTextRendererFactory.
* WebCoreSupport.subproj/IFTextRendererFactory.m: Renamed from IFCachedTextRendererFactory.
Renamed to take "Cached" out of the name now that the simpler name is
available.
* WebView.subproj/IFWebView.mm:
(-[IFWebView initWithFrame:]): Create shared IFWebCoreViewFactory.
(-[IFWebView delayLayout:]): Use WEBKITDEBUG, not KWQDEBUG.
(-[IFWebView notificationReceived:]): Use WEBKITDEBUG, not KWQDEBUG.
2002-05-07 Darin Adler <darin@apple.com>
Use isEqualToString: instead of isEqual: more consistently. But only for strings.
* WebCoreSupport.subproj/IFCachedTextRendererFactory.m:
(-[IFFontCacheKey isEqual:]):
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController _frameNamed:fromFrame:]):
2002-05-06 John Sullivan <sullivan@apple.com>
Some improvements to the bookmark changed notifications.
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _sendChangeNotificationForBookmark:childrenChanged:]):
(-[IFBookmarkGroup _setTopBookmark:]):
(-[IFBookmarkGroup _bookmarkDidChange:]):
(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
Send bookmark that changed and whether its children changed as part of
change notifications, so clients can choose to do less unnecessary work.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf setTitle:]): Check for the no-change case
and bail out without sending notification when you find it.
2002-05-06 Darin Adler <darin@apple.com>
* WebKitPrefix.h: Added.
* WebKit.pbproj/project.pbxproj: Use PFE precompiling.
Also switch from xNDEBUG to NDEBUG.
* Misc.subproj/WebKitDebug.h: Get rid of format attribute because of bug
2920557. Switch from xNDEBUG to NDEBUG.
* Misc.subproj/WebKitDebug.m:
Add undef to work around PFE problem with inline functions, Radar 2920554.
* Plugins.subproj/IFPluginView.mm: Changed how we work around the bug in
the CGS defines.
* WebCoreSupport.subproj/IFCachedTextRenderer.h: Change include of the
private QD header to use the form that works with more-normal way of
getting at the private bits of frameworks.
* WebCoreSupport.subproj/IFCachedTextRenderer.m: Use the header
<CoreGraphics/CoreGraphicsPrivate.h> instead of <CoreGraphics/CGFontPrivate.h>.
* Misc.subproj/IFCache.mm:
* WebView.subproj/IFLoadProgress.mm:
* WebView.subproj/IFWebFrame.mm:
* WebView.subproj/IFWebFramePrivate.mm:
* WebView.subproj/IFWebView.mm:
Changed includes to imports.
2002-05-06 Chris Blumenberg <cblu@apple.com>
Made start and stop work cleaner.
Now observe defaults changes so that plug-ins
are disabled or enabled immediately (2871725).
* Plugins.subproj/IFPluginNullEventSender.m:
(-[IFPluginNullEventSender sendNullEvents]):
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
(-[IFPluginView start]):
(-[IFPluginView stop]):
(-[IFPluginView drawRect:]):
(-[IFPluginView windowWillClose:]):
(-[IFPluginView defaultsHaveChanged:]):
2002-05-06 Richard J. Williamson <rjw@apple.com>
Fixed width measurement regression. We lost the final ROUND_TO_INT
in the width measurement funtion after the move from WebCore.
* WebCoreSupport.subproj/IFCachedTextRenderer.m:
(-[IFCachedTextRenderer widthForCharacters:length:]):
2002-05-06 Richard J. Williamson <rjw@apple.com>
Changes to support dhtml.
* WebView.subproj/IFWebView.mm:
2002-05-06 John Sullivan <sullivan@apple.com>
* Resources/url_icon.tiff: New bookmarks/history icon, looks
more like the springy @ sign as seen from above, less like text.
2002-05-03 John Sullivan <sullivan@apple.com>
Along with small corresponding WebBrowser change,
fixed 2919172 (Bookmarks aren't saved between sessions).
* Bookmarks.subproj/IFBookmark_Private.h: Declarations for new private methods.
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark _numberOfDescendants]): New private method, counts deep; used
only for debugging messages at this time.
(-[IFBookmark _initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmark _dictionaryRepresentation]): New private methods used to save/load
bookmarks. Stub implementations; subclasses must implement.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf _initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmarkLeaf _dictionaryRepresentation]): New methods.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList _initFromDictionaryRepresentation:withGroup:]):
(-[IFBookmarkList _dictionaryRepresentation]):
(-[IFBookmarkList _numberOfDescendants]):
New methods.
(-[IFBookmarkList _setGroup:]): Recurse on children.
* Bookmarks.subproj/IFBookmarkGroup.h: New _loading instance variable.
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _setTopBookmark:]): Renamed from _resetTopBookmark,
now has potentially non-nil argument.
(-[IFBookmarkGroup initWithFile:]),
(-[IFBookmarkGroup removeBookmark:]): Updated for name change.
(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
Don't send notifications while loading bookmarks from disk.
(-[IFBookmarkGroup _loadBookmarkGroupGuts]),
(-[IFBookmarkGroup loadBookmarkGroup]),
(-[IFBookmarkGroup _saveBookmarkGroupGuts]),
(-[IFBookmarkGroup saveBookmarkGroup]): New methods, load/save bookmarks
and report timings.
* History.subproj/IFURIEntry.m:
(-[IFURIEntry dictionaryRepresentation]),
(-[IFURIEntry initFromDictionaryRepresentation:]): Handle nil URL
case, which bookmarks run into.
* WebKit.pbproj/project.pbxproj: version wars
2002-05-03 Darin Adler <darin@apple.com>
* WebCoreSupport.subproj/IFCachedTextRenderer.m: Remove some of the unused code.
I was going to wait and let Richard do it next week, but I was unable to control
my urge to hack on it.
2002-05-03 Darin Adler <darin@apple.com>
* Resources/url_icon.tiff: Improved icon. Could be better.
2002-05-03 Darin Adler <darin@apple.com>
* Misc.subproj/WebKitDebug.h: Add WEBKIT_LOG_MEMUSAGE, WEBKIT_LOG_FONTCACHE, and
WEBKIT_LOG_FONTCACHECHARMISS for font code moved here from WebCore.
* Resources/url_icon.tiff: New URL icon?
* WebCoreSupport.subproj/IFCachedTextRenderer.h: Added.
* WebCoreSupport.subproj/IFCachedTextRenderer.m: Added.
* WebCoreSupport.subproj/IFCachedTextRendererFactory.h: Added.
* WebCoreSupport.subproj/IFCachedTextRendererFactory.m: Added.
This has code moved here from WebCore.
* WebKit.pbproj/project.pbxproj: Add the new source files.
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf setURLString:]): Use copy instead of initWithString.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList initWithTitle:image:group:]): Use copy instead of stringWithString.
(-[IFBookmarkList setTitle:]): Use copy instead of stringWithString.
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
Use mutableCopy instead of stringWithString.
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]): Use copy instead
of stringWithString.
2002-05-02 John Sullivan <sullivan@apple.com>
Changed API such that mutating methods can now be called on bookmark objects,
which in turn tell their group that they have changed (so the group can send
out notifications).
* Bookmarks.subproj/IFBookmark.h:
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark setTitle:]):
(-[IFBookmark setImage:]):
(-[IFBookmark setURLString:]):
(-[IFBookmark insertChild:atIndex:]):
(-[IFBookmark removeChild:]):
(-[IFBookmark _parent]):
(-[IFBookmark _group]):
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _resetTopBookmark]):
(-[IFBookmarkGroup _bookmarkDidChange:]):
(-[IFBookmarkGroup _bookmarkChildrenDidChange:]):
(-[IFBookmarkGroup removeBookmark:]):
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf setTitle:]):
(-[IFBookmarkLeaf setImage:]):
(-[IFBookmarkLeaf setURLString:]):
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList setTitle:]):
(-[IFBookmarkList setImage:]):
(-[IFBookmarkList removeChild:]):
(-[IFBookmarkList insertChild:atIndex:]):
* Bookmarks.subproj/IFBookmark_Private.h:
Made _parent and _group private; made setTitle, setImage, setURLString,
insertChild:atIndex:, and removeChild: public.
* Bookmarks.subproj/IFBookmarkGroup_Private.h: Added.
* WebKit.pbproj/project.pbxproj: Changed for new file.
2002-05-02 John Sullivan <sullivan@apple.com>
Implemented removing the root node bookmark (i.e.,
removing all bookmarks with one call).
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _resetTopBookmark]): New method, releases
old topBookmark and creates new one.
(-[IFBookmarkGroup initWithFile:]): Call _resetTopBookmark.
(-[IFBookmarkGroup removeBookmark:]): If the bookmark being
removed is the top one, call _resetTopBookmark.
2002-05-02 John Sullivan <sullivan@apple.com>
Some more implementation of bookmarks code, enough to support
adding bookmarks to the Bookmarks menu (but not yet enough to
support persistent bookmarks).
* Bookmarks.subproj/IFBookmark_Private.h:
* Bookmarks.subproj/IFBookmark.h:
* Bookmarks.subproj/IFBookmark.m:
(-[IFBookmark numberOfChildren]): New public method, stub implementation.
(-[IFBookmark _removeChild:]): New private method, stub implementation.
* Bookmarks.subproj/IFBookmarkGroup.h:
* Bookmarks.subproj/IFBookmarkGroup.m:
(-[IFBookmarkGroup _sendBookmarkGroupChangedNotification]):
(-[IFBookmarkGroup removeBookmark:]):
(-[IFBookmarkGroup addNewBookmarkToBookmark:withTitle:image:URLString:isLeaf:]):
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:withTitle:image:URLString:isLeaf:]):
(-[IFBookmarkGroup updateBookmark:title:image:URLString:]):
Changed "URL" to "URLString" in several places, added a "with"
to some parameter names; added addNewBookmarkToBookmark public
method; added notification that's sent when bookmarks are added or removed.
* Bookmarks.subproj/IFBookmarkLeaf.h:
* Bookmarks.subproj/IFBookmarkLeaf.m:
(-[IFBookmarkLeaf initWithURLString:title:image:group:]):
Added image parameter.
* Bookmarks.subproj/IFBookmarkList.m:
(-[IFBookmarkList numberOfChildren]): New method.
(-[IFBookmarkList _removeChild:]): Implemented.
2002-04-30 John Sullivan <sullivan@apple.com>
Added initial set of files/API and some of the code for
bookmarks support. Nobody calls it yet, but it compiles.
I wanted to get this in before I ran into project file
merge conflicts.
* Bookmarks.subproj/IFBookmark.h: Added.
* Bookmarks.subproj/IFBookmark_Private.h: Added.
* Bookmarks.subproj/IFBookmark.m: Added.
(-[IFBookmark dealloc]):
(-[IFBookmark title]):
(-[IFBookmark _setTitle:]):
(-[IFBookmark image]):
(-[IFBookmark _setImage:]):
(-[IFBookmark isLeaf]):
(-[IFBookmark URLString]):
(-[IFBookmark _setURLString:]):
(-[IFBookmark children]):
(-[IFBookmark _insertChild:atIndex:]):
(-[IFBookmark parent]):
(-[IFBookmark _setParent:]):
(-[IFBookmark group]):
(-[IFBookmark _setGroup:]):
* Bookmarks.subproj/IFBookmarkGroup.h: Added.
* Bookmarks.subproj/IFBookmarkGroup.m: Added.
(+[IFBookmarkGroup bookmarkGroupWithFile:]):
(-[IFBookmarkGroup initWithFile:]):
(-[IFBookmarkGroup dealloc]):
(-[IFBookmarkGroup topBookmark]):
(-[IFBookmarkGroup insertBookmark:atIndex:ofBookmark:]):
(-[IFBookmarkGroup removeBookmark:]):
(-[IFBookmarkGroup insertNewBookmarkAtIndex:ofBookmark:title:image:URL:isLeaf:]):
(-[IFBookmarkGroup updateBookmark:title:image:URL:]):
(-[IFBookmarkGroup file]):
(-[IFBookmarkGroup loadBookmarkGroup]):
(-[IFBookmarkGroup saveBookmarkGroup]):
* Bookmarks.subproj/IFBookmarkLeaf.h: Added.
* Bookmarks.subproj/IFBookmarkLeaf.m: Added.
(-[IFBookmarkLeaf dealloc]):
(-[IFBookmarkLeaf title]):
(-[IFBookmarkLeaf _setTitle:]):
(-[IFBookmarkLeaf image]):
(-[IFBookmarkLeaf _setImage:]):
(-[IFBookmarkLeaf isLeaf]):
(-[IFBookmarkLeaf URLString]):
(-[IFBookmarkLeaf _setURLString:]):
* Bookmarks.subproj/IFBookmarkList.h: Added.
* Bookmarks.subproj/IFBookmarkList.m: Added.
(-[IFBookmarkList initWithTitle:image:group:]):
(-[IFBookmarkList dealloc]):
(-[IFBookmarkList title]):
(-[IFBookmarkList _setTitle:]):
(-[IFBookmarkList image]):
(-[IFBookmarkList _setImage:]):
(-[IFBookmarkList isLeaf]):
(-[IFBookmarkList children]):
(-[IFBookmarkList _insertChild:atIndex:]):
* WebKit.pbproj/project.pbxproj: Updated for new files.
2002-04-29 Richard Williamson <rjw@apple.com>
Fix to 2915688. I wasn't checking if the main document error had an error, only
the resource errors.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]):
2002-04-29 Richard Williamson <rjw@apple.com>
Restored file, line, and function to log messages.
* Misc.subproj/WebKitDebug.m:
(WebKitLog):
2002-04-25 Darin Adler <darin@apple.com>
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate _loadHistoryGuts:]): Use NSDictionary instead
of NSObject to avoid a cast.
* WebView.subproj/IFLocationChangeHandler.h: Add NSObject as a required
protocol so we can retain and release.
* WebView.subproj/IFWebController.h: Add NSObject as a required protocol
so we can retain and release.
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]):
(-[IFWebDataSource _setLoading:]):
(-[IFWebDataSource _setController:]):
(-[IFWebDataSource _setLocationChangeHandler:]):
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebViewPrivate dealloc]):
Removed NSObject * casts that were used to work around the problem fixed above.
2002-04-25 Chris Blumenberg <set EMAIL_ADDRESS environment variable>
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.mm:
(+[IFDownloadHandler launchURL:]):
Added the above method as a way to universally launch an URL
within WebKit
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController URLPolicyForURL:]):
We handle http, https and file URL's
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource initWithURL:]):
(-[IFWebDataSource startLoading:]):
The IFURLHandle is now lazilly allocated.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
We only load a data source if the URL policy is IFURLPolicyUseContentPolicy
2002-04-25 Richard Williamson <rjw@apple.com>
Fixed problem with errors potentially being reported on
wrong data source by moving collected errors from frame
to datasource.
Little changes in preparation for events.
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource errors]):
(-[IFWebDataSource mainDocumentError]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]):
(-[IFWebDataSource _startLoading:]):
(-[IFWebDataSource _setMainDocumentError:]):
(-[IFWebDataSource _clearErrors]):
(-[IFWebDataSource _addError:forResource:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame reload:]):
(-[IFWebFrame reset]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFramePrivate dealloc]):
(-[IFWebFrame _isLoadComplete]):
(-[IFWebFrame _checkLoadComplete]):
* WebView.subproj/IFWebView.mm:
(-[IFWebView acceptsFirstResponder]):
(-[IFWebView layout]):
(-[IFWebView drawRect:]):
2002-04-25 Darin Adler <darin@apple.com>
Rework plugin code to prepare to move more of here from WebCore.
* Plugins.subproj/IFPluginView.mm:
(IFPluginViewCreate): New. Does all the work of creating an NSView
for a plug-in, including stuff previously done in WebCore.
(IFJavaAppletViewCreate): Same as above, for Java applets.
(+[IFPluginView load]): Set up the function pointers using the new
improved WebCore API.
* Plugins.subproj/IFNullPluginView.mm:
(-[IFNullPluginView load]): Remove this setup because now there's
no separate call to set up a null plug-in.
2002-04-25 John Sullivan <sullivan@apple.com>
Fixed 2911915 (Exception in -[IFWebView mouseMoved])
* WebView.subproj/IFWebView.mm:
(-[IFWebView mouseDown:]): Changed "mouseUp" to "mouseDown"
in exception message.
(-[IFWebView mouseMoved:]): Removed bogus event-type checking
that caused this method to (always?) throw an exception when
invoked.
2002-04-24 Chris Blumenberg <cblu@apple.com>
Renamed [IFWebDataSource frame] to [IFWebDataSource webFrame]
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _receivedError:forResource:partialProgress:fromDataSource:]):
(-[IFBaseWebController _mainReceivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource webFrame]):
(-[IFWebDataSource frameName]):
(-[IFWebDataSource isLoading]):
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _startLoading:]):
(-[IFWebDataSource _setTitle:]):
2002-04-24 Richard Williamson <rjw@apple.com>
Changed ordering of messages so activity viewer doesn't get -1 bytesSoFar
for cancelled messages.
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]):
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
=== Alexander 0.3c2 (v1) ===
2002-04-23 Chris Blumenberg <cblu@apple.com>
* WebKit.pbproj/project.pbxproj:
Took IFDownloadHandler.h out of the public headers.
* WebView.subproj/IFLocationChangeHandler.h:
Removed deprecated methods.
* WebView.subproj/IFWebFrame.mm:
(-[IFWebFrame setProvisionalDataSource:]):
Don't call locationChangeStarted anymore.
2002-04-23 Chris Blumenberg <cblu@apple.com>
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.m: Removed.
* MIME.subproj/IFDownloadHandler.mm: Added.
(-[IFDownloadHandler initWithDataSource:]):
(-[IFDownloadHandler dealloc]):
* MIME.subproj/IFDownloadHandlerPrivate.h: Removed.
* MIME.subproj/IFDownloadHandlerPrivate.m: Removed.
Made IFDownloadHandler a private class that retains the data source
and saves the data to disk.
* WebKit.pbproj/project.pbxproj:
Removed IFDownloadHandlerPrivate
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
Only send locationChangeCommitted if its shown inline.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
Save data with IFDownloadHandler
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
If its a download, set the provisionalDataSource on the frame to nil.
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource webFrame]):
(-[IFWebDataSource pageTitle]):
(-[IFWebDataSource contentPolicy]):
Added some accessor methods. Spelling fix pageTitle.
2002-04-23 Kenneth Kocienda <kocienda@apple.com>
Reviewed by: Darin Adler
Fix for Radar 2908403 (Fix names in WebFoundation extensions code)
Extensions code in WebFoundation now is in its own namespace.
Where we have added categories to existing Foundation and AppKit
classes, the categories begin with the IF prefix. All method names
begin with the _IF_ prefix.
This file here was changed to use the new names.
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate findIndex:forDay:]):
(-[IFWebHistoryPrivate arrayRepresentation]):
(-[IFWebHistoryPrivate _loadHistoryGuts:]):
2002-04-22 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
Send an IFError when we're asked to show content we can't handle.
* WebView.subproj/IFWebDataSourcePrivate.mm:
Cleaning
2002-04-22 Chris Blumenberg <cblu@apple.com>
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
Fixed frames which I broke in the previous commit. We now set the content policy
on all child frames instead of just the main frame.
2002-04-22 Chris Blumenberg <cblu@apple.com>
* MIME.subproj/IFMIMEHandler.h:
* MIME.subproj/IFMIMEHandler.m:
(+[IFMIMEHandler showableMIMETypes]):
(+[IFMIMEHandler saveFileWithPath:andData:]):
(+[IFMIMEHandler saveAndOpenFileWithPath:andData:]):
Added the above factory methods.
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController haveContentPolicy:andPath:forLocationChangeHandler:]):
Save the content policy and download path on the datasource.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]):
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
Made IFMainURLHandleClient use our new content policy API rather than
IFDownloadHandler.
* WebView.subproj/IFWebController.h:
Removed some deprecated methods.
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSource _downloadPath]):
(-[IFWebDataSource _setDownloadPath:]):
(-[IFWebDataSource _contentPolicy]):
(-[IFWebDataSource _setContentPolicy:]):
Added the above methods.
2002-04-22 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
Fix the fix. It was bumping argsCount even when not putting an
argument into the array.
2002-04-21 Maciej Stachowiak <mjs@apple.com>
Fix a plugins memory trasher that was making Alexander crash on
the abcnews.com test page in cvs-torture-test:
* Plugins.subproj/IFPluginView.mm:
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]):
Use a new maxArguments variable to size the argument and value
arrays - with the old code argsCount would end up twice the size
it should be, and the arguments would all get written past the end
of the argument array.
2002-04-19 Kenneth Kocienda <kocienda@apple.com>
Changes to support submission of forms using HTTP POST.
These changes move us over to using the new WebKit interface for creating
WebDataSource instances, one that passes a handle rather than just a URL,
enabling the specific request method to be communicated to WebFoundation.
This fixes:
Radar 2903602 (IFWebDataSource API must passes attributes and flags to IFURLHandle)
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (-[IFWebDataSource
initWithURL:]), (-[IFWebDataSource initWithHandle:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
2002-04-19 Richard Williamson <rjw@apple.com>
Updated comments to reflect new API.
* WebView.subproj/IFLocationChangeHandler.h:
2002-04-19 Darin Adler <darin@apple.com>
* Plugins.subproj/IFPluginView.h: Re-add the attributes and values arrays,
since they need to live the life of the plugin.
* Plugins.subproj/IFPluginView.mm: (newCString): New function to make a C++
new-allocated C string from an NSString.
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Move code
to allocate the arrays back here.
(-[IFPluginView dealloc]): Deallocate the arrays and their contents.
(-[IFPluginView start]): Simplify now that it does no work.
2002-04-18 Chris Blumenberg <cblu@apple.com>
Made stop and start to work better. Fixed a bug darin made.
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
(-[IFPluginView start]), (-[IFPluginView stop]):
2002-04-18 Richard Williamson <rjw@apple.com>
Fixed typo.
* WebView.subproj/IFBaseLocationChangeHandler.m: (-[IFBaseLocationChangeHandler
requestContentPolicyForMIMEType:]):
* WebView.subproj/IFLocationChangeHandler.h:
2002-04-18 Richard Williamson <rjw@apple.com>
New API stubs for content policy.
* WebView.subproj/IFBaseLocationChangeHandler.h: Added.
* WebView.subproj/IFBaseLocationChangeHandler.m: Added.
(+[IFBaseLocationChangeHandler setGlobalContentPolicy:forMIMEType:]),
(+[IFBaseLocationChangeHandler globaContentPolicyForContentType:]),
(+[IFBaseLocationChangeHandler globalContentPolicies]),
(+[IFBaseLocationChangeHandler suggestedFileanemForURL:andContentType:]),
(+[IFBaseLocationChangeHandler suggestedDirectoryForURL:andContentType:]),
(+[IFBaseLocationChangeHandler extensionForURL:]), (-[IFBaseLocationChangeHandler
extension]), (-[IFBaseLocationChangeHandler locationWillChangeTo:]),
(-[IFBaseLocationChangeHandler locationChangeStarted]),
(-[IFBaseLocationChangeHandler locationChangeCommitted]),
(-[IFBaseLocationChangeHandler locationChangeDone:]),
(-[IFBaseLocationChangeHandler receivedPageTitle:forDataSource:]),
(-[IFBaseLocationChangeHandler serverRedirectTo:forDataSource:]),
(-[IFBaseLocationChangeHandler downloadingWithHandler:]),
(-[IFBaseLocationChangeHandler requestContentPolicyForContentMIMEType:]),
(-[IFBaseLocationChangeHandler unableToImplementContentPolicy:]):
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
receivedError:forDownloadHandler:partialProgress:]), (-[IFBaseWebController
provideLocationChangeHandlerForFrame:andURL:]), (-[IFBaseWebController
URLPolicyForURL:]), (-[IFBaseWebController
unableToImplementURLPolicyForURL:error:]), (-[IFBaseWebController
haveContentPolicy:andPath:forLocationChangeHandler:]):
* WebView.subproj/IFLocationChangeHandler.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):
2002-04-18 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
-Wmissing-prototypes.
2002-04-18 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Take out -Wmissing-prototypes
because system headers are triggering it when we don't have
precompiled headers on.
2002-04-18 Darin Adler <darin@apple.com>
Fixes for compiling with gcc3 and more warnings.
* WebKit.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
as in the rest of Labyrinth (see top level ChangeLog for details).
* Plugins.subproj/IFPluginView.mm:
Avoid warnings about malloc by not using it.
(-[IFPluginView initWithFrame:plugin:url:mime:arguments:mode:]): Keep the arguments
dictionary around instead of keeping the C format version of it around. Also don't
bother keeping the C string form of the MIME type around, and simplify some other
stuff in here.
(-[IFPluginView dealloc]): Corresponding changes since we keep a different set of things.
(-[IFPluginView newStream:mimeType:notifyData:]): Use [mimeType cString].
(-[IFPluginView start]): Build the lists of attributes and values in here. Do it using
[NSString cString] for simplicity and don't keep the lists around after we're done with
them.
(-[IFPluginView IFURLHandleResourceDidFinishLoading:data:]): Use [filenameClassic cString].
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandleResourceDidCancelLoading:]),
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]),
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _setLoading:]), (-[IFWebDataSource _setController:]),
(-[IFWebDataSource _setLocationChangeHandler:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
Add type casts required by pickier gcc3.
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]):
Add type cast required by pickier gcc3.
(-[IFWebView _stopPlugins]): Use local variable to work around Radar 2905835.
2002-04-18 Chris Blumenberg <cblu@apple.com>
Moved plugin instance creation to the start method in IFPluginView.
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
(-[IFPluginView stop]), (-[IFPluginView drawRect:]), (-[IFPluginView
windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
IFURLHandleResourceDidFinishLoading:data:]):
2002-04-17 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Update header search paths to find
WebCore in the new location and eliminate WebCore/include.
2002-04-17 Chris Blumenberg <cblu@apple.com>
Added a debug bit mask for plugins and downloads.
* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate
_openFile]), (-[IFDownloadHandlerPrivate _saveFile]), (-[IFDownloadHandler
_initWithURLHandle:mimeHandler:]):
* Misc.subproj/WebKitDebug.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView stop]),
(-[IFPluginView sendUpdateEvent]), (-[IFPluginView becomeFirstResponder]),
(-[IFPluginView resignFirstResponder]), (-[IFPluginView mouseDown:]),
(-[IFPluginView mouseUp:]), (-[IFPluginView mouseEntered:]), (-[IFPluginView
mouseExited:]), (-[IFPluginView keyUp:]), (-[IFPluginView keyDown:]),
(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
(-[IFPluginView postURLNotify:target:len:buf:file:notifyData:]), (-[IFPluginView
postURL:target:len:buf:file:]), (-[IFPluginView newStream:target:stream:]),
(-[IFPluginView write:len:buffer:]), (-[IFPluginView destroyStream:reason:]),
(-[IFPluginView status:]), (-[IFPluginView getValue:value:]), (-[IFPluginView
setValue:value:]), (-[IFPluginView invalidateRect:]), (-[IFPluginView
invalidateRegion:]), (-[IFPluginView forceRedraw]):
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-04-17 Darin Adler <darin@apple.com>
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
Changed another Georgia that I missed to Times New Roman.
2002-04-16 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebDataSource.mm:
* WebView.subproj/IFWebDataSourcePrivate.mm:
Touch these files to try to make Jersey build again.
2002-04-16 Darin Adler <darin@apple.com>
* WebView.subproj/IFBaseWebControllerPrivate.mm: Include khtml_part.h instead
of KWQKHTMLPart.h.
* WebView.subproj/IFWebFrame.mm: Include khtml_part.h instead of KWQKHTMLPart.h.
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource documentTextFromDOM]):
Remove an unneeded cast and an extra retain/autorelease.
2002-04-16 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
* WebView.subproj/IFWebFramePrivate.h:
Change view/setView back to be id, rather than IFWebView.
In the future, the view may be some other kind of object.
2002-04-16 John Sullivan <sullivan@apple.com>
Fixed bug Chris noticed where Alexander wasn't putting up
an error sheet on failed page visits.
* WebView.subproj/IFWebFramePrivate.mm:
(-[IFWebFrame _isLoadComplete]): Don't set provisionalDataSource
to nil until after sending it locationChangeDone.
2002-04-16 Darin Adler <darin@apple.com>
* WebView.subproj/IFBaseWebController.mm: Remove special release handling because
data sources now retain the controller as long as they are loading.
* WebView.subproj/IFWebDataSource.mm: Remove special release handling because
data sources now retain themselves as long as they are loading.
* WebView.subproj/IFWebFrame.mm: Remove special release handling, because
data sources now retain the controller as long as they are loading, and the
controller retains the frame.
* WebView.subproj/IFWebDataSourcePrivate.h: Add a "loading" boolean.
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setLoading:]):
Change the "loading" state, retaining or releasing this object and the controller
as necessary.
(-[IFWebDataSource _updateLoading]): Update the loading state; called when
some part of loading is done to see if it's all done.
(-[IFWebDataSource _setController:]): Retain the new controller and release the
old controller when loading.
(-[IFWebDataSource _setPrimaryLoadComplete:]): Call _updateLoading.
(-[IFWebDataSource _startLoading:]): Call _setLoading:YES.
(-[IFWebDataSource _addURLHandle:]): Call _setLoading:YES.
(-[IFWebDataSource _removeURLHandle:]): Call _updateLoading.
* WebView.subproj/IFWebFrame.h: Use the real type, IFWebView, for setView and view.
* WebView.subproj/IFWebFramePrivate.h: Formatting tweak.
* WebKit.pbproj/project.pbxproj: Version wars.
2002-04-16 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebViewPrivate.mm:
(-[IFWebView _setController:]): removed a mistaken
retain/release pair here for Darin.
2002-04-16 Darin Adler <darin@apple.com>
Change default font to "Times New Roman 11" rather than
"Georgia 12" to be more like Macintosh Internet Explorer.
* WebView.subproj/IFPreferences.mm:
A little simplifying of private pointers.
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.m:
2002-04-16 Darin Adler <darin@apple.com>
A little simplifying of private pointers.
* MIME.subproj/IFDownloadHandler.m:
* MIME.subproj/IFDownloadHandlerPrivate.m:
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
* WebView.subproj/IFWebDataSourcePrivate.mm:
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
* WebView.subproj/IFWebFramePrivate.mm:
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
2002-04-16 Darin Adler <darin@apple.com>
Change headers so they don't include so much.
Also change IF_LOAD_TYPE to IFLoadType.
* History.subproj/IFBackForwardList.h:
* History.subproj/IFBackForwardList.m:
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIList.h:
* History.subproj/IFURIList.m:
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistoryPrivate.h:
* History.subproj/IFWebHistoryPrivate.m:
* MIME.subproj/IFContentHandler.h:
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandlerPrivate.h:
* MIME.subproj/IFDownloadHandlerPrivate.m:
* MIME.subproj/IFMIMEDatabase.h:
* MIME.subproj/IFMIMEDatabase.m:
* Misc.subproj/IFException.h:
* Plugins.subproj/IFNullPluginView.mm:
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFLoadProgress.h:
* WebView.subproj/IFLoadProgress.mm:
* WebView.subproj/IFLocationChangeHandler.h:
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm:
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFPreferencesPrivate.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm:
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm:
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
2002-04-16 Kenneth Kocienda <kocienda@apple.com>
Moved IFError class from WebKit to WebFoundation.
Updated includes due to this change.
Updated URL handle client interface to pass an IFError in
an error callback rather than a plain int. The URL client was
modified due to this change.
* Misc.subproj/IFError.h: Removed.
* Misc.subproj/IFError.m: Removed.
* Plugins.subproj/IFPluginView.mm:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebView.subproj/IFWebFramePrivate.mm:
2002-04-15 Darin Adler <darin@apple.com>
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Remove the old
WebKitFontSizes preference.
(-[IFPreferences mediumFontSize]), (-[IFPreferences setMediumFontSize:]): New.
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]): Call
updateStyleSelector() instead of recalcStyle().
2002-04-15 Darin Adler <darin@apple.com>
Merged changes from previous merge branch.
2002-03-25 Darin Adler <darin@apple.com>
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
Add WebKitMediumFontSizePreferenceKey.
2002-04-15 John Sullivan <sullivan@apple.com>
* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView drawRect:]):
Moved a line of code to prevent pluginNotFound message from being
sent twice.
2002-04-15 Richard Williamson <rjw@apple.com>
Changes to IFLocationChangeHandler.
Experimental allocator code, not to be used, not thread safe.!
* Misc.subproj/WebKitDebug.h:
* Misc.subproj/WebKitDebug.m: (if_check_zone), (_debugAllocate),
(_debugAllocatorInitialize), (printDebugMallocCounters), (if_cf_retain),
(if_cf_release), (if_cf_alloc), (if_cf_realloc), (if_cf_dealloc),
(if_cf_preferredSize), (setupDebugMalloc), (clearDebugMalloc),
(resetDebugMallocCounters), (public_mALLOc), (public_fREe), (public_rEALLOc),
(public_mEMALIGn), (public_vALLOc), (public_pVALLOc), (public_cALLOc),
(public_iCALLOc), (public_iCOMALLOc), (public_cFREe), (public_mTRIm),
(public_mUSABLe), (public_mSTATs), (public_mALLINFo), (public_mALLOPt),
(do_check_malloc_state), (mALLINFo), (mSTATs), (if_size), (if_valloc),
(if_malloc), (if_realloc), (if_calloc), (if_free):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
provideLocationChangeHandlerForFrame:]):
* WebView.subproj/IFLocationChangeHandler.h: Added.
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource load]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _setTitle:]),
(-[IFWebDataSource _locationChangeHandler]), (-[IFWebDataSource
_setLocationChangeHandler:]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _isLoadComplete]):
2002-04-15 Chris Blumenberg <set EMAIL_ADDRESS environment variable>
* MIME.subproj/IFContentHandler.m: (-[IFContentHandler HTMLDocument]):
Made sure I didn't unnecessarily allocate html document strings
* MIME.subproj/IFDownloadHandler.h:
* MIME.subproj/IFDownloadHandler.m: (-[IFDownloadHandler suggestedFilename]),
(-[IFDownloadHandler openAfterDownload:]):
Added the mentioned API's
* MIME.subproj/IFDownloadHandlerPrivate.h:
* MIME.subproj/IFDownloadHandlerPrivate.m: (-[IFDownloadHandlerPrivate init]),
(-[IFDownloadHandlerPrivate dealloc]), (-[IFDownloadHandlerPrivate
_suggestedFilename]), (-[IFDownloadHandlerPrivate _cancelDownload]),
(-[IFDownloadHandlerPrivate _storeAtPath:]), (-[IFDownloadHandlerPrivate
_finishedDownload]), (-[IFDownloadHandlerPrivate _openAfterDownload:]),
(-[IFDownloadHandlerPrivate _openFile]), (-[IFDownloadHandlerPrivate _saveFile]),
(-[IFDownloadHandler _initWithURLHandle:mimeHandler:]):
Cleaned up and added a lot error checking code to IFDownloadHandlerPrivate
* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):
Made sure I didn't unnecessarily allocate images
* Resources/plugin_document_template.html:
Plugins now have 100% of the window
2002-04-12 Chris Blumenberg <cblu@apple.com>
Fixed build failure. Forgot to make IFDownloadHandler.h
a public header.
* WebKit.pbproj/project.pbxproj:
2002-04-12 Chris Blumenberg <cblu@apple.com>
First implementation of IFDownloadHandler and IFDownloadHandlerPrivate.
2002-04-11 Chris Blumenberg <cblu@apple.com>
Added support for non-html content. Non-html content is embedded in a
contrived HTML document.
* English.lproj/IFError.strings:
* MIME.subproj/IFContentHandler.h: Added.
* MIME.subproj/IFContentHandler.m: Added.
(-[IFContentHandler initWithMIMEHandler:URL:]), (-[IFContentHandler
HTMLDocument]), (-[IFContentHandler dealloc]):
* MIME.subproj/IFMIMEDatabase.h:
* MIME.subproj/IFMIMEDatabase.m: (-[IFMIMEDatabase MIMEHandlerForMIMEType:]),
(setMimeHandlers):
* MIME.subproj/IFMIMEHandler.h:
* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler description]):
* Misc.subproj/IFError.h:
* Misc.subproj/IFError.m: (+[IFError initialize]):
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView dealloc]),
(-[IFPluginView stop]):
* Resources/plugin_document_template.html: Added.
* Resources/text_document_template.html: Added.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]),
(-[IFMainURLHandleClient IFURLHandleResourceDidFinishLoading:data:]),
(-[IFMainURLHandleClient IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-04-10 Chris Blumenberg <cblu@apple.com>
Cleaned up stream deallocations.
* Plugins.subproj/IFPluginStream.h:
* Plugins.subproj/IFPluginStream.m: (-[IFPluginStream
initWithURL:mimeType:notifyData:]), (-[IFPluginStream incrementOffset:]),
(-[IFPluginStream dealloc]):
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
newStream:mimeType:notifyData:]), (-[IFPluginView
IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
IFURLHandle:resourceDidFailLoadingWithResult:]):
2002-04-10 John Sullivan <sullivan@apple.com>
Fixed 2891396 -- window fills with garbage if you resize or hide/show toolbar
before loading first page
* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):
Made webview fill rect with white if there's no widget.
2002-04-09 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView start]),
(-[IFPluginView stop]), (-[IFPluginView dealloc]), (-[IFPluginView
findSuperview:]), (-[IFPluginView sendUpdateEvent]), (-[IFPluginView drawRect:]),
(-[IFPluginView isFlipped]), (-[IFPluginView viewHasMoved:]), (-[IFPluginView
windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
windowWillClose:]), (-[IFPluginView IFURLHandleResourceDidBeginLoading:]),
(-[IFPluginView IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
IFURLHandle:didRedirectToURL:]), (-[IFPluginView forceRedraw]), (IFPluginMake),
(+[IFPluginView load]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFLoadProgress.h:
Cleaned up the IFPluginView code. Moved a lot of things around.
Added support for plug-in file download progress.
2002-04-08 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView drawRect:]),
(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
getURLNotify:target:notifyData:]):
Support new stream requests from plug-ins that are relative URL's.
2002-04-08 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Re-added -Wno-format-y2k.
2002-04-08 Richard Williamson <rjw@apple.com>
Added logs for Shelley to note start and completion of document load.
-WebKitLogLevel 0x1000. Also, as a bonus, note time to load.
* Misc.subproj/WebKitDebug.h:
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setState:]):
2002-04-08 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFNullPluginView.h:
* Plugins.subproj/IFNullPluginView.mm: (-[IFNullPluginView
initWithFrame:mimeType:arguments:]), (-[IFNullPluginView drawRect:]):
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
pluginNotFoundForMIMEType:pluginPageURL:]):
* WebView.subproj/IFWebController.h:
Added pluginNotFoundForMIMEType: pluginPageURL: to WebKit. This gets called
by IFNullPluginView when a plug-in for a certain mime type is requested but
not installed.
2002-04-08 Richard Williamson <rjw@apple.com>
Added frameForView:
Cleaned up out-of-date comments.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
_frameForView:fromFrame:]), (-[IFBaseWebController frameForView:]):
* WebView.subproj/IFWebController.h:
2002-04-05 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFNullPluginView.mm: (+[IFNullPluginView load]):
Enabled the below.
2002-04-05 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFNullPluginView.h: Added.
* Plugins.subproj/IFNullPluginView.mm: Added.
(-[IFNullPluginView initWithFrame:mimeType:arguments:]), (-[IFNullPluginView
findSuperview:]), (-[IFNullPluginView drawRect:]):
* Resources/nullplugin.tiff: Added.
* WebKit.pbproj/project.pbxproj:
An IFNullPluginView is now created when no plug-in for a requested
mime type is found. IFNullPluginView displays a null plug-in icon
and will eventually report this error to the WebController.
2002-04-05 Richard Williamson <rjw@apple.com>
Back out some changes to lazily dealloc frame.
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame release]):
2002-04-05 Richard Williamson <rjw@apple.com>
New method on controller to find a frame of a particular name
anywhere in the frame hierarchy.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
initWithView:provisionalDataSource:]), (-[IFBaseWebController
_frameNamed:fromFrame:]), (-[IFBaseWebController frameNamed:]):
* WebView.subproj/IFWebController.h:
2002-04-05 Darin Adler <darin@apple.com>
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
Use contentLengthReceived rather than getting the length of
availableResourceData to determine how much data has arrived.
2002-04-05 Richard Williamson <rjw@apple.com>
Implemented the same lazily deallocation scheme on frame as in controller
and data source.
* WebView.subproj/IFWebFrame.mm: (-[_IFFrameHolder initWithObject:]),
(-[_IFFrameHolder _checkReadyToDealloc:]), (-[IFWebFrame release]):
2002-04-04 Richard Williamson <rjw@apple.com>
Clear controller references from data source and view, as well as
frame.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
_clearControllerReferences:]):
2002-04-04 Richard Williamson <rjw@apple.com>
Lazily dealloc controller and data source ONLY after all loads
have completed.
* WebView.subproj/IFBaseWebController.mm: (-[_IFControllerHolder
initWithController:]), (-[_IFControllerHolder _checkReadyToDealloc:]),
(-[IFBaseWebController dealloc]), (-[IFBaseWebController release]):
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
_clearControllerReferences:]), (-[IFBaseWebControllerPrivate dealloc]):
* WebView.subproj/IFWebDataSource.mm: (-[_IFDataSourceHolder
initWithDataSource:]), (-[_IFDataSourceHolder _checkReadyToDealloc:]),
(-[IFWebDataSource release]):
2002-04-04 Kenneth Kocienda <kocienda@apple.com>
Hack to handle displaying image URLs. The trick is to sense when
the main URL is an image type and wrap the URL in a small generated
HTML document and hand that off to the engine to display.
Works like a charm! :)
There may be some longer-term issues, but for now, this lets us
do something we could not before. It also lets us handle some iframes
that contain only image URLs.
* Resources/image_document_template.html: Added.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFMainURLHandleClient.h:
* WebView.subproj/IFMainURLHandleClient.mm: (loadImageDocumentTemplate),
(-[IFMainURLHandleClient initWithDataSource:part:]), (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-04-04 Chris Blumenberg <cblu@apple.com>
* English.lproj/IFError.strings:
* Misc.subproj/IFError.h:
* Misc.subproj/IFError.m: (+[IFError initialize]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]):
Added the IFNonHTMLContentNotSupportedError to IFError.
2002-04-04 Richard Williamson <rjw@apple.com>
Tuned and re-enabled resource layouts.
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
(-[IFWebFrame _timedLayout:]):
2002-04-04 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Add an Unoptimized build
style: exactly like Development except without the -O.
2002-04-03 Richard Williamson <rjw@apple.com>
Changed name of finalURL to redirectedURL.
Disabled layout after resource load. It appears to really slow us down.
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource redirectedURL]),
(-[IFWebDataSource wasRedirected]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
2002-04-03 Richard Williamson <rjw@apple.com>
Added support for finalURL and wasRedirected to datasource.
Added additional layouts on resource loads.
Added more implementations of frame related methods in data source.
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
_resourceTimedLayoutDelay]), (-[IFPreferences _resourceTimedLayoutEnabled]):
* WebView.subproj/IFPreferencesPrivate.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frameNames]),
(-[IFWebDataSource findDataSourceForFrameNamed:]), (-[IFWebDataSource
frameExists:]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource
wasRedirected]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _setTitle:]), (-[IFWebDataSource _setFinalURL:]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _scheduleLayout:]),
(-[IFWebFrame _transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
_isLoadComplete]):
2002-04-03 Kenneth Kocienda <kocienda@apple.com>
Updated debugging log messages to use new varargs macros.
* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate
removeEntryForURLString:]), (-[IFWebHistoryPrivate _loadHistoryGuts:]),
(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate _saveHistoryGuts:]),
(-[IFWebHistoryPrivate saveHistory]):
* Misc.subproj/WebKitDebug.h:
* Misc.subproj/WebKitDebug.m: (timestamp), (WebKitLog):
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
initWithFrame:plugin:url:mime:arguments:mode:]), (-[IFPluginView setWindow]),
(-[IFPluginView newStream:mimeType:notifyData:]), (-[IFPluginView
IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
becomeFirstResponder]), (-[IFPluginView resignFirstResponder]), (-[IFPluginView
sendUpdateEvent]), (-[IFPluginView mouseDown:]), (-[IFPluginView mouseUp:]),
(-[IFPluginView mouseEntered:]), (-[IFPluginView mouseExited:]), (-[IFPluginView
keyUp:]), (-[IFPluginView keyDown:]), (-[IFPluginView
getURLNotify:target:notifyData:]), (-[IFPluginView getURL:target:]),
(-[IFPluginView status:]), (-[IFPluginView stop]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandleResourceDidBeginLoading:]), (-[IFMainURLHandleClient
IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFMainURLHandleClient
IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
(-[IFWebFrame _setState:]), (-[IFWebFrame _isLoadComplete]):
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
(-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):
2002-04-02 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
Update title if the page is already in the committed state.
2002-04-02 Darin Adler <darin@apple.com>
* WebKit.pbproj/project.pbxproj: Fix flags as I did in WebFoundation.
* Misc.subproj/WebKitDebug.h: Turn off logging when xNDEBUG is defined.
Remove unused stuff. Add checking for printf parameters.
* Misc.subproj/WebKitDebug.m: Remove unused variants.
* Plugins.subproj/IFPluginView.mm: Change to use WebKit logging, not
WebCore logging.
* WebView.subproj/IFMainURLHandleClient.mm:
* WebView.subproj/IFWebView.mm:
Fix types in log statements caught by the compiler.
2002-04-02 Chris Blumenberg <cblu@apple.com>
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFPluginView
IFURLHandle:didRedirectToURL:]):
Added support for the above callbacks.
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]):
Return an error if non-html is requested.
2002-04-02 Richard Williamson <rjw@apple.com>
More relaxed about invalid states.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToLayoutAcceptable]):
2002-04-02 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _setTitle:]):
Fix a leak I introduced here by copying the string in a better way.
2002-04-01 Richard Williamson <rjw@apple.com>
Cleaned up lots of potentially stale references to controller.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
dealloc]):
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
initWithDataSource:part:]), (-[IFMainURLHandleClient dealloc]):
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _setPrimaryLoadComplete:]), (-[IFWebDataSource _setTitle:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
(-[IFWebFramePrivate setDataSource:]), (-[IFWebFramePrivate
setProvisionalDataSource:]), (-[IFWebFrame _setController:]), (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _timedLayout:]), (-[IFWebFrame
_setState:]):
2002-04-01 Richard Williamson <rjw@apple.com>
Logging changes.
Changes to support correct i/frame behavior.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
createFrameNamed:for:inParent:inScrollView:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _timedLayout:]):
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
(-[IFWebView _setupScrollers]):
2002-04-01 John Sullivan <sullivan@apple.com>
Added method for updating url, title, and/or displayTitle
on existing entry.
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistory.m:
(-[IFWebHistory updateURL:title:displayTitle:forURL:]):
Calls through to IFWebHistoryPrivate.
* History.subproj/IFWebHistoryPrivate.h:
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate _entryForURLString:]): Broke this out
from containsURL.
(-[IFWebHistoryPrivate containsURL:]): Call broken-out method.
(-[IFWebHistoryPrivate updateURL:title:displayTitle:forURL:]):
Find existing entry (if any), change its attributes.
2002-04-01 Darin Adler <darin@apple.com>
* Misc.subproj/IFError.h: Add the failing URL to IFError.
* Misc.subproj/IFError.m: (-[IFError initWithErrorCode:]): Call through
with nil for the URL.
(-[IFError initWithErrorCode:failingURL:]): Retain the passed URL.
(-[IFError dealloc]): Autorelease the URL.
(-[IFError failingURL]): Return the URL.
(-[IFError description]): Include the URL in the description.
* WebView.subproj/IFBaseWebControllerPrivate.mm:
(-[IFBaseWebController _receivedProgress:forResource:fromDataSource:]),
(-[IFBaseWebController _mainReceivedProgress:forResource:fromDataSource:]):
Put the URL into the IFError.
* WebView.subproj/IFMainURLHandleClient.mm:
(-[IFMainURLHandleClient IFURLHandle:resourceDidFailLoadingWithResult:]):
Put the URL into the IFError.
2002-04-01 Richard Williamson <rjw@apple.com>
Added more logging to show time of layouts.
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame _timedLayout:]),
(-[IFWebFrame _isLoadComplete]):
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
layout]):
2002-04-01 Darin Adler <darin@apple.com>
Added operations for JavaScript objects. Not sure if this was the best
place for them, but it should be OK for now.
* Misc.subproj/IFCache.h:
* Misc.subproj/IFCache.mm: (+[IFCache setDisabled:]), (+[IFCache
javaScriptObjectsCount]), (+[IFCache garbageCollectJavaScriptObjects]):
* WebKit.pbproj/project.pbxproj:
2002-03-30 Richard Williamson <rjw@apple.com>
Corrected comments describing the new 'acceptable to layout' state
transition.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]):
2002-03-30 Darin Adler <darin@apple.com>
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController receivedPageTitle:forDataSource:]):
Remove the exception from here. This is really a "do nothing,
subclasses override me" method.
* WebView.subproj/IFWebDataSource.mm:
(-[IFWebDataSource pageTitle]): Implement.
* WebView.subproj/IFWebDataSourcePrivate.h: Add pageTitle
and [IFWebDataSource _setTitle].
* WebView.subproj/IFWebDataSourcePrivate.mm:
(-[IFWebDataSourcePrivate dealloc]): autorelease pageTitle.
(-[IFWebDataSource _setTitle:]): Update the title, trimming
whitespace and using nil, rather than empty string, to mean
no title at all. Call [receivedPageTitle: forDataSource:]
as necessary too.
* WebView.subproj/IFMainURLHandleClient.mm: Did a gratuitious
whitespace edit to force this file to recompile so everyone
doesn't have to "make clean".
2002-03-30 Richard Williamson <rjw@apple.com>
Added support for scrolling to anchor points.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
2002-03-30 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Link against
JavaScriptCore.framework instead of the defunct
libJavaScriptCore.dylib.
2002-03-29 Richard Williamson <rjw@apple.com>
Fixes for cancelling. Still need to think about a better
solution than putting data sources in stopped mode.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController
_mainReceivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
(-[IFWebDataSource _isStopping]), (-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]):
2002-03-29 Richard Williamson <rjw@apple.com>
Hooked up redirect. Now we see many more ads. :(
Fixed cancel of main handle for document.
Moved stop before start from frame to data source.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
locationChangeDone:forFrame:]), (-[IFBaseWebController
serverRedirectTo:forDataSource:]):
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandleResourceDidCancelLoading:]), (-[IFMainURLHandleClient
IFURLHandleResourceDidFinishLoading:data:]), (-[IFMainURLHandleClient
IFURLHandle:resourceDidFailLoadingWithResult:]), (-[IFMainURLHandleClient
IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _startLoading:]), (-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
2002-03-29 Richard Williamson <rjw@apple.com>
Added stopLoading to startLoading to cancel any pending loads before
new loads start. This doesn't work yet because of loader bugs, but will
once those are fixed.
Adding logging for redirects.
* Misc.subproj/WebKitDebug.h:
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:didRedirectToURL:]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]):
2002-03-29 Darin Adler <darin@apple.com>
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]): Deref the
renderFramePart, and autorelease the provisionalDataSource.
(-[IFWebFramePrivate setRenderFramePart:]): Ref renderFramePart while we hold it.
2002-03-28 Richard Williamson <rjw@apple.com>
Increased size default for initial layout.
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]):
2002-03-28 Richard Williamson <rjw@apple.com>
Fixed big leak of any document that had a frame or iframe.
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource retain]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _setParent:]):
2002-03-28 Richard Williamson <rjw@apple.com>
Modified the initial layout policy.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
_initialTimedLayoutDelay]), (-[IFPreferences _initialTimedLayoutSize]):
* WebView.subproj/IFPreferencesPrivate.h:
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToLayoutAcceptable]), (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
(-[IFWebFrame _isLoadComplete]):
2002-03-28 Darin Adler <darin@apple.com>
New private interface for getting at the cache.
* Misc.subproj/IFCache.h: New.
* Misc.subproj/IFCache.mm: New.
* WebKit.pbproj/project.pbxproj: Added IFCache files.
2002-03-28 Darin Adler <darin@apple.com>
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController locationChangeDone:forFrame:]): Remove log of errors
loading now that we have the activity viewer.
2002-03-28 Richard Williamson <rjw@apple.com>
Modified the initial layout policy. We now try to layout as close
as possible to WebKitInitialTimedLayoutDelay seconds after the
load was started, not after the provisional-to-committed transition.
If the time to the provisional-to-committed transition exceeds
WebKitInitialTimedLayoutDelay we layout immediately.
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]),
(-[IFWebDataSource _recursiveStopLoading]), (-[IFWebDataSource
_loadingStartedTime]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]):
2002-03-28 John Sullivan <sullivan@apple.com>
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate _loadHistoryGuts:]):
Made this more robust about bad data from the disk file. I
don't know how bad data could get into the disk file in normal
use, but it seems to have happened to Richard.
2002-03-27 Richard Williamson <rjw@apple.com>
Added initial-layout-after-delay-if-not-layed-out-yet feature.
* Misc.subproj/WebKitDebug.h:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]), (-[IFPreferences
setPluginsEnabled:]), (-[IFPreferences _initialTimedLayoutDelay]),
(-[IFPreferences _initialTimedLayoutEnabled]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _initialLayout:]),
(-[IFWebFrame _state]):
2002-03-27 Kenneth Kocienda <kocienda@apple.com>
Changed loadProgress->bytesSoFar to use [sender contentLengthReceived]
instead of the size of the chunk that was delivered in the callback.
This makes the activity window data more correct than it was.
* WebView.subproj/IFMainURLHandleClient.mm: (-[IFMainURLHandleClient
IFURLHandle:resourceDataDidBecomeAvailable:]):
2002-03-27 Chris Blumenberg <cblu@apple.com>
Now setting the modifier bit for the activate and cursor events.
* Plugins.subproj/IFPluginView.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView drawRect:]), (-[IFPluginView
windowBecameKey:]), (-[IFPluginView windowResignedKey:]), (-[IFPluginView
mouseEntered:]), (-[IFPluginView mouseExited:]):
2002-03-27 Darin Adler <darin@apple.com>
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Switch back
to serif font, since using Luicida Grande was exposing some font bugs.
2002-03-26 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Fixed to build with standalone
libJavaScriptCore.dylib.
2002-03-26 Kenneth Kocienda <kocienda@apple.com>
Changes to help the transition to the new build system which unifies
our development build setting with the settings we use to ship
releases.
* Makefile.am:
* WebKit.pbproj/kocienda.pbxuser:
* WebKit.pbproj/project.pbxproj:
2002-03-26 Richard Williamson <rjw@apple.com>
Try to ensure that display needed bits are correctly set.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
2002-03-26 Darin Adler <darin@apple.com>
* Misc.subproj/IFError.m: (+[IFError initialize]): Fix a typo where
we said "unvailable".
* WebView.subproj/IFPreferences.mm: (+[IFPreferences load]): Change
the default sans-serif font to "Lucida Grande" to match the OS X
system font, and also make that the defalt standard font.
2002-03-26 John Sullivan <sullivan@apple.com>
* WebKit.pbproj/project.pbxproj:
Marked IFProgress.h Public.
2002-03-25 John Sullivan <sullivan@apple.com>
Broke IFLoadProgress out into its own file, and added
an init method and getters, without which this class
is useless in Objective-C files (but strangely usable
in Objective-C++ files, see radar 2887253).
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFBaseWebController.mm:
Took IFLoadProgress declaration and implementation out of here.
* WebView.subproj/IFLoadProgress.h,
* WebView.subproj/IFLoadProgress.mm:
Moved IFLoadProgress declaration and implementation to here;
added -[IFLoadProgress initWithBytesSoFar:totalToLoad:type:]
and getters for each field.
* WebKit.pbproj/project.pbxproj: Updated for new files
2002-03-25 Richard Williamson <rjw@apple.com>
Tweaks to force layout of frames and iframes.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _isLoadComplete]):
2002-03-25 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_startLoading:]): Just create an IFURLHandle, since it now creates
the proper concrete subclass automagically.
2002-03-25 Chris Blumenberg <cblu@apple.com>
* MIME.subproj/IFMIMEDatabase.m: (+[IFMIMEDatabase sharedMIMEDatabase]),
(-[IFMIMEDatabase MIMEHandlerForMIMEType:]), (setMimeHandlers):
* MIME.subproj/IFMIMEHandler.h:
* MIME.subproj/IFMIMEHandler.m: (-[IFMIMEHandler
initWithMIMEType:handlerType:handlerName:]), (-[IFMIMEHandler MIMEType]),
(-[IFMIMEHandler MIMESupertype]), (-[IFMIMEHandler MIMESubtype]),
(-[IFMIMEHandler handlerName]), (-[IFMIMEHandler handlerType]), (-[IFMIMEHandler
description]):
Initial implementations of the above.
2002-03-25 Richard Williamson <rjw@apple.com>
Added private API to allow browser to access the DOM tree.
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView DOM::]), (+[IFWebView
_nodeName:DOM::]), (+[IFWebView _nodeValue:DOM::]), (+[IFWebView
_nodeHTML:DOM::]):
2002-03-25 Richard Williamson <rjw@apple.com>
Added private API to allow browser to access the render tree.
* WebView.subproj/IFWebViewPrivate.mm:
2002-03-24 Richard Williamson <rjw@apple.com>
Changed data source to create IFURLHandle of the appropriate class.
The prevented us from getting the response headers correctly.
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _startLoading:]):
2002-03-24 Richard Williamson <rjw@apple.com>
Removed erroneous comments.
* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]), (-[IFWebView
reapplyStyles]):
2002-03-22 Chris Blumenberg <cblu@apple.com>
* MIME.subproj/IFMIMEDatabase.h:
Added a list of mime type that WebKit will be capable of handling
2002-03-22 Chris Blumenberg <cblu@apple.com>
* WebKit.pbproj/project.pbxproj:
Added the MIME clases to WebKit.
2002-03-22 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
Removed stale FIXME.
2002-03-22 Richard Williamson <rjw@apple.com>
Fixed reapplyStyles to use new KDE3 recalcStyle function.
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles])
2002-03-21 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]):
Commented out call to applyChanges that no longer exists.
This was breaking the build. Live font changes are
temporarily broken again.
2002-03-21 Richard Williamson <rjw@apple.com>
Added setNeedsToApplyStyles: and reapplyStyles. This is for dynamic preferences
refresh support.
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm: (-[IFWebView reapplyStyles]), (-[IFWebView
layout]), (-[IFWebView setNeedsToApplyStyles:]), (-[IFWebView drawRect:]):
* WebView.subproj/IFWebViewPrivate.h:
2002-03-21 John Sullivan <sullivan@apple.com>
Cleaned up defaults registration and use. The class
IFPreferences now registers the defaults at load time, early
enough that Alexander doesn't have to register them separately
as it had been. Also, all the defaults currently in use now
have accessor cover methods, which Alexander will use
exclusively.
* WebView.subproj/IFPreferences.mm:
New file, registers defaults and implements cover methods.
* WebView.subproj/IFPreferences.h:
This file existed but wasn't being used (contents #ifdeffed out).
Now it declares the cover methods, but still has an #ifdeffed
section for possible future stuff.
* WebKit.pbproj/project.pbxproj: Updated for new file.
* WebView.subproj/IFWebDataSource.mm:
(+[IFWebDataSource initialize]): removed defaults-registration
from here.
2002-03-20 Maciej Stachowiak <mjs@apple.com>
Merged the following changes from LABYRINTH_KDE_3_MERGE branch:
2002-03-20 Maciej Stachowiak <mjs@apple.com>
Merged accumlated changes from HEAD, up to
MERGED_TO_KDE_3_MERGE_BRANCH tag.
2002-03-19 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
layout() no longer takes an argument.
2002-03-20 John Sullivan <sullivan@apple.com>
Added displayTitle field to IFURIEntry. This is intended to hold the string
used in menu items, window titles, etc. Alexander uses this to cache the
center-truncated title for pages with very long titles.
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIEntry.m: (-[IFURIEntry setDisplayTitle:]), (-[IFURIEntry
dictionaryRepresentation]), (-[IFURIEntry initFromDictionaryRepresentation:]):
2002-03-19 Richard Williamson <rjw@apple.com>
Fixed IFWebView leak.
* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]):
2002-03-18 John Sullivan <sullivan@apple.com>
Imposed age limit on history items saved to/loaded from disk.
Sped up history loading by reversing list before processing entries.
* History.subproj/IFWebHistoryPrivate.m:
(+[IFWebHistoryPrivate initialize]): Register default for age limit.
(-[IFWebHistoryPrivate _ageLimitDate]): New convenience method, returns a date older
than any history entry that should be stored/loaded.
(-[IFWebHistoryPrivate arrayRepresentation]): skip too-old dates.
(-[IFWebHistoryPrivate _loadHistoryGuts:]), (-[IFWebHistoryPrivate _saveHistoryGuts:]):
Broke into separate methods to make timing wrapper less messy. Respect age limit.
Report number of items saved/loaded in timing message.
(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
use broken-out _guts methods.
* WebKit.pbproj/project.pbxproj: version wars
2002-03-16 Richard Williamson <rjw@apple.com>
Fixed scroll bar flash. Add provisional view to go along with
provisional widget.
* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
(-[IFWebView dataSourceChanged:]):
2002-03-16 Richard Williamson <rjw@apple.com>
Fixed error handling. Fixed most frame loading problems.
Cleaned up frame state machine.
Moved IFMainURLHandleClient from WebCore.
* Misc.subproj/IFError.m: (-[IFError description]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController locationChangeDone:forFrame:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebController
_receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_mainReceivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
_receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController
_mainReceivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]),
(-[IFWebDataSource isLoading]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]),
(-[IFWebDataSourcePrivate dealloc]), (-[IFWebDataSource
_setPrimaryLoadComplete:]), (-[IFWebDataSource _startLoading:]),
(-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setProvisionalDataSource:]),
(-[IFWebFrame startLoading]), (-[IFWebFrame reload:]), (-[IFWebFrame errors]),
(-[IFWebFrame mainDocumentError]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
(-[IFWebFrame _transitionProvisionalToCommitted]), (-[IFWebFrame _setState:]),
(-[IFWebFrame _addError:forResource:]), (-[IFWebFrame _isLoadComplete]),
(+[IFWebFrame _recursiveCheckCompleteFromFrame:]), (-[IFWebFrame
_checkLoadCompleteResource:error:isMainDocument:]), (-[IFWebFrame
_setMainDocumentError:]), (-[IFWebFrame _clearErrors]):
* WebView.subproj/IFWebView.mm:
* WebView.subproj/IFMainURLHandleClient.h: added
* WebView.subproj/IFMainURLHandleClient.mm: added
2002-03-15 John Sullivan <sullivan@apple.com>
Impose default-based limit (1000 by default) on number of history items
saved/loaded. Also instrumented timing for saving/loading history.
* History.subproj/IFWebHistoryPrivate.m:
(+[IFWebHistoryPrivate initialize]): register default for WebKitHistoryItemLimit.
(-[IFWebHistoryPrivate arrayRepresentation]): respect limit
(-[IFWebHistoryPrivate loadHistory]): respect limit, time the load.
(-[IFWebHistoryPrivate saveHistory]): time the save.
* WebKit.pbproj/project.pbxproj: version wars
2002-03-15 John Sullivan <sullivan@apple.com>
Fixed bug where history entry images weren't showing up, except by historical
accident in some cases.
Made IFWebHistory no longer be a singleton class; made the file location
be passed in at init time.
* History.subproj/IFURIEntry.m: (-[IFURIEntry image]): Get the default image
a way that works with frameworks; only get the default image once.
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistory.m:
(+[IFWebHistory webHistoryWithFile:]): New convenience constructor that returns
a new IFWebHistory object with a particular disk file.
(-[IFWebHistory initWithFile:]): New init method for specifying a disk file.
(-[IFWebHistory file]): New accessor for file path.
(-[IFWebHistory loadHistory]),
(-[IFWebHistory saveHistory]): Use file accessor.
Also removed the methods that were computing a file path to use.
* History.subproj/IFWebHistoryPrivate.h:
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate initWithFile:]),
(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate file]),
(-[IFWebHistoryPrivate loadHistory]), (-[IFWebHistoryPrivate saveHistory]):
Guts of implementation for file-manipulation stuff.
* Resources/url_icon.tiff: ran tiffUtil to premultiply the alpha channel. This
was spewing error messages that I didn't notice before because they only
happen on Puma and I was on Jaguar.
* WebKit.pbproj/project.pbxproj: not sure what change I made, maybe version wars.
2002-03-14 John Sullivan <sullivan@apple.com>
Made history store its data in ~/Library/Application Support/<app name>/History.plist
* History.subproj/IFWebHistoryPrivate.m:
(GetRefPath), (FindFolderPath): Functions copied from NSSavePanel.m for using
FindFolder in a POSIX sort of way. Ken plans to put some version of this in
IFNSFileManagerExtensions eventually, which I'll switch to later.
(-[IFWebHistoryPrivate historyFilePath]): Construct the path using FindFolderPath
and the file name.
(-[IFWebHistoryPrivate loadHistory]),
(-[IFWebHistoryPrivate saveHistory]): failure case debug messages are now more specific.
2002-03-13 Richard Williamson <rjw@apple.com>
Added support to stop plugins in removeFromSuperview.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView
removeFromSuperview]), (-[IFWebView removeFromSuperviewWithoutNeedingDisplay]):
2002-03-13 Richard Williamson <rjw@apple.com>
Fixed open window w/ no open windows crasher.
* ChangeLog:
* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
* WebView.subproj/IFWebView.mm: (-[IFWebView dealloc]), (-[IFWebView layout]):
2002-03-13 Richard Williamson <rjw@apple.com>
* ChangeLog:
* WebView.subproj/IFBaseWebController.mm: (-[IFObjectHolder dealloc]):
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
dealloc]), (-[IFWebView provisionalDataSourceChanged:]), (-[IFWebView
dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView windowResized:]),
(-[IFWebView mouseDragged:]):
2002-03-12 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
provisionalDataSourceChanged:]), (-[IFWebView dataSourceChanged:]), (-[IFWebView
layout]), (-[IFWebView isOpaque]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView
setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setFrame:]),
(-[IFWebView windowResized:]), (-[IFWebView mouseDragged:]):
2002-03-12 John Sullivan <sullivan@apple.com>
Added support for persistent history. Following in the grand footsteps of
Ken, it currently stores data in /tmp/alexander.history
* Resources/url_icon.tiff: default IFURIEntry image, moved here from WebBrowser.
* WebKit.pbproj/project.pbxproj: Updated to add image file.
* History.subproj/IFURIEntry.m:
(-[IFURIEntry image]):
If there's no explicit image, return the default one.
(-[IFURIEntry dictionaryRepresentation]): return a representation suitable
for saving to an xml file.
(-[IFURIEntry initFromDictionaryRepresentation:]): init given the representation
returned from dictionaryRepresentation.
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistory.m: (-[IFWebHistory saveHistory]):
Added saveHistory call.
* History.subproj/IFWebHistoryPrivate.h: added saveHistory call.
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate arrayRepresentation]): return a representation suitable for
saving to an xml file.
(-[IFWebHistoryPrivate historyFilePath]): return location of history on disk.
(-[IFWebHistoryPrivate loadHistory]): read history from disk.
(-[IFWebHistoryPrivate saveHistory]): write history to disk.
(-[IFWebHistoryPrivate init]): call loadHistory
(-[IFWebHistoryPrivate removeEntryForURLString:]): changed NSLog to WEBKITDEBUG
2002-03-11 Richard Williamson <rjw@apple.com>
Fixed call back ordering problems when an error occurs.
More twiddling with scroll bars.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
createFrameNamed:for:inParent:]):
* WebView.subproj/IFDynamicScrollBarsView.h:
* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
reflectScrolledClipView:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame startLoading]), (-[IFWebFrame
reload:]), (-[IFWebFrame reset]), (-[IFWebFrame lastError]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate dealloc]),
(-[IFWebFrame _checkLoadComplete:]), (-[IFWebFrame _setLastError:]):
2002-03-08 Richard Williamson <rjw@apple.com>
Fixed scroll bar recursion problems.
Took a long time to find a stupid typo bug in [IFBaseWebController _frameForDataSource:fromFrame:]
that overwrote an input parameter that should been a local variable. This caused a crash the
second time a page that contained an iframe was loaded.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
createFrameNamed:for:inParent:]), (-[IFBaseWebController
_frameForDataSource:fromFrame:]):
* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
reflectScrolledClipView:]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView layout]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]),
(-[IFWebView _frameScrollView]), (-[IFWebView _setupScrollers]):
2002-03-07 John Sullivan <sullivan@apple.com>
* Misc.subproj/IFError.m: (-[IFError errorDescription]):
Removed a line of debugging spam. Oops!
2002-03-07 Richard Williamson <rjw@apple.com>
Fixed occasional scroll bar problem in iframes.
Fixed occasional problem removing scroll bar on main page.
* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
reflectScrolledClipView:]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView drawRect:]):
2002-03-07 John Sullivan <sullivan@apple.com>
First pass at adding error strings to IFError. They are
properly localized, but they don't include any parameters,
and the strings haven't been made user-friendly.
* Misc.subproj/IFError.m:
(+[IFError initialize]): New method, set up a dictionary
mapping error code to localized error string.
(-[IFError errorDescription]): Read string from dictionary.
* English.lproj/IFError.strings: New file, auto-generated
by the genstrings tool.
* WebKit.pbproj/project.pbxproj: Removed stray -F /symroots.
This shouldn't have been in there since symroots location is
no longer hardwired.
2002-03-07 John Sullivan <sullivan@apple.com>
Defined more symbolic debug-level constants; specified ranges for use by
different software levels (core/kit/client==browser) to enable easier
isolation of debug messages.
* Misc.subproj/WebKitDebug.h: #defined new debug levels for existing uses;
renamed a couple.
* Misc.subproj/WebKitDebug.m: (WebKitLog), (WebKitDebug): Updated for
renamed debug levels.
* WebView.subproj/IFBaseWebController.mm:
(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource _stopLoading]):
* WebView.subproj/IFWebView.mm: (-[IFWebView layout]),
(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView drawRect:]),
(-[IFWebView mouseDragged:]):
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetView]):
Changed numeric debug levels to symbolic ones.
* WebKit.pbproj/project.pbxproj: Jaguar/Puma version war.
2002-03-06 Richard Williamson <rjw@apple.com>
Lots of little changes to improve drawing, and dynamic scroll bar
layout. We now have NO flash between pages, however, I still need
to add a transition timeout. As currently implemented the page will not
transition until the document is read.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
locationChangeDone:forFrame:]):
* WebView.subproj/IFDynamicScrollBarsView.m: (-[IFDynamicScrollBarsView
reflectScrolledClipView:]):
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _checkLoadComplete:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
dataSourceChanged:]), (-[IFWebView layout]), (-[IFWebView isOpaque]),
(-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]), (-[IFWebView
drawRect:]), (-[IFWebView setFrame:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _stopPlugins]), (-[IFWebView
_removeSubviews]):
2002-03-06 John Sullivan <sullivan@apple.com>
* Misc.subproj/IFError.h: Removed stray but evil import.
2002-03-06 Maciej Stachowiak <mjs@apple.com>
* WebKit.pbproj/project.pbxproj: Turn on -Werror.
2002-03-05 Richard Williamson <rjw@apple.com>
Streamlined layout and drawing. We now do the minimum amount of drawing and
layout.
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _checkLoadComplete:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
layout]), (-[IFWebView setNeedsDisplay:]), (-[IFWebView setNeedsLayout:]),
(-[IFWebView drawRect:]), (-[IFWebView setFrame:]), (-[IFWebView
windowResized:]):
2002-03-05 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
Tweak default font sizes so they match what algorithm used in Alexander
returns.
2002-03-05 Richard Williamson <rjw@apple.com>
Pass errors correctly to browser.
Removed old notification code.
Added support for IFError.
Lots of little cleanups.
Improved IFWebFrame state handling.
* Misc.subproj/IFError.h:
* Misc.subproj/IFError.m: (IFErrorMake), (+[IFError load]), (-[IFError
initWithErrorCode:]), (-[IFError errorCode]), (-[IFError errorDescription]):
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_startLoading:initiatedByUserEvent:]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame
initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
setProvisionalDataSource:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame
_transitionProvisionalToCommitted]), (-[IFWebFrame _state]), (-[IFWebFrame
_setState:]), (-[IFWebFrame _checkLoadComplete:]):
2002-03-05 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
Changed default font sizes to match scheme used in Alexander. There are
some serious wackinesses with KDE engine font size handling; if and when
we address those we might revisit these default sizes.
2002-03-05 Maciej Stachowiak <mjs@apple.com>
Removed references to IFAuthenticationHandler, since that protocol
now lives in WebFoundation and it's no longer quite appropriate to
include as part of a controller.
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFWebController.h:
2002-03-04 Richard Williamson <rjw@apple.com>
Changes to support 'provisional' data sources.
API changes to IFBaseWebController, removed redundant methods.
* Misc.subproj/WebKitDebug.h:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
getURLNotify:target:notifyData:]):
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController init]),
(-[IFBaseWebController initWithView:provisionalDataSource:]),
(-[IFBaseWebController createFrameNamed:for:inParent:]), (-[IFBaseWebController
receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController locationChangeCommittedForFrame:]), (-[IFBaseWebController
_frameForDataSource:fromFrame:]), (-[IFBaseWebController mainFrame]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (IFWebDataSourceMake), (+[IFWebDataSource
load]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_startLoading:initiatedByUserEvent:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
initWithName:view:provisionalDataSource:controller:]), (-[IFWebFrame
setProvisionalDataSource:]), (-[IFWebFrame startLoading]), (-[IFWebFrame
stopLoading]), (-[IFWebFrame reload:]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFrame _setDataSource:]),
(-[IFWebFrame _transitionProvisionalToCommitted]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm: (-[IFWebView provisionalDataSourceChanged:]),
(-[IFWebView dataSourceChanged:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _provisionalWidget]):
2002-03-04 John Sullivan <sullivan@apple.com>
Changed default fonts.
* WebView.subproj/IFWebDataSource.mm:
(+[IFWebDataSource initialize]): Changed default fonts to ones
that actually exist (this was listing "Times-Roman" where it
meant either "Times" or "Times New Roman"). I'm about to check
in working font preferences, so it won't matter too much if you
don't like the defaults (although we should of course make sure
that the defaults are sensible, which I think they are).
2002-03-04 John Sullivan <sullivan@apple.com>
* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]):
Reverted default fonts to what they were before I accidentally
checked in some debugging changes.
2002-03-01 Richard Williamson <rjw@apple.com>
Fixed a potentially large leak in frames. View associated w/
frame was not being released.
Added scaffolding for correct frame by frame load complete check.
Moved private IFWebBaseController method implementations to
IFWebBaseControllerPrivate.mm.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
createFrameNamed:for:inParent:]), (-[IFBaseWebController
receivedProgress:forResource:fromDataSource:]), (-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
dealloc]), (-[IFBaseWebController _changeLocationTo:forFrame:parent:]),
(-[IFBaseWebController _changeFrame:dataSource:]), (-[IFBaseWebController
_checkLoadCompleteForDataSource:]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate init]):
* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
2002-02-27 Kenneth Kocienda <kocienda@apple.com>
I have changed the way that WebCore is glued to WebFoundation and WebKit.
If you used or relied upon any code in the following files, you should
now use the IF* equivalents straight up.
- Labyrinth/WebCore/include/WCBackForwardList.h
- Labyrinth/WebCore/include/WCURICache.h
- Labyrinth/WebCore/include/WCURICacheData.h
- Labyrinth/WebCore/include/WCURIEntry.h
- Labyrinth/WebCore/include/WCURIEntry.h
All changes in this commit are related to making dependant code work with the new convention.
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIEntry.m:
* Plugins.subproj/IFPluginView.mm: (-[IFPluginView
newStream:mimeType:notifyData:]), (-[IFPluginView
IFURLHandle:resourceDataDidBecomeAvailable:]), (-[IFPluginView
IFURLHandleResourceDidFinishLoading:data:]), (-[IFPluginView
IFURLHandleResourceDidBeginLoading:]), (-[IFPluginView
IFURLHandleResourceDidCancelLoading:]), (-[IFPluginView
IFURLHandle:resourceDidFailLoadingWithResult:]):
* WebKit.pbproj/kocienda.pbxuser:
* WebKit.pbproj/project.pbxproj:
2002-02-26 John Sullivan <sullivan@apple.com>
* History.subproj/IFURIEntry.m: (-[IFURIEntry dealloc]):
Added missing dealloc method that 'leaks' found.
* History.subproj/IFURIList.m: (-[IFURIList dealloc]):
Added missing [super dealloc] call that 'leaks' found.
2002-02-22 Maciej Stachowiak <mjs@apple.com>
Fix prebinding:
* WebKit.pbproj/project.pbxproj: Set first segment address
0x4000000 to avoid colliding with apps or our other frameworks.
Set up some hacks to avoid link-time dependency on
WebKit. Prebinding is incompatible with - undefined suppress, so
we can't have WebCore depend on symbols provided by WebKit any
more:
* Plugins.subproj/IFPluginView.mm: (IFPluginMake), (+[IFPluginView load]),
(startupVolumeName):
* WebView.subproj/IFBaseWebController.mm: (IFLoadProgressMake), (+[IFLoadProgress
load]):
2002-02-22 John Sullivan <sullivan@apple.com>
Updated for modified NSCalendarDate extensions API.
* History.subproj/IFWebHistoryPrivate.m:
(-[IFWebHistoryPrivate findIndex:forDay:]): use compareDate: instead of
daysSinceDate:, which no longer exists.
2002-02-22 Richard Williamson <rjw@apple.com>
Added data: to IFURLHandleResourceDidFinishLoading:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource isLoading]):
2002-02-22 Richard Williamson <rjw@apple.com>
Implemented missing getter for provisionalDataSource.
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame provisionalDataSource]):
* WebView.subproj/IFWebFramePrivate.h:
2002-02-22 Richard Williamson <rjw@apple.com>
Normalized code paths for setMainDataSource on controller and setDataSource on frame.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
setMainView:andMainDataSource:]), (-[IFBaseWebController
createFrameNamed:for:inParent:]), (-[IFBaseWebController
_changeFrame:dataSource:]):
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_setController:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame init]), (-[IFWebFrame
initWithName:view:dataSource:controller:]), (-[IFWebFrame setView:]),
(-[IFWebFrame controller]), (-[IFWebFrame setController:]), (-[IFWebFrame
setDataSource:]), (-[IFWebFrame reset]):
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate setController:]),
(-[IFWebFrame _setRenderFramePart:]), (-[IFWebFrame _renderFramePart]),
(-[IFWebFrame _setDataSource:]):
2002-02-21 Richard Williamson <rjw@apple.com>
Stop mostly working.
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
_frameForDataSource:fromFrame:]), (-[IFBaseWebController frameForDataSource:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource frame]),
(-[IFWebDataSource frameName]), (-[IFWebDataSource stopLoading]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _addURLHandle:]), (-[IFWebDataSource _removeURLHandle:]),
(-[IFWebDataSource _stopLoading]), (-[IFWebDataSource
_recursiveStopLoadingfromDataSource:]):
* WebView.subproj/IFWebFrame.mm: (-[IFWebFrame setDataSource:]):
2002-02-20 Richard Williamson <rjw@apple.com>
Some groundwork to bring WebFoundation callbacks up to
WebKit.
* WebView.subproj/IFBaseWebController.mm: (-[IFLoadProgress init]),
(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
(-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController _changeFrame:dataSource:]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource stopLoading]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFramePrivate.h:
* WebView.subproj/IFWebFramePrivate.mm: (-[IFWebFramePrivate
setProvisionalDataSource:]):
2002-02-20 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/IFWebController.h: Fix my WebController screw-up.
2002-02-19 John Sullivan <sullivan@apple.com>
Finished first cut at IFWebHistory implementation. All methods are implemented
except the string-matching ones.
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIEntry.m: (-[IFURIEntry initWithURL:title:image:comment:]),
(-[IFURIEntry lastVisitedDate]), (-[IFURIEntry setModificationDate:]),
(-[IFURIEntry setLastVisitedDate:]):
Changed all NSDates to be NSCalendarDates.
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistory.m: (-[IFWebHistory init]), (-[IFWebHistory
dealloc]), (-[IFWebHistory sendEntriesChangedNotification]), (-[IFWebHistory
addEntry:]), (-[IFWebHistory removeEntry:]), (-[IFWebHistory
removeEntriesForDay:]), (-[IFWebHistory removeAllEntries]), (-[IFWebHistory
orderedLastVisitedDays]), (-[IFWebHistory orderedEntriesLastVisitedOnDay:]),
(-[IFWebHistory entriesWithAddressContainingString:]), (-[IFWebHistory
entriesWithTitleOrAddressContainingString:]), (-[IFWebHistory containsURL:]):
Implemented all IFWebHistory methods by calling through to IFWebHistoryPrivate object.
Send a change notification each time the actual data changes. Removed all
canned-data mechanisms.
* History.subproj/IFWebHistoryPrivate.h:
* History.subproj/IFWebHistoryPrivate.m: (-[IFWebHistoryPrivate init]),
(-[IFWebHistoryPrivate dealloc]), (-[IFWebHistoryPrivate findIndex:forDay:]),
(-[IFWebHistoryPrivate insertEntry:atDateIndex:]), (-[IFWebHistoryPrivate
removeEntryForURLString:]), (-[IFWebHistoryPrivate addEntry:]),
(-[IFWebHistoryPrivate removeEntry:]), (-[IFWebHistoryPrivate
removeEntriesForDay:]), (-[IFWebHistoryPrivate removeAllEntries]),
(-[IFWebHistoryPrivate orderedLastVisitedDays]), (-[IFWebHistoryPrivate
orderedEntriesLastVisitedOnDay:]), (-[IFWebHistoryPrivate
entriesWithAddressContainingString:]), (-[IFWebHistoryPrivate
entriesWithTitleOrAddressContainingString:]), (-[IFWebHistoryPrivate
containsURL:]):
Implemented guts of history mechanism using a dictionary for URL lookup and
a sorted array of dates with entries and a sorted array of sorted arrays of
entries per date.
* WebKit.pbproj/project.pbxproj: Updated for new files
2002-02-18 John Sullivan <sullivan@apple.com>
First piece of implementing IFWebHistory. None of the mutators do anything,
and the accessors return canned data. But at least all the temporary hackery
is hiding behind legitimate API.
* History.subproj/IFWebHistory.h:
* History.subproj/IFWebHistory.m:
(+[IFWebHistory sharedWebHistory]):
Implemented sensibly.
(-[IFWebHistory createTestEntryWithURLString:title:date:]),
(-[IFWebHistory testDataDates]), (-[IFWebHistory testData]),
Private temporary hackery to return fake data.
(-[IFWebHistory orderedLastVisitedDays]),
(-[IFWebHistory orderedEntriesLastVisitedOnDay:]):
Implemented using temporary hackery.
(-[IFWebHistory addEntry:]),
(-[IFWebHistory removeEntry:]),
(-[IFWebHistory removeAllEntries]):
Unimplemented mutator methods.
(-[IFWebHistory entriesWithAddressContainingString:]),
(-[IFWebHistory entriesWithTitleOrAddressContainingString:]),
(-[IFWebHistory containsURL:]):
Methods that we'll need eventually, currently unimplemented. We may flesh out
the API a little more before we actually implement any of these.
(-[NSCalendarDate daysSinceDate:]): Convenience method in category; will
probably move to another file soon.
* WebKit.pbproj/project.pbxproj: Updated for new files
2002-02-18 Kenneth Kocienda <kocienda@apple.com>
Fixed breakge that came up when project file merged.
* WebKit.pbproj/project.pbxproj:
2002-02-18 Kenneth Kocienda <kocienda@apple.com>
Changes to support building standalone Alexander with Frameworks
and libraries contained inside the app package.
* Makefile.am:
* WebKit.pbproj/kocienda.pbxuser:
* WebKit.pbproj/project.pbxproj:
2002-02-18 Richard Williamson <rjw@apple.com>
Performance measurement.
* WebView.subproj/IFWebView.mm: (-[IFWebView layout]), (-[IFWebView drawRect:]):
2002-02-16 Richard Williamson <rjw@apple.com>
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource controller]):
2002-02-16 Richard Williamson <rjw@apple.com>
Reminders to change frame<->datasource ownership cycle.
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]),
(-[IFWebDataSource frame]):
2002-02-13 Richard Williamson <rjw@apple.com>
Fixed cleanup. Should revisit ownership graph. Cycles may be avoidable.
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
dealloc]):
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource setFrame:]):
* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _resetWidget]):
2002-02-12 Richard Williamson <rjw@apple.com>
Made basic forms work.
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (+[IFWebDataSource initialize]),
(-[IFWebDataSource startLoading:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_startLoading:initiatedByUserEvent:]):
2002-02-11 John Sullivan <sullivan@apple.com>
Fixed bug where clicking on empty browser page would crash. This could
happen when the start page was empty, or failed to load.
* WebView.subproj/IFWebView.mm:
(-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
Checked for nil widget before dispatching mouse events.
2002-02-08 John Sullivan <sullivan@apple.com>
Changed back & forward to goBack and goForward and made them not return
a value (so signatures match those in WebBrowser). Added backEntry and
forwardEntry that don't alter the list. These will be needed to ask to
go to the URL at the back position without altering the back list until
the change is committed.
* History.subproj/IFBackForwardList.h:
* History.subproj/IFBackForwardList.m: (-[IFBackForwardList goBack]),
(-[IFBackForwardList backEntry]), (-[IFBackForwardList currentEntry]),
(-[IFBackForwardList forwardEntry]), (-[IFBackForwardList goForward]):
2002-02-07 Richard Williamson <rjw@apple.com>
More changes to IFLocationChangeHandler API.
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_startLoading:initiatedByMouseEvent:]):
* WebView.subproj/IFWebFramePrivate.h:
2002-02-07 Richard Williamson <rjw@apple.com>
Update IFLocationChangeHandler API. Added factored code for
URL loading.
* ChangeLog:
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
setMainView:andMainDataSource:]), (-[IFBaseWebController
_changeLocationTo:forFrame:parent:]), (-[IFBaseWebController
_changeFrame:dataSource:]), (-[IFBaseWebController
locationChangeCommittedForFrame:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource startLoading:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.m: (-[IFWebFrame reset]):
2002-02-06 Richard Williamson <rjw@apple.com>
Fixed allocation problems. Implemented parent->child management
for datasource correctly.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
changeLocationTo:forFrame:]):
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource addFrame:]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSource
_setController:]), (-[IFWebDataSource _part]), (-[IFWebDataSource _setParent:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.m: (-[IFWebFrame _setRenderFramePart:]),
(-[IFWebFrame _renderFramePart]):
* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
2002-02-05 Richard Williamson <rjw@apple.com>
Updated controller API to reflect frames.
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
initWithView:dataSource:]), (-[IFBaseWebController
setMainView:andMainDataSource:]), (-[IFBaseWebController
createFrameNamed:for:inParent:]), (-[IFBaseWebController mainFrame]),
(-[IFBaseWebController mainView]), (-[IFBaseWebController mainDataSource]),
(-[IFBaseWebController changeLocationTo:forFrame:]), (-[IFBaseWebController
locationChangeStartedForFrame:]), (-[IFBaseWebController
locationChangeInProgressForFrame:]), (-[IFBaseWebController
locationChangeDone:forFrame:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm: (-[IFBaseWebControllerPrivate
init]), (-[IFBaseWebControllerPrivate dealloc]):
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource initWithURL:]),
(-[IFWebDataSource setFrame:]), (-[IFWebDataSource frame]), (-[IFWebDataSource
frameName]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _part]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.m: (-[IFWebFrame dealloc]), (-[IFWebFrame
dataSource]), (-[IFWebFrame setDataSource:]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged:]):
2002-02-05 Maciej Stachowiak <mjs@apple.com>
Remove old obsolete cache code from tree and build.
* Cache.subproj/NSURICache.h:
* Cache.subproj/NSURICache.m:
* Cache.subproj/NSURICacheData.h:
* Cache.subproj/NSURICacheData.m:
* Cache.subproj/NSURILoad.h:
* Cache.subproj/NSURILoad.m:
* Cache.subproj/NSURILoadReallyPrivate.h:
* Cache.subproj/_NSURICacheQueue.h:
* Cache.subproj/_NSURICacheQueue.m:
* Misc.subproj/WebKitReallyPrivate.h:
* Misc.subproj/_NSMonitor.h:
* Misc.subproj/_NSMonitor.m:
* WebKit.pbproj/project.pbxproj:
2002-02-05 Richard Williamson <rjw@apple.com>
Changes to support dynamic scroll bars in frames/iframes.
* WebView.subproj/IFBaseWebController.mm: (-[IFBaseWebController
createFrameNamed:for:inParent:]):
* WebView.subproj/IFWebView.mm: (-[IFWebView dataSourceChanged]):
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebView _setFrameScrollView:]):
2002-02-04 Maciej Stachowiak <mjs@apple.com>
Rename all classes from WK prefix to IF prefix.
* Cache.subproj/IFLoadChunk.h:
* Cache.subproj/IFWebCache.h:
* Cache.subproj/IFWebCacheClient.h:
* Cache.subproj/IFWebContentType.h:
* History.subproj/IFAttributedURL.h:
* History.subproj/IFBackForwardList.h:
* History.subproj/IFBackForwardList.m: (-[IFBackForwardList init]),
(-[IFBackForwardList addEntry:]), (-[IFBackForwardList back]),
(-[IFBackForwardList currentEntry]), (-[IFBackForwardList forward]),
(-[IFBackForwardList description]):
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIEntry.m: (WCCreateURIEntry), (-[IFURIEntry isEqual:]),
(-[IFURIEntry description]):
* History.subproj/IFURIList.h:
* History.subproj/IFURIList.m: (newURIListNode), (freeNode), (-[IFURIList
dealloc]), (-[IFURIList addEntry:]), (-[IFURIList removeURL:]), (-[IFURIList
removeEntry:]), (-[IFURIList entryForURL:]), (-[IFURIList entryAtIndex:]),
(-[IFURIList removeEntryAtIndex:]), (-[IFURIList removeEntriesToIndex:]):
* Misc.subproj/IFException.h:
* Misc.subproj/IFException.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm: (+[IFObjectHolder holderWithObject:]),
(-[IFBaseWebController init]), (-[IFBaseWebController initWithView:dataSource:]),
(-[IFBaseWebController setDirectsAllLinksToSystemBrowser:]),
(-[IFBaseWebController directsAllLinksToSystemBrowser]), (-[IFBaseWebController
setView:andDataSource:]), (-[IFBaseWebController
createFrameNamed:for:inParent:]), (-[IFBaseWebController viewForDataSource:]),
(-[IFBaseWebController dataSourceForView:]), (-[IFBaseWebController mainView]),
(-[IFBaseWebController mainDataSource]), (-[IFBaseWebController
setStatusText:forDataSource:]), (-[IFBaseWebController
statusTextForDataSource:]), (-[IFBaseWebController authenticate:]),
(-[IFBaseWebController receivedProgress:forResource:fromDataSource:]),
(-[IFBaseWebController
receivedError:forResource:partialProgress:fromDataSource:]),
(-[IFBaseWebController locationWillChangeTo:]), (-[IFBaseWebController
locationChangeStartedForDataSource:]), (-[IFBaseWebController
locationChangeInProgressForDataSource:]), (-[IFBaseWebController
locationChangeDone:forDataSource:]), (-[IFBaseWebController
receivedPageTitle:forDataSource:]), (-[IFBaseWebController
serverRedirectTo:forDataSource:]):
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFDynamicScrollBarsView.h:
* WebView.subproj/IFDynamicScrollBarsView.m:
* WebView.subproj/IFGrabBag.h:
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm: (-[IFWebDataSource _commonInitialization]),
(-[IFWebDataSource initWithURL:]), (-[IFWebDataSource frameName]),
(-[IFWebDataSource isMainDocument]), (-[IFWebDataSource parent]),
(-[IFWebDataSource children]), (-[IFWebDataSource addFrame:]), (-[IFWebDataSource
frameNamed:]), (-[IFWebDataSource frameNames]), (-[IFWebDataSource
findDataSourceForFrameNamed:]), (-[IFWebDataSource frameExists:]),
(-[IFWebDataSource openURL:inFrameNamed:]), (-[IFWebDataSource
openURL:inIFrame:]), (-[IFWebDataSource controller]), (-[IFWebDataSource
inputURL]), (-[IFWebDataSource finalURL]), (-[IFWebDataSource wasRedirected]),
(-[IFWebDataSource stopLoading]), (-[IFWebDataSource isLoading]),
(-[IFWebDataSource base]), (-[IFWebDataSource baseTarget]), (-[IFWebDataSource
encoding]), (-[IFWebDataSource setUserStyleSheetFromURL:]), (-[IFWebDataSource
setUserStyleSheetFromString:]), (-[IFWebDataSource icon]), (-[IFWebDataSource
isPageSecure]), (-[IFWebDataSource pageTitle]):
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm: (-[IFWebDataSourcePrivate dealloc]),
(-[IFWebDataSource _setController:]), (-[IFWebDataSource _part]),
(-[IFWebDataSource _setFrameName:]):
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.m: (-[IFWebFrame initWithName:view:dataSource:]),
(-[IFWebFrame dataSource]):
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm: (-[IFWebView initWithFrame:]), (-[IFWebView
controller]), (-[IFWebView dataSourceChanged]), (-[IFWebView layout]),
(-[IFWebView stopAnimations]), (-[IFWebView setFontSizes:]), (-[IFWebView
fontSizes]), (-[IFWebView resetFontSizes]), (-[IFWebView setStandardFont:]),
(-[IFWebView standardFont]), (-[IFWebView setFixedFont:]), (-[IFWebView
fixedFont]), (-[IFWebView setCanDragFrom:]), (-[IFWebView setCanDragTo:]),
(-[IFWebView defaultContextMenuItemsForNode:]), (-[IFWebView
setContextMenusEnabled:]), (-[IFWebView deselectText]), (-[IFWebView
searchFor:direction:caseSensitive:]), (-[IFWebView selectedText]), (-[IFWebView
setNeedsLayout:]), (-[IFWebView drawRect:]), (-[IFWebView setIsFlipped:]),
(-[IFWebView isFlipped]), (-[IFWebView mouseUp:]), (-[IFWebView mouseDown:]):
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm: (-[IFWebViewPrivate dealloc]),
(-[IFWebView _setController:]), (-[IFWebView _widget]), (-[IFWebView
_setFrameScrollView:]), (-[IFWebView _frameScrollView]):
2002-02-04 Maciej Stachowiak <mjs@apple.com>
Rename all WK files to IF (classes not renamed yet).
* Cache.subproj/IFLoadChunk.h:
* Cache.subproj/IFWebCache.h:
* Cache.subproj/IFWebCacheClient.h:
* Cache.subproj/IFWebContentType.h:
* Cache.subproj/WKLoadChunk.h:
* Cache.subproj/WKWebCache.h:
* Cache.subproj/WKWebCacheClient.h:
* Cache.subproj/WKWebContentType.h:
* History.subproj/IFAttributedURL.h:
* History.subproj/IFBackForwardList.h:
* History.subproj/IFBackForwardList.m:
* History.subproj/IFURIEntry.h:
* History.subproj/IFURIEntry.m:
* History.subproj/IFURIList.h:
* History.subproj/IFURIList.m:
* History.subproj/WKAttributedURL.h:
* History.subproj/WKBackForwardList.h:
* History.subproj/WKBackForwardList.m:
* History.subproj/WKURIEntry.h:
* History.subproj/WKURIEntry.m:
* History.subproj/WKURIList.h:
* History.subproj/WKURIList.m:
* Misc.subproj/WKException.h:
* Misc.subproj/WKException.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/IFBaseWebController.h:
* WebView.subproj/IFBaseWebController.mm:
* WebView.subproj/IFBaseWebControllerPrivate.h:
* WebView.subproj/IFBaseWebControllerPrivate.mm:
* WebView.subproj/IFDefaultWebController.h:
* WebView.subproj/IFDefaultWebController.mm:
* WebView.subproj/IFDefaultWebControllerPrivate.h:
* WebView.subproj/IFDefaultWebControllerPrivate.mm:
* WebView.subproj/IFDynamicScrollBarsView.m:
* WebView.subproj/IFGrabBag.h:
* WebView.subproj/IFPreferences.h:
* WebView.subproj/IFWebController.h:
* WebView.subproj/IFWebDataSource.h:
* WebView.subproj/IFWebDataSource.mm:
* WebView.subproj/IFWebDataSourcePrivate.h:
* WebView.subproj/IFWebDataSourcePrivate.mm:
* WebView.subproj/IFWebFrame.h:
* WebView.subproj/IFWebFrame.m:
* WebView.subproj/IFWebView.h:
* WebView.subproj/IFWebView.mm:
* WebView.subproj/IFWebViewPrivate.h:
* WebView.subproj/IFWebViewPrivate.mm:
* WebView.subproj/WKDefaultWebController.h:
* WebView.subproj/WKDefaultWebController.mm:
* WebView.subproj/WKDefaultWebControllerPrivate.h:
* WebView.subproj/WKDefaultWebControllerPrivate.mm:
* WebView.subproj/WKDynamicScrollBarsView.h:
* WebView.subproj/WKDynamicScrollBarsView.m:
* WebView.subproj/WKGrabBag.h:
* WebView.subproj/WKPreferences.h:
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebDataSource.mm:
* WebView.subproj/WKWebDataSourcePrivate.h:
* WebView.subproj/WKWebDataSourcePrivate.mm:
* WebView.subproj/WKWebFrame.h:
* WebView.subproj/WKWebFrame.m:
* WebView.subproj/WKWebView.h:
* WebView.subproj/WKWebView.mm:
* WebView.subproj/WKWebViewPrivate.h:
* WebView.subproj/WKWebViewPrivate.mm:
2002-02-01 Richard Williamson <rjw@apple.com>
Changes for dynamic scrolling frames. Added notification of complete
load.
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
createFrameNamed:for:inParent:]), (-[WKDefaultWebController
locationChangeDone:forDataSource:]):
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebView.mm: (-[WKWebView dataSourceChanged]):
* WebView.subproj/WKWebViewPrivate.h:
* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
(-[WKWebView _widget]), (-[WKWebView _setFrameScrollView:]), (-[WKWebView
_frameScrollView]):
2002-02-01 John Sullivan <sullivan@apple.com>
Added call to examine the entry at the current index in
the back/forward list without modifying the list. I needed
this to save context data (in my case, scroll position)
on the currently-viewed entry.
* History.subproj/WKBackForwardList.h:
* History.subproj/WKBackForwardList.m:
(-[WKBackForwardList currentEntry]):
Just returns the entry at the current index.
2002-01-31 John Sullivan <sullivan@apple.com>
* History.subproj/WKURIList.m: (newURIListNode):
retain entries before adding them to list. The node-freeing
routine was releasing, but the node-adding routine wasn't
retaining. Bad asymmetry, made up for by WebViewTest not
autoreleasing. I fixed that too.
2002-01-31 John Sullivan <sullivan@apple.com>
* WebKit.pbproj: Removed -O0, so it will now get all the same
warnings as pbxbuild gets.
2002-01-31 Kenneth Kocienda <kocienda@apple.com>
Removed dependency on WC versions of these files
* History.subproj/WKBackForwardList.h:
* History.subproj/WKBackForwardList.m:
* History.subproj/WKURIEntry.h:
* History.subproj/WKURIEntry.m:
* WebKit.pbproj/project.pbxproj:
2002-01-31 John Sullivan <sullivan@apple.com>
* WebKit.pbproj:
Marked WKURIList.h as a public header
2002-01-30 Richard Williamson <rjw@apple.com>
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
createFrameNamed:for:inParent:]):
* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource documentTextFromDOM]):
2002-01-30 Richard Williamson <rjw@apple.com>
Cleaned up API w/ respect to frames.
* WebView.subproj/WKDefaultWebController.h:
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
setView:andDataSource:]), (-[WKDefaultWebController
createFrameNamed:for:inParent:]):
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebDataSource.h:
2002-01-30 Kenneth Kocienda <kocienda@apple.com>
Added *.lo, *.la, Icon, and .libs to .cvsignore files
* .cvsignore:
2002-01-29 Richard Williamson <rjw@apple.com>
* ChangeLog:
* WebView.subproj/WKDefaultWebController.h:
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
setView:andDataSource:]), (-[WKDefaultWebController dataSourceForView:]):
2002-01-29 Richard Williamson <rjw@apple.com>
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController
setView:andDataSource:]):
2002-01-29 Richard Williamson <rjw@apple.com>
First pass at frame code. Still needs lots of cleanup.
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WKDefaultWebController.h:
* WebView.subproj/WKDefaultWebController.mm: (-[WKDefaultWebController init]):
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource dealloc]),
(-[WKWebDataSource frameName]), (-[WKWebDataSource parent]), (-[WKWebDataSource
children]), (-[WKWebDataSource addFrame:]), (-[WKWebDataSource frameNamed:]):
* WebView.subproj/WKWebDataSourcePrivate.h:
* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
(-[WKWebDataSource _setFrameName:]):
* WebView.subproj/WKWebView.mm: (-[WKWebView mouseUp:]):
* WebView.subproj/WKWebViewPrivate.h:
* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate dealloc]),
(-[WKWebView _setController:]), (-[WKWebView _widget]):
2002-01-29 Kenneth Kocienda <kocienda@apple.com>
WebKit now links with WebFoundation
* WebKit.pbproj/kocienda.pbxuser:
* WebKit.pbproj/project.pbxproj:
2002-01-23 Ken Kocienda <kocienda@apple.com>
Took out @executable_path hack added for Alexander demo.
This should clear up a class of crash-on-launch issues.
* WebKit.pbproj/project.pbxproj:
2002-01-21 John Sullivan <sullivan@apple.com>
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebView.h:
Changed WKConcreteWebController to WKDefaultWebController in a
couple of comments.
2002-01-18 Richard Williamson <rjw@apple.com>
First pass at new view/datasource/controller API.
* Misc.subproj/WKException.h:
* Misc.subproj/WKException.m:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/WKDefaultWebController.h:
* WebView.subproj/WKDefaultWebController.mm: (+[WKObjectHolder
holderWithObject:]), (-[WKObjectHolder initWithObject:]), (-[WKObjectHolder
dealloc]), (-[WKObjectHolder copyWithZone:]), (-[WKObjectHolder hash]),
(-[WKObjectHolder object]), (-[WKObjectHolder isEqual:]),
(-[WKDefaultWebController initWithView:dataSource:]), (-[WKDefaultWebController
dealloc]), (-[WKDefaultWebController setDirectsAllLinksToSystemBrowser:]),
(-[WKDefaultWebController directsAllLinksToSystemBrowser]),
(-[WKDefaultWebController setView:andDataSource:]), (-[WKDefaultWebController
viewForDataSource:]), (-[WKDefaultWebController dataSourceForView:]),
(-[WKDefaultWebController mainView]), (-[WKDefaultWebController mainDataSource]),
(-[WKDefaultWebController createViewForDataSource:inFrameNamed:]),
(-[WKDefaultWebController createViewForDataSource:inIFrame:]),
(-[WKDefaultWebController setStatusText:forDataSource:]),
(-[WKDefaultWebController statusTextForDataSource:]), (-[WKDefaultWebController
authenticate:]), (-[WKDefaultWebController
receivedProgress:forResource:fromDataSource:]), (-[WKDefaultWebController
receivedError:forResource:partialProgress:fromDataSource:]),
(-[WKDefaultWebController locationWillChangeTo:]), (-[WKDefaultWebController
locationChangeStartedForDataSource:]), (-[WKDefaultWebController
locationChangeInProgressForDataSource:]), (-[WKDefaultWebController
locationChangeDone:forDataSource:]), (-[WKDefaultWebController
receivedPageTitle:forDataSource:]), (-[WKDefaultWebController
serverRedirectTo:forDataSource:]):
* WebView.subproj/WKDefaultWebControllerPrivate.h:
* WebView.subproj/WKDefaultWebControllerPrivate.mm:
(-[WKDefaultWebControllerPrivate init]), (-[WKDefaultWebControllerPrivate
dealloc]):
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebController.mm:
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebDataSource.mm: (-[WKWebDataSource _commonInitialization]),
(-[WKWebDataSource initWithURL:]), (-[WKWebDataSource parent]),
(-[WKWebDataSource isMainDocument]), (-[WKWebDataSource children]),
(-[WKWebDataSource frameNames]), (-[WKWebDataSource
findDataSourceForFrameNamed:]), (-[WKWebDataSource frameExists:]),
(-[WKWebDataSource openURL:inFrameNamed:]), (-[WKWebDataSource
openURL:inIFrame:]), (-[WKWebDataSource controller]), (-[WKWebDataSource
inputURL]), (-[WKWebDataSource finalURL]), (-[WKWebDataSource wasRedirected]),
(-[WKWebDataSource startLoading:]), (-[WKWebDataSource stopLoading]),
(-[WKWebDataSource isLoading]), (-[WKWebDataSource documentText]),
(-[WKWebDataSource base]), (-[WKWebDataSource baseTarget]), (-[WKWebDataSource
encoding]), (-[WKWebDataSource setUserStyleSheetFromURL:]), (-[WKWebDataSource
setUserStyleSheetFromString:]), (-[WKWebDataSource icon]), (-[WKWebDataSource
isPageSecure]), (-[WKWebDataSource pageTitle]):
* WebView.subproj/WKWebDataSourcePrivate.h:
* WebView.subproj/WKWebDataSourcePrivate.mm: (-[WKWebDataSourcePrivate init]),
(-[WKWebDataSourcePrivate dealloc]), (-[WKWebDataSource _setController:]),
(-[WKWebDataSource _part]):
* WebView.subproj/WKWebView.h:
* WebView.subproj/WKWebView.mm: (-[WKWebView initWithFrame:]), (-[WKWebView
dealloc]), (-[WKWebView controller]), (-[WKWebView dataSourceChanged]),
(-[WKWebView layout]), (-[WKWebView stopAnimations]), (-[WKWebView
setFontSizes:]), (-[WKWebView fontSizes]), (-[WKWebView resetFontSizes]),
(-[WKWebView setStandardFont:]), (-[WKWebView standardFont]), (-[WKWebView
setFixedFont:]), (-[WKWebView fixedFont]), (-[WKWebView setCanDragFrom:]),
(-[WKWebView canDragFrom]), (-[WKWebView setCanDragTo:]), (-[WKWebView
canDragTo]), (-[WKWebView defaultContextMenuItemsForNode:]), (-[WKWebView
setContextMenusEnabled:]), (-[WKWebView deselectText]), (-[WKWebView
searchFor:direction:caseSensitive:]), (-[WKWebView selectedText]), (-[WKWebView
delayLayout:]), (-[WKWebView notificationReceived:]), (-[WKWebView
setNeedsLayout:]), (-[WKWebView drawRect:]), (-[WKWebView setIsFlipped:]),
(-[WKWebView isFlipped]), (-[WKWebView setFrame:]), (-[WKWebView mouseUp:]),
(-[WKWebView mouseDown:]), (-[WKWebView mouseDragged:]):
* WebView.subproj/WKWebViewPrivate.h:
* WebView.subproj/WKWebViewPrivate.mm: (-[WKWebViewPrivate init]),
(-[WKWebViewPrivate dealloc]), (-[WKWebView _resetView]), (-[WKWebView
_setController:]):
2002-01-14 Maciej Stachowiak <mjs@apple.com>
Convert build system to automake
* Makefile.am: Add this
* Makefile.in: Remove this (now autogenerated)
* .cvsignore: Fix ignores
* WebKit.pbproj/project.pbxproj: Twiddle link flags
2001-12-21 John Sullivan <sullivan@apple.com>
* .cvsignore:
* WebKit.pbproj/.cvsignore:
Added files that were showing up on my machine to .cvsignores.
2001-12-18 Kenneth Kocienda <kocienda@apple.com>
Deleted one little word
* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
2001-12-18 Richard Williamson <rjw@apple.com>
Restructing of headers in prepartion for implementation. Added new WK*
headers to PB project description.
* ChangeLog:
* WebKit.pbproj/project.pbxproj:
* WebView.subproj/NSWebPageDataSource.h:
* WebView.subproj/NSWebPageDataSource.mm:
* WebView.subproj/NSWebPageDataSourcePrivate.h:
* WebView.subproj/NSWebPageView.h:
* WebView.subproj/NSWebPageView.mm:
* WebView.subproj/NSWebPageViewPrivate.h:
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebController.mm:
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebDataSource.mm: (+[WKWebDataSource initialize]):
* WebView.subproj/WKWebDataSourcePrivate.h:
* WebView.subproj/WKWebView.h:
* WebView.subproj/WKWebView.mm:
* WebView.subproj/WKWebViewPrivate.h:
2001-12-18 Kenneth Kocienda <kocienda@apple.com>
Updated the white paper text and graphics.
* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:
* Documentation/WebKit-White-Paper/images/webkit-classes.jpg:
2001-12-18 Kenneth Kocienda <kocienda@apple.com>
Merged "Changes" information into individual files
* Cache.subproj/WKLoadChunk.h:
* Cache.subproj/WKWebCache.h:
* Cache.subproj/WKWebCacheClient.h:
* Cache.subproj/WKWebContentType.h:
2001-12-17 Kenneth Kocienda <kocienda@apple.com>
Fixed small cpp glitch in WKWebCache.
Added WKAttributedURL header.
Updated WKBackForwardList with ifdef'ed out new design.
* Cache.subproj/WKWebCache.h:
* History.subproj/WKAttributedURL.h:
* History.subproj/WKBackForwardList.h:
2001-12-17 Kenneth Kocienda <kocienda@apple.com>
Added header files by chopping up the CacheAPI.h document I have been working on.
* Cache.subproj/WKLoadChunk.h:
* Cache.subproj/WKWebCache.h:
* Cache.subproj/WKWebCacheClient.h:
* Cache.subproj/WKWebContentType.h:
2001-12-17 Kenneth Kocienda <kocienda@apple.com>
Did some verb tense cleanup.
* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
2001-12-17 Kenneth Kocienda <kocienda@apple.com>
Added the current draft of the WebKit white paper.
* Documentation/WebKit-White-Paper/WebKit-White-Paper.html:
* Documentation/WebKit-White-Paper/images/webkit-cache-loader.jpg:
2001-12-14 Richard Williamson <rjw@apple.com>
Remove WKContextMenuHandler for want of a better way to describe the
not-yet-existing WKDOMNode. We can't think of any initial clients that want
to override the default behavior anyway. Put it in WKGrabBag.h for now.
* WebView.subproj/WKWebController.h:
2001-12-14 Richard Williamson <rjw@apple.com>
Remove explicit API to get/set the selection range. This will be postponed until we
have a DOM API that allows us to express selection ranges correctly. Instead we have API
that should support searching and getting a NSAttributedString that corresponds to
the selected text.
Added the following methods:
- (void)searchFor: (NSString *)string direction: (BOOL)forward caseSensitive: (BOOL)case
- deselectText;
- (NSAttributedString *)selectedText;
* WebView.subproj/WKWebView.h:
Moved search API to WKWebView.
Moved WKPreferences to a new file, WKPreferences.h. We are still discussing
this item and it will not make it into the white paper.
Minor naming changes.
* WebView.subproj/WKDataSource.h:
2001-12-14 Maciej Stachowiak <mjs@apple.com>
Simplified WKLocationChangeHandler and updated
WKAuthenticationHandler.
* WebView.subproj/WKWebController.h:
(WKWebDataSource): Renamed methods to be forDataSource, not
byDataSource.
(-[WKWebDataSource locationChangeInProgressForDataSource:]): Added.
(-[WKWebDataSource locationChangeDone:forDataSource:]): Added as a
collapsed version of locationChangeCancelled:,
locationChangeStopped: and locationChangeFinished:.
(WKSimpleAuthenticationResult, WKSimpleAuthenticationRequest):
made these interfaces instead of structs.
2001-12-14 Maciej Stachowiak <mjs@apple.com>
Minor cleanups, mostly for naming consistency.
* WebView.subproj/WKWebController.h:
(WKSimpleAuthenticationRequest) name field `url', not `uri'.
(-[WKWebDataSourceErrorHandler receivedError:forDataSource:]):
renamed from `error:inDataSource:' so that it's a verb phrase.
* WebView.subproj/WKWebDataSource.h:
(-[WKWebDataSource initWithURL:]): Rename `inputUrl' argument to
`inputURL'.
(-[WKWebDataSource initWithLoader:]): Change argument type from
`WKURILoader' to `WKLoader'.
(-[WKWebDataSource wasRedirected]): Renamed from `isRedirected',
the past tense seems more appropriate here.
(-[WKWebDataSource setJavaEnabled:]): Add missing semicolon.
(-[WKWebDataSource pluginsEnabled:]): renamed from `pluginEnabled'
for consistency with `setPluginsEnabled:'.
* WebView.subproj/WKWebView.h:
(-[WKWebView fontSizes]): renamed from `fontSize' for sonsistency
with `setFontSizes:'.
(-[WKWebView setContextMenusEnabled]): renamed from
'setEnableContextMenus:' for consistency with
`contextMenusenabled'.
2001-12-14 Maciej Stachowiak <mjs@apple.com>
After discussion with Don, Removed all methods relating to
resolved URLs, since browsers don't actually treat aliases
specially.
* WebView.subproj/WKWebController.h: removed inputURLresolvedTo: methods.
* WebView.subproj/WKWebDataSource.h: remove resolvedURL method,
and mentions of it in comments.
2001-12-13 Richard Williamson <rjw@apple.com>
Removed WKFrameSetHandler, placed that functionality on WKWebDataSource.
Changed WKLocationChangeHandler to add a parameter specifying the data source
that sent the message.
* WebView.subproj/WKWebController.h:
2001-12-13 Maciej Stachowiak <mjs@apple.com>
Warning fixes and support to pass the http headers along with
cache data items
* Cache.subproj/NSURICacheData.h, Cache.subproj/NSURICacheData.m:
(+[NSURICacheData
dataWithURL:status:error:headers:data:size:notificationString:userData:],
-[NSURICacheData
initWithURL:status:error:headers:data:size:notificationString:userData:]),
-[NSURICacheData dealloc], -[NSURICacheData error],
-[NSURICacheData headers]:
NSURICacheData now carries a copy of the response headers
dictionary.
* Cache.subproj/NSURICache.m: include "WCURICache.h" to fix warnings.
(-[NSURICache requestWithURL:requestor:userData:]):
Handle headers in CacheData.
* Cache.subproj/NSURILoad.h, Cache.subproj/NSURILoad.m:
(-[NSURILoad __NSURILoadReadStreamCallback:event:data:],
-[NSURILoad headers], -[NSURILoad dealloc], -[NSURILoad done]):
An NSURILoad object now carries the response headers associated
with its connection, if any.
* History.subproj/WKBackForwardList.m: include WCBackForwardList.h
to fix warning.
* History.subproj/WKURIEntry.m: include WCURIEntry.h to fix
warning.
* Misc.subproj/WebKitDebug.h: Use (void) for C prototypes, not ().
* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource
initialize]): Remove unused variable to fix warning.
* WebKit.pbproj/project.pbxproj: Enable many warning flags and -Werror
2001-12-13 Maciej Stachowiak <mjs@apple.com>
* WebView.subproj/WKWebController.h: Defined initial version of
WKAuthenticationHandler interface, and associated
WKSimpleAuthenticationRequest and WKSimpleAuthenticationResult
structs.
2001-12-13 Richard Williamson <rjw@apple.com>
Remove setBase: and setBaseTarget:
Changed return type of baseTarget to (NSString *)
Added the following two methods:
- (WKDataSource *)parent;
- (NSArry *)children;
- (BOOL)isMainDocument;
Added the following methods:
- (NSArray *)frameNames;
- (WKWebDataSource) findDataSourceForFrameNamed: (NSString *)name;
- (BOOL)frameExists: (NSString *)name;
- (void)openURL: (NSURL *)url inFrameNamed: (NSString *)frameName;
- (void)openURL: (NSURL *)url inIFrame: (id)iFrameIdentifier;
* WebView.subproj/WKWebDataSource.h:
2001-12-12 Richard Williamson <rjw@apple.com>
Changed WKConcreteWebController to WKDefaultWebController.
Changed WKLocationChangedHandler naming, replace "loadingXXX" with
"locationChangeXXX".
Changed loadingStopped in WKLocationChangedHandler to locationChangeStopped:(WKError *).
Changed loadingCancelled in WKLocationChangedHandler to locationChangeCancelled:(WKError *).
Changed loadedPageTitle in WKLocationChangedHandler to receivedPageTitle:.
Added inputURL:(NSURL *) resolvedTo: (NSURL *) to WKLocationChangedHandler.
Added the following two methods to WKLocationChangedHandler:
- (void)inputURL: (NSURL *)inputURL resolvedTo: (NSURL *)resolvedURL;
- (void)serverRedirectTo: (NSURL *)url;
Put locationWillChangeTo: back on WKLocationChangedHandler.
Changed XXXforLocation in WKLoadHandler to XXXforResource.
Changed timeoutForLocation: in WKLoadHandler to receivedError:forResource:partialProgress:
Added the following two methods to WKDefaultWebController:
- setDirectsAllLinksToSystemBrowser: (BOOL)flag
- (BOOL)directsAllLinksToSystemBrowser;
Removed WKError. This will be described in WKError.h.
* WebView.subproj/WKWebController.h:
2001-12-12 Richard Williamson <rjw@apple.com>
After group discussion we decided to classify API as :
Tier 1: Needed by our browser (or Sherlock).
Tier 2: Nedded by Apple internal clients (Mail, Help, PB, other TBD).
Tier 3: Third party software vendors.
Added finalURL and isRedirected.
* WebView.subproj/WKWebDataSource.h:
2001-12-11 Chris Blumenberg <cblu@apple.com>
* ChangeLog:
* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):
2001-12-11 Chris Blumenberg <cblu@apple.com>
* WebView.subproj/NSWebPageDataSource.mm: (+[NSWebPageDataSource initialize]):
2001-12-10 John Sullivan <sullivan@apple.com>
* WebView.subproj/WKWebController.h:
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebView.h:
Fixed some typos and misspellings.
2001-12-07 Richard Williamson <rjw@apple.com>
* WebView.subproj/NSWebPageDataSource.h:
* WebView.subproj/NSWebPageDataSourcePrivate.h:
* WebView.subproj/NSWebPageView.h:
First pass at API for WKWebView and WKWebDataSource. Note
that we have to change names from NS to WK! The new API is conditionally
excluded #ifdef READY_FOR_PRIMETIME
Added these files:
* WebView.subproj/WKWebDataSource.h:
* WebView.subproj/WKWebView.h:
* WebView.subproj/WKWebController.h:
2001-12-06 Maciej Stachowiak <mjs@apple.com>
* Cache.subproj/NSURICacheData.m: (+[NSURICacheData
dataWithURL:status:error:data:size:notificationString:userData:]),
(-[NSURICacheData
initWithURL:status:error:data:size:notificationString:userData:]):
Remove redundant semicolons between the end of the prototype and
the open brace, because they confuse the changelog script.
|