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
|
2004-04-24 Theppitak Karoonboonyanan <thep@linux.thai.net>
Patch to add support for string conversion callbacks to
GtkIMContextXIM (#101814)
* modules/input/gtkimcontextxim.c: Set the string conversion callback
if supported by the XIC.
(struct _GtkIMContextXIM): Add string_conversion_callback member.
(struct _GtkXIMInfo, setup_im): Check and keep flag inidicating
whether string conversion callback is supported.
(gtk_im_context_get_ic, +set_string_conversion_callback,
+string_conversion_callback): Also initialize string conversion
callback, if supported, along with the IC initialization.
* modules/input/imxim.c: Make "xim" module default for Thai as well.
2004-04-23 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkclipboard.c (gtk_clipboard_wait_for_targets): Correctly
initialize targets. (#139883, John Finlay)
* gdk/gdkdraw.c (gdk_draw_drawable): Small doc improvement.
* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
Don't recommend gtk_tree_row_reference_new_proxy(). (#138309,
Tim-Philipp MĆ¼ller)
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_cell_data):
Remove an excessive g_return_if_fail().
* gdk/x11/gdkevents-x11.c (set_user_time): Make set_user_time()
static.
* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event):
_-prefix calls of gdk_x11_window_set_user_time().
2004-04-22 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (update_node): Make sure the separators
used to demarkate placeholder ends don't show up on
show_all(). (#140496, Murray Cumming)
* gtk/gtkspinbutton.c (spin_button_at_limit): Make spinbuttons
work with negative increments. (#137975, Tim Gerla)
Wed Apr 21 21:38:03 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.c (gtk_tool_button_set_label_widget,
gtk_tool_button_set_icon_widget): Remove the old widget from the
tool button before overwriting it with the new widget.
(#140508, Todd Goyen)
2004-04-22 Tor Lillqvist <tml@iki.fi>
Fix the file chooser on Windows. I can't make it misbehave or
crash any more now. But presumably there are still corner cases
not handled. I haven't really checked behaviour of UNC paths, for
instance.
* gtk/gtkfilesystemwin32.c: Accept both backslash and slash in
several places. Use G_IS_DIR_SEPARATOR macro (which could be added
to GLib in 2.6).
(gtk_file_system_win32_get_parent): Like the Unix version, assert
filename is absolute, and avoid one unnecessary string allocation
and freeing.
(canonicalize_filename,gtk_file_system_win32_parse): Handle drive
letters more correctly.
(gtk_file_system_win32_render_icon): Assure correct syntax is used
for root folder of a drive. (#137962, Morten Welinder)
(filename_is_some_root): New function that accepts also root
without any drive specified.
(filename_is_drive_root): Rename from filename_is_root.
* gtk/gtkfilechooserentry.c (completion_match_func): Casefold on
Windows.
2004-04-21 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (gtk_entry_completion_timeout): Pop down the
completion window if there are no completions anymore.
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Don't call gtk_tree_view_scroll_to_cell() on an empty tree view.
It doesn't like that. (#140642, Christian Persch)
* demos/gtk-demo/expander.c (do_expander): A new demo.
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
2004-04-20 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
sure anchored children get size allocated, even if the layout
is valid. (#122323, Andrew E. Makeev)
(gtk_text_view_scroll_pages):
(gtk_text_view_scroll_hpages): Don't scroll to cursor position
if we already have pending scrolls. Bandaid fix for #78513.
Mon Apr 19 17:59:17 2004 Owen Taylor <otaylor@redhat.com>
* INSTALL.in: Update libpng and libjpeg URLs, remove
note about building without since that's not the normal
case.
Sun Apr 11 09:45:11 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c (load_themes): Fix a couple of typos in
handling of SVG/non-SVG unthemed icons.
2004-04-19 Morten Welinder <terra@gnome.org>
* gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of
children. (#140523)
2004-04-19 Matthias Clasen <mclasen@redhat.com>
* gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
Don't stop the iteration up to the tag_root too
early. (#109945, Dongho Shin)
Sun Apr 18 17:06:03 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/x11/gdkkeys-x11.c (get_effective_keymap): Make
gdk_keymap_translate_keyboard_state() handle NULL
keymaps. (#139715, Torsten Schoenfeld).
Sun Apr 18 16:59:21 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* configure.in: Don't erase GDK_EXTRA_CFLAGS. Fixes bug 139586,
reported by Pedro RODRIGUEZ, about compilation problems when
Xcursor is installed in a non-standard location.
Sun Apr 18 16:15:15 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Support for _NET_WM_USER_TIME (bug 115650). Patch by Elijah
Newren.
* gdk/x11/gdkwindow-x11.[ch]: Add new internal function
_gdk_x11_set_user_time() to set the _NET_WM_USER_TIME property.
* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add user_time field
* gdk/x11/gdkdisplay-x11.c: Add _NET_WM_USER_TIME to list of
precached atoms.
* gdk/x11/gdkinput-x11.c, gdk/x11/gdkevents-x11.c: Set the
property on user interaction.
2004-04-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesel.c (open_new_dir): Tell the user to use
G_FILENAME_ENCODING, not G_BROKEN_FILENAMES. Fixes #114065.
* gtk/gtkfilechooserdefault.c (split_uris): Use a variant of the
code from gtkfilesel.c to parse a "text/uri-list" blob. Fixes
#140126.
2004-04-15 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init):
* gtk/gtkbutton.c (gtk_button_class_init): Doc fixes.
2004-04-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcombobox.c:
* gtk/gtkwidget.c:
Make all style properties readonly.
2004-04-14 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkcolorsel.c: Add a11y relations between the color
wheel and the spin buttons. (#132745, Padraig, O'Briain)
* gtk/gtkiconfactory.c (gtk_icon_set_render_icon): Document
the meaning of size == -1.
* gtk/gtkwidget.c (gtk_widget_render_icon): Explicitly accept
a size of -1. (#137436, Brian Cameron)
* gtk/gtkcombobox.c: Make the arrow and separator regular
children of an hbox inside the button, and propagate state
changes from the button to the cell view. (part of the fix
for #138650, should also fix #137535)
* gtk/gtkcellview.c (gtk_cell_view_expose): Pass the PRELIT
state to gtk_cell_renderer_render() when prelighted. (part
of the fix for #138650)
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
Use PRELIGHT state when appropriate. (part of the fix for
#138650)
* gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't spit
out warnings if called before the combo box is
realized. (#139742, Philip Langdale)
Wed Apr 14 03:45:39 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_expose): propagate expose
events to children.
Wed Apr 14 03:32:58 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (make_directory_button): remove spurious
gtk_box_pack_start.
Tue Apr 13 16:19:23 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkpathbar.c (make_directory_button): patch from Owen to
make the buttons sized by a bold label. This makes the text
'swim' a little, but stops the buttons from resizing, #137210
2004-04-13 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkuimanager.c (get_child_node): Don't crash if a node
has no name.
(start_element_handler): Accept separators without unique
names. (#133302, Anders Carlsson)
* gtk/gtkactiongroup.c (gtk_action_group_add_action): Document
possible accelerator gotcha when using this function. (#139641,
Christian Persch)
* gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
list nodes. (#138862, Morten Welinder)
Tue Apr 13 12:24:49 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_destroy): remove unused
variable.
(gtk_tree_view_button_press): If we activated the row we don't
want to grab focus back, as moving focus to another widget is
pretty common, #138458
2004-04-12 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Added
documentation to all the signals.
2004-04-12 Matthias Clasen <mclasen@dhcp64-228.boston.redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't unref
model if it is NULL. (#139770)
* gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Typo fix.
* gtk/gtkentrycompletion.c (gtk_entry_completion_init): Don't add
a shadow inside the scrolled window, add it around the vbox.
* gtk/gtkentryprivate.h:
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Return a boolean indicating whether the popup is positioned above
or below. Scroll the completions to the beginning or the end,
depending on the positioning.
* gtk/gtkentry.c (gtk_entry_completion_key_press): Make keynav
wrap around in the entry completion popup, and allow GDK_UP to
enter the popup. (#137440)
2004-04-12 Matthias Clasen <mclasen@redhat.com>
* gtk/gtkentry.c (gtk_entry_size_request): Make sure the style is
there before using it.
Sun Apr 11 15:08:45 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeprivate.h: Moved search entries into priv data.
* gtk/gtktreeview.c: Prep for type-ahead support.
(gtk_tree_view_destroy): Destroy the search window explicitly.
(gtk_tree_view_key_press): Minor change; prep for type-ahead
(gtk_tree_view_ensure_interactive_directory): New function
(gtk_tree_view_focus_out): Rework to handle new entry life-cycle.
(gtk_tree_view_real_start_interactive_search): rework
(gtk_tree_view_search_dialog_hide): ditto
(gtk_tree_view_search_delete_event): ditto
(gtk_tree_view_search_button_press_event): ditto
(gtk_tree_view_search_key_press_event): ditto
(gtk_tree_view_search_move): ditto
(gtk_tree_view_search_init): ditto
* gtk/gtktreeviewcolumn.c:
(gtk_tree_view_column_cell_layout_clear): remove unused variable.
* tests/testfilechooser.c: (main): change
2004-04-11 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkspawn-win32.c : workaround for bug #137496,
the real fix would involve just another small API breakage,
i.e. gdk_spawn_* using GPid not just gint.
* gtk/makefile.msc.in : build gtk-win32.res, not gtk.res
2004-04-10 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkkeys-win32.c (gdk_keymap_translate_keyboard_state):
If both Shift and CapsLock pressed, ignore the shift only for
letters (that would have been affected by the CapsLock). (#139095)
* gdk/win32/gdkglobals-win32.c: Disable tablet support by default,
seems to be even buggier now than it used to be. (#138341)
Initialize _gdk_input_ignore_wintab to TRUE.
* gdk/win32/gdkmain-win32.c: Add --use-wintab switch and
GDK_USE_WINTAB environment variable to turn on tablet support.
2004-04-09 Christian Persch <chpe@cvs.gnome.org>
* gtk/gtkuimanager.c: (gtk_ui_manager_insert_action_group),
(gtk_ui_manager_remove_action_group): Terminate
g_object_[dis]connect() calls with NULL instead of 0.
Fixes #138997.
2004-04-09 Guntupalli Karunakar <karunakar@freedomink.org>
* configure.in: Added "gu" (Gujarati) to ALL_LINGUAS.
2004-04-07 Federico Mena Quintero <federico@ximian.com>
Fix #132500.
* gtk/gtkfilesystem.c (gtk_file_system_parse): Ensure that the
passed-in 'str' is not NULL.
* gtk/gtkfilesystemunix.c (expand_tilde): New helper function;
expands "~/" or "~foo/" at the beginning of a filename.
(gtk_file_system_unix_parse): Use expand_tilde() before doing
anything else.
* gtk/gtkfilechooserentry.c
(gtk_file_chooser_entry_maybe_update_directory): Take in a
force_reload argument.
(gtk_file_chooser_entry_changed): If gtk_file_system_parse()
returns an error, set the file_part_pos to -1.
(load_directory_callback): Only populate the model if the
file_part_pos is not -1.
2004-04-06 Pablo Saratxaga <pablo@mandrakesoft.com>
* configure.in: Added Icelandic (is) to ALL_LINGUAS
2004-04-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (location_popup_handler): Use a
title for SAVE and CREATE_FOLDER modes. Fixes #137272.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Look
for G_DIR_SEPARATOR in the display_name, and err out if it is
present; use the same error message as Nautilus. Fixes #136467.
* gtk/gtkfilechooserdefault.c (file_pane_create): Make the
new-folder button say "Create Fo_lder" rather than "Create
_Folder", so that the mnemonic doesn't conflict with the "Save in
_folder" label. Fixes #136975.
2004-04-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
buttons. Also, free them correctly upon failure. Based on a
patch by Morten Welinder, fixes #137956.
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
Fri Apr 2 17:57:33 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_row_inserted): set the height
correctly for fixed height when inserting a node, #138082
2004-04-01 Federico Mena Quintero <federico@ximian.com>
Fix #136077.
* gtk/gtkpathbar.h (struct _GtkPathBarClass): Add a
"child_is_hidden" boolean argument to the "path-clicked" signal.
* gtk/gtkpathbar.c (struct _ButtonData): Added a file_is_hidden
field.
(make_directory_button): Take a file_is_hidden argument; put it in
the ButtonData.
(_gtk_path_bar_set_path): See whether each path component path is
a hidden file.
(gtk_path_bar_class_init): Add the file_is_hidden argument to the
"path-clicked" signal.
(button_clicked_cb): See if the downwards button represents a
hidden file for the file_is_hidden argument in the signal
emission.
* gtk/gtkmarshalers.list: Added a signal type VOID:POINTER,BOOLEAN.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_select_path): If we fail to switch
folders, don't try to select the path in the file system model.
Also, return the result from _gtk_file_system_model_path_do().
(gtk_file_chooser_default_select_path): Turn on show_hidden in the
file system model if we are asked to select a hidden file.
(path_bar_clicked): Show hidden files based on whether the
immediate downwards folder in the path bar is a hidden file
itself.
(struct _GtkFileChooserDefault): Added fields
browse_files_popup_menu and browse_files_popup_menu_hidden_files_item.
(create_file_list): Set an object data key of
"GtkFileChooserDefault" on the tree view so that we can find the
impl from the popup menu callbacks. Also, hook up to the
"button-press-event" and "popup-menu" signals in the file list to
bring up a popup menu.
(list_popup_menu_cb): New callback.
(list_button_press_event_cb): New callback.
Fix #138763:
* gtk/gtkfilesystemmodel.c
(_gtk_file_system_model_new): Oops, connect_object to
"finished-loading".
2004-03-31 Tor Lillqvist <tml@iki.fi>
* configure.in: Move AC_CANONICAL_HOST earlier, before the check
for native Win32. (#136559, J. Ali Harlow)
* gdk/win32/gdkdrawable-win32.c (draw_arc): Use X11 semantics for
angles. Thanks to Tim Newsham.
2004-03-29 Federico Mena Quintero <federico@ximian.com>
Fix #137520.
* gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
for an ::is_finished_loading() method and a ::finished_loading()
signal at the end of the struct.
* gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
"finished-loading" signal.
(gtk_file_folder_is_finished_loading): New function.
* gtk/gtkfilesystemunix.c
(gtk_file_folder_unix_is_finished_loading): Implement.
* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
slot for a "finished-loading" signal.
(gtk_file_system_model_class_init): Create the "finished-loading"
signal.
(struct _GtkFileSystemModel): New field
idle_finished_loading_source. We emit the "finished-loading"
signal in an idle if the root folder was done loading right in
_gtk_file_system_model_new(), so that the caller has a chance to
connect to the signal.
(_gtk_file_system_model_new): Connect to the normal signals of the
folder even if the initial _list_children() fails. Also, see if
the folder is finished loading; connect to the "finished-loading"
signal otherwise.
(gtk_file_system_model_finalize): Remove the idle handler.
* gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
and connect to the model's "finished-loading" signal.
(get_toplevel): New helper function.
(error_message): Use get_toplevel().
(trap_activate_cb): Likewise.
(location_popup_handler): Likewise.
(set_busy_cursor): New function.
(browse_files_model_finished_loading_cb): New callback.
2004-03-25 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (check_preview_change): Just use the
file under the cursor; we don't need the logic from
GtkFileSelection after all. Fixes #132255.
2004-03-25 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (location_entry_create): Fill the
location entry with the display name of the file under the cursor
for Open mode, or the typed filename in Save mode.
2004-03-24 J. Ali Harlow <ali@juiblex.co.uk>
* gtk/gtkfilesystemwin32.c
(filename_is_root): Bare drive designators (eg., "c:") are
no longer considered as root filenames. Fixed #137942
2004-03-24 J. Ali Harlow <ali@juiblex.co.uk>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_create_folder): Invert test for error in
mkdir. Fixes #137945
2004-03-24 J. Ali Harlow <ali@juiblex.co.uk>
Fixed #138004 using Federico's code from #132327.
* gtk/gtkfilesystemwin32.c (struct _GtkFileSystemWin32): Add a
folder_hash field to keep a list of live folder objects.
(gtk_file_system_win32_init): Create the folder_hash.
(gtk_file_system_win32_finalize): Destroy the folder_hash.
(gtk_file_system_win32_get_folder): Ref and return an existing
folder if we have it around, otherwise return a new folder object.
(struct _GtkFileFolderWin32): Add a field for the parent file system.
(gtk_file_folder_win32_finalize): Remove the folder from the file
system's hash table.
(gtk_file_system_win32_create_folder): Emit "files-added" on the
newly-created folder's parent. Fixes #138004.
2004-03-24 J. Ali Harlow <ali@juiblex.co.uk>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_get_folder): Test that path is actually
a directory and throw error if not. Fixed bug #137950
2004-03-22 J. Ali Harlow <ali@juiblex.co.uk>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_volume_get_display_name): Ignore empty
volume labels; assume that GetVolumeInformation would fail if
GetVolumeInformationW does; catches a small memory leak;
pass the buffer size to GetVolumeInformationW in wide
characters instead of bytes. Fixes bug #137543
(list_volumes): Cope with the theoretical possibility of
more than 26 logical drives. Fixes bug #137940
(bookmarks_serialize): Now actually removes bookmarks.
Fixes bug #137943
2004-03-22 Guntupalli Karunakar <karunakar@freedomink.org>
* configure.in: Added "pa" (Punjabi) to ALL_LINGUAS.
2004-03-21 Tor Lillqvist <tml@iki.fi>
* gtk/gtkfilesystemwin32.c
(gtk_file_system_win32_volume_get_base_path): Include the
backslash. Otherwise gtk_file_system_win32_path_to_uri() returns
NULL for a volume base path, as g_filename_to_uri() requires an
absolute path, and just a drive letter and colon isn't. (#137543)
2004-03-20 Hans Breuer <hans@breuer.org>
* gtk/gtkfilesystemwin32.c : applied the undisputable and
required [due to recent gtkfilesystem internal api semantic
changes] part of patches to fix bug #137543 (Tor Lillqvist,
J. Ali Harlow)
* gdk/gdkevents-win32.c (handle_configure_event) :
(gdk_event_translate), WM_WINDOWPOSCHANGED : initialize
GdkWindowObject::x, y with screen coords to make
gdk_window_get_position () return the right thing and thus fix
drag and drop positioning (e.g. Gimp tabs, fixes bug #137192)
2004-03-19 Federico Mena Quintero <federico@ximian.com>
* Revert the patch to #137520, as 2.4.1 is for conservative bug
fixes only. The patch is attached to the bug report, for
reference.
2004-03-19 Morten Welinder <terra@gnome.org>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_current_folder): Test existance of
the path after checking for locality, if needed.
2004-03-19 Federico Mena Quintero <federico@ximian.com>
Fix #137520.
* gtk/gtkfilesystem.h (struct _GtkFileFolderIface): Added slots
for an ::is_finished_loading() method and a ::finished_loading()
signal at the end of the struct.
* gtk/gtkfilesystem.c (gtk_file_folder_base_init): Create the
"finished-loading" signal.
(gtk_file_folder_is_finished_loading): New function.
* gtk/gtkfilesystemunix.c
(gtk_file_folder_unix_is_finished_loading): Implement.
* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModelClass): New
slot for a "finished-loading" signal.
(gtk_file_system_model_class_init): Create the "finished-loading"
signal.
(struct _GtkFileSystemModel): New field
idle_finished_loading_source. We emit the "finished-loading"
signal in an idle if the root folder was done loading right in
_gtk_file_system_model_new(), so that the caller has a chance to
connect to the signal.
(_gtk_file_system_model_new): Connect to the normal signals of the
folder even if the initial _list_children() fails. Also, see if
the folder is finished loading; connect to the "finished-loading"
signal otherwise.
(gtk_file_system_model_finalize): Remove the idle handler.
* gtk/gtkfilechooserdefault.c (set_list_model): Set a busy cursor
and connect to the model's "finished-loading" signal.
(get_toplevel): New helper function.
(error_message): Use get_toplevel().
(trap_activate_cb): Likewise.
(location_popup_handler): Likewise.
(set_busy_cursor): New function.
(browse_files_model_finished_loading_cb): New callback.
Thu Mar 18 12:10:45 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeitem.c (gtk_tree_item_forall): Include
eventbox for expander. (#137564, reported by
Jacques Garrigue)
2004-03-18 Guntupalli Karunakar <karunakar@freedomink.org>
* mr.po: Added "mr" for Marathi to ALL_LINGUAS.
2004-03-17 Morten Welinder <terra@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free
volumes not actually put into the shortcut list.
* tests/prop-editor.c (object_changed): Plug leak.
* tests/testfilechooser.c (main): Plug some leaks and expose
others.
* tests/prop-editor.c (create_prop_editor): Don't leak the tooltip
object. Fixed #136652.
* gtk/gtkfilechooserdefault.c (check_icon_theme): Do nothing if we
have no screen. Fixes #137260.
(shortcuts_add_bookmark_from_path): Simplify using check_is_folder
thereby fixing leak. Fixes #137259.
* gtk/gtkpathbar.c (gtk_path_bar_forall): Make this work when the
slider buttons have been destroyed.
(gtk_path_bar_remove): Make this work for slider buttons too.
Fixes #137257
2004-03-15 Morten Welinder <terra@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
Sanitize and plug leak.
(check_icon_theme): Only do something if the widget has a screen.
Wed Mar 17 01:20:28 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
Move the repositioning logic from _gtk_entry_completion() popup
over here. Fixes #137355, reported by Niklas Knutsson.
Tue Mar 16 13:29:58 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.4.0 ===
* configure.in: Version 2.4.0, interface age 0;
require glib-2.4.0, pango-1.4.0.
* configure.in: Change gtk_binary_version to 2.4.0;
there are some compatibility issues with older theme engines.
* NEWS: Updates
* README.in: Updates
Tue Mar 16 13:54:07 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkentry.c (gtk_entry_completion_key_press): Block the
::changed handler during the ::match-selected when done by
keyboard.
Tue Mar 16 00:56:11 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (gtk_entry_completion_list_button_press):
Block the ::changed handler during the emission of ::match-selected.
Partial fix for #137226.
* gtk/gtkfilechooserentry.c: Remove the no longer needed
no_pop_down flag.
Tue Mar 16 00:20:51 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new_with_backend):
Fix a typo in the docs.
2004-03-15 Tor Lillqvist <tml@iki.fi>
* README.win32: Updates.
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (update_appearance): Only hide the
"create folder" button in OPEN mode; all the others should show it
it.
(get_paths_foreach): Handle the editable row.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder):
Force a re-get of the folder so that the new directory gets added
to its hash table of file info.
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (update_from_entry): In the Save
modes, set the Name entry of the file chooser if we get a
nonexistent filename from the file entry. Fixes #135911.
(gtk_file_chooser_default_set_current_name): Oops, this should
also work if we are in CREATE_FOLDER mode.
* gtk/gtkfilesystem.c (gtk_file_path_real_copy): Use
gtk_file_path_copy().
* gtk/gtkfilechooserentry.c (check_completion_callback): Free the
path that we got from the model.
(completion_match_func): Use DISPLAY_NAME_COLUMN rather than a
hard-coded constant.
Mon Mar 15 13:50:14 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
Don't leak the temporary font description. (Nils O. SelƄsdal)
Mon Mar 15 12:51:17 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (location_popup_handler): Only show
the title string in OPEN/SELECT_FOLDER mode as it's open-specific.
Put a blank title for SAVE/CREATE_FOLDER; we are in string freeze,
so we'll fix it for 2.4.1 as #137272.
* gtk/gtkpathbar.c (gtk_path_bar_scroll_down): calculate
space_available correctly for RTL mode. w/o this, you can't
scroll down again. Fixes #137021.
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkpathbar.c (gtk_path_bar_scroll_up): Queue a resize.
(gtk_path_bar_scroll_down): Likewise.
Mon Mar 15 11:40:43 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserentry.c: Store the position of the
file part and use that in check_completion_callback()
and match_selected_callback() to figure out where
to operate on the text, rather than recomputing the
information.
Mon Mar 15 10:35:19 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): set
changing_folders to be true so we don't trigger a callback when we
remove the selection
(shortcuts_add_bookmarks): ditto
Mon Mar 15 10:47:18 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserentry.c: s/seperator/separator/.
Mon Mar 15 09:54:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_focus): Check for
Control-Tab or Control-Shift-Tab, not any Control-key
as a current event ... handles the case where a dialog
is triggered from a control accelerator better.
Mon Mar 15 08:48:48 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserentry.c (match_selected_callback): implement
correctly.
(completion_match_func): Allow surpressing popdowns.
(maybe_append_seperator_to_path): New function to add a separator
item to a display_name. Bad hack.
(check_completion_callback): Implement select-ahead as an idle.
(add_completion_idle): new function to handle select-ahead
(gtk_file_chooser_entry_do_insert_text): starf the select-ahead
idle.
(gtk_file_chooser_entry_focus): Override tab for completion.
(gtk_file_chooser_entry_activate): commit select_ahead when
activated.
* gtk/gtkfilechooserdefault.c (location_popup_handler): grab the
appropriate widget for the mode.
2004-03-15 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkgc-win32.c (gdk_gc_copy): Don't just copy the whole
GdkGCWin32 with a single assignment, that overwrites GObject's
private data (for instance ref_count). (#137012, John Ehresman)
2004-03-15 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkfilechooserdefault.c: remove the unused "lowest_folder"
GtkFileChooserDefault member. Leftover from my original patch
for bug #136987.
Mon Mar 15 01:50:28 2004 Jonathan Blandford <jrb@gnome.org>
* gtkfilechooserentry.c: Rewritten to use the GtkEntryCompletion
API more correctly. Now pops down the dropdown well.
* gtkfilesystem.c (gtk_file_path_get_type): New boxed type for the
FilePath.
* test/testfilechooser.c: disable preview widget temporarily.
It's not representative of a good preview widget.
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_find_current_folder):
Renamed from shortcuts_unselect_all(); now selects the row that
corresponds to the current folder, if any. Fixes #135916.
* gtk/gtkpathbar.h: Added prototypes for _gtk_path_bar_up() and
_gtk_path_bar_down().
2004-03-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c: Surround the
drag-outside-to-remove-bookmarks code with "#if 0" blocks; it's
too unstable right now.
Sun Mar 14 23:36:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserdefault.c: Implement local_only by
filtering the shortcuts and bookmarks list by
gtk_file_system_path_to_filename (file_system, path) != NULL.
(#132894)
* gtk/gtkfilesystem.c (gtk_file_system_path_is_local): Add
a convenience function, may by interesting to push to the
file system vtable later for performance.
2004-03-14 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.c (gtk_file_folder_get_info): Allow the path
to be NULL, so that people can ask for information about a
parent-less file system root (e.g. get_info (get_folder ("/"), NULL)).
* gtk/gtkfilesystemunix.c (gtk_file_folder_unix_get_info): Allow
the condition describe above.
* gtk/gtkfilechooserdefault.c (get_file_info): Allow getting
information of root paths.
* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Handle root paths correctly.
Sun Mar 14 22:32:36 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_search_equal_func): Mention
GtkTreeViewSearchEqualFunc return value oddity here as well.
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): On failure
to get a string to compare to, return TRUE (no match), not
FALSE (match). Handle %NULL string values gracefully.
Remove unused variable. (#135962, Mark McLoughlin)
2004-03-14 Morten Welinder <terra@gnome.org>
* gtk/gtkfilesystemunix.c: Kill some debug g_prints.
Sun Mar 14 21:03:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkpathbar.[ch]: Add _gtk_path_bar_up()/
_gtk_path_bar_down().
* gtk/gtkfilechooserdefault.c: Use _gtk_path_bar_up()/
_gtk_path_bar_down() as bindings for Alt-Up
and new Alt-Down. (Partly based on a patch by
Mark McLoughlin, #136987)
2004-03-14 Federico Mena Quintero <federico@ximian.com>
Fixes #136185, patch by Morten Welinder, with some changes.
* gtk/gtkfilechooserdefault.c (check_is_folder): New helper function.
(shortcuts_insert_path): Check the path first with check_is_folder().
(gtk_file_chooser_default_set_current_folder): Likewise.
(gtk_file_chooser_default_add_shortcut_folder): Likewise.
(browse_widgets_create): Unref the size group.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder):
Handle the case where the file exists but it is not a directory.
(IconType): Add value for ICON_UNDECIDED.
(struct stat_info_entry): New structure to hold a file's struct
stat, its MIME type and its icon type.
(struct _GtkFileFolderUnix): Added a hash of struct
stat_info_entry, and flags to remember which info types we've read
so far.
(get_icon_type): Use a helper function for the icons-from-stat
types.
(gtk_file_system_unix_render_icon): Use the cached file info.
(gtk_file_folder_unix_get_info): Put the info in the cache.
(gtk_file_system_unix_get_folder): Create the cache of file info
structures.
* gtk/gtkfilesystem.c (gtk_file_info_set_display_name): Handle the
case where display_name is the same as the existing
info->display_name.
Sun Mar 14 19:26:48 2004 Owen Taylor <otaylor@redhat.com>
#136672, reported by Christian Persch; fixes based
on a patch by Soeren Sandmann.
* gtk/gtkmenu.c: Change the handling of mixed gridded
and non-gridded menu items; the old method was causing
major performance problems even with the "avoid relayout
on destruction" hack put in recently.
Now we first lay out the gridded items and then put the
non-gridded items into empty rows / after the gridded items.
Layout is done in a central menu_shell_ensure_layout(). Also
avoid emitting property notifications when we initially
insert or attach items.
* gtk/gtkmenushell.[ch] gtk/gtkmenu.c: Stop setting the
unused menu_shell->menu_flag, and document it as unused
in the header.
* tests/testactions.c: Add a test of creating/removing
lots of items.
* test/testgtk.c: Add some more cruft to the menu test.
Mon Mar 15 02:36:07 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): Add
some signal docs.
Sun Mar 14 15:38:39 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkentrycompletion.c (gtk_entry_completion_visible_func):
always use the match_func, even if text_column is set.
2004-03-14 Morten Welinder <terra@gnome.org>
* gtk/gtkfilesystemunix.c (get_parent_dir): Don't turn "/" into
"".
(gtk_file_system_unix_get_folder): Use the same value for lookup
as for insertion. Make sure we have a directory.
* gtk/gtkfilechooserdefault.c (error_dialog): Don't crash on NULL
path; don't crash on NULL error.
2004-03-14 Hans Breuer <hans@breuer.org>
gtk/gtkcombobox.c : prototype cell_view_sync_cells() before
first usage
gtk/makefile.msc.in : updated 'gtk_public_h_sources'
tests/makefile.msc : added testspinbutton
Sun Mar 14 01:01:18 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_set_cell_data): Align
this function with gtk_tree_view_column_set_cell_data();
call the cell data func after setting the attributes.
Sun Mar 14 01:00:08 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_expose): One more try;
make sure not to call gtk_cell_view_set_cell_data() when
displayed_row is NULL.
Sat Mar 13 18:13:13 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_get_line_display): When not
wrapping, do the offset of the line for justification ourselves.
(#120256, Felipe Heidrich)
Sun Mar 14 00:03:18 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_expose): Support the
model-less use of GtkCellView shown in testcombo.c.
2004-03-13 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdisplay-win32.c: Don't undefine HAVE_MONITOR_INFO
when compiling with gcc. Mingw's headers do have the required
definitions.
* gdk/win32/gdkdrawable-win32.c (draw_polygon): When drawing
filled polygons, don't draw the outline, similarily as
draw_rectangle(). Apparently GTK and GIMP don't use
gdk_draw_polygon() much (or always draw the outline, too), as this
has gone undetected for so long. Thanks to Bruce Hochstetler.
Sat Mar 13 15:19:17 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_destroy): Remove
the window from the toplevel_list here rather in destroy.
While this is theoretically speaking wrong, it fits
in better with the current reality that destroyed
widgets are not reusable. (#126808, Michael Natterer)
Sat Mar 13 21:47:47 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_expose): Don't do anything
beyond clearing to the background if there is no active row.
(#137066, reported by Owen Taylor)
Sat Mar 13 21:37:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_key_press): Pop down the
list when an item is selected via the keyboard.
2004-03-13 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilesystemunix.c: (remove_trailing_slash),
(gtk_file_system_unix_get_folder),
(gtk_file_system_unix_create_folder), (get_parent_dir),
(gtk_file_system_unix_get_parent), (gtk_file_folder_unix_get_info):
Remove trailing slashes in path names.
Sat Mar 13 12:17:16 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Make
this a total no-op when the new or old parent is
destroyed. (#134230, patch from Soeren Sandmann)
* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
For foreign windows in our heirarchy, call
_gdk_windowing_window_destroy_foreign (window) and skip
all the normal destruction logic.
* gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c:
Move code to request destruction of a foreign window
code into a separate _gdk_windowing_window_destroy_foreign().
* gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_finalize):
Call GDK_WINDOW_DISPLAY() on the wrapper not on the
impl. (Also from Soeren's patch)
Sat Mar 13 10:49:46 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (_gtk_drag_dest_handle_event): For
GTK_IS_PLUG toplevels, call gdk_window_get_origin()
not gtk_window_get_position, as a hackround for not
having accurate notification of window position for
embedded windows. (#136112, Dan Winship)
Sat Mar 13 10:34:03 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c gtk/gtktextbuffer.c: Revert last change;
it causes problems for pastes from other applications; see
comments in bugzilla for #81880.
Sat Mar 13 02:55:51 2004 Matthias Clasen <maclas@gmx.de>
Fix middle button pasting in the TextView (#81880, reported
by Evert Verhellen, patch by Paolo Borelli):
* gtk/gtktextview.c (gtk_text_view_button_press_event): Retrieve
the insert mark and move the cursor to it making sure of also
scroll the window if needed.
* gtk/gtktextbuffer.c (pre_paste_prep): Move the insert mark
to the insertion point.
Sat Mar 13 01:38:55 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_remove): Add a remove
implemenatation which restores the cell_view when the custom
child is removed. (#136555, Owen Taylor)
Sat Mar 13 00:07:51 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_clear):
Keep the cell_list in a consistent state while iterating over it,
since clear_attributes() also iterates over it. (another instance
of #136585, Morten Welinder)
Fri Mar 12 17:20:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkarrow.c (gtk_arrow_expose): Swap GTK_ARROW_LEFT
and GTK_ARROW_RIGHT for GTK_TEXT_DIR_LTR. (#129159,
Semion Chichelnitsky)
* gtk/gtkpathbar.c gtk/gtktoolbar.c: Remove no-longer-needed
gtk_toolbar_direction-changed handlers and explicit
flipping of GtkArrow widgets.
Fri Mar 12 23:37:15 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_default_realized_size_changed): Clamp the
new size to the screen.
Fri Mar 12 15:06:44 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkexpander.c (gtk_expander_realize): Create the
event_window at the right size using the same logic as
in size_allocate. (#136994, Niklas Knuttson)
2004-03-12 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkwindow.c (gtk_window_activate_focus): Don't ignore the
return value of gtk_widget_activate().
(gtk_window_activate_default): Likewise. Fixes #137008.
* gtk/gtkfilechooserdialog.c (response_cb): Act on positive
response IDs we recognize, rather than bailing out on cancellation
ones. Fixes #136237; patch by Olivier Andrieu
<oliv__a@users.sourceforge.net>.
(file_chooser_widget_file_activated): If the dialog doesn't have a
default widget, try to find a suitable response widget on our own.
People should *really* be using gtk_dialog_set_default_response(),
but this is to help lazy programmers.
* gtk/gtkdialog.c (_gtk_dialog_get_response_for_widget): New
internal function.
(get_response_data): Add a "create" argument so that we don't
unconditionally create the response data.
2004-03-12 Morten Welinder <terra@gnome.org>
* tests/Makefile.am: Add new testspinbutton.c
2004-03-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_drag_set_delete_cursor):
Put the trash icon on the right for LTR locales, or on the left
for RTL.
(shortcuts_drag_motion_cb): Cancel the idle handler here as well.
(shortcuts_drag_leave_cb): Test whether the idle is present.
(shortcuts_drag_data_received_cb): Ahem, don't assert here.
Thu Mar 11 17:51:10 2004 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c (preedit_done_callback):
Clear preedit string and emit preedit_changed as needed
on AIX. (#130617, Philip K Warren)
2004-03-11 Morten Welinder <terra@gnome.org>
* gtk/gtkpathbar.c (_gtk_path_bar_set_file_system): Plug leak.
Thu Mar 11 16:28:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenu.c (gtk_menu_get_toplevel): Fix attach/attach->parent
type. (#136919, Tim Mooney)
Thu Mar 11 16:18:51 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c (shortcuts_insert_path): revert
earlier change to insert_path so that we test that the directory
exists.
* gtk/gtkfilechooserdialog.c
(gtk_file_chooser_dialog_constructor): move focus.
Thu Mar 11 22:12:14 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): Use the same
logic as GtkEntry when calculating border width. (#116368, reported
by Morten Welinder)
Thu Mar 11 15:59:05 2004 Owen Taylor <otaylor@redhat.com>
* tests/testgtk.c (create_spins): Use gtk_entry_set_width_chars()
rather than gtk_widget_set_size_request().
2004-03-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
function, copied from gtkpathbar.c.
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
rather than our own code.
(gtk_file_chooser_default_screen_changed): Use
remove_settings_signal(); this should handle per-screen settings
correctly.
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
value.
Thu Mar 11 13:58:24 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmessagedialog.c gtk/gtklabel.c: Back out the
put-labels-into-the-standard-focus-chain patches
from bug #59707.
* gtk/gtklabel.c (gtk_label_focus): Only put the
label in the tab chain when the control key is pressed.
2004-03-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (error_message_with_parent): Use a
single OK button, not a Close button, as per the HIG.
* gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Likewise.
2004-03-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_drag_motion_cb): Oops,
initialize "action" before jumping. Fixes #136900.
2004-03-11 Mark McLoughlin <mark@skynet.ie>
* gtk/gtksettings.c: (apply_queued_setting): don't overwrite
application properties. Fixes bug #136802.
2004-03-11 Dov Grobgeld <dov@imagic.weizmann.ac.il>
* gtk/gtktextlayer.c: (gtk_text_layout_set_buffer): Added
call to gtk_text_layout_update_cursor_line() to solve in
problem of switching keyboard direction at widget creation:
bug #136680
Thu Mar 11 10:28:30 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserembed.c (delegate_initial_focus): Remove
stray 'return' statement. (#136855, David L. Cooper II)
2004-03-11 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkstyle.c: (gtk_default_draw_expander): Use the PRELIGHT
fg color for drawing the expander when prelit. Fixes problem
with the HighContrast theme: bug #136789.
2004-03-11 Federico Mena Quintero <federico@ximian.com>
Fix #135912 and #135913.
* gtk/gtkfilechooserdefault.c
(shortcuts_filter_model_row_draggable): Implement.
(shortcuts_model_filter_new): New function, create a
ShortcutsModelFilterClass derived from GtkTreeModelFilter, so that
we can implement our own DnD interface methods.
(shortcuts_model_create): Use shortcuts_model_filter_new().
(shortcuts_list_create): Enable the shortcuts list as a drag
source.
(file_list_source_targets): Renamed from shortcuts_targets.
(shortcuts_list_create): Change the options for
gtk_drag_dest_set(). Connect to more drag signals so that we can
implement drops by hand.
(shortcuts_drag_data_delete_cb): New handler; just stop the emission.
(shortcuts_drag_motion_cb): New handler; validate the drop.
(shortcuts_drag_leave_cb): New handler; unset the drag_dest_row.
(shortcuts_drag_drop_cb): New handler; just stop the emission and
remove the idle handler for the drag cursor.
(shortcuts_add_bookmark_from_path): Add a position argument,
return a boolean success code.
(shortcuts_drag_data_received_cb): Handle two cases: 1) Insert
the bookmarks at the proper position, rather than always appending
them to the list; 2) alternatively, reorder the bookmarks.
(struct _GtkFileChooserDefault): New field shortcuts_drag_outside.
(shortcuts_drag_motion_cb): Turn off impl->shortcuts_drag_outside.
(shortcuts_drag_leave_cb): Turn on impl->shortcuts_drag_outside in
an idle handler.
(shortcuts_drag_end_cb): New handler; remove the selected bookmark.
Thu Mar 11 01:08:25 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (location_entry_create): up the
width of the entry a tad.
* gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): use
gtk_entry_completion_selection_changed. Also, unref the
completion as we were leaking a reference to it.
2004-03-10 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkstyle.c (draw_dot): Remove spurious semicolon. Thanks to
Kjartan Maraas for pointing it out.
Wed Mar 10 23:40:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Set the
background on the action view cell renderer here, not in init, so
that a) we catch style changes, and b) we get the real style, not
the default one. Partial fix for #127648, reported by Dave Bordoley.
2004-03-10 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (build_key_event_state): Set also
the pointer button bits. (#136636, Dave Neary)
* gdk/win32/gdkwindow-win32.c (show_window_internal): Show
transparent (input only) windows using SetWindowPos(). (#132331,
John Ehresman)
(gdk_window_set_type_hint): For splash screens, remove the resize
handles, menu, and minimize/maximize/close buttons. (#132896)
Wed Mar 10 22:30:23 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear): Keep the
cell_list in a consistent state while iterating over it, since
clear_attributes() also iterates over it. (#136585, Morten Welinder)
2004-03-10 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkexpander.c: (gtk_expander_expose): don't propagate
the expose to the label. The expose handler for GtkContainer
already does that. Fixes bug #136719. Reported by Dennis
Cranston, exact cause nailed down by Owen.
2004-03-10 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use an
untranslatable "%x" for dates, rather than a custom format. Fixes
#136357.
2004-03-10 Morten Welinder <terra@gnome.org>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_add_shortcut_folder): Test validity of
path here.
(shortcuts_insert_path): Don't check here.
(get_file_info): Barf if name-only fails.
* tests/testfilechooser.c (main): Add support for --multiple.
Wed Mar 10 02:41:05 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c: (gtk_path_bar_init), (gtk_path_bar_class_init),
(remove_settings_signal), (gtk_path_bar_dispose),
(gtk_path_bar_style_set), (gtk_path_bar_screen_changed),
(gtk_path_bar_scroll_up), (reload_icons), (change_icon_theme),
(settings_notify_cb), (gtk_path_bar_check_icon_theme),
(get_button_image), (gtk_path_bar_update_button_appearance),
(make_directory_button), (gtk_path_bar_check_parent_path): Support
changes in icon themes.
* gtk/gtkpathbar.h: add two elements
* tests/testfilechooser.c: (main): use gnome-vfs method again to
get more testing.
Wed Mar 10 01:17:40 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c: added 'Desktop' to the list of volumes. We
don't have any more untranlated strings in the dialog.
Wed Mar 10 00:24:24 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (error_dialog): use uri instead of
the pathname for UTF-8 safety.
Wed Mar 10 00:10:47 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Always
check to see if the shortcuts exists. We don't want to put
invalid dirs in the shortcuts pane.
Tue Mar 9 16:40:34 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
remove unneeded shortuts_swin;
Wed Mar 10 01:49:27 2004 Matthias Clasen <maclas@gmx.de>
Fix #136614 in a better way:
* gtk/gtkoptionmenu.c (gtk_option_menu_init): Undo the last change.
* gtk/gtkbutton.c (struct _GtkButtonPrivate): Add a flag, align_set.
* gtk/gtkbutton.c (gtk_button_init): Initialize align_set to 0.
* gtk/gtkbutton.c (maybe_set_alignment): Rework to only set the
alignment if priv->align_set is set.
* gtk/gtkbutton.c (gtk_button_set_alignment): Set align_set to 1.
Wed Mar 10 01:21:05 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_position_below): Place
grid mode popups left aligned, not right aligned.
Tue Mar 9 23:09:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkoptionmenu.c (gtk_option_menu_init): Avoid centering
the label that is reparented from the menuitem. (#136614, Dennis
Cranston)
Tue Mar 9 16:19:09 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (struct _ButtonData): Encapsulate all of the
information about a button in a struct instead of ugly
g_object_set_data.
(gtk_path_bar_size_request): Use ButtonData.
(gtk_path_bar_update_slider_buttons): ditto
(gtk_path_bar_size_allocate): ditto
(gtk_path_bar_remove): ditto
(gtk_path_bar_forall): ditto
(gtk_path_bar_scroll_down): ditto
(gtk_path_bar_clear_buttons): ditto
(button_clicked_cb): ditto. Also, add an ignore_changes variable
(button_data_free): destroy ButtonData
(update_button_appearance): Use ButtonData
(make_directory_button): ditto
(gtk_path_bar_check_parent_path): ditto
(_gtk_path_bar_set_path): ditto
2004-03-09 Federico Mena Quintero <federico@ximian.com>
Fix #136533.
* gtk/gtkfilechooserdefault.c (shortcuts_reload_icons): New
function.
(check_icon_theme): New helper function, installs a handler for
changes in the icon theme.
(gtk_file_chooser_default_style_set): Use check_icon_theme().
(gtk_file_chooser_default_screen_changed): Use check_icon_theme().
(gtk_file_chooser_default_dispose): Disconnect from GtkSettings.
(change_icon_theme): New function, updates impl->icon_size and
reloads the icons.
(struct _GtkFileChooserDefault): New field settings_signal_id.
(struct _GtkFileChooserDefault): New field icon_size.
(shortcuts_insert_path): Use impl->icon_size.
(list_icon_data_func): Likewise.
2004-03-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (get_file_info): Handle the returned
parent_path being NULL. Fixes #136662.
2004-03-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_drag_data_received_cb):
Stop the emission so that GtkTreeView's handler won't try to poke
the filter model. Fixes #136127.
Tue Mar 9 13:49:14 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.c (gtk_paint_polygon): Fix
g_return_if_fail() that was checking draw_shadow.
(#136669, Morten Welinder)
Tue Mar 9 09:57:25 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.6 ===
* configure.in: Version 2.3.6, interface age 0.
* NEWS: Updates
Tue Mar 9 11:01:45 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (gtk_path_bar_finalize): unref the correct
icon. Reported by Michael Natterer <mitch@gimp.org>.
2004-03-09 Morten Welinder <terra@gnome.org>
* tests/testfilechooser.c (main): Destroy widgets to reveal leaks.
Tue Mar 9 02:11:50 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c Fix bug 136446. [Marco Pesenti Gritti]
(struct _GtkMenuPrivate): Add boolean destroying
(gtk_menu_destroy): Set priv->destroying
(gtk_menu_remove): don't update the table information when the
menu is being destroyed.
* gtk/gtkmenu.c (gtk_menu_set_monitor): Formatting fix
* gtk/gtktoolbar.[ch]: Some formatting fixes
Tue Mar 9 01:25:10 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkframe.c (gtk_frame_paint): Fix a typo.
2004-03-08 Federico Mena Quintero <federico@ximian.com>
Fixes #136080.
* gtk/gtkfilesystemunix.c: Only lstat() if stat() failed due to
ENOENT.
(filename_get_info): Likewise.
2004-03-08 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Use
gtk_tree_view_set_cursor().
2004-03-08 Federico Mena Quintero <federico@ximian.com>
Patch "1a" from #136185, by Morten Welinder.
* gtk/gtkfilechooserdefault.c (get_file_info): Take in an argument
that says whether the caller just wants the display name.
(shortcuts_insert_path): We only want the name in the call to
get_file_info().
* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't request more
info than needed from the file_folder.
2004-03-08 Federico Mena Quintero <federico@ximian.com>
Fixes #136105.
* gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
Added an ::initial_focus() method.
* gtk/gtkfilechooserembed.c
(_gtk_file_chooser_embed_delegate_iface_init): Set the
initial_focus method.
(delegate_initial_focus): Implement.
(_gtk_file_chooser_embed_initial_focus): New function.
* gtk/gtkfilechooserdialog.c
(gtk_file_chooser_dialog_constructor): Call
_gtk_file_chooser_embed_initial_focus().
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
Install the ::initial_focus() handler.
(gtk_file_chooser_default_initial_focus): Implement.
2004-03-08 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (update_from_entry): Return a
boolean success code.
(location_popup_handler): Refocus the file chooser if appropriate.
Fixes #135905.
(save_widgets_create): Don't set the text of the save_folder_label
here.
(update_appearance): Set the text here as appropriate for the save
mode. Also fixes #136387.
(update_appearance): Don't show the Create Folder button in
SELECT_FOLDER mode.
(update_appearance): Show the extra widget in all Save modes
correctly.
Mon Mar 8 11:57:27 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_unset_model): Don't
call g_signal_handler_disonnect() if priv->model is
NULL. (#136551, Damon Chaplin)
* gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
Back out code to set the active item when the first
item is added to the model; this causes problems for
GtkComboBoxText. (#136535)
* gtk/gtkcombobox.c (gtk_combo_box_menu_destroy)
* gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
* gtk/gtkcombobox.c (gtk_combo_box_list_setup):
* gtk/gtkcombobox.c (gtk_combo_box_menu_setup):
Remove calls to gtk_combo_box_unset_model.
* gtk/gtkcombobox.c (gtk_combo_box_check_appearance):
Clean up handling of wrap->width > 0.
* gtk/gtkcombobox.c (gtk_combo_box_relayout): Don't
switch list/menu mode here.
* gtk/gtkcombobox.c (gtk_combo_box_set_model): Protect
against the same model being set back.
* gtk/gtkcombobox.c (gtk_combo_box_relayout): Call
gtk_combo_box_menu_fill() rather than duplicating
a large chunk of code.
2004-03-08 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilesystemmodel.c (gtk_file_system_model_get_flags):
If max_depth is 0 then we have a list.
2004-03-08 Morten Welinder <terra@gnome.org>
* gtk/gtkpathbar.c (_gtk_path_bar_set_path): If we fail, leave
widget unchanged. Explicitly verify final directory.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_create_folder,
get_icon_type, filename_get_info): Protect errno.
2004-03-08 Marco Pesenti Gritti <marco@gnome.org>
* gtk/gtkentry.c: (gtk_entry_completion_key_press):
When an action is selected stop the event to be propagated
otherwise the activate signal is emitted too. (Bug #133394)
Mon Mar 8 04:50:12 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (create_path_bar): new function to
consolidate creating the path_bar.
(gtk_file_chooser_default_set_current_folder): no longer need to
pass in the filesystem.
* gtk/gtkpathbar.h: Removed unused set_pixbuf functions in favor
of just setting the filesystem.
* gtk/gtkpathbar.c (gtk_path_bar_finalize): Free root path and
home_dir.
(get_button_image): Add images to path_bar.
(update_button_appearance): use images
(make_directory_button): Clasify buttons based upon location.
(_gtk_path_bar_set_path): no longer need a file-system. Also, add
rerooting, #135845, #135914
* tests/testfilechooser.c: Fix reused error handling.
2004-03-08 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilesystemunix.c: (get_icon_for_directory),
(gtk_file_system_unix_render_icon):
Use better icons for home and desktop.
2004-03-08 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilechooserentry.c:
(_gtk_file_chooser_entry_set_base_folder):
Set the base folder path in the entry.
2004-03-08 Christian Neumair <chris@gnome-de.org>
* tests/testentrycompletion.c: Fix typo.
2004-03-08 Tor Lillqvist <tml@iki.fi>
* README.win32: Update.
* gtk/gtk.def: Small update. Thanks to J. Ali Harlow. Re-sorted.
* tests/testfilechooser.c: Correct localtime_r() emulation on
Win32. Remove a couple of unnecessary Win32-only includes.
Mon Mar 8 01:06:17 2004 Matthias Clasen <maclas@gmx.de>
* tests/testentrycompletion.c: Test dynamic addition/removal.
Sun Mar 7 22:38:49 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkframe.c (gtk_frame_paint): Use ythickness, not
xthickness in the calculation of vertical dimensions.
Sun Mar 7 17:38:03 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkbutton.c (gtk_button_class_init): actually use
gtk_button_add.
* gtk/gtkfilechooserdefault.c (error_building_filename_dialog):
use the uri, not the path, #136317
(renderer_edited_cb): ditto
(shortcuts_add_bookmark_from_path): ditto
(remove_bookmark_button_clicked_cb): ditto
(gtk_file_chooser_default_remove_shortcut): ditto
(update_from_entry): ditto
(up_folder_handler): ditto
Sun Mar 7 16:07:08 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): set
redraw_on_allocate, #135902.
* gtk/gtkfilesystemmodel.c (model_refilter_recurse): Patch from
Damon Chaplin to set a node to be visible before emitting the
inserted signal, #135555.
Sun Mar 7 22:24:28 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkbutton.c (_gtk_button_paint): Don't use xthickness in the
height calculation.
Sun Mar 7 14:34:04 2004 Jonathan Blandford <jrb@gnome.org>
Fixes #121500.
* gtk/gtkfilechooserdefault.c (trap_activate_cb): stop activate
from unselecting rows when pressed in multiple-selection mode.
2004-03-07 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting) :
some more settings from system, also reflect some name changes
done a while ago in the x11 backend
* gdk/win32/makefile.msc : build gdkspawn-win32.c
* gtk/gtkdnd.c : gtk_drag_source_[gs]et_target_list, added "Since: 2.4"
* gtk/makefile.msc.in : build gtkpathbar, link shell32.lib
* tests/makefile.msc : some more tests get build
Sun Mar 7 03:03:57 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_paths): if action is
SELECT_FOLDER, then return the currentd folder if none is
selected.
(gtk_file_chooser_default_should_respond): Allow 'Ok' to be hit if
no directory is selected in SELECT_FOLDER mode.
Sat Mar 6 23:31:18 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
remove unneeded elements.
(tree_selection_changed): removed
(tree_name_data_func): removed
(gtk_file_chooser_default_finalize): don't unref dir model
(create_folder_tree): removed
(get_selection): no longer need to abstract away the selection
function.
(create_file_list): We now create a tree for all actions.
(file_pane_create): Make one tree.
(update_appearance) We really change the mode only, now.
Sun Mar 7 02:38:00 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_size_request): Do a
size_request on the button and cell_view_frame, otherwise
their style will still be the default here in the initial
size_request. (#136301, Mark McLoughlin)
2004-03-06 Gustavo J. A. M. Carneiro <gustavo@users.sourceforge.net>
* gtk/gtktoolbar.c (internal_insert_element): Check return value
of gtk_stock_lookup; if stock lookup fails, just use stock_id as
label, instead of crashing. Fixes #136202.
2004-03-05 Federico Mena Quintero <federico@ximian.com>
* gdk/linux-fb/gdkglobals-fb.c: Make <config.h> the very first
include.
* gdk/linux-fb/gdkwindow-fb.c: Likewise.
* gdk/linux-fb/gdkinput.c: Likewise.
2004-03-05 Federico Mena Quintero <federico@ximian.com>
Fixes #136082 and #135265, patch by Morten Welinder.
* configure.in: Use AC_SYS_LARGEFILE.
* */*.c: #include <config.h>
2004-03-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_select_path): No need to have a
temporary error variable.
2004-03-05 Tor Lillqvist <tml@iki.fi>
* configure.in: Move check for native Win32 (mingw) a bit
earlier. If Win32, disable static builds (as in GLib). Remove
unnecessary AC_LIBTOOL_WIN32_DLL.
* gdk/gdk.def: Add missing entries, thanks to J. Ali Harlow.
* gdk/win32/gdkcursor-win32.c (color_is_white): const-correctness.
(gdk_cursor_new_from_pixbuf): Copy of the non-Xcursor X11
implementation.
(gdk_display_supports_cursor_alpha,
gdk_display_supports_cursor_color): Dummy implementations.
(gdk_display_get_default_cursor_size,
gdk_display_get_maximal_cursor_size): Implement.
* gdk/win32/gdkdisplay-win32.c (gdk_display_get_default_group):
Dummy implementation.
* gdk/win32/gdkevents-win32.c (gdk_net_wm_supports): Dummy
implementation.
* gdk/win32/gdkfont-win32.c (gdk_font_get_display): Implement.
* gdk/win32/gdkinput-win32.c (gdk_input_motion_events): Remove,
not in API.
* gdk/win32/gdkwindow-win32.c (gdk_window_get_group): Dummy
implementation.
Fri Mar 5 18:00:36 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c (new_folder_button_clicked): scroll
to the new path.
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): Update the
allocation when scrolling instead of cancelling editing.
Fri Mar 5 23:52:34 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func):
Improve the docs. (#127727, Murray Cumming)
Fri Mar 5 23:37:16 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_set_reorderable): Clarify the
doc comment. (#118602)
Fri Mar 5 22:37:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkbutton.c (gtk_button_construct_child): Don't let
the priv->image pointer dangle. (#136259, Padraig O'Briain)
2004-03-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add
gboolean return values and GError arguments to
::set_current_folder() and ::select_path().
* gtk/gtkfilechooser.c (gtk_file_chooser_set_current_folder):
Return a boolean value for success/failure.
(gtk_file_chooser_set_current_folder_uri): Likewise.
(gtk_file_chooser_select_filename): Likewise.
(gtk_file_chooser_select_uri): Likewise.
(gtk_file_chooser_set_filename): Likewise.
(gtk_file_chooser_set_uri): Likewise.
(_gtk_file_chooser_set_current_folder_path): Likewise, plus take
in a GError.
(_gtk_file_chooser_select_path): Likewise.
* gtk/gtkfilechooserutils.c (delegate_set_current_folder):
Likewise.
(delegate_select_path): Likewise.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_select_path): Likewise.
(gtk_file_chooser_default_set_current_folder): Likewise; this also
fixes #136024.
(error_changing_folder_dialog): New helper function.
(change_folder_and_display_error): New helper function.
(switch_to_selected_folder): Use change_folder_and_display_error().
(tree_selection_changed): Likewise.
(shortcuts_activate_volume): Likewise.
(shortcuts_activate_item): Likewise.
(list_row_activated): Likewise.
(path_bar_clicked): Likewise.
(update_from_entry): Likewise.
(up_folder_handler): Likewise.
(home_folder_handler): Get the home path from the shortcuts model,
and use change_folder_and_display_error().
* tests/testfilechooser.c (set_current_folder): New helper
function; pops up a simple error dialog if necessary.
(set_filename): Likewise.
(set_folder_nonexistent_cb): Use set_current_folder().
(set_folder_existing_nonexistent_cb): Likewise.
(set_filename_nonexistent_cb): Use set_filename().
(set_filename_existing_nonexistent_cb): Likewise.
Fri Mar 5 11:17:35 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy):
Improve the docs (reported by Vitaly Tishkov,
#74362) Add some comments to the code about the
row reference handling that are hopefully not entirely
wrong.
2004-03-05 Michael Natterer <mitch@gimp.org>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
s/object/widget/. Makes it compile again.
Fri Mar 5 03:37:14 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_show_all):
chain to the extra_widget.
Fri Mar 5 02:53:41 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
Patch from Damon Chaplin to free models when we're finalized,
#134053
2004-03-05 Alexander Larsson <alexl@redhat.com>
* gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path):
Document the fact that there might not be a volume for all
paths.
* gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
Don't assume there is a volume for all paths.
Fri Mar 5 01:45:04 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_append_paths): insert in
the correct place instead of naĆÆvely appending.
(shortcuts_add_volumes): refilter the model
(shortcuts_add_bookmarks): refilter the model
(gtk_file_chooser_default_add_shortcut_folder): refilter the model
2004-03-04 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdialog.c (response_cb): New handler. Ask the
GtkFileChooser widget if it wants to do something special rather
than letting us terminate the dialog.
(gtk_file_chooser_dialog_init): Connect to "response"; see the
comment in the sources to see why we don't override the method in
class_init.
* gtk/gtkfilechooserembed.h (struct _GtkFileChooserEmbedIface):
Added a ::should_respond() method.
* gtk/gtkfilechooserembed.c
(_gtk_file_chooser_embed_delegate_iface_init): Add a delegate for ::should_respond().
(delegate_should_respond): New delegate.
(_gtk_file_chooser_embed_should_respond): New function.
* gtk/gtkfilechooserdefault.c (set_list_model, create_file_list):
Use dashes in signal names rather than underscores.
(gtk_file_chooser_default_init): Hook up our ::should_respond() implementation.
(gtk_file_chooser_default_should_respond): Implement. go into a
folder rather than responding if we are in File mode and the
selected file is a folder.
(get_selection): New helper function.
(add_bookmark_button_clicked_cb): Use get_selection().
(bookmarks_check_add_sensitivity): Likewise.
(gtk_file_chooser_default_get_paths): Likewise.
(check_save_entry): New helper function.
(gtk_file_chooser_default_get_paths): Use check_save_entry().
(selection_check): Renamed from selection_is_folders(). Now
checks whether the selection is empty, all files, all folders.
(bookmarks_check_add_sensitivity): Use selection_check().
Fri Mar 5 00:05:59 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_setup):
* gtk/gtkcombobox.c (gtk_combo_box_menu_setup): Connect to
key_press_event and handle Alt-Down/Alt-Up to show or hide the
list popup. Also handle Down/Up/PageDown/PageUp/Home/End and
make them change the active item without popping up the list.
These keybindings are inherited from GtkCombo.
Thu Mar 4 23:15:58 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_position): Initially
select the active item when using optionmenu-like positioning.
Thu Mar 4 16:54:30 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c (gtk_rc_check_pixmap_dir): Don't
open/close the file, just check for existence
with g_file_test(). This is considerably cheaper,
and lack-of-permissions for pixmap dirs is
pathological.
Wed Mar 3 17:53:21 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c (gtk_socket_class_init): Overide
show_all/hide_all to be gtk_widget_show/gtk_widget_hide,
since we don't want to propagate to the in-process
plug, if any. (#122949, Michael Meeks)
Thu Mar 4 15:20:55 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (update_appearance): show the 'New
Folder' button in SAVE mode again.
Thu Mar 4 21:53:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkiconfactory.c (copy_cache): Increment the reference
count of the style when copying the cached icon. (#135890, Crispin
Flowerday)
Thu Mar 4 21:45:43 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c: In list mode, set the background color
of the cell view to the base color of the style, instead of
hardwiring white. (#136158)
Thu Mar 4 01:32:19 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (gtk_path_bar_set_path): Modified patch from
muppet <scott@asofyet.org> to keep child directories around if we
change to a child.
* gtk/gtkpathbar.c (_gtk_path_bar_set_home_icon): Start of
icon-setting functions. Not used yet.
(_gtk_path_bar_set_root_icon): Ditto.
Thu Mar 4 00:31:54 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (extend_selection):
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Allow
to select the last word in the buffer. (#135487, Paolo Borelli)
Wed Mar 3 23:54:31 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c: Doc update.
Wed Mar 3 17:30:18 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_mnemonic_activate): Check
whether widgets are viewable, not just if they are
mapped. (#122912, reported by Tim Evans)
Wed Mar 3 23:28:48 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_set_active): Move the actual
implementation into a new gtk_combo_box_set_active_internal()
function, which doesn't do the short-circuiting.
* gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted): Use
set_active_internal() here, since the active item may change here,
although the index is unchanged.
Wed Mar 3 23:26:49 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_position): Reintroduce the
traditional option menu placement of the popup for regular combo
boxes. Grids and editable combo boxes use the combo-like placement
below the entry. (#136021)
* gtk/gtkcombobox.c (gtk_combo_box_menu_button_press):
* gtk/gtkcombobox.c (gtk_combo_box_popup): Call gtk_menu_set_active()
before popping up the menu, to make the placement work.
Wed Mar 3 17:20:15 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (gtk_propagate_event): Special case
scroll events so that they propagate up the widget
heirarchy when received on insensitive widgets.
(#101102, reported by Geoff Reedy)
Wed Mar 3 16:47:10 2004 Owen Taylor <otaylor@redhat.com>
#109594, reported by Olivier Ripoll
* gtk/gtkentry.c (gtk_entry_size_request): Use max of
width and digit width for gtk_entry_set_width_chars,
and round up.
* gtk/gtkcolorsel.c (gtk_color_selection_init): Set the
width of the entry to 7 chars.
Wed Mar 3 16:00:10 2004 Owen Taylor <otaylor@redhat.com>
* configure.in: Strip out the "export-dynamic" libtool
option from library link lines. (#124687, James Henstridge)
Wed Mar 3 16:06:03 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (save_folder_combo_changed_cb):
Don't activate the combo if we're in the midst of changing
folders.
2004-03-03 Mark McLoughlin <mark@skynet.ie>
* tests/testsocket_common.c: (print_hello): don't try and store
pointers in ints. Fixes 64-bit build.
2004-03-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.c (gtk_file_system_get_parent): Simplify by
not using a temporary variable, and clarify the documentation.
Fixes #136008.
2004-03-03 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkexpander.c:
(gtk_expander_enter_notify), (gtk_expander_leave_notify),
(gtk_expander_set_label_widget): Set the label widget's
state to prelight if we're prelit. Fixes bug #136078.
2004-03-03 Murray Cumming <murrayc@murrayc.com>
* gtk/gtkradiobutton.h, radiomenuitem.h: Corrected the group_changed
signal vfunc declaration, adding the first parameter, which is the
widget emitting the signal.
2004-03-03 Morten Welinder <terra@gnome.org>
* tests/testfilechooser.c (update_preview_cb): Plug leak.
Tue Mar 2 23:39:55 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_default_realized_size_changed): Split
function into realized and unrealized variants, and consolidate
the handling fo size-changing and default changing.
* gtk/gtkfilechooserembed.[ch] (gtk_file_chooser_embed_class_init):
remove resizable-hints-changed, as it just complicated things.
* gtk/gtkfilechooserdefault.c (update_appearance): Don't emit
resizable-hints-changed.
2004-03-03 Tor Lillqvist <tml@iki.fi>
* gtk/gtk.def: Add a missing entry. (#135982, J. Ali Harlow)
* NEWS: Correct spelling of my name in one place.
2004-03-02 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_current_folder): Handle errors in
setting the path bar's path. Fixes #136000, based on a patch by
Morten Welinder.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
Don't free our own propagated error.
* gtk/gtkpathbar.c (gtk_path_bar_set_path): Likewise, and free the
parent_path upon error. Fixes #136006, patch by Morten Welinder.
(gtk_path_bar_set_path): Unref the file_folder upon error.
(gtk_path_bar_set_path): Return a boolean success code.
Wed Mar 3 00:28:59 2004 Matthias Clasen <maclas@gmx.de>
* tests/testcombochange.c: Add an animation mode, to test
how the combobox behaves if the model changes while it is popped
up.
Tue Mar 2 17:06:05 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.5 ===
* NEWS: Updates
* configure.in: Version 2.3.5, interface age 0.
Require glib-2.3.5, pango-1.3.5.
Tue Mar 2 23:08:12 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Avoid
popping up the completions across the edge of the monitor.
Part of #135561.
Tue Mar 2 16:47:40 2004 Owen Taylor <otaylor@redhat.com>
* tests/testfilechooser.c (set_filename_existing_nonexistent_cb):
Move the /nonexistant stuff out of the main window,
keep the main window somewhat normal looking.
Tue Mar 2 16:18:43 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktreestore.c (gtk_tree_store_reorder)
* gtk/gtkliststore.c (gtk_list_store_reorder): Fix
up the interpretation of new_order to match what
it means elsewhere, document the meaning of new_order.
* gtk/gtkcombobox.c (gtk_combo_box_model_rows_reordered):
Fix interpretation of new_order.
* tests/testcombochange.c (on_reorder): Fix interpretation
of new_order.
* tests/testcombochange.c (on_reorder): Fix hitting
"reorder" with an empty list.
Tue Mar 2 21:23:30 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Patch from Frederic Crozat, test code from Jean-Philippe
Chancelier. Fixes bug #120479.
* gtk/gtkcombo.c (gtk_combo_popup_list): Make sure popup belongs
to the right window group.
* gtk/gtkmenu.c (gtk_menu_popup): Same
* tests/testsocket.c (main): Pack the plugs into an hbox instead
of a vbox.
* tests/testsocket_common.c: Add a GtkMenuBar, a GtkCombo and a
GtkComboBox to the children.
Tue Mar 2 14:38:23 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_model_row_inserted):
If the model was empty before, select the first inserted
item.
* gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted):
Fix up the logic for the new row to select.
* gtk/gtkcombobox.c (gtk_combo_box_class_init):
Rename "appearance" property to "appears-as-list".
* tests/testcombochange.c tests/Makefile.am: Test case
for combos and dynamically changing models.
Tue Mar 2 15:19:52 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_resizable_hints): set the default
value, spotted by Morten Welinder.
Tue Mar 2 15:03:15 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_resizable_hints): get the logic
correct. This will fix sizing on save dialogs.
(save_widgets_create): set_mnemonic_widget.
2004-03-02 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_current_folder): Don't update the
save folder combo if we are already switching folders; based on a
patch by Jonathan Blandford.
* gtk/gtkfilechooserdefault.c (shortcuts_add_current_folder):
Handle failure to insert the path. Based on a patch by Morten
Welinder attached to bug #135380.
* tests/testfilechooser.c (extra_widget_create): Add a bunch of
buttons to test various things.
Tue Mar 2 20:59:23 2004 Matthias Clasen <maclas@gmx.de>
* tests/Makefile.am: Add testentrycompletion.
* tests/testentrycompletion.c: New file to test some of the
more exotic GtkEntryCompletion features.
Tue Mar 2 14:38:10 2004 Jonathan Blandford <jrb@redhat.com>
* tests/testfilechooser.c (main): improve tests a little.
Tue Mar 2 11:45:50 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombobox.c: Always connect to the changed
signals on the model, update the active item as
appropriate when rows are inserted/deleted/reordered,
re-layout the menu on ::rows-reordered.
* gtk/gtkcellview.c (gtk_cell_view_set_displayed_row):
Allow %NULL for path to unset and leave no current
path.
Tue Mar 2 19:54:53 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_position): Position
the popup above the sample if there is not enough room below.
Part of #135543.
Tue Mar 2 19:53:36 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make the
frame for the list mode etched in, to give the popup a slightly
less flat appearance.
Tue Mar 2 17:55:31 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk.def: Add gtk_combo_box_entry_new_text().
2004-03-02 Morten Welinder <terra@gnome.org>
* tests/testfilechooser.c (size_prepared_cb): Don't scale images
that are small enough to fit. Avoid using incompatibly typed data
pointer.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_resizable_hints): Test the
resize_horizontally pointer, not the deferenced pointer.
2004-03-01 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault): New
flag shortcuts_current_folder_is_volume.
(shortcuts_add_current_folder): Set
impl->shortcuts_current_folder_is_volume as appropriate.
(remove_current_folder_cb): Handle the flag.
(shortcuts_activate_item): Likewise.
(shortcuts_update_current_folder): Handle the
impl->shortcuts_current_folder_active flag; only add the folder if
it doesn't already exist in the list.
(shortcuts_model_create): Don't insert the current folder
separator here.
(shortcuts_add_current_folder): Insert the separator here.
(shortcut_find_position): Renamed from shortcut_exists(); now
returns an index.
(shortcuts_add_current_folder): Set the active item in the combo.
2004-03-01 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Eep,
use gtk_tree_model_filter_convert_iter_to_child_iter(), not the reverse.
2004-03-01 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_model_create): Don't
unref an old model; there isn't one. This was a leftover from
when we recreated the model on every change.
(save_widgets_create): Create the save folder combo.
(shortcuts_model_create): Don't set the model on the tree view
here.
(gtk_file_chooser_default_constructor): Create the shortcuts model
here, before the rest of the widgets.
(shortcuts_list_create): Don't call shortcuts_model_create() here;
just set the model on the tree.
(save_folder_combo_create): New function, provided by Jonathan
Blandford.
(update_appearance): Set the sensitivity of the folder combo.
(shortcuts_activate_iter): New helper function; code moved from
shortcuts_row_activated_cb().
(shortcuts_activate_item): New helper function.
(shortcuts_row_activated_cb): Use shortcuts_activate_iter().
(ShortcutsIndex): Renamed SHORTCUTS_SEPARATOR to
SHORTCUTS_BOOKMARKS_SEPARATOR.
(struct _GtkFileChooserDefault): New field shortcuts_current_folder_active.
(shortcuts_insert_separator): Add a position argument.
(shortcuts_get_index): Handle the SHORTCUTS_CURRENT_FOLDER_SEPARATOR
and SHORTCUTS_CURRENT_FOLDER positions.
(shortcut_exists): Ignore the current folder row.
(struct _GtkFileChooserDefault): New field shortcuts_filter_model.
(shortcuts_model_create): Create a filter model for the shortcuts list.
(shortcuts_list_create): Set the model to the shortcuts_filter_model.
(remove_bookmark_button_clicked_cb): Use the shortcuts_filter_model.
(bookmarks_check_remove_sensitivity): Likewise.
(shortcuts_row_activated_cb): Likewise.
(gtk_file_chooser_default_set_current_folder): New function.
(gtk_file_chooser_default_set_current_folder): Update the current
folder row in the shortcuts list.
* gtk/gtkfilechooserwidget.c
(gtk_file_chooser_widget_constructor): Cast correctly for
_gtk_file_chooser_embed_set_delegate().
Mon Mar 1 19:30:25 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.[ch]: Add gtk_drag_source_set/get_target_list().
(#127499, based on patch from Michael Natterer)
* tests/testgtk.c: Fix bidi strings to display correctly
with new auto-bidi.
Tue Mar 2 01:34:40 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtksettings.c: Remove the include of Xft.h, which is already
dragged in via pangoxft.h. (#135496, David Hawthorne)
Mon Mar 1 23:52:15 2004 Tim Janik <timj@gtk.org>
* gtk/gtkbindings.[hc]: expose gtk_bindings_activate_event(), changed
callers.
* gtk/gtkwindow.[hc]: added gtk_window_propagate_key_event() to expose
the key event propagation mechanism used for focus widgets.
(gtk_window_key_release_event): use the same key event propagation logic
as gtk_window_key_press_event().
2004-03-01 Simon Budig <simon@gimp.org>
* gdk/x11/gdkinput-x11.c: X11 R6.4 specifies 15 events
for the XInput extension. We want to see them all.
We now get Proximity Out events again. Fixes bug #135320.
Tue Mar 2 00:47:21 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkimmodule.c (match_locale): Use case-insensitive
comparison. Fixes XIM module loading on AIX. (#131277)
Mon Mar 1 23:59:18 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted):
Make it work correctly when the child model is cleared
completely. (#121633)
2004-03-01 Michael Natterer <mitch@gimp.org>
* gtk/gtkfilechooserwidget.h: removed accidentially committed char
which broke the build.
Mon Mar 1 16:51:21 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_default_size_changed): only store the size if
we can resize in that direction.
Mon Mar 1 16:32:52 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserwidget.c
(gtk_file_chooser_widget_new_with_backend): new function. Long
name.
2004-03-01 Morten Welinder <terra@gnome.org>
* gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
needed.
* gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
semantics and check for errors.
* gtk/gtkpathbar.c (gtk_path_bar_set_path): Propagate errors.
* gtk/gtkfilefilter.c (gtk_file_filter_filter): Don't crash if
display_name is NULL.
Mon Mar 1 14:16:52 2004 Owen Taylor <otaylor@redhat.com>
Based on patch by Alex Larsson
* gtk/gtkfilechooserdefault.c: Use gtk-file-chooser-backend
GtkSetting to set the backend if the app doesn't specify one.
* gdk/x11/gdkevents-x11.c gtk/gtksettings.c:
Add Gtk/FileChooserBackend.
Mon Mar 1 20:32:06 2004 Tim Janik <timj@gtk.org>
* autogen.sh:
- exit with $? instead of 1 in case of failure
- exit with $? if ./configure failed
(that's so autogen.sh && make lines work)
- removed --enable-gtk-doc option
- added $AUTOGEN_CONFIGURE_ARGS
2004-03-01 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (list_model_filter_func): Test for
filter_info.uri correctly. Fixes #135379, pointed out by Damon
Chaplin.
(shortcuts_get_index): Compute the bookmarks index correctly.
Fixes #135714, pointed out by Damon Chaplin.
(gtk_file_chooser_default_list_shortcut_folders): Handle the case
with no shortcuts, and don't run off the end of the list if there
are no bookmarks and their separator. Fixes #135572, patch by
Damon Chaplin.
Mon Mar 1 12:23:06 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c: Handle dynamically resolved bidi direction
when drawing the cursor. (#118541)
* gtk/gtkentry.c (get_better_cursor_x): Use entry->resolved_dir;
* gtk/gtkentry.c (draw_insertion_cursor): Fix up
some confusion in parameter ordering.
Mon Mar 1 12:05:54 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_resizable_hints_changed): Handle
shrinking/growing.
2004-03-01 Michael Natterer <mitch@gimp.org>
* gtk/gtktextbtree.c: removed underscores from calls to
gtk_text_btree_resolve_bidi().
Mon Mar 1 10:41:27 2004 Owen Taylor <otaylor@redhat.com>
Patch from Dov Grobgeld to implement auto-bidi-direction
for GtkTextView (#118543)
* gtk/gtktextbtree.[ch]: Resolve bidi base direction
for each line by propagating backwards/forwards as
necessary.
* gtk/gtktextlayout.[ch] gtk/gtktextview.c: Set the
bidi base direction for the ;ine with the cursor from
the keyboard direction. Add gtk_text_layout_set_keyboard_direction().
Mon Mar 1 10:31:11 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.[ch]: Implement auto-bidi-direction,
based on a patch from Dov Grobgeld. (#118540)
Sun Feb 29 22:01:49 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.[ch]: Add gtk_entry_set_alignment()
to allow right-aligned entries and a "xalign"
property. (#59799, patch from Egon Andersen and
Steffen Gutmann)
* gtk/gtkmisc.c (gtk_misc_class_init): Use improved
xalign property description here too.
* tests/testtext.c: UNDERLINE_ERROR test addition
from Nicolas Settons' patch.
Sun Feb 29 20:34:06 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.[ch] gtk/gtkmenushell.c: export
gtk_window_activate_key() (Request from Tim Janik)
Mon Mar 1 01:00:11 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_drag_data_received):
Make DND operations within a buffer move the dragged
text instead of copying it; also make DND operations
a single user action for undo purposes. (#135191,
#93139, reported by Tommi Komulainen, patch by Paolo Borelli
and Paolo Maggi)
Mon Mar 1 00:51:11 2004 Matthias Clasen <maclas@gmx.de>
* NEWS: News for 2.3.5.
Sun Feb 29 23:25:35 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_key_press):
Fix the Shift-Tab support to go backwards.
Sun Feb 29 16:40:40 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_class_init): Fix
capitalization to match other style properties.
Sun Feb 29 16:38:53 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_class_init): Fix a
typo in property string.
Sun Feb 29 16:35:23 2004 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpango.c gtk/gtktextdisplay.c: Implement
PANGO_UNDERLINE_ERROR (Based on a patch by
Nicolas Setton, #114237)
* gtk/gtktextview.c: Add a error-underline-color style
property.
Sun Feb 29 19:04:33 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkrange.c (_gtk_range_get_wheel_delta): New internal
function returning a good step value for the mouse wheel. For
scrollbars, base the step on page_size^(2/3), for other ranges,
use 2 * step_increment.
* gtk/gtkrange.c (gtk_range_scroll_event): Use it here ...
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event):
... and here.
* gtk/gtkmenu.c (gtk_menu_leave_notify): Fix a warning.
Sun Feb 29 01:51:27 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserembed.c
(_gtk_file_chooser_embed_get_default_size): Add g_return_if_fail()
(_gtk_file_chooser_embed_get_resizable_hints): Add g_return_if_fail()
* gtk/gtkfilechooserdialog.c
(file_chooser_widget_default_size_changed): Get the correct
initial size for the dialog. Also, don't bother with
gtk_window_set_default_size(). It's not really meaningful.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_default_size): Get the correct
spacing for the preview_widget
(update_preview_widget_visibility): Clear widget field after we
destroy it.
2004-02-29 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_property): Handle
GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL.
(gtk_file_chooser_default_get_property): Likewise.
(struct _GtkFileChooserDefault): Added fields for preview_label,
use_preview_label, preview_display_name, preview_box. Removed
preview_frame.
(set_preview_widget): Reorder the widget in relation to the label.
(update_preview_widget_visibility): Create or destroy the preview
label.
(check_preview_change): Update impl->preview_display_name and the
label.
(find_good_size_from_style): Use the preview_box.
(gtk_file_chooser_default_finalize): Free
impl->preview_display_name.
(gtk_file_chooser_default_init): Initialize
impl->use_preview_label.
* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add a
"use-preview-label" property.
(gtk_file_chooser_set_use_preview_label): New function. This sets
whether one wants the file chooser to display a stock label with
the previewed filename. Apps that do really fancy previews can
turn this off and draw the name themselves.
(gtk_file_chooser_get_use_preview_label): New function.
(gtk_file_chooser_get_preview_widget_active): Documentation fix.
* gtk/gtkfilechooserutils.h (GtkFileChooserProp): Add a
GTK_FILE_CHOOSER_PROP_USE_PREVIEW_LABEL value.
* gtk/gtkfilechooserutils.c
(_gtk_file_chooser_install_properties): Override the
"use-preview-label" property.
Sun Feb 29 04:43:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_key_press): Make Tab and
Shift-Tab work when the completion popup is shown.
2004-02-28 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (create_folder_tree): Use "Name" for
the title of the filename column.
(create_file_list): Likewise.
Sun Feb 29 03:31:42 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (gtk_entry_completion_key_press): Fix Page_Up
and Page_Down in the completion popup to move page-wise if we're
scrolling.
2004-02-28 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (set_cell_text_bold_if_folder):
Removed.
(list_name_data_func): Don't call the function above.
(list_mtime_data_func): Likewise.
Sun Feb 29 02:34:35 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_position): New
function which calculates position and size for the popup in
list mode. Currently it only pushes the popup horizontally
into the screen.
Sun Feb 29 01:10:09 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c: Implement the previous fix in a better way,
small cleanups.
2004-02-28 Hans Breuer <hans@breuer.org>
* gtk/gtkfilesystemwin32.c : applied patch from
J. Ali Harlow <ali@juiblex.co.uk>, fixes bug #135641
Sat Feb 28 23:30:36 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_popup): Actually resize the
popup window before popping up. (#135651)
Sat Feb 28 23:29:35 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_class_init):
* gtk/gtkcombobox.c (gtk_combo_box_init): Override the default
handler for style_set in class_init instead of connecting to
the signal in init. (noticed by Yosh).
Sat Feb 28 14:48:35 2004 Owen Taylor <otaylor@redhat.com>
* demos/gtk-demo/main.c (read_line): #ifdef HAVE_FLOCKFILE,
not #ifndef HAVE_FLOCKFILE. (#135642, J. Ali Harlow)
2004-02-28 Hans Breuer <hans@breuer.org>
* gtk/gtkfilesystemwin32.c : adapt to add -> insert_bookmark
change. Also merged some crossplatform code from
gtkfilesystemunix.c
* gtk/gtk.def : updated externals
* gtk/makefile.msc.in : added gtkfilechooserembed.obj
2004-02-28 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkdnd-win32.c : set current_dest_drag to NULL
when destroying, fixes bug #120007. Also removed the mirrored
ref counting for deprecated gdk_drag_context_<ref|unref>()
cause it wasn't reliable anymore anyway.
* gdk/win32/gdkdisplay-win32.c : fix typo, which should
have broken the win32 build for everyone not using msvc
* gdk/win32/gdkevents-win32.c : WM_GETMINAMXINFO ensure not to
return negative values for ptMaxTrackSize, it caused snapping
windows to their minimum size
Sat Feb 28 01:39:01 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Support
switching back to non-gridded mode. (#135169)
Fri Feb 27 22:29:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c (gtk_widget_can_activate_accel): Add "Since: 2.4".
Fri Feb 27 18:52:19 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_style_set):
Whoops. Didn't mean to commit the size change.
Fri Feb 27 18:46:27 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooserembed.h: New private interface to help
negotiate the default size of the widget. Still a bit buggy, but
better than the old behavior.
* gtk/gtkfilechooserdefault.c: Implement the embed interface.
* gtk/gtkfilechooserwidget.c: Proxy the embed interface.
* gtk/gtkfilechooserdialog.c: Use the embed interface.
2004-02-27 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.c (gtk_file_system_insert_bookmark): Added a
"position" argument.
* gtk/gtkfilesystem.h (GtkFileSystemError): Added value for
GTK_FILE_SYSTEM_ERROR_ALREADY_EXISTS.
(struct _GtkFileSystemIface): Added a "position" argument to the
::insert_bookmark() method.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
Updated; renamed from gtk_file_system_unix_add_bookmark(). Return
an error if the path already exists in the bookmarks list.
(gtk_file_system_unix_remove_bookmark): Return an error if the
path does not exist in the bookmarks list.
* gtk/gtkfilechooserdefault.c (shortcuts_add_bookmark_from_path):
For now, use gtk_file_system_insert_bookmark() with -1 for the
position. DnD will come next.
Fri Feb 27 21:42:28 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_relayout):
* gtk/gtkcombobox.c (gtk_combo_box_style_set): Simplify, only
create a new setup if appearance actually changed.
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear):
* gtk/gtkcombobox.c (gtk_combo_box_get_cell_info): Make
these more robust. (#127623, Damon Chaplin)
Fri Feb 27 15:06:00 2004 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkfilechooser.c (gtk_file_chooser_class_init): remove
folder-mode property.
* gtk/gtkfilechooserutils.c
(_gtk_file_chooser_install_properties): remove FOLDER_MODE property.
Thu Feb 26 17:38:40 2004 Manish Singh <yosh@gimp.org>
* gtk/gtkcombobox.c: Add function declaration for
gtk_combo_box_list_remove_grabs().
Fri Feb 27 02:33:21 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentry.c (keyval_is_cursor_move): Classifiy Page Up/Down as
cursor move, but not Home and End.
* gtk/gtkentry.c (gtk_entry_completion_key_press): Lets Page Up/Down
jump to the ends of the list, not Home and End - since we're not
scrolling yet, a "page" is always the complete list. (#127430, Marco
Pesenti Gritti)
Fri Feb 27 00:39:11 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_list_destroy):
* gtk/gtkcombobox.c (gtk_combo_box_menu_destroy): Don't let
the priv pointers dangle. (#127623, Damon Chaplin)
Thu Feb 26 17:31:34 2004 Manish Singh <yosh@gimp.org>
* gdk/x11/xsettings-client.c (read_settings): fix ytpo: s/eles/else/
Thu Feb 26 19:53:32 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/xsettings-common.h (xsettings_client_process_event):
Add xsettings_client_set_grab_func,
Add xsettings_client_set_ungrab_func to the list of renames.
Thu Feb 26 19:48:39 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/xsettings-client.c (read_settings): Fix memory leak
in case of mismatched property type.
Thu Feb 26 18:25:57 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooser.h (GtkFileChooserAction): Add two more folder
modes to the enum.
* gtk/gtkfilechooser.c (gtk_file_chooser_set_folder_mode): Remove.
(gtk_file_chooser_get_folder_mode): Remove
Thu Feb 26 17:29:04 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Return
GDK_FILTER_CONTINUE for unhandled message types.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Allow
multiple filters for the same event type with the standard
"GDK_FILTER_CONTINUE == pretend I wasn't here" semantics.
* gdk/x11/gdkevents-x11.c (gdk_display_add_client_message_filter):
Append to the filter list not prepend, since order now matters.
* gdk/win32/gdkevents-win32.c (gdk_add_client_message_filter):
Append to the filter list not prepend, since order now matters.
Thu Feb 26 23:39:07 2004 Matthias Clasen <maclas@gmx.de>
Fixes for #135333, analysed by Damon Chaplin:
* gtk/gtkcombobox.c (gtk_combo_box_list_button_pressed): Don't
grab here.
* gtk/gtkcombobox.c (gtk_combo_box_popup): Do the grabs here,
so that we don't forget to grab when the menu is popped via
keynav.
* gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Don't
ungrab here.
* gtk/gtkcombobox.c (gtk_combo_box_popdown): Do the ungrabs here.
Thu Feb 26 23:26:00 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkstatusbar.c (set_grip_cursor): New function. Use resize
cursors for resize grips. (Bug #129621)
* gtk/gtktoolbar.c (gtk_toolbar_get_relief_style): Documentation
fix - patch by Torsten Schoenfeld.
* gtk/gtkmenubar.c (gtk_menu_bar_size_request): don't request
space between the items. (Bug #110775)
* gtk/gtkrc.c (_gtk_rc_init): Provide extra horizontal padding
inside menu items that are inside a menu bar. (Bug #110775)
* configure.in (HAVE_XCURSOR): Make XCurosr part of GDK_EXTRA_,
not GDK_PACKAGES, to prevent applications from getting linked to
it (Bug #119804)
* gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Put the vertical
ipadding inside the item. (Bug #61843)
Thu Feb 26 22:56:40 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c: Replace gtk_widget_get_mnemonic_widgets()
by list_mnemonic_widgets() in doc comments as well.
Thu Feb 26 16:36:38 2004 Owen Taylor <otaylor@redhat.com>
Fixes from Torsten Schoenfeld.
* gtk/gtkwidget.c (gtk_widget_add_mnemonic_label):
Fix name in doc comment.
* gtk/gtkwidget.h: gtk_widget_list_mnemonic_labels(),
not get_mnemonic_labels.
Thu Feb 26 22:20:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcomboboxentry.h:
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new_text): New
convenience API to construct simple text combos, implemented by
Damon Chaplin.
* tests/testcombo.c: Use gtk_combo_box_entry_new_text.
Thu Feb 26 22:19:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_new_text): Improve the docs.
Thu Feb 26 15:43:43 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.[ch]: Export insertion cursor drawing functionality
in a simplified form as gtk_draw_insertion_cursor().
(#99031, request from Alex Larsson)
* gtk/gtktextdisplay.c gtk/gtkentry.c gtk/gtklabel.c:
Adapt to new gtk_draw_insertion_cursor().
* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init)
gtk/gtkstyle.c (gtk_style_class_init): Add some missed
Since: 2.4.
* gtk/gtkiconfactory.c (icon_size_settings_changed)
gtk/gtkicontheme.c (do_theme_change)
gtk/gtkrc.c (_gtk_rc_context_get_default_font_name)
* gtk/gtksettings.c (gtk_settings_notify):
_gtk_rc_reset_styles => gtk_rc_reset_styles.
Thu Feb 26 21:52:58 2004 Matthias Clasen <maclas@gmx.de>
Fixes for #127804 and #134722, Damon Chaplin:
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_end):
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_pack_start):
Ref and sink the cell renderers here.
* gtk/gtkcombobox.c (gtk_combo_box_finalize): Unref the cell
renderers here, and free attributes and func_data.
Thu Feb 26 21:41:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkrc.c (gtk_rc_reset_styles): Mark as 2.4 API addition.
Thu Feb 26 14:47:22 2004 Dom Lachowicz <cinamod@hotmail.com>
* gtk/gtk.def: Export gtk_rc_reset_styles()
Thu Feb 26 14:47:22 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.[ch]: Export gtk_rc_reset_styles().
(Request from Dom Lachowicz, #123769)
Wed Feb 25 19:11:31 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkradiobutton.[ch] gtk/gtkradiomenuitem.[ch]: Add a
::group-changed signal emitted when the radio button/menu item
is moved from one group of radio buttons to another.
(#79563, based partially on a patch from Padraig O'Briain)
Thu Feb 26 13:23:47 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (set_text_property): Use the right
free() function. (#135511, George Bronnikov)
2004-02-26 Federico Mena Quintero <federico@ximian.com>
* configure.in: Added a comment to inform translators that they
must add .po files to both po/ and po-properties/ when they add
new languages to ALL_LINGUAS.
Wed Feb 25 15:36:50 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text_for_display):
Call g_convert(), not g_convert() with fallback, since Emacs is
happier if we reject the COMPOUND_TEXT request and it can
then ask for UTF-8. (#114527)
* gtk/gtkselection.c (gtk_selection_data_set_text): When
TEXT is requested, if COMPOUND_TEXT fails, fall back to STRING.
Wed Feb 25 22:35:00 2004 Tomasz KÅoczko <kloczek@pld.org.pl>
* cinfigure.in: After changes in G_DEFINE_TYPE minimal required glib
vesion for build gtk+ is now 2.3.3.
Wed Feb 25 16:00:40 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (update_appearance): move the
expander code.
2004-02-25 Danilo Å egan <dsegan@gmx.net>
* configure.in (ALL_LINGUAS): po-properties/sr@ije.po added, so
adding back sr@ije.
2004-02-25 Federico Mena Quintero <federico@ximian.com>
* configure.in (ALL_LINGUAS): Remove sr@ije until po-properties/
is fixed for it.
Wed Feb 25 12:44:49 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.[ch]: Make realize and unrealize signals. (#73310)
Wed Feb 25 12:21:32 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.[ch] gtk/gtklabel.c: Patch from
Padraig O'Briain to add gtk_widget_add/remove_mnemonic_label,
gtk_widget_get_mnemonic_labels(). (#103456)
2004-02-25 Danilo Å egan <dsegan@gmx.net>
* configure.in: Added sr@ije to ALL_LINGUAS.
Wed Feb 25 09:46:34 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkstyle.c (gtk_style_finalize): Free
style->icon_factories (#130128)
Wed Feb 25 03:52:58 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c: use gtk_widget_push/pop_composite_child around
internal buttons.
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
rename some widgets to make it clear where they are packed.
(update_appearance): New function to handle all the 'logic' of
layout in one place. We aren't trying to keep all our properties
in sync.
(gtk_file_chooser_default_set_property): use update_appearance()
2004-02-24 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_model_create): Renamed
from create_shortcuts_model().
(struct _GtkFileChooserDefault): Renamed the shortcuts_tree field
to shortcuts_list.
(shortcuts_list_create): Renamed from shortcuts_tree_create().
(create_file_list): Enable the tree view as a model drag source.
(create_folder_tree): Likewise.
* gtk/gtkfilesystemmodel.c (_gtk_file_system_model_get_type):
Register the drag source interface.
(drag_source_iface_init): New function.
(drag_source_row_draggable): New function.
(drag_source_drag_data_get): New function.
Tue Feb 24 19:12:07 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.4 ===
* configure.in: Bump version to 2.3.4, fix broken
gtk_binary_age value by copying the GLib logic
to automatically set it to the right values.
Wed Feb 25 00:13:24 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_menu_row_changed):
* gtk/gtkcombobox.c (gtk_combo_box_list_row_changed):
Don't resize priv->cell_view if it is NULL. (#127804,
Damon Chaplin)
Wed Feb 25 00:06:50 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c: Add a comment about the different
modi of this widget. Get rid of priv->hbox, and some other
cleanups. Make sure that gtk_combo_box_unset_model() is
always called before setting up a different mode.
Tue Feb 24 17:51:49 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccellabel.c (gtk_accel_label_refetch): Convert
underscores in keyval names to spaces. (#131480)
Tue Feb 24 17:35:59 2004 Owen Taylor <otaylor@redhat.com>
* m4macros/gtk-2.0.m4: Add some quotes around ***. (#130073,
Uwe Zeisberger)
Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.3 ===
* configure.in: Version 2.3.3, interface age 0.
* NEWS: Finish updates for 2.3.3.
2004-02-24 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (save_widgets_create): Use a plain
GtkEntry for the filename, not a GtkFileChooserEntry.
(update_chooser_entry): Use gtk_entry_set_text() rather than
_gtk_file_chooser_entry_set_file_part().
(gtk_file_chooser_default_set_current_name): Likewise.
(gtk_file_chooser_default_set_current_folder): Don't set the base
folder of the entry, and don't call update_chooser_entry().
(gtk_file_chooser_default_get_paths): Use the plain entry.
(save_widgets_create): Store the "Save in Folder" label in the
impl structure.
(expander_activate_cb): Set the sensitivity of the label and
combo.
(save_widgets_create): Connect to "notify::expanded" rather than
"activate" on the expander.
(expander_changed_cb): Renamed from expander_activate_cb(). Flip
the conditions again...
Tue Feb 24 14:43:07 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
column as different if there are 3 or more visible columns.
2004-02-24 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilechooserdefault.c: (shortcuts_insert_separator):
Fix compilation (#135278, Padraig O'Briain).
2004-02-24 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
Translate the desktop label.
(shortcuts_get_index), (shortcuts_add_bookmarks),
(shortcuts_insert_separator), (create_shortcuts_model):
Don't show the bookmark separator if there are no bookmarks.
Tue Feb 24 01:41:30 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (location_popup_handler): Make the
dialog look like the nautilus dialog.
(expander_activate_cb): get the order correct.
2004-02-23 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (list_selection_changed): Call
bookmarks_check_add_sensitivity().
(shortcut_exists): New helper function; moved the testing code
over from bookmarks_check_add_sensitivity().
(bookmarks_check_add_sensitivity): Check the contents of the
selection in the file/folder list. Use shortcut_exists().
(shortcuts_add_bookmark_from_path): Don't insert the bookmark if
the path is already in the shortcuts list.
(add_bookmark_button_clicked_cb): Add the bookmarks from the list
selection or from the current folder, as appropriate.
Mon Feb 23 21:09:06 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (shortcuts_pane_create): Add
mnemonics. Sorry translators.
Tue Feb 24 02:24:58 2004 Matthias Clasen <maclas@gmx.de>
* NEWS: Additions. This should be complete for the main ChangeLog
now, still need to sift through gdk-pixbuf, docs, and translations.
Mon Feb 23 19:57:45 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size):
Add a get_size implementation so that we are no longer the same
height as text.
2004-02-24 Anders Carlsson <andersca@gnome.org>
* gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
(shortcuts_remove_rows), (shortcuts_append_bookmarks),
(create_shortcuts_model), (shortcuts_tree_create),
(gtk_file_chooser_default_remove_shortcut_folder):
Improve bookmark list rendering by controlling the visibility
of the pixbuf cell so that it will be invisible for the separator
row, also use a list store instead of a tree store for the model
so we won't get unnecessary space for an expander.
Tue Feb 24 01:08:27 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c: Add a destroy implementation in order to
set priv->cell_view to NULL before finalize stumbles over the
dangling pointer. This big array of pointers into the widget
tree in GtkComboBoxPrivate is really fragile and should be
cleaned up.
Mon Feb 23 17:52:43 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (main_paned_create): use a size
group when allocating space for the buttons at the bottom just in
case. Also, move the filter to below the file list.
Mon Feb 23 16:52:12 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_class_init): Seth was confused by
keybindings. They should be Alt, not Ctl. Also, A-Home should go
home, not up.
Mon Feb 23 15:23:23 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (gtk_path_bar_set_path): Display the root a bit
more cleanly.
* gtk/gtkpathbar.h (struct _GtkPathBarClass): fix the signal.
2004-02-23 Federico Mena Quintero <federico@ximian.com>
Rework the user interface of the file chooser, as per
Seth Nickell's design.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_class_init): Add binding signals and bindings:
"location-popup" - C-l
"up-folder" - C-Up
"home-folder" - C-Home
(up_folder_handler): New function; moved the code from up_button_clicked().
(up_button_clicked_cb): Call up_folder_handler().
(home_folder_handler): New function.
(location_popup_handler): New function.
(struct _GtkFileChooserDefault): Add an hpaned field.
(gtk_file_chooser_default_set_current_name): Check that we are in
Save mode.
(save_widgets_create): New function, create the widgets specific
to Save mode.
(main_paned_create): New function, create the hpaned's widgets here.
(gtk_file_chooser_default_constructor): Create the open and save
widgets, and show only one set.
(gtk_file_chooser_default_set_property): Show/hide the save widgets.
(gtk_file_chooser_default_get_paths): Only pay attention to the
entry in Save mode.
(update_chooser_entry): Update the entry only in Save mode.
(entry_activate): Removed.
Mon Feb 23 11:20:34 2004 Owen Taylor <otaylor@redhat.com>
* configure.in: Remove the configure.in check for fontconfig
entirely; it's not needed, since PangoXft implies that sufficiently
new fontconfig is present.
Mon Feb 23 02:26:53 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.c (gtk_path_bar_finalize):
for (i = 0; i < 10; i++)
g_print ("I will compile before committing.\n");
Mon Feb 23 02:08:42 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (file_pane_create): Use the
GtkPathBar by default now.
* gtk/gtkpathbar.c (gtk_path_bar_set_path): Correctly set the
current path from the path.
(gtk_path_bar_class_init): new signal
(button_clicked_cb): emit the signal when we're selected.
(gtk_path_bar_clear_buttons): Fix a crasher when we weren't
clearing thr first_scrolled_button.
Mon Feb 23 02:26:15 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Fix the
allocation for the toggle button so that it actually shows up
in LTR list mode.
* gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column):
* gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column):
* gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
notification, and avoid excessive relayouting.
Mon Feb 23 00:38:21 2004 Matthias Clasen <maclas@gmx.de>
Fix bug 134982, reported by Morten Welinder:
* gtk/gtkpathbar.c (gtk_path_bar_destroy):
* gtk/gtktooltips.c (gtk_tooltips_destroy):
* gtk/gtkinvisible.c (gtk_invisible_destroy): Chain up to the
parent's ::destroy handler.
* gdk/gdkdisplay.c (gdk_display_dispose): Chain up to the
parent's ::dispose handler.
Sat Feb 21 19:09:55 2004 Manish Singh <yosh@gimp.org>
* gtk/gtksettings.c (gtk_default_substitute): Guard the FC_HINT_STYLE
stuff with an #ifdef, so we still build with most fontconfig versions.
Sun Feb 22 03:03:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c: (gtk_action_finalize):
* gtk/gtkclipboard.c: (gtk_clipboard_finalize):
* gtk/gtkentrycompletion.c: (gtk_entry_completion_class_init),
(gtk_entry_completion_finalize):
* gtk/gtkfilechooserwidget.c: (gtk_file_chooser_widget_finalize):
* gtk/gtkfilesystemmodel.c: (gtk_file_system_model_class_init),
(gtk_file_system_model_finalize):
* gtk/gtkicontheme.c: (gtk_icon_theme_class_init),
(gtk_icon_theme_finalize):
* gtk/gtktextchild.c: (gtk_text_child_anchor_finalize):
* gtk/gtkuimanager.c: (gtk_ui_manager_class_init),
(gtk_ui_manager_finalize):
* modules/input/gtkimcontextxim.c: (gtk_im_context_xim_finalize):
Add chains to the parent's ::finalize() handler (#134901, Morten Welinder,
patch by Jan Arne Petersen)
Sun Feb 22 02:10:34 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (gtk_entry_completion_default_completion_func):
Don't crash if item is NULL. (#131542, Dan Damian)
Sun Feb 22 02:04:03 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Add a check for a new enough fontconfig, since
we picked up a direct dependency on it with the Xft settings.
Sun Feb 22 00:23:40 2004 Matthias Clasen <maclas@gmx.de>
Bug 112647 (Bill Haneman, patch by Narayana Pattipati):
* gtk/gtkcheckmenuitem.c: Introduce a new style property
indicator_size and use it instead of the hardcoded value.
* gtk/gtkmenu.c (gtk_menu_size_request): Make sure each menu
item gets enough vertical space for the label and the indicator.
Sat Feb 21 20:20:11 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtksettings.c (gtk_settings_class_init): Use P_ instead of
_ for the new Xft settings.
Sat Feb 21 20:09:53 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Bug 130790 (Federico Mena Quintero, Owen Taylor)
* gdk/x11/gdkevents-x11.c: Add Xft XSETTINGS
* gtk/gtksettings.c: Add new GtkSettings corresponding to the Xft
XSETTINGS
Sat Feb 21 19:18:26 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Bug 132502
* gtk/gtkmenu.c (gtk_menu_motion_notify): Make sure we pop down
if we enter a non-selectable menu item.
* gtk/gtkmenu.c (gtk_menu_leave_notify): Don't pop a submenu
when the user has left the item.
Sat Feb 21 17:57:35 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/docs: Commit auto-generated changes
Fri Feb 20 18:20:22 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c: conditional compile for GtkPathBar
* gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Clean up
allocation code. Works fully in RTL languages, I think.
(gtk_path_bar_scroll_up): Scroll up.
(gtk_path_bar_scroll_down): Scroll down.
2004-02-20 Christian Rose <menthos@menthos.com>
* configure.in: Added "en_CA" to ALL_LINGUAS.
2004-02-20 Michael Meeks <michael@ximian.com>
* gtk/gtktoolitem.c (gtk_tool_item_property_notify): impl.
(gtk_tool_item_class_init): hook it up.
(gtk_tool_item_set_proxy_menu_item): synchronize sensitivity.
* gtk/gtktoolbutton.c (gtk_tool_button_property_notify):
chain to parent, fix strcmp bug.
* tests/testtoolbar.c (main): re-arrange widgets to allow
more overflowing toolbar goodness.
2004-02-20 Alexander Larsson <alexl@redhat.com>
* gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
Desktop directory is not translated.
(set_tree_model):
There might not be volumes for all paths.
* gtk/gtkfilechooserwidget.c:
(gtk_file_chooser_widget_constructor):
Use gtk_file_chooser_set_current_folder to set cwd.
Thu Feb 19 19:58:53 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkpathbar.[ch]: New widget to handle the path in the
fileselector implementation. Not hooked up to anything yet.
* gtk/Makefile.am: support the path bar.
Fri Feb 20 00:21:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstyle.c (gtk_default_draw_handle):
(gtk_default_draw_box): Make the paned handles gray when the the
widget is_focus() but not HAS_FOCUS(). (#122751, Soeren Sandmann)
Thu Feb 19 23:41:06 2004 Matthias Clasen <maclas@gmx.de>
Fixes for #82099:
* gdk/x11/gdkevents-x11.c: Introduce new XSettings "Gtk/ButtonImages"
and "Gtk/MenuImages" and map them to "gtk-button-images" and
"gtk-menu-images".
* gtk/gtkimagemenuitem.c: Add a boolean setting "gtk-menu-images" and
use it to set the visibility of the embedded image.
* gtk/gtkbutton.c: Add a boolean setting "gtk-button-images" and use
it to set the visibility of an embedded image.
Thu Feb 19 21:26:10 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
Give each radio action its own value. (#134889, Paolo Borelli)
2004-02-19 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_finalize):
Chain to the parent's ::finalize() handler. Fixes #134885; caught
by Jan Arne Petersen.
2004-02-19 Mark McLoughlin <mark@skynet.ie>
Make the entire expander widget width prelight as suggested
by Seth in bug #134263.
* gtk/gtkexpander.c:
(gtk_expander_paint_prelight): impl.
(gtk_expander_paint): use it.
(gtk_expander_redraw_expander): don't only redraw the
arrow when prelit.
2004-02-19 Alexander Larsson <alexl@redhat.com>
* gtk/gtkfilechooser.c: (gtk_file_chooser_class_init):
* gtk/gtkfilechooserutils.c:
* gtk/gtkfilechooserutils.h:
* gtk/gtkfilechooserwidget.c:
Remove old file-system property.
Add new file-system-backend string property
* gtk/gtkfilechooserdefault.[ch]:
Handle the file-system-backend property
* gtk/gtkfilechooserdialog.[ch]:
(gtk_file_chooser_dialog_new_with_backend):
Remove old file-system property.
Add new file-system-backend string property
Add new function gtk_file_chooser_dialog_new_with_backend
* gtk/gtkfilesystem.c:
* gtk/gtkfilesystem.h:
Add filesystem module support.
2004-02-18 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_tree_create): Renamed
from create_shortcuts_tree().
(shortcuts_pane_create): New function.
(button_new): Renamed from toolbar_button_new().
(shortcuts_pane_create): New function, create the whole shortcuts
pane here.
(current_folder_create): Renamed from toolbar_create(). Don't
create the bookmarks buttons here.
(file_pane_create): New function.
(gtk_file_chooser_default_constructor): Use the new helper
functions, and don't use an extra vbox as GtkFileChooserDefault is
already a vbox.
Thu Feb 19 01:39:30 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.h:
* gtk/gtkuimanager.c (gtk_ui_manager_class_init): Add
default handlers for all signals; for consistency and for the
benefit of language bindings which still rely on header parsing
to find the signals. (#134269, Jeroen Zwartepoorte)
Thu Feb 19 00:45:02 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
Improve the efficiency here by prepending on the list and reverting
it after the loop. (#134435, Christian Biere)
Thu Feb 19 00:32:21 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkplug.c (_gtk_plug_remove_from_socket): Avoid errors when
removing the plug from the socket. (#128546, Christopher Blizzard)
Thu Feb 19 00:09:35 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkradiomenuitem.h:
* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_from_widget):
(gtk_radio_menu_item_new_with_label_from_widget):
(gtk_radio_menu_item_new_with_mnemonic_from_widget): New
convenience functions analogous to similar API on GtkRadioButton.
(#51700, Vitaly Tishkov, patch by Soeren Sandmann)
Wed Feb 18 17:53:27 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkwindow.c (gdk_window_get_bg_gc): Use a scratch GC in the
case where the background is a solid color.
(gdk_window_clear_backing_rect): Reset the clip region after use.
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Go
back to using a scratch GC. Pointed out by Owen Taylor
* gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Only use a
scratch GC if the passed-in one is NULL
Wed Feb 18 14:27:08 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkwindow.c (gdk_window_get_composite_drawable): Reset clip
region back to NULL on cached GC (rest of #134728)
Wed Feb 18 13:28:57 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Fix bug reported by Nam SungHyun (#134728)
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha):
Don't use a cached GC here since the function needs to modify the
foreground color.
* gdk/gdkwindow.c (gdk_window_end_paint): Reset clip region back
to NULL on the cached GC.
2004-02-17 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdialog.c
(gtk_file_chooser_dialog_style_set): Use HIG-compliant spacings.
This sucks a lot.
Wed Feb 18 02:03:47 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Document some
peculiarities of the ::delete_range signal. (#132135, Grant Gayed)
Wed Feb 18 01:44:59 2004 Soeren Sandmann <sandmann@daimi.au.dk>
GC caching, bug #125645 (based on patch by Brian Cameron)
* gdk/gdkscreen.h (struct _GdkScreen): Add GC cache
* gdk/gdkscreen.c (gdk_screen_dispose): New function. Unref the
cached GC's here.
* gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): New function to
get a scratch gc.
* gdk/gdkinternals.h: Declare the function here
* gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Use
_gdk_drawable_get_scratch_gc() instead of creating a new GC.
* gdk/x11/gdkgeometry-x11.c (gdk_window_copy_area_scroll): same
* gdk/x11/gdkdrawable-x11.c (draw_with_images): same
* gdk/gdkwindow.c (gdk_window_get_composite_drawable): same
* gdk/gdkwindow.c (gdk_window_end_paint): same
* gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): same
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): same
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_pixmap_and_mask_for_colormap): same
Tue Feb 17 23:28:33 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenu.c (gtk_menu_init): ...and don't forget to initalize
priv->columns to 1.
Tue Feb 17 23:11:21 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenu.c (gtk_menu_do_remove): Make sure that we keep
priv->columns >= 1 even for empty menus, since we divide by it
somewhere else. (#133428, Vincent Noel)
Tue Feb 17 23:02:58 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Fix for #119722, reported by Olexiy Avramchenko, patch by Owen
Taylor.
* gdk/x11/gdkprivate-x11.h (struct _GdkGCX11): Add a depth field
* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Keep track of the GC's
depth.
* gdk/x11/gdkgc-x11.c (_gdk_gc_x11_get_fg_xft_color): First query
the colormap, if no colormap, special case depth 1,
* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Use
_gdk_gc_x11_get_fg_xft_color() to get the foreground color.
* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_xft_draw):
Special-case bitmaps without a colormap.
* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Use inherited
draw_pixbuf() implementation in the bitmap case.
2004-02-17 Mark McLoughlin <mark@skynet.ie>
* modules/input/Makefile.am: only reference input method
modules we've actually built. Fixes re-build failure with
stale hangul module lying aroung. Bug #134518.
Mon Feb 16 19:13:21 2004 Owen Taylor <otaylor@redhat.com>
* gdk/gdkdraw.c: Revert last commit, please don't commit patches
without approval, this isn't the right way to do it.
2004-02-16 DindinX <david@dindinx.org>
* gdk/gdkdraw.c (gdk_draw_segments): don't try to draw more than 32767
segments at a time, since XDrawSegments cannot handle more than this.
fixes bug #122026.
Mon Feb 16 18:26:39 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_set_child_property): Call
gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous()
in the CHILD_PROP_EXPAND branch. (#134543, Damon Chaplin)
Mon Feb 16 00:04:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_*):
Split declaration and assignment of combo_box.
* gtk/gtkcombobox.c (gtk_combo_box_list_setup): Remove a
pointless cast
Sun Feb 15 22:08:53 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Add
deprecation note pointing people to GtkComboBox.
Sun Feb 15 02:49:45 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreednd.c:
* gtk/gtktreeview.c: Document the tree DND API.
* gtk/gtktreeview.c (gtk_tree_view_unset_rows_drag_source):
Call gtk_drag_source_unset().
Sun Feb 15 00:49:59 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init):
Make stock_size an uint property, to allow custom icon
sizes. Also clarify the blurb. (#130047, Erik Grinaker)
Sat Feb 14 11:05:26 2004 Manish Singh <yosh@gimp.org>
* configure.in: Remove unnecessary STRIP_* definitions, and GNU
make check.
2004-02-13 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_add_bookmark):
Duh, duh, duh! Don't bail out if the bookmarks file doesn't exist
the very first time you try to save one.
2004-02-13 Federico Mena Quintero <federico@ximian.com>
Fix #129020.
* gtk/gtkfilechooserdialog.c
(set_default_size): New function, sets a reasonable default size
for the window.
(gtk_file_chooser_dialog_realize): New function, call
set_default_size().
(gtk_file_chooser_dialog_style_set): Likewise.
(gtk_file_chooser_dialog_screen_changed): Likewise.
* tests/testfilechooser.c (main): Don't set a default size for the
dialog.
Sat Feb 14 00:05:18 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c (bsearch_elt_with_offset):
Use do instead of while. (#134031, Morten Welinder);
Sat Feb 14 00:00:52 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Suppress xsltproc and xmlcatalog checks
if enable_man=no. (#134162, Julio M. Merino Vidal)
Fri Feb 13 23:54:48 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Remove checks for sgml2html. It was once
used for building the linuxdoc version of the tutorial.
Nowadays, we use db2html. (#134164, Julio M. Merino Vidal)
Fri Feb 13 08:17:43 2004 Owen Taylor <otaylor@redhat.com>
Fix various compilation problems (#134312, David
Hawthorne)
* gtk/gtkscale.c (gtk_scale_get_layout_offsets): Use
g_return_if_fail(), not g_return_val_if_fail().
* gtk/gtkvscale.c (gtk_vscale_get_layout_offsets):
* gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Use
g_return_if_reached(), not g_return_val_if_reached().
* gtk/gtkvscale.c (gtk_vscale_expose): Fix the types
of some parameters.
* gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Remove
extra 'scale' parameter.
Thu Feb 12 21:58:20 2004 Owen Taylor <otaylor@redhat.com>
Various reentrancy fixes for widgets being destroyed
out of focus-out-event. (#128821, Grant Gayed)
* gtk/gtkwindow.c (_gtk_window_unset_focus_and_default):
Ref window and widget over callbacks.
* gtk/gtkwidget.c (gtk_widget_hide)
gtk/gtkwidget.c (gtk_widget_set_child_visible):
Ref the widget before calling _gtk_window_unset_focus_and_default(),
since that can call user callbacks.
* gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
Do nothing if the widget isn't realized.
Fri Feb 13 01:31:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkbutton.c (_gtk_button_paint): Don't draw bevels around
active, RELIEF_NONE buttons that aren't depressed. This improves
the appearance of buttons in notebook tabs. (#109213, reported
by Benjamin Otte, patch by Rodney Dawes)
Fri Feb 13 01:06:08 2004 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/main.c (read_line): Protect getc_unlocked() by
HAVE_FLOCKFILE in all cases. (#134205, Julio M. Merino Vidal)
Fri Feb 13 00:54:59 2004 Matthias Clasen <maclas@gmx.de>
Fix for #104811, Padraig O'Briain:
* gtk/gtkscale.h:
* gtk/gtkscale.c (_gtk_scale_clear_layout):
* gtk/gtkscale.c (gtk_scale_get_layout_offsets):
* gtk/gtkscale.c (gtk_scale_get_layout): New functions to determine the
text and its position from a GtkScale, to make it more accessible.
* gtk/gtkhscale.c (gtk_hscale_get_layout_offsets):
* gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): Implementations of the
new GtkScale vfunc.
Thu Feb 12 17:59:52 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c (gtk_icon_theme_get_search_path):
Remove an extraneous + 1 (#134015, Torsten Schoenfeld)
Thu Feb 12 23:55:08 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktooltips.h:
* gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): New
function to improve the accessibility of tooltips. (#114851,
Padraig O'Briain)
Thu Feb 12 23:16:04 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_popup):
* gtk/gtkcombobox.c (gtk_combo_box_popdown): Make these public and
add docs. (#132847)
Thu Feb 12 11:05:16 2004 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkproperty-x11.c (gdk_property_get): Assign xtype using
gdk_x11_atom_to_xatom_for_display () when type != GDK_NONE.
* gtk/gtkselection.c (_gtk_selection_request): Use GDK_NONE in
gdk_property_get call instead of 0.
* docs/reference/gdk/tmpl/properties.sgml: Document the above
as GDK_NONE instead of simply 0.
Thu Feb 12 15:46:26 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Fix up item_area
correctly in RTL mode. (#133984, patch from Semion Chichelnitsky).
Thu Feb 12 02:22:02 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func):
Correct the docs.
Thu Feb 12 01:17:01 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
for automatic DND. (#133485, Tommi Komulainen)
Thu Feb 12 00:37:00 2004 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkproperty-x11.c (gdk_property_change): Fix misleading
debug output.
2004-02-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_map): New ::map()
handler. If no widget has the focus, try to give it to the
default widget. If there is no default widget, give it to the
first button. Fixes the cause for which #59707 was reopened.
2004-02-11 Federico Mena Quintero <federico@ximian.com>
Fixes #134051.
* gtk/gtkicontheme.c (struct _GtkIconInfo): Remove the ref_count field.
(icon_info_new): Don't initialize the ref_count field.
2004-02-11 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkicontheme.c (gtk_icon_theme_prepend_search_path): Shift
the array correctly. Fixes #134055, patch by Tosten Schoenfeld
<kaffeetisch@gmx.de>.
Wed Feb 11 02:23:39 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcontainer.c (gtk_container_real_set_focus_child): Handle
focus [hv]adjustment correctly when the focus is located deeper
down in the hierarchy. (#133489)
Wed Feb 11 02:06:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove
arbitrary low upper limits on the xpad, ypad, width and height
properties. (#129696, John Ellis)
Wed Feb 11 01:24:20 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes):
Ugh. Don't try to free ints, even if they're stored in pointers.
(#133997, Morten Welinder)
2004-02-10 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
Free the filters. Fixes #133547, patch by Morten Welinder
<mortenw@gnome.org>.
Tue Feb 10 12:02:14 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/xsettings-client.c (read_settings): Avoid
triggering an X error when the client->manager_window
is None...makes logs look cleaner.
* gdk/x11/gdkproperty-x11.c (gdk_property_get): Handle
GDK_NONE to mean AnyPropertyType as documented. (Reported
by Yu Shao)
* gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window,
gdk_x11_screen_get_window_manager_name): Fix error trap
we've been leaking since 2002... (#129538)
2004-02-10 Federico Mena Quintero <federico@ximian.com>
Fixes the entry-related part of #133852.
* gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't change
the file part of the entry if the selected item is a folder.
2004-02-10 Federico Mena Quintero <federico@ximian.com>
Fixes #133995, patch by Morten Welinder <mortenw@gnome.org>.
* tests/prop-editor.c (create_prop_editor): Free the title.
(object_changed): Free the children list.
Tue Feb 10 01:58:55 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcontainer.c (gtk_container_set_focus_hadjustment):
* gtk/gtkcontainer.c (gtk_container_set_focus_vadjustment): Document
these functions.
2004-02-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (set_list_model): Request
GTK_FILE_INFO_ALL from the file system model, so that arbitrary
filtering will work. Perhaps we should have a way of aggregating
info types to the model as filters get installed.
Mon Feb 9 22:22:19 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes):
Ugh. Don't try to free ints, even if they're stored in pointers.
2004-02-09 Federico Mena Quintero <federico@ximian.com>
Fix #132256.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_paths): Read the contents of the
filename entry in both OPEN and SAVE mode. In multiple-selection
mode, add this to the selection from the file/folder list.
(struct get_paths_closure): Add a path_from_entry field.
(get_paths_foreach): Only add the iterated path if it is not the
same as the path from the entry.
2004-02-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): If
the folder is already open, add the requested info types to it.
Sun Feb 8 01:28:02 2004 Manish Singh <yosh@gimp.org>
* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
type casts for the gtk_window_set_screen() call.
Sun Feb 8 01:44:06 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups
come up on the same screen as the combo box. (#133544,
Morten Welinder)
Fri Feb 6 23:40:24 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkfilechooserdefault.c (create_file_list): clean up the
packing of the file selector.
Sat Feb 7 01:21:09 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodel.c (gtk_tree_model_base_init): Don't use function
calls in array initializers, as some compilers seem to hate this.
(#133216, Jonas Jonsson)
Sat Feb 7 00:06:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
by on-demand instantiating a singleton object with a "changed"
signal.
* gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
for GtkAccelMap::changed.
Fri Feb 6 23:08:29 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextbtree.c (_gtk_text_btree_check):
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes):
* gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes):
Actually free the lists. Pointed out by Morten Welinder.
Fri Feb 6 22:38:54 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombo.c (gtk_combo_entry_key_press): Handle character
positions in UTF-8 strings correctly. (#133315, Theppitak
Karoonboonyanan)
2004-02-06 Morten Welinder <terra@gnome.org>
* gtk/gtktoolbar.c (show_menu): Cleanup using
gtk_menu_attach_to_widget. Also fixes leak, see #133411.
2004-02-06 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free the
list. Fixes #133546.
2004-02-06 Federico Mena Quintero <federico@ximian.com>
Fix #132327.
* gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add a
folder_hash field to keep a list of live folder objects.
(gtk_file_system_unix_init): Create the folder_hash.
(gtk_file_system_unix_finalize): Destroy the folder_hash.
(gtk_file_system_unix_get_folder): Ref and return an existing
folder if we have it around, otherwise return a new folder object.
(struct _GtkFileFolderUnix): Add a field for the parent file system.
(gtk_file_folder_unix_finalize): Remove the folder from the file
system's hash table.
(gtk_file_system_unix_create_folder): Emit "files-added" on the
newly-created folder's parent. Fixes #132327.
Fri Feb 6 00:51:57 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstock.c (builtin_items): Change the labels of the
ZOOM_100 and ZOOM_FIT stock items to "_Normal Size" and
"Best _Fit", to be HIG compliant. (#124080, Mariano
SuƔrez-Alvarez)
Fri Feb 6 00:45:16 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize
function to plug a few memory leaks. (#133544, Morten Welinder)
Fri Feb 6 00:15:38 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate):
Support mnemonic_activate here as well.
* gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
the button, not the tree_view.
Thu Feb 5 23:48:19 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
function, to make mnemonic_activate work for combo boxes.
(#133443, Paolo Borelli)
Thu Feb 5 22:05:52 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilesystemunix.c (bookmark_list_read): Initialize result
to FALSE. (#133539, Morten Welinder)
Thu Feb 5 21:36:43 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
of the depth one check. (#133488, Christian Persch)
Thu Feb 5 01:50:19 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_paint): Fix
the drawing of tearoff menu items which don't come first in their
menu. (#33311)
Thu Feb 5 00:59:08 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombo.c (gtk_combo_entry_key_press): Use
g_completion_complete_utf8(). (#133313, Theppitak Karoonboonyanan)
2004-02-04 Federico Mena Quintero <federico@ximian.com>
Fix #59707.
* gtk/gtklabel.c (gtk_label_focus): Removed, so we don't ignore
the focus chain.
(gtk_label_button_press): Fix prototype.
(gtk_label_button_release): Likewise.
(gtk_label_motion): Likewise.
* tests/testgtk.c (create_message_dialog): For the dialog with
only GTK_BUTTONS_CLOSE, make GTK_RESPONSE_CLOSE the default.
2004-02-04 Morten Welinder <terra@gnome.org>
* gtk/gtktoolbar.c (show_menu): Show on the right screen. (Fixes
bug 133411, apart from the leak.)
Tue Feb 3 13:39:27 2004 Manish Singh <yosh@gimp.org>
* gtk/gtkadjustment.c (gtk_adjustment_new): pass value in last
in g_object_new, since it depends on lower and upper being set.
2004-02-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_init): Make the
window not resizable. Fixes #114032.
2004-02-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add
documentation for the use_separator style property.
2004-02-03 Federico Mena Quintero <federico@ximian.com>
Fix #68938.
* gtk/gtkdialog.c (GtkDialogPrivate): New private structure for
GtkDialog; right now it only contains an ignore_separator field.
(gtk_dialog_class_init): Register the private structure.
(gtk_dialog_init): Initialize the priv->ignore_separator field.
(_gtk_dialog_set_ignore_separator): New private function.
(gtk_dialog_set_has_separator): Ignore the setting if appropriate.
* gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add a
use_separator style property.
(gtk_message_dialog_style_set): Change the dialog's separator
based on the style property.
(gtk_message_dialog_init): Set the dialog box to ignore the
separator setting.
Tue Feb 3 02:35:09 2004 Matthias Clasen <maclas@gmx.de>
* gtk/Makefile.am: Build filesystemwin32.c if OS_WIN32 and
also dist gtkfilesystemwin32.[hc].
Tue Feb 3 02:04:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtklabel.c (gtk_label_ensure_layout): Right-justify labels
in rtl mode. (#129071, chinen@jp.ibm.com)
Tue Feb 3 02:01:25 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Exchange the
meaning GTK_MENU_DIR_PARENT/CHILD and GTK_MENU_DIR_PREV/NEXT in rtl
mode. (#107528)
Tue Feb 3 01:38:06 2004 Matthias Clasen <maclas@gmx.de>
Clip narrow columns in rtl-oriented tree views (#128089,
chinen@jp.ibm.com):
* gtk/gtkstyle.c (gtk_default_draw_option):
* gtk/gtkstyle.c (gtk_default_draw_check): Clip to the
given area.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
Use the right clip area when calling gtk_cell_renderer_render().
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus):
Use the right clip area when calling gtk_paint_focus().
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
Use the right clip area when calling gtk_paint_toggle() or
gtk_paint_check().
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
Clip to the expose_area when drawing the background rectangle.
Tue Feb 3 00:14:36 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/x11/gdkgeometry-x11.c (queue_item_free, gdk_window_queue):
Use a weak reference instead of ref()/unref(). (#60857, reported
by Joshua N Pritikin)
* gdk/gdkimage.c (scratch_image_info_for_depth): Formatting fix.
Tue Feb 3 00:15:17 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
init_hadjust_value and prev_width.
* gtk/gtktreeview.c (gtk_tree_view_init): Initialize
them here.
* gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
here to properly handle the initial position of rtl-oriented
tree views. (#127581, chinen@jp.ibm.com)
2004-01-20 Federico Mena Quintero <federico@ximian.com>
Fix #130846, reported by R. McFarland <rwmcfa1@neces.com>.
* gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
we handle an event in the colums, and FALSE at the end if the
event is not handled at all.
Mon Feb 2 23:41:48 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed):
Don't access the level after removing the node, since that may
kill the level. (#132615, Crispin Flowerday)
2004-02-02 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Set the cursor
in all cases. If no grab cursor specified, use the grabbing
window's cursor. If the grabbing window has no cursor, use the
default arrow cursor. (#118025)
Mon Feb 2 22:05:36 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkseparatormenuitem.c (gtk_separator_menu_item_init): The
latest in menu separation technology.
Mon Feb 2 19:04:17 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else
we have to take our chances with).
(Bug 97510)
Mon Feb 2 18:45:28 2004 Soeren Sandmann <sandmann@daimi.au.dk>
Fix bug 110224.
* gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
Remove unused variable 'result'
* gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions.
* gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them
here.
Mon Feb 2 14:32:32 2004 Pablo Saratxaga <pablo@mandrakesoft.com>
* configure.in po/uz*.po: changed default for Uzbek; now just "uz"
is in cyrillic and "uz@Latn" for latin; "uz@Cyrl" has been removed
Sun Feb 1 16:34:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
sliding when using the new API.
Sun Feb 1 16:03:39 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
item_area is positioned correctly. Fix #133070, reported by Jeroen
Zwartepoorte.
Sat Jan 31 23:13:43 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't
crash when finalizing an unused GtkTextChildAnchor. (#132260,
muppet)
Sat Jan 31 22:41:57 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct
the documentation for new_order. (#124790, Tim-Philipp MĆ¼ller)
Sat Jan 31 22:38:07 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
Reset use_resized_width when setting fixed_width. (#108612,
Felipe Heidrich)
Sat Jan 31 16:27:44 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmain.c (gtk_key_snooper_remove): Don't leak the
GtkKeySnooperData. (#132038, R. McFarland)
2004-01-30 Federico Mena Quintero <federico@ximian.com>
Fixes #132975.
* gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
not FALSE.
(gtk_file_system_volume_render_icon): Likewise.
* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
Likewise.
* gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
not FALSE.
* gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
FALSE.
* gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
not FALSE.
(gtk_text_iter_get_bytes_in_line): Likewise.
* gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
Likewise.
* gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
0.
2004-01-30 Not Zed <NotZed@Ximian.com>
Fixes #132929.
* gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
handler when we clear the timeout id.
2004-01-30 Federico Mena Quintero <federico@ximian.com>
Fix #129872, based on a patch by Jan Arne Petersen
<jpetersen@uni-bonn.de>
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_list_bookmarks):
Implement.
(gtk_file_system_unix_add_bookmark): Implement.
(gtk_file_system_unix_remove_bookmark): Implement.
2004-01-29 Federico Mena Quintero <federico@ximian.com>
Fixes #132693.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_parent): Don't
use filename_from_path(). Also, check that the filename is
absolute.
(gtk_file_system_unix_get_folder): Likewise.
(gtk_file_system_unix_create_folder): Likewise.
(gtk_file_system_unix_make_path): Likewise.
(gtk_file_system_unix_parse): Likewise.
(gtk_file_folder_unix_get_info): Likewise.
(filename_from_path): Removed.
2004-01-30 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkcalendar.c (arrow_action): Remove C++ comment; reported
by Damien Carbery <damien.carbery@sun.com>. Fixes #132956.
Fri Jan 30 11:37:37 2004 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c: Revert changes from
#113476 and go back to using XftDrawSetClip, because
XftDrawSetClipRectangles is buggy in XFree86-4.3.
Thu Jan 29 18:08:06 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c (line_display_iter_to_index)
* gtk/gtktextlayout.c (line_display_index_to_iter): Only
adjust the preedit position for lines that include the
preedit string. (#132353, Yao Zhang). How the heck
did this work as well as it did?!?!
* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
Reverse change to change of XNFilterEvents event mask from
#110493 -- it's documented and in the Xlib code an
unsigned long.
* modules/input/gtkimcontextxim.c (preedit_start_callback):
Return -1 rather than void to indicate no length limit.
(#129548)
Fri Jan 30 00:45:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkadjustment.c: Add properties to GtkAdjustment.
(#64601, Murray Cumming)
Fri Jan 30 00:13:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
for strings to clear the list. (#105386, Marco Pesenti Gritti)
2004-01-28 Richard Hult <richard@imendio.com>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size):
Free font_desc. Fixes #132805.
2004-01-29 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkiconfactory.c (render_icon_name_pixbuf): Free the GError.
Patch provided by Christian Persch <chpe@stud.uni-saarland.de>
Fixes #132574.
Thu Jan 29 11:00:18 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkselection.c (gtk_selection_default_handler):
nul-terminate the target atoms. (#132656, Christian Persch)
Thu Jan 29 00:59:03 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
Don't leak path if we bail out early. (#132505, Christian Persch)
Thu Jan 29 00:48:47 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_toggle_actions_full):
* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Do
reference counting on the user_data that is shared between
multiple signal handlers, to avoid calling the destroy notify
multiple times. (#132447, Adam Hooper)
2004-01-28 Hans Breuer <hans@breuer.org>
* gtk/stock-icons/stock_network_(16|24).png : new GTK_STOCK_NETWORK ...
gtk/gtkstock.[hc] : ... define ...
gtk/gtkiconfactory.c : ... register ...
gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc : ... compile ...
* gtk/gtkfilesystemwin32.c : ... and use. Also adapt to recent
IFace changes.
* gtk/gtk.def : added a bunch of new exported symbols
* tests/testfilechooser.c (no_backup_files_filter) : don't crash
on filter_info->display_name being NULL
* tests/testgtk.c : make testgtk --bench=all work again
Wed Jan 28 21:40:47 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkentrycompletion.c (gtk_entry_completion_action_data_func):
Don't leak string. (#132482, Christian Persch)
Tue Jan 27 18:45:47 2004 Manish Singh <yosh@gimp.org>
* m4macros/gtk-2.0.m4: quote AC_DEFUN macro names so automake
1.8 won't whine at us.
2004-01-28 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (synthesize_leave_event,
synthesize_enter_event): Don' generate enter or leave events if
the pointer is grabbed with owner_events off, and the grab event
mask doesn't ask for them. (#129242)
(gdk_event_translate): Ditto for focus change events.
2004-01-27 Federico Mena Quintero <federico@ximian.com>
Fix #132314.
* gtk/gtkfilesystem.h: Removed the #ifdef-ed out, old icon API.
* gtk/gtkfilesystem.c: Likewise.
* gtk/gtkfilesystemunix.c (filename_get_info): Removed the old
icon-type code.
(gtk_file_system_unix_render_icon): Moved the icon-rendering code
from GtkFileInfo to here.
(gtk_file_system_unix_volume_render_icon): Implement.
2004-01-28 Changwoo Ryu <cwryu@debian.org>
* modules/input/imhangul-defs.h:
* modules/input/imhangul.c:
* modules/input/Makefile.am: Remove broken hangul input module.
Tue Jan 27 01:56:46 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c: Remove obsolete comment.
* gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START,
SPACE_LINE_END): Make separators wider and taller, so they are
easier to pick up when editing the toolbar.
* gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
a bit,
* gtk/gtktoolbar.c (rect_within): Formatting fix
* gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
sliding feel more responsive by only restarting sliding when the
placeholder actually changes its goal allocation.
Tue Jan 27 02:00:37 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): Avoid a
compiler warning. (#122725, Kjartan Maraas)
Tue Jan 27 01:46:54 2004 Matthias Clasen <maclas@gmx.de>
Make menus work better on Xinerama (#126150):
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Calculate the
monitor_num on the screen of the menu, not of the attach widget.
* gtk/gtkmenu.c (menu_change_screen): Forget the stored monitor_num.
(gtk_menu_window_size_request): Remember the monitor_num.
2004-01-26 Federico Mena Quintero <federico@ximian.com>
Fix #105497; constify uses of GdkColor.
* gdk/gdkgc.c (gdk_gc_set_rgb_fg_color): Constify.
(gdk_gc_set_rgb_bg_color): Constify.
(gdk_gc_set_foreground): Constify.
* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): Constify.
* gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Constify.
* gdk/linux-fb/gdkcursor-fb.c (gdk_cursor_new_from_pixmap): Constify.
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_create_from_data): Constify.
* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data): Constify.
* gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_create_from_data): Constify.
* gdk/x11/gdkwindow-x11.c (gdk_window_set_background): Constify.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_background): Constify.
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Constify.
* gdk/gdkpango.c (gdk_draw_layout_line_with_colors): Constify.
(gdk_draw_layout_with_colors): Constify.
* gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): Constify.
(gdk_pixmap_colormap_create_from_xpm): Constify.
(gdk_pixmap_create_from_xpm): Constify.
(gdk_pixmap_colormap_create_from_xpm_d): Constify.
(gdk_pixmap_create_from_xpm_d): Constify.
* gtk/gtkcellview.c (gtk_cell_view_set_background_color): Constify.
* gtk/gtkclist.c (gtk_clist_set_foreground): Constify.
(gtk_clist_set_background): Constify.
* gtk/gtkcolorbutton.c (gtk_color_button_new_with_color): Constify.
(gtk_color_button_set_color): Constify.
* gtk/gtkcolorsel.c (gtk_color_selection_set_current_color):
Constify and add a check for color != NULL.
(gtk_color_selection_get_current_color): Add a check for color != NULL.
(gtk_color_selection_set_previous_color): Constify and add a check
for color != NULL.
(gtk_color_selection_get_previous_color): Add a check for color != NULL.
* gtk/gtkctree.c (gtk_ctree_node_set_foreground): Constify.
(gtk_ctree_node_set_background): Constify.
* gtk/gtktext.c (gtk_text_insert): Constify.
(insert_text_property): Constify.
(text_properties_equal): Constify.
(new_text_property): Constify.
* gtk/gtkwidget.c (gtk_widget_modify_color_component): Constify.
(gtk_widget_modify_fg): Constify.
(gtk_widget_modify_bg): Constify.
(gtk_widget_modify_text): Constify.
(gtk_widget_modify_base): Constify.
2004-01-26 Christian Rose <menthos@menthos.com>
* configure.in: Added "mi" to ALL_LINGUAS.
2004-01-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
WM_TRANSIENT_FOR property is being deleted, set the owner of the
window to the root window (i.e., effectively unset it). (#132411)
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkglobals-win32.c
* gdk/win32/gdkmain-win32.c: Declare, define and initialize
_wm_transient_for, a GdkAtom for WM_TRANSIENT_FOR.
* acconfig.h: Remove HAVE_WINSOCK_H, not used any longer.
Sun Jan 25 15:14:46 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
to map/unmap items on whether they are actually allocated outside
the toolbar, not on whether that will eventually happen. Improves
animation in the presence of overflown items.
* gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
queue_resize() to so that the items will get their new goal
values and the idle handler will not immediately return FALSE.
* gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
make sure that a placeholder becoming invisible doesn't cause a
return TRUE.
* gtk/gtktoolbar.c (get_item_size): Don't special case
placeholders here.
Sat Jan 24 23:17:27 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
try to pack icon if there actually is one.
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
OVERFLOWN items get an allocation even when they are
unmapped. This ensures they will slide in properly.
* gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
when there are overflown items that need to slide in. Also add
comments and make formatting more readable.
Sat Jan 24 17:38:48 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkradiotoolbutton.c (gtk_radio_tool_button_class_init):
Add a write-only property ::group to be consistent with
GtkRadioAction and GtkRadioButton. (#132159, Patch from Olivier
Andrieu)
Fri Jan 23 23:46:12 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfontbutton.c (gtk_font_button_label_use_font): Don't leak the
font description. (#132168)
2004-01-23 Federico Mena Quintero <federico@ximian.com>
Fix #132247.
* gtk/gtkfilechooserdefault.c (set_select_multiple): Handle folder
mode.
(set_select_multiple): Optionally notify about changes to the
select-multiple property.
(list_selection_changed): Change the condition for the editable row to
test for save mode; this is more clear than testing for not being
in multiple selection mode.
(gtk_file_chooser_default_get_paths): Get impl->action directly
rather than calling gtk_file_chooser_get_action().
(entry_activate): Likewise.
(set_select_multiple): Annotate about #133255.
(update_chooser_entry): Likewise.
(check_preview_change): Likewise.
(tree_selection_changed): Likewise.
Fri Jan 23 14:56:18 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
when there are no columns, or all columns are hidden, #131402
Fri Jan 23 16:58:28 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): Changing to 200 was a
mistake. Change back to 225.
Thu Jan 22 18:46:05 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.2 ===
Thu Jan 22 18:45:26 2004 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c: Patch from Christian Neumair
to make warning string more translator friendly.
* gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
happy.
* configure.in: Require GLib-2.3.2, version 2.3.2,
interface age 0, binary age 302.
* NEWS: Organized, added some names.
Thu Jan 22 16:59:36 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
GtkWidget::popup_menu.
Thu Jan 22 21:45:24 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenu.c (gtk_menu_remove): Remove the attach
info after calling gtk_menu_do_remove(), since that function
uses the attach info. Doh!
* gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns
for being 1 directly after setting it to 0.
Thu Jan 22 21:38:52 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* NEWS: Updates
2004-01-22 Alexander Larsson <alexl@redhat.com>
* gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
Fix typo
2004-01-21 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
Free the path fields.
* gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
the root_path, reported by <scott@asofyet.org>
(gtk_file_system_model_finalize): Unref the file system.
* gtk/gtkfilefilter.c (filter_rule_free): default:
g_assert_not_reached().
(gtk_file_filter_finalize): Free the filter->name, reported by
<scott@asofyet.org>
(gtk_file_filter_finalize): Free the rules list.
Wed Jan 21 18:10:40 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
color button when an alpha is set.
(gtk_color_button_set_alpha): redraw the color button when an
alpha is set.
Wed Jan 21 23:27:14 2004 Matthias Clasen <maclas@gmx.de>
Fix #131869:
* gtk/gtkaction.c (_gtk_action_emit_activate): Hold
a reference to the group while emitting the signals.
* gtk/gtkactiongroup.c (gtk_action_group_init): Use a
destroy notify which does not only unref, but also resets
the action_group property of the action.
2004-01-20 Federico Mena Quintero <federico@ximian.com>
* NEWS: Added details about GtkFileChooser changes.
2004-01-20 Federico Mena Quintero <federico@ximian.com>
Fix #99425, add accessor functions for GtkPaned's children.
* gtk/gtkpaned.c (gtk_paned_get_child1): New function.
(gtk_paned_get_child2): New function.
Tue Jan 20 23:49:52 2004 Matthias Clasen <maclas@gmx.de>
* NEWS: Start of 2.3.2 section.
Tue Jan 20 22:11:31 2004 Matthias Clasen <maclas@gmx.de>
Fixes for #130370, based on a patch by Michael Meeks:
* gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
adjust cell positions and recalculate row and column counts after
removing an item.
* gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.
* gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
appending items.
* gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
to avoid an unintended recursion.
2004-01-19 Federico Mena Quintero <federico@ximian.com>
Fix #131418.
* gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
function.
(gtk_file_chooser_default_set_property): Use
set_select_multiple(). Also, re-set this mode to single if the
file chooser is set to Save mode.
(entry_activate): Handle the case where the entry is completely
empty *and* its current folder does exist. Also, there is need to
test for select_multiple here now that we ensure that it won't
happen during Save mode.
Sun Jan 18 15:25:39 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
_gtk_toolbar_get_default_space_size ();
* gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
get_space_size): Use them here.
Sun Jan 18 13:16:34 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/testgtk.c (create_toolbar): Set a small size request and
make the window resizable, to test mapping/unmapping of buttons.
* gtk/gtktoolbar.c (gtk_toolbar_remove_content,
gtk_toolbar_insert_tool_item): remove these functions.
* gtk/gtktoolbar.c (gtk_toolbar_show_all,
toolbar_content_show_all, gtk_toolbar_hide_all,
toolbar_content_hide_all): New functions.
Ignore show_all/hide_all for buttons created in compatibility mode.
* gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
gtk_toolbar_hide_all): Make sure buttons are ignored by
gtk_toolbar_show_all() and gtk_toolbar_hide_all().
* gtk/gtktoolbar.c: s/regular_widget/compatibility/g
* gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.
* gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
could become NULL.
* gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
instead of prepending them.
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
'elapsed' for all items.
* gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
into bitfields.
* gtk/gtktoolbar.c: Many formatting fixes
Sun Jan 18 01:51:12 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Add the necessary magic to create
po-properties/Makefile.
Sat Jan 17 23:05:52 2004 Matthias Clasen <maclas@gmx.de>
The second part of the fix for #114351 (see also
gdk-pixbuf/ChangeLog and po/ChangeLog):
* Makefile.am (SUBDIRS): Add po-properties.
* configure.in (AC_CONFIG_FILES): Add po-properties/Makefile.in
* gdk/gdkintl.h (P_):
* gtk/gtkintl.h (P_): Use translation domain gtk20-properties.
* gtk/gtkmain.c (gtk_parse_args): Call bindtextdomain and
bind_textdomain_codeset for gtk20-properties as well.
Sat Jan 17 22:00:07 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c:
Fix rest of #128678: Implement all the toolbar_content()
methods for the old API case.
Sat Jan 17 16:53:08 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c:
Phase 1 of fixing #128678: Only access ToolbarContent through a
set of new functions:
toolbar_content_expose, toolbar_content_visible,
toolbar_content_size_request, toolbar_content_is_homogeneous,
toolbar_content_get_child_requisition,
toolbar_content_is_placeholder, toolbar_content_disappearing,
toolbar_content_get_state, toolbar_content_child_visible,
toolbar_content_get_goal_allocation,
toolbar_content_get_allocation,
toolbar_content_set_start_allocation,
toolbar_content_get_start_allocation, toolbar_content_get_expand,
toolbar_content_set_goal_allocation,
toolbar_content_set_child_visible, toolbar_content_size_allocate,
toolbar_content_set_state, toolbar_content_get_widget,
toolbar_content_set_disappearing,
toolbar_content_set_size_request,
toolbar_content_toolbar_reconfigured,
toolbar_content_retrieve_menu_item,
toolbar_content_new_tool_item, toolbar_content_destroy,
toolbar_content_is_separator
Also fix #127092.
Sat Jan 17 12:55:13 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
item ID.
Sat Jan 17 12:37:46 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
overflow menu.
* gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public.
[#127726]
2004-01-16 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
has_editable field.
(_gtk_file_system_model_add_editable): New function.
(_gtk_file_system_model_remove_editable): New function.
(gtk_file_system_model_get_value): Return appropriate values for
the temporary editable row.
(_gtk_file_system_model_get_info): Handle the editable row.
(_gtk_file_system_model_get_path): Likewise.
* gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
Removed an unused variable.
(toolbar_button_new): Optionally show the button.
(up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
(toolbar_create): Add a "New Folder" button for Save mode.
(error_building_filename_dialog): New helper function.
(gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
(create_file_list): Connect to the "edited" signal of the text
cell renderer. Store the name column and text renderer in the
impl structure.
(renderer_edited_cb): New callback.
(gtk_file_chooser_default_set_property): Show/hide the "New
folder" button when the save action changes.
(COMPARE_DIRECTORIES): Allow the info values to be NULL.
(COMPARE_DIRECTORIES): Duh, use the list_model, not the
tree_model.
(get_list_file_info): Likewise!
(list_icon_data_func): Handle the path being NULL.
(new_folder_button_clicked): New callback.
(list_name_data_func): If we are on the editable row, set the text
to "Type name of new folder".
(list_selection_changed): Handle the editable row.
(list_mtime_data_func): Likewise.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
NULL, not FALSE.
(gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
Fri Jan 16 23:59:01 2004 Matthias Clasen <maclas@gmx.de>
The first part of the fix for #114351 (see also
gdk-pixbuf/ChangeLog and po/ChangeLog):
* gtk/gtkintl.h:
* gdk/gdkintl.h: Define P_() for property blurbs and nicks.
* gdk/gdkdisplaymanager.c:
* modules/input/gtkimcontextxim.c:
* gtk/*.c: Mark property blurbs and nicks with P_().
2004-01-16 Federico Mena Quintero <federico@ximian.com>
Fix #130969.
* gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
editing_canceled signal.
* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
"editing-canceled" signal.
(gtk_cell_renderer_editing_canceled): New function.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
Call gtk_cell_renderer_editing_canceled().
2004-01-16 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_property): Do not allow setting
select_multiple when in Save mode.
(set_list_model): No need to nullify the list_model and
sort_model.
(gtk_file_chooser_default_get_paths): Handle folder mode as well.
(get_paths_foreach): Likewise.
* gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
documentation about folder mode.
(gtk_file_chooser_get_uri): Likewise.
2004-01-16 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
get_volume_for_path() method.
(struct _GtkFileSystemIface): Finally removed the list_roots() and
get_root_info() methods, and the "roots-changed" signal.
* gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
function.
(gtk_file_system_list_roots): Removed.
(gtk_file_system_get_root_info): Removed.
* gtk/gtkfilesystemunix.c
(gtk_file_system_unix_get_volume_for_path): Implement.
(get_root_volume): New helper function.
(gtk_file_system_unix_list_volumes): Use get_root_volume().
(gtk_file_system_unix_list_roots): Removed.
(gtk_file_system_unix_get_root_info): Removed.
* gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
accept a NULL root_path.
(struct _GtkFileSystemModel): Add a field to remember the
root_path.
(_gtk_file_system_model_new): Store the root_path in the model
structure.
(find_and_ref_path): Stop going up the hierarchy at the root_path
of the model. Also, don't return prematurely when walking up the
hierarchy.
* gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
the rules_hint.
(struct _GtkFileChooserDefault): Added a current_volume_path field.
(set_tree_model): New function; create the folder tree model here.
(create_folder_tree): Don't create the model here.
(set_list_model): Set the show_hidden flag on the list model.
Fri Jan 16 00:04:43 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.h:
* gtk/gtknotebook.c (gtk_notebook_append_page):
* gtk/gtknotebook.c (gtk_notebook_append_page_menu):
* gtk/gtknotebook.c (gtk_notebook_prepend_page):
* gtk/gtknotebook.c (gtk_notebook_prepend_page_menu):
* gtk/gtknotebook.c (gtk_notebook_insert_page):
* gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
index of the newly inserted page. (#130986, Olexiy Avramchenko)
Thu Jan 15 23:17:14 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
a 'newly-allocated' to hint that the list should be freed after
use.
Wed Jan 14 18:01:52 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
to after handling the button presses in the TreeView to avoid
getting multiple selection_changes()
Wed Jan 14 21:16:20 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkimcontext.c: Documentation fix. (#131335, Theppitak
Karoonboonyanan)
Wed Jan 14 21:00:49 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel):
Don't leak name and stock_id. (#131358, Morten Welinder)
Wed Jan 14 13:07:30 GMT 2004 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Updates to Section 5
Wed Jan 14 02:34:57 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkradioaction.c: Add a writable group property to align
with the GtkRadioButton API. (#129166, Olivier Andrieu)
Tue Jan 13 14:48:27 GMT 2004 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Update info on using autoconf
Mon Jan 12 23:40:34 2004 Matthias Clasen <maclas@gmx.de>
* tests/testmerge.c: Adjust to the new connect_proxy signals.
* gtk/gtkuimanager.c
* gtk/gtkactiongroup.c
* gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
removes the confusion between the disconnect_/connect_proxy signals
and the (unrelated) virtual functions of the same name and aligns
the setup with the pre_/post_activate signals.
2004-01-12 Jody Goldberg <jody@gnome.org>
* gtk/gtkaction.c (connect_proxy) : only connect activate for menus
with no submenus otherwise it looks like we activate every time a
submenu opens.
2004-01-12 Jody Goldberg <jody@gnome.org>
* gtk/gtkuimanager.c: Remove accidentially committed debug spew.
Sun Jan 11 01:55:07 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaccelmap.c: Remove accidentally committed notification stuff.
(gtk_accel_map_lock_path):
(gtk_accel_map_unlock_path): Path locking can now be nested, a missing
entry is silently created during lock_path(), and treated as an error
during unlock_path(). These changes have been requested by Tim Janik.
2004-01-10 Jody Goldberg <jody@gnome.org>
* gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
s/merge_signals/ui_manager_signals/ for readability.
(gtk_ui_manager_class_init) : add pre_activate and post_activate
signals.
(cb_proxy_pre_activate) : new.
(cb_proxy_post_activate) : new.
(gtk_ui_manager_insert_action_group) : connect the proxies for
GtkActionGroup::pre/post_activate
(gtk_ui_manager_remove_action_group) : disconnect them.
* gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
'sensitive', and 'visible' properties. Also add pre_activate and
post_activate signals to help deal with activations at a higher
level (eg GtkUIManager)
(gtk_action_group_init) : init sensitive and visible
(gtk_action_group_set_property) : add sensitive and visible
(gtk_action_group_get_property) : add sensitive and visible
(gtk_action_group_get_sensitive) : new.
(gtk_action_group_get_visible) : new.
(cb_set_action_sensitivity) : new with minor optimization that only
signals sensitivity changes if the action could possibly change.
(cb_set_action_visiblility) : ditto.
(gtk_action_group_set_sensitive) : new. walk the actions directly
rather than using notify::sensitive because that is simpler, easier
to read, and more efficient.
(gtk_action_group_set_visible) : ditto.
(gtk_action_group_add_action) : Each action can only be in 1 group,
set GtkAction::action_group.
(gtk_action_group_remove_action) : clear it.
(gtk_action_group_add_toggle_actions_full) : warning suppression.
(gtk_action_group_add_radio_actions_full) : warning suppression.
(_gtk_action_group_emit_pre_activate) : new protected routine for use
by GtkAction.
(_gtk_action_group_emit_post_activate) : ditto.
* gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
(gtk_action_init) : initialize it.
(gtk_action_get_property) : get.
(gtk_action_set_property) : set it via
(gtk_action_set_action_group) : new function.
(gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
with the logical sensitivity (action & group) rather than the simple
action::sensitivity.
(gtk_action_sync_visible) : use gtk_action_is_visible to handle
logical visibility (action & group) rather than the simple
action::visible. Use widget show/hide directly.
(connect_proxy) : handle the custom sensitivity handler.
Make the TOOL_BUTTON signals more general and support TOOL_ITEM
directly, with special cases for TOOL_BUTTON. Still not especially
good it might be useful to handle label/use_underline by parmspec
lookup. Those are likely to be implemented by custom types, and are
assumed to exist in GtkToolItem.
(disconnect_proxy) : disconnect the new sensitivity handler.
(_gtk_action_emit_activate) : add pre/post signals.
(gtk_action_activate) : use logical sensitivity.
(gtk_action_is_sensitive) : logical sensitivity.
(gtk_action_get_sensitive) : actual sensitivity.
(closure_accel_activate) : use logical sensitivity.
Fri Jan 9 22:23:45 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c: Introduce a new parser state for
accelerator elements to avoid misparsing files containing
such elements. (#131035, Morten Welinder)
Fri Jan 9 11:58:47 2004 Manish Singh <yosh@gimp.org>
* gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
Fri Jan 9 15:28:21 GMT 2004 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: update GtkEntry filter code example
Fri Jan 9 00:34:57 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.h:
* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
obtain a list of toplevel widgets constructed by the ui manager.
* gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that
the values can be combined for gtk_ui_manager_get_toplevels().
* tests/testmerge.c: Add a "Dump toplevels" button to test
gtk_ui_manager_get_toplevels().
Wed Jan 7 23:20:06 2004 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/Makefile.am (demos): Add entry_completion.c
* demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion
by Anders Carlsson (#130464).
Wed Jan 7 23:07:28 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmain.h:
* gtk/gtkmain.c (gtk_events_pending): Change the return value from
gint to gboolean. (#130718, reported by Johannes WeiĆl)
Wed Jan 7 23:03:32 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.h:
* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel):
Remove the redundant name and stock_id parameters, adjust all callers.
Wed Jan 7 22:20:20 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.h:
* gtk/gtkaction.c (gtk_action_new):
* gtk/gtktoggleaction.h:
* gtk/gtktoggleaction.c (gtk_toggle_action_new):
* gtk/gtkradioaction.h:
* gtk/gtkradioaction.c (gtk_radio_action_new): Add creation
functions for actions.
* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full):
(gtk_action_group_add_toggle_actions_full):
(gtk_action_group_add_radio_actions_full): and use the
new functions here. (#125322, Patch by Jeff Frank)
Wed Jan 7 21:42:49 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of
docs.
2004-01-07 Jan Arne Petersen <jpetersen@uni-bonn.de>
* gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
(shortcuts_append_home), (shortcuts_append_desktop),
(shortcuts_append_paths), (shortcuts_add_volumes),
(shortcuts_append_bookmarks), (create_shortcuts_model),
(gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
to the shortcuts_model.
(remove_bookmark_button_clicked_cb),
(bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
bookmarks can be removed. Fixes #129873
Wed Jan 7 02:50:55 2004 Matthias Clasen <maclas@gmx.de>
* demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats,
respectively. Tests #82203.
2004-01-06 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
0777 as the mode for mkdir() and let the umask do the right
thing. Fixes #121819.
* gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
can return NULL; handle this. Fixes #129565.
2004-01-06 Alexander Winston <alexander.winston@comcast.net>
* gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
that proceeded the end-of-sentence punctuation. Fixes: #130353.
2004-01-06 Jody Goldberg <jody@gnome.org>
* gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call
gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
2004-01-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
call shortcuts_add_bookmarks() here.
(remove_bookmark_button_clicked_cb): Ahem, fetch the selected
iter.
(shortcuts_append_paths): Don't display error dialogs here.
(create_file_list): Remove the @#$% rules hint.
2004-01-05 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
function.
(toolbar_create): Do not use a toolbar widget, just an hbox
instead. Add the bookmarks buttons and the current folder label
here.
(create_filename_entry_and_filter_combo): Create the filter combo
here.
(filter_create): Don't show the filter combo initially.
(up_button_cb): Renamed from toolbar_up_cb().
(create_shortcuts_buttons): Removed.
2004-01-05 Murray Cumming <murrayc@usa.net>
* gdk/gdkimage.h: Added <public> documentation to the struct, as
suggested by Owen Taylor.
2004-01-05 Jody Goldberg <jody@gnome.org>
* gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
I would have prefered outdent, but compatibility seems more
important.
* gtk/gtkstock.c (builtin_items) : ditto.
* gtk/gtkstock.h : ditto.
* gtk/stock-icons/Makefile.am : ditto.
* gtk/stock-icons/stock_text_indent_16.png :
* gtk/stock-icons/stock_text_indent_24.png :
* gtk/stock-icons/stock_text_unindent_16.png :
* gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme
Sun Jan 4 15:29:04 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkradiotoolbutton.[ch]
(gtk_radio_tool_button_new_with_stock_from_widget): Change API so
group is a GtkRadioButton, not a GtkWidget.
2004-01-04 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in
gdk_window_set_keep_(above|below) to make DND work again.
Thanks to Alif Wahid for noticing.
* gdk/gdk.def : update externals
* gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes
* gtk/gtk-stock.[hc] gtk/gtkiconfactory.c
gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
gtk/stock-icons/stock_harddisk_16.png
gtk/stock-icons/stock_harddisk_24.png
Harddisk stock icons for file system implementations. Beside
FLOPPY and CDROM there is now HARDDISK, probably some
GTK_STOCK_NETWORK would be useful, but I could not find one.
Sat Jan 3 11:39:42 2004 Manish Singh <yosh@gimp.org>
* gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
Patch from Andrew Moise (#130462).
2004-01-01 Jody Goldberg <jody@gnome.org>
* gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
visible_vertical.
(gtk_action_class_init) : here.
(gtk_action_init) : here.
(gtk_action_set_property) : here.
(gtk_action_get_property) : here.
(connect_proxy) : and here.
2003-12-30 Jody Goldberg <jody@gnome.org>
* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) : new
utility routine for use in derived GtkActions with the replicated code
from.
(gtk_action_group_add_actions_full) : here.
(gtk_action_group_add_toggle_actions_full) : here.
(gtk_action_group_add_radio_actions_full) : and here.
2004-01-01 Taneem Ahmed <taneem@bengalinux.org>
* configure.in: Added "bn" to ALL_LINGUAS.
2004-01-01 Taneem Ahmed <taneem@bengalinux.org>
* bn.po: Added Bangla translation by
of Ankur group <gnome-translation@bengalinux.org>.
Fri Jan 2 02:50:11 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcalendar.c (gtk_calendar_compute_days):
* gtk/gtkcalendar.c (gtk_calendar_paint_day_names):
* gtk/gtkcalendar.c (gtk_calendar_init): Changes to support
week_start values other than 0 and 1, e.g. 6 will let weeks start
on Saturday. (#130349, Roozbeh Pournader)
2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>
* gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)
Fix to allow reasonable pointer behavior in window mode when an
extended input device reports an incorrect resolution of 0. Fixes
bug #123546
2003-12-31 Christian Neumair <chris@gnome-de.org>
* gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
* gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
plurals (#123847).
Wed Dec 31 02:05:39 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full):
(gtk_action_group_add_toggle_actions_full):
(gtk_action_group_add_radio_actions_full): Pull accelerator key
from the stock item if stock_id is given, but accelerator
not. (Noticed by Jeff Franks and Jody Goldberg)
* tests/testmerge.c: Remove the accelerator from the "Open" entry
to test the above change.
2003-12-29 Federico Mena Quintero <federico@ximian.com>
Make show_all() work for the extra and preview widgets; reported
by Paolo Maggi.
* gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
preview widget.
(set_extra_widget): show_all() the extra widget.
Mon Dec 29 12:22:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkuimanager.c (do_updates):
* gtk/gtktoolbar.c (slide_idle_handler):
* gtk/gtkdnd.c (gtk_drag_update_idle):
Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
functions. (#130157, patch from Olexiy Avramchenko).
2003-12-29 Anders Carlsson <andersca@gnome.org>
* gtk/gtkradiotoolbutton.c:
* gtk/gtkradiotoolbutton.h:
* gtk/gtkseparatortoolitem.c:
* gtk/gtkseparatortoolitem.h:
* gtk/gtktoggletoolbutton.c:
* gtk/gtktoggletoolbutton.h:
* gtk/gtktoolbar.c:
* gtk/gtktoolbar.h:
* gtk/gtktoolbutton.c:
* gtk/gtktoolbutton.h:
* gtk/gtktoolitem.c:
* gtk/gtktoolitem.h:
Update my e-mail address.
Mon Dec 29 01:36:22 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path,
gtk_accel_map_unlock_path): Add a way to lock individual accelerator
paths. (#73207, reported by Havoc Pennington)
Sat Dec 27 23:17:56 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
instead of VISIBLE to determine whether we should stop
sliding. (#130018, reported by Christian Persch).
Fri Dec 26 23:24:35 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
Don't use first_action without initializing it if n_entries is 0.
Thu Dec 25 00:26:34 2003 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
Add the missing _get_ to the name of the non-Xcursor version of
this function. (noticed by Torsten Schoenfeld)
Tue Dec 23 22:34:50 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
muppet.
2003-12-24 Jody Goldberg <jody@gnome.org>
* gtk/gtkactiongroup.h : Add some const to the char * in
GtkActionEntry*. We're reccomending people pass static strings to
them, and not freeing them. This stems to flood of warnings that
result.
* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
temp vars to const to match above.
(gtk_action_group_add_toggle_actions_full) : ditto.
(gtk_action_group_add_radio_actions_full) : ditto.
Wed Dec 24 01:12:53 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
gtk_clipboard_request_targets() and
gtk_clipboard_wait_for_targets(). (#101774, Dom Lachowicz)
Mon Dec 22 00:40:39 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use
gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
* gtk/gtkcalendar.c (draw_arrow_left):
(draw_arrow_right): Removed.
* gtk/gtkcalendar.c (gtk_calendar_realize_arrows):
* gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
arrow_state to GTK_STATE_INSENSITIVE if the calendar is
insensitive. (#97376)
Sun Dec 21 23:17:01 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (update_node):
(update_smart_separators):
(_gtk_menu_is_empty):
(find_menu_position):
* gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy):
* gtk/gtkcombobox.c (gtk_combo_box_relayout_item):
(gtk_combo_box_relayout): Fix memory leaks caused by the
failure to free the result of gtk_container_get_children().
Sun Dec 21 17:34:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
properties when the window becomes a toplevel. When a window that
was previously a toplevel becomes a toplevel again, restore its
window type. Also make sure the focus window is removed from the
XID hash when it is destroyed. (#117579, reported by Morten
Welinder, patch reviewed by Owen Taylor).
Sun Dec 21 01:54:40 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenushell.h:
* gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function
to emit the "cancel" signal on a menu shell.
* gtk/gtkmenu.c (gtk_menu_key_press):
* gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
* gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the
new function instead of directly emitting the
signal. (#81803, Owen Taylor)
Sun Dec 21 00:39:50 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
Fix the "language_set" blurb.
Sat Dec 20 22:06:03 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
all of treeview when resizing (#110074, patch from Soeren Sandmann).
Fri Dec 19 23:36:00 2003 Kristian Rietveld <kris@gtk.org>
Fixes #108458.
* gtk/gtkcelllayout.[ch]: added a reorder method.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
(gtk_tree_view_column_cell_layout_reorder): implement reorder.
* gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
(gtk_cell_view_cell_layout_reorder): ditto.
* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
(gtk_combo_box_cell_layout_reorder): ditto.
* gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
(gtk_entry_completion_reorder): ditto.
Fri Dec 19 22:18:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
instead of strcmp (#117127, suggestion from Soeren Sandmann).
Fri Dec 19 21:52:46 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
here from gtk_menu_real_insert(),
(gtk_menu_real_insert): just call gtk_menu_do_insert(),
(gtk_menu_reorder_child): run _do_insert after inserting the child
(unbreaks _reorder_child, reported by Tim Janik).
2003-12-19 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
g_date_strftime() for UTF-8 correctness; use Julian dates to
simplify the function.
Fri Dec 19 01:47:34 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request):
Test extra_width, not extra_height, when determining whether to
set extra_width. (#129647, Jan Arne Petersen)
Fri Dec 19 01:35:34 2003 Matthias Clasen <maclas@gmx.de>
Fix the behaviour of insensitive actions, which was broken
when gtk_action_activate() was changed to pay attention to
sensitivity (#129557, Christian Persch)
* gtk/gtkaction.h:
* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
function to emit an activate signal without regard to sensitivity.
* gtk/gtkradioaction.c:
* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
instead of gtk_action_activate().
2003-12-18 Jody Goldberg <jody@gnome.org>
* gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
to ensure that the base hicolor theme is installed. Silently
failing to produce icons that apps assume exist in the theme seems
like a bad idea.
Thu Dec 18 19:13:12 2003 Kristian Rietveld <kris@gtk.org>
Fixes #110249, reworked patch from Joshua N Pritikin.
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
(gtk_tree_model_sort_tree_drag_source_init),
(gtk_tree_model_sort_row_draggable),
(gtk_tree_model_sort_drag_data_get),
(gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
(gtk_tree_model_filter_tree_drag_source_init),
(gtk_tree_model_filter_row_draggable),
(gtk_tree_model_filter_drag_data_get),
(gtk_tree_model_filter_drag_data_delete): ditto.
Thu Dec 18 18:01:01 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
for "*" and "/" (expand/collapse all). (#110195, reported by
Calum Benson).
Thu Dec 18 17:52:56 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
clear the extra_attrs list if we set "text" after "markup".
(Fixes #121933, Federico Mena Quintero).
2003-12-18 Alexander Larsson <alexl@redhat.com>
* gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
Fix typo that used the wrong x/y values for the x1, y1 point
(#129605)
Thu Dec 18 01:41:50 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
(gtk_cell_renderer_text_finalize),
(gtk_cell_renderer_text_get_property),
(gtk_cell_renderer_text_set_property), (get_layout): added language
and language_set properties like GtkTextTag has. (#103800, reported
by Owen Taylor).
Thu Dec 18 01:37:59 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
* gtk/gtkbutton.c (gtk_button_class_init): Add docs for the
"activate" signal. (#129358, Ka-Hing Cheung)
Thu Dec 18 01:21:59 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
the logical flag backwards in the expand_collapse_cursor_row
bindings, fixing.
(gtk_tree_view_real_expand_collapse_cursor_row): invert expand
flag when !logical and in RTL. (Fixes #107527, reported by
Noah Levitt).
Thu Dec 18 01:10:16 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): only start
editing when activated by the left mouse button. (#106869,
patch from Evan Martin).
Thu Dec 18 00:57:18 2003 Kristian Rietveld <kris@gtk.org>
Migrating all cell renderers to use the new instance private data
construction.
* gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
longer being used.
* gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
(gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
(set_cell_bg_color), (gtk_cell_renderer_render): remove old
GtkCellRendererInfo handling, migrate to instance private data.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
(gtk_cell_renderer_text_start_editing): moved focus_out_id
from GtkCellRendererInfo to text renderer private data.
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
(gtk_cell_renderer_pixbuf_class_init),
(gtk_cell_renderer_pixbuf_finalize),
(gtk_cell_renderer_pixbuf_get_property),
(gtk_cell_renderer_pixbuf_set_property),
(gtk_cell_renderer_pixbuf_create_stock_pixbuf),
(gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
migrate to instance private data.
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
(gtk_cell_renderer_toggle_get_property),
(gtk_cell_renderer_toggle_set_property),
(gtk_cell_renderer_toggle_render): migrate to instance private data.
Thu Dec 18 00:24:32 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
(gtk_cell_renderer_text_get_property),
(gtk_cell_renderer_text_set_property), (get_layout): add a
single-paragraph-mode property, use private instance data.
(Fixes #114943, reported by Morten Welinder).
Thu Dec 18 00:07:01 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.h (gtk_tree_path_new_root),
(gtk_tree_model_get_iter_root): now deprecated (#106953, reported
by Matthias Clasen).
Wed Dec 17 23:50:56 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
if we set a new stock_id and there was a previous stock_id, unref
the pixbuf (since it was used to renderer the previous stock_id
and stock_id might have been set to NULL now). (Fixes #122966).
2003-12-17 Marco Pesenti Gritti <marco@gnome.org>
* gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
Check that index is not bigger than level array length
also when depth is 1. Now get_iter_first correctly return
FALSE when the model is empty (#129411).
Wed Dec 17 23:31:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
try to strcmp or strlen if we managed to normalize and casefold
the string correctly. Fixes crashes with non-UTF8 strings.
(#121617, Patch from Tim-Philipp MĆ¼ller).
Wed Dec 17 23:20:23 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
* gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c,
gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c,
gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
GSourceFunc instead of GtkFunction. (#129525, Olexiy Avramchenko)
Wed Dec 17 23:16:45 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
(#122727, patch from Kjartan Maraas).
Wed Dec 17 21:23:01 2003 Kristian Rietveld <kris@gtk.org>
Yay! Fixed height mode! Hooray! (Part 2 of #80868).
* gtk/gtktreeview.c (gtk_tree_view_class_init),
(gtk_tree_view_init), (gtk_tree_view_set_property),
(gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
fixed_height_mode property,
(intialize_fixed_height_mode), (do_validate_rows),
(column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
(gtk_tree_view_style_set), (gtk_tree_view_row_changed),
(gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
(gtk_tree_view_insert_column): implement fixed height mode,
(gtk_tree_view_append_column), (gtk_tree_view_insert_column),
(gtk_tree_view_insert_column_with_attributes),
(gtk_tree_view_insert_column_with_data_func): update docs.
* gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
2003-12-07 Murray Cumming <murrayc@usa.net>
* gtk/gtktreemodel.c:
(row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
Actually call the default signal handlers instead of calling the
marshallers themselves in an endless loop. These default signal handler
callbacks are not actually set so this is only noticed by gtkmm at
the moment. Bug 123923.
2003-12-16 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
"volumes-changed" signal. Added the following methods:
list_volumes
volume_free
volume_get_base_path
volume_get_is_mounted
volume_mount
volume_get_display_name
volume_render_icon
* gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
"volumes-changed" signal.
(gtk_file_system_list_volumes): New function.
(gtk_file_system_volume_free): New function.
(gtk_file_system_volume_get_base_path): New function.
(gtk_file_system_volume_get_is_mounted): New function.
(gtk_file_system_volume_mount): New function.
(gtk_file_system_volume_get_display_name): New function.
(gtk_file_system_volume_render_icon): New function.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
(gtk_file_system_unix_volume_get_base_path): Implement.
(gtk_file_system_unix_volume_get_is_mounted): Implement.
(gtk_file_system_unix_volume_mount): Implement.
(gtk_file_system_unix_volume_get_display_name): Implement.
(gtk_file_system_unix_volume_render_icon): Implement.
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Added a field for the "volumes-changed" signal connection.
(gtk_file_chooser_default_set_property): Connect to
"volumes-changed" on the file system.
(gtk_file_chooser_default_finalize): Disconnect from
"volumes-changed".
* gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
function.
(shortcuts_get_index): New helper function.
(shortcuts_insert_path): Can now insert volumes as well as paths.
(shortcuts_append_paths): Don't take is_file_system_root.
(shortcuts_add_volumes): New function.
(shortcuts_append_file_system_roots): Removed.
(create_shortcuts_model): Use shortcuts_add_volumes().
(remove_bookmark_button_clicked_cb): Check that the index is
within range.
(bookmarks_check_add_sensitivity): Take volumes into account.
(shortcuts_get_selected_index): New helper function.
(remove_bookmark_button_clicked_cb): Use
shortcuts_get_selected_index().
(bookmarks_check_remove_sensitivity): Likewise.
(shortcuts_select_func): Likewise.
(shortcuts_row_activated_cb): Handle volumes as well as normal
paths.
(shortcuts_activate_volume): New function.
(struct _GtkFileChooserDefault): Removed the bookmarks_set and
bookmarks_iter fields.
(shortcuts_append_bookmarks): Use shortcuts_remove_rows().
(bookmarks_changed_cb): Use shortcuts_add_bookmarks().
(remove_bookmark_rows): Removed.
(shortcuts_add_bookmarks): New function; moved most of the code
over from shortcuts_append_bookmarks().
(shortcuts_append_bookmarks): Add the separator node here, and
then call shortcuts_add_bookmarks().
Tue Dec 16 15:01:10 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
(G_OS_UNIX/G_OS_WIN32 stuff)
Tue Dec 16 01:46:46 2003 Matthias Clasen <maclas@gmx.de>
Do not interpret distant clicks as double-clicks (#116541,
Bernhard Walle):
* gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
double_click_distance, button_x and button_y.
* gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
* gdk/gdkdisplay.h:
* gdk/gdkevents.c (gdk_display_set_double_click_distance):
New function to set the double click distance on a display.
* gdk/gdkevents.c: Take double click distance into account
when generating single, double or triple clicks.
* gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
* gdk/x11/gdkevents-x11.c: Add the XSetting
"Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
2003-12-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkdialog.c: Sigh, revert the change.
2003-12-15 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkdialog.c (dialog_has_cancel): Removed.
(gtk_dialog_close): Don't call dialog_has_cancel(). At least
allows sane behavior for #101293.
Mon Dec 15 00:56:54 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
getter and setter gtk_button_[sg]et_alignment(), to set the
alignment of the child. (#70961, Jody Goldberg)
2003-12-14 Hans Breuer <hans@breuer.org>
* gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
similar as the other filesystem placement 'constants' (dynamic
resolving on win32)
* gtk/gtkfilechooserwidget.c : handle file system to win32
renaming here as will
* gtk/gtkfilesystemwin32.c : implement render_icon
* gtk/gtk.def gdk/gdk.def : updated externals
* gdk/win32/gdkdisplay-win32.c : make it compile without
<multimon.h> - i.e. even older sdk
* gdk/win32/gdkevents-win32.c : match resize_timer_proc
with TIMERPROC prototype
* gdk/win32/gdkwindow-win32.c : older msvc does not know
BITMAPV5HEADER (from win xp) either
* gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
not defined
* tests/testfilechooser.c : recent GLib crashes on
g_print ("%s", NULL) so avoid this
2003-12-14 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
followed by calls to CloseClipboard(). Add a missing call to
CloseClipboard(). Found by Adam Wright, fixes #104944. Use
API_CALL macro in more places.
2003-12-14 Tor Lillqvist <tml@iki.fi>
Merge from stable:
* gdk/gdkdisplaymanager.c: Mark default_display static.
* gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
* gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
output.
* gdk/win32/gdkevents-win32.c: Clean up the debugging output from
--gdk-debug=events. In general, output just one line of debugging
output for each Windows message, plus one line for each GDK event
generated. Indent all lines according to window procedure nesting
level.
(inner_window_procedure): Rename from real_window_procedure.
(find_real_window_for_grabbed_mouse_event): Don't get misled when
the point is in the non-client (decoration) area of the window
returned by WindowFromPoint(). Return the root window in that
case.
(build_pointer_event_state): Test also MK_XBUTTON1 and
MK_XBUTTON2 (buttons 4 and 5).
(synthesize_enter_event): Track the mouse leaving the window in
the event being generated, not the one mentioned in the Windows
message.
(propagate): Test for NULL parent earlier. Improves event
generation from a grabbed pointer. Part of fix for #107320.
(handle_stuff_while_moving_or_resizing): New function, to
dispatch the main loop (once).
(resize_timer_proc): New function, set to be called by an inerval
timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
(gdk_event_translate): Drop unused return_exposes parameter.
Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
On WM_SYSKEYUP, generate a key release event also for just the Alt
key.
On WM_MOUSELEAVE, generate a leave event of type
GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
top-level window, and left the app completely.
On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
calls resize_timer_proc() at regular intervals. On
WM_EXITSIZEMOVE, kill the timer.
On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
and dispatch the main loop (by calling
handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
Herman Bloggs.
* gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
also wintab messages.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
the window's owner. Fixes #118093, reported by Maxime Romano.
Tue Dec 8 09:41:00 2003 Tim Evans <t.evans@aranz.com>
* gdk/win32/gdkwindow-win32.[ch]: Implement
gdk_window_set_icon_list() for Win32, with support for big and
small icons and support for alpha-channel icons under Windows
XP. Replaces the previous implementation of gdk_window_set_icon().
(#128762)
Sun Dec 14 01:28:23 2003 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkprivate-x11.h:
* gdk/x11/gdkx.h:
* gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type):
Rename from _gdk_x11_register_event_type(), added API docs.
* gdk/x11/gdkinput-x11.c (_gdk_input_common_init):
* gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
all callers. (#121471, Bill Haneman)
Sat Dec 13 23:37:50 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
of gc is ignored. (#101983, Sebastian Rittau)
Sat Dec 13 16:13:27 2003 Kristian Rietveld <kris@gtk.org>
A trick for a faster treeview, step 1. Patch to short circuit
_build_tree(), inspired by Jonathan (#80868).
* gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
flags by default,
(gtk_tree_view_build_tree): don't even try to recurse when the
model says that it is a list, remove flag unsetter,
(gtk_tree_view_set_model): change flag setting logic.
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
propagate whether or not the child model has _IS_LIST set.
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
ditto.
Sat Dec 13 02:33:17 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkrange.c (gtk_range_scroll): Undo the last change,
since it broke logical keynav.
* gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
direction in inverted scrollbars here instead.
Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
"gravity" for RTL mode in a better way: Keep the distance from
the upper end of the page to the upper bound constant. This also
fixes problems with the initial position of the viewport in RTL
mode. (#129063)
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
* gtk/gtkcombobox.c (gtk_combo_box_menu_position),
(gtk_combo_box_size_allocate): support RTL flipping (#126518,
patch from Matthias Clasen),
(gtk_combo_box_popup): fix popup window alignment if there's a
cell view frame visible (#126518, patch from Semion Chichelnitsky).
* gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
(#128348, patch from Semion Chichelnitsky).
Fri Dec 12 01:13:34 2003 Matthias Clasen <maclas@gmx.de>
* examples/gtkdial/gtkdial.c:
* examples/menu/menu.c:
* examples/scribble-xinput/scribble-xinput.c:
* examples/progressbar/progressbar.c:
* docs/tutorial/gtk-tut.sgml: Remove deprecated functions
in examples. (#129074, Olexiy Avramchenko)
* examples/calendar/Makefile:
* examples/rangewidgets/Makefile:
* examples/menu/Makefile: Allow deprecated functions in
examples which use deprecated widgets.
Fri Dec 12 00:43:16 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk.c (gdk_threads_set_lock_functions):
* gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkrange.c (gtk_range_scroll): Fix direction of
steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
unnecessarily reserve space for arrows in RTL mode. (#129075,
Semion Chichelnitsky)
Thu Dec 11 00:35:12 2003 Matthias Clasen <maclas@gmx.de>
Changes to allow "no input" windows (#64613):
* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
field accept_focus.
* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
set it.
* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
and gtk_window_get_focus() and gtk_window_set_focus().
* gdk/win32/gdkwindow-win32.c (gdk_window_new):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
Initialize the accept_focus field to TRUE.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
Implementations for the various backends. The Win32 and linux-fb
implementations set the accept_focus field, but don't use it yet
to actually implement noinput windows. The X implementation updates
the WM_HINTS to select the globally active input model (see the
ICCCM) if accept_focus is FALSE.
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
WM_TAKE_FOCUS message if accept_focus is FALSE.
2003-12-10 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Added toolbar items for the filter separator and the filter item.
(toolbar_create): Add the filter widgets here.
(filter_create): Renamed from create_filter(). Don't store the
alignment in the impl structure, just return it.
(toolbar_show_filters): New function.
(gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
(gtk_file_chooser_default_remove_filter): Likewise.
(gtk_file_chooser_default_constructor): Don't create the filter
widget here.
(struct _GtkFileChooserDefault): Added a field for a current
folder label.
(gtk_file_chooser_default_constructor): Create the folder label.
(gtk_file_chooser_default_set_current_folder): Set the current
folder label.
* tests/testfilechooser.c (main): Dramatically improved the
usability of the extra widget through careful word choice.
2003-12-10 Mark McLoughlin <mark@skynet.ie>
* gdk/gdk.h: include gdkspawn.h.
2003-12-10 Mark McLoughlin <mark@skynet.ie>
* gdk/linux-fb/gdkspawn-fb.c,
gdk/win32/gdkspawn-win32.c,
gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
s/gdk_spawn/gdk_spawn_on_screen/.
2003-12-10 Mark McLoughlin <mark@skynet.ie>
Utility functions for multi-screen applications which need
to ensure launched applications appear on a certain screen.
See bug #95897.
* gdk/gdkspawn.h: header for multi-screen launching
support.
* gdk/Makefile.am: install gdkspawn.h.
* gdk/x11/Makefile.am:
* gdk/x11/gdkspawn-x11.c:
(gdk_spawn_make_environment_for_screen): private function
to create an environment vector with DISPLAY set appropriately
for the screen.
(gdk_spawn_on_screen): multi-screen version of g_spawn_async().
(gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
(gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
* gdk/linux-fb/Makefile.am,
gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
* gdk/win32/Makefile.am,
gdk/win32/gdkspawn-win32.c: win32 impl.
2003-12-09 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
rather than "Username's Home" (#125964).
(shortcuts_selection_changed_cb): New callback, check the
sensitivity of the Remove Bookmark button at the right time.
(shortcuts_row_activated_cb): It is not necessary to check the
sensitivity here.
Wed Dec 10 00:06:24 2003 Matthias Clasen <maclas@gmx.de>
Improve the GDK API for dealing with group leaders (#119375):
* gdk/gdkwindow.h:
* gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to
get the group leader of a toplevel window as a GdkWindow.
* gdk/gdkdisplay.h:
* gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New
function to get the default group leader as a GdkWindow.
* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
the GdkWindow of the default group leader.
* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
for the default group leader.
2003-12-09 Noah Levitt <nlevitt@columbia.edu>
* gdk/gdkkeysyms.h:
* gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
Ukrainian_GHE_WITH_UPTURN. (#128529)
2003-12-08 Jan Arne Petersen <jpetersen@uni-bonn.de>
* gtk/gtkfilechooserdefault.c:
(gtk_file_chooser_default_get_paths), (entry_activate): Use the
behavior of the GtkFileSelection to determine selected paths in
single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
2003-12-08 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_get_paths): Don't declare the closure
struct twice.
(get_paths_foreach): Likewise.
Tue Dec 9 00:12:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g.
2003-12-08 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
with MSVC and old headers. (#126933, John Ehresman)
Mon Dec 8 10:54:44 2003 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.1 ===
* NEWS: Updates for 2.3.1
* configure.in: Version 2.3.1, interface age 0, binary age 301.
* gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
Rename from gtk_menu_item_real_can_activate_accel() to
match GTK+ convention, improve comment.
* gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
can ::can-activate-accel signal.
* gtk/gtkwidget.c (closure_accel_activate): Fix spelling
in comment.
* gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean
up comment.
* gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
into the .c file.
Mon Dec 8 12:09:21 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.c (find_builtin_icon): Fix a
missing 'else'. (#128816, Jorn Baayen)
2003-12-02 Michael Meeks <michael@ximian.com>
Based on a patch by Martin Kretzschmar; #122448
* gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
(GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
function pointers. Deprecate the global gdk_threads_mutex variable.
* gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
extracted from GTK_THREADS_ENTER/LEAVE macros.
(gdk_threads_init): init gtk_threads_[un]lock if not set.
(gdk_threads_set_lock_functions): impl.
* gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
Sun Dec 7 23:45:40 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
icon_theme_builtin_icons hasn't been initialized. (#128726, Diego
Gonzalez)
2003-12-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
return value from SendMessage(WM_SETICON). That is the old
icon. Fixes GDI resource leak. (#128559, Tim Evans)
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
have a pointer grab active with a grab cursor set, destroy that
cursor to avoid a GDI resource leak. (#128410, Tim Evans)
2003-12-05 Paisa Seeluangsawat <paisa@users.sf.net>
* configure.in: Added Thai (th) to ALL_LINGUAS.
Sat Dec 6 01:42:04 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
RTL flipping for GtkAlignment. (#127585)
Sat Dec 6 01:13:09 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the
popup window when in RTL mode. (#127578)
Fri Dec 5 15:30:16 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
before doing anything to prevent garbage returns.
Sat Dec 6 00:23:46 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkviewport.c: Implement RTL flipping for
GtkViewport: Adjust the "gravity" when resizing
This is a bit flickery in RTL mode. (#107526)
Sat Dec 6 00:22:14 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkscrolledwindow.c: Implement RTL flipping for
GtkScrolledWindow: the vertical scrollbar shows up on the left
side in RTL mode. (#107526)
Fri Dec 5 01:58:33 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
tabs displayed at the top/bottom are rearranged, and tabs on
the left/right are displayed at the opposite edge. (#96630)
2003-12-04 Mark McLoughlin <mark@skynet.ie>
* gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
gtk_label_set_attributes() take NULL. See bug #128517.
2003-12-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
the in_change flag.
(completion_idle_callback): Use a temporary list store and re-set
it on the completion rather than modifying the old one. We are
re-reading the folder anyway, and this gets rid of non-atomicity
problems.
2003-12-01 Federico Mena Quintero <federico@ximian.com>
Decouple impl->current_folder from the selection in the folder
tree. This is so that going to /home/federico/.foo (e.g. from a
bookmark) will work even if show_hidden == FALSE. The folder tree
needs to be fixed in this case to show such folders explicitly.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_set_current_folder): When changing
folders, do the entry and list model work here, instead of
tree_selection_changed().
(struct _GtkFileChooserDefault): Added a changing_folder flag
again, dum de dum.
(tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
Tue Dec 2 01:01:54 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkiconfactory.h: Remove duplicate declaration of
gtk_icon_source_set_icon_name(). (#Jeff Franks, #128269)
2003-12-01 Federico Mena Quintero <federico@ximian.com>
Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
bookmarks buttons with the location entry.
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
bookmarks buttons and the location entry.
2003-12-01 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
shortcuts tree as a drag destination.
(shortcuts_drag_data_received_cb): New callback.
(get_file_info): Also fetch information on whether the file is a folder.
(add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
(error_could_not_add_bookmark_dialog): New function.
(shortcuts_add_bookmark_from_path): New helper function.
(add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
(shortcuts_row_activated): We no longer need the changing_folder flag.
(struct _GtkFileChooserDefault): Likewise.
Sun Nov 30 17:31:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
disappearing placeholders that are still visible.
* gtk/gtktoolbar.c: formatting fixes
* gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
disappearing, for placeholders that are going to disappear.
* gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
Sat Nov 29 00:55:28 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_new_column_width):
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
Patch from <chinen@jp.ibm.com> to handle RTL support for column
resizers, #127874
Fri Nov 28 00:26:24 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize):
Don't use freed memory. (#127698, Taavi Talvik)
Fri Nov 28 00:09:10 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilechooserentry.c: Remove debug g_print()s.
Thu Nov 27 22:17:50 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c: Remove debug define.
Thu Nov 27 16:19:03 2003 Tim Janik <timj@gtk.org>
* gtk/gtkmenu.c: allow accel activation depending on sensitivity
and the attach widget.
* gtk/gtkmenuitem.c: allow accel activation depending on visibility,
sensitivity and the parent menu.
* gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
checks whether accelerators may activate a widget. the default handler
demands the widget be sensitive and visible+viewable.
* gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
Tue Nov 25 00:10:05 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (update_node): Don't show accelerators in
popup menus. (#127227)
Mon Nov 24 13:47:39 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
Mon Nov 24 04:05:15 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkradiotoolbutton.[ch]
(gtk_radio_tool_button_new_from_widget): Make this function take a
GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
Cumming)
Mon Nov 24 02:34:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
Mon Nov 24 02:19:33 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c: remove variable
n_overflowed_menu_items_when_dnd_started
Mon Nov 24 01:47:10 2003 Soeren Sandmann <sandmann@daimi.au.dk>
Rework sliding algorithm.
- No more weird jumping when items are dragged off and added to
the toolbar,
- More natural item movement
* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
function is now responsible for calculating intermediate positions
during item sliding. It is also responsible for starting sliding
if items disappear. Also turn off expanding when there is an
overflow menu.
(gtk_toolbar_begin_sliding, stop_sliding): New functions.
(slide_idle_handler): New function. All the sliding is now done by
gtk_toolbar_size_allocate(), so the idle handler now just checks
if there is more sliding to be done.
(compute_intermediate_allocation, position): new functions
calculating intermediate steps in the slide animations. The new
animation algorithm uses a constant speed instead of a constant
must-be-finished-within time.
(struct _ToolbarContent): use
GtkAllocation goal_allocation; and
GtkAllocation start_allocation; instead of
gint start/goal_width;
* gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
documentation
Sun Nov 23 22:26:25 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip
positioning Xinerama-aware. (#127332)
Fri Nov 21 01:57:21 2003 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
boundaries visible in fake Xinerama mode.
Thu Nov 20 15:41:56 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
for the gtk_widget_hide() call.
Thu Nov 20 14:51:41 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
from David Hampton to fix sorting on booleans.
Thu Nov 20 15:48:03 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
by Frederic Crozat).
Thu Nov 20 13:10:29 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
2003-11-19 Federico Mena Quintero <federico@ximian.com>
Fixes to problems reported by Iain Holmes:
* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
throw up an error dialog if the desktop doesn't exist.
(error_message): Handle the case where there is no real toplevel
yet.
(list_model_filter_func): Always let folders pass through (patch
by Dave Malcolm).
Wed Nov 19 23:19:23 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
to a somewhat more logical place,
(gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
Wed Nov 19 22:15:01 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
the popup when it is visible, popdown when there are less chars
than the minimum key length in the entry,
(gtk_entry_completion_changed): popdown when the entry is empty.
* gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
size request of the vscrollbar to (-1, 0), to get a nicely sized
completion treeview (Fixes #126573, reported by Piers Cornwell),
(_gtk_entry_completion_resize_popup): show/hide the action_view
based on items.
2003-11-19 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
off the dialog's separator (thanks to Iain Holmes).
Wed Nov 19 18:15:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
* gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
on items that have a submenu. (#120104).
Wed Nov 19 18:11:08 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
"ItemState" field indicating the overflowed-ness etc. of the item.
(gtk_toolbar_size_allocate): update the field here.
2003-11-19 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
to the alignment. Use the HIG-specified spacing between the
filter label and the combo.
(create_filename_entry): Use HIG-specified spacing between the
location label and the entry.
(gtk_file_chooser_default_constructor): Don't use vertical padding
around the filename entry.
2003-11-19 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
render_icon virtual method.
* gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
* gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
Implement as a stub for now.
* gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
gtk_file_system_render_icon().
(list_icon_data_func): Likewise.
(toolbar_create): Set the toolbar style to icons only.
* gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
Fix doc comments.
Wed Nov 19 02:18:37 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call
gtk_widget_hide(menu) when reattaching the menu. (#126057)
Wed Nov 19 00:06:04 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
only unselect all items if the treeview has focus. (Fixes bug
reported by Marco Pesenti Gritti).
Tue Nov 18 22:26:30 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_completion_key_press): the total
number of actions is "matches + actions - 1". (Fixes #126572).
Tue Nov 18 21:05:05 2003 Christian Persch <chp@cvs.gnome.org>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
mem leaks (#119435).
Tue Nov 18 20:51:38 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
try to fetch the child back, since we do know that it is already
gone by now (#126493, Marco Pesenti Gritti).
Tue Nov 18 19:47:59 2003 Kristian Rietveld <kris@gtk.org>
Fixes based on comments from Owen Taylor, #125264.
* gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
variable,
(gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
a resize,
(gtk_cell_view_get_size_of_row): new function,
(gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
(gtk_cell_view_set_values), (gtk_cell_view_set_model),
(gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
s/cellview/cell_view/ in the function definitions, so they match
with the header file.
* gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
flag again (:, and use gtk_cell_view_get_size_of_row instead of
the measurer, remove _set_size_request call,
(gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
instead of the measurer,
(gtk_combo_box_style_set): queue a resize,
(gtk_combo_box_size_request): update of _remeasure call,
(gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
(gtk_combo_box_cell_layout_pack_end),
(gtk_combo_box_cell_layout_clear),
(gtk_combo_box_set_model): get rid of the measurer,
(gtk_combo_box_cell_layout_add_attribute),
(gtk_combo_box_cell_layout_set_cell_data_func),
(gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
resize instead of calling _remeasure.
Mon Nov 17 16:25:04 2003 Manish Singh <yosh@gimp.org>
* gdk-pixbuf/Makefile.am
* modules/input/Makefile.am: Use install-data-hook for
gdk-pixbuf.loaders and gtk.immodules install generation targets.
Fixes #112806.
* gtk/gtkexpander.h: Apply missing declarations from #124449.
Tue Nov 18 00:12:55 2003 Matthias Clasen <maclas@gmx.de>
Fix for #119555, Peter Zelezny:
* gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
* gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
by removing the _ prefix.
* gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c,
gdk/gdkwindow.c: Adjust all callers.
Mon Nov 17 23:36:02 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c (gtk_action_activate): Only activate if
the action is sensitive. (#127187, Christian Persch)
Mon Nov 17 23:23:49 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcombobox.c: Add mouse wheel support. (#126517)
Mon Nov 17 22:56:09 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
* gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
mapped, else resize_popup.
* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
(_gtk_entry_completion_popup): moved all popup resizing code to
_gtk_entry_completion_resize_popup, and show the window when there
are more than zero items in the completion list again (sigh).
2003-11-17 Mark McLoughlin <mark@skynet.ie>
Patch from Jaiserca <jaiserca@inf.upv.es> to add a
"use_markup" property. See bug #124449.
* gtk/gtkexpander.c:
(gtk_expander_class_init),
(gtk_expander_init), (gtk_expander_set_property),
(gtk_expander_get_property), (gtk_expander_set_label),
(gtk_expander_set_use_markup), (gtk_expander_get_use_markup):
Add a "use_markup" property and use it when creating the
child label.
Mon Nov 17 12:58:32 2003 Kristian Rietveld <kris@gtk.org>
Temporary size requisition fix. Will fix it for real tonight.
* gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
(gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
a good width for the child,
(gtk_combo_box_cell_layout_add_attribute),
(gtk_combo_box_set_cell_data_func),
(gtk_combo_box_cell_layout_clear_attributes): update.
Mon Nov 17 00:11:21 2003 Kristian Rietveld <kris@gtk.org>
Fixes #124373, Murray Cumming.
* gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
is no longer construct only,
(gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
(gtk_combo_box_menu_fill): new functions,
(gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
(gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
(gtk_combo_box_list_destroy): updated,
(gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
functions,
(gtk_combo_box_set_model): is now public, updated,
(gtk_combo_box_get_model): small update.
* gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
text_column property is no longer construct only,
(gtk_combo_box_entry_set_text_column): now public,
(gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
new/changed functions.
* tests/testcombo.c: updated.
Sun Nov 16 22:50:58 2003 Matthias Clasen <maclas@gmx.de>
Reinstate fixes for (#124212, Marco Pesenti Gritti):
* gtk/gtkuimanager.c (update_smart_separators): Don't spit
warnings for popups.
(_gtk_menu_is_empty): Return FALSE for non-menus.
Sun Nov 16 21:48:40 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellview.c (gtk_cell_view_finalize): just call
gtk_cell_view_cell_layout_clear instead of trying to free the
structure ourselves here. (#125726, Morten Welinder).
Sun Nov 16 00:35:29 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilechooser.[hc]:
* gtk/gtkentrycompletion.h: Fix parameter name mismatches which
confuse gtk-doc.
2003-11-15 Hans Breuer <hans@breuer.org>
* gdk/makefile.msc gdk/gdk.def
gtk/gtk.def gtk/makefile.msc.in : updated
* tests/makefile.msc : added all the new tests
* gtk/gtkfilefilter.c(finalize) : initialize filter
from object not from itself
* gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
modified as less as posible to have aworking implementation
on win32. There maybe the desire to merge the unchanged pats into
a common base class.
Also implemented a simple glib based bookmark handling, which
is currently missing in gtkfilesystemunix.[hc] but can be copied
over there.
* gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
* gdk/win32/gdkwindow-win32.c : implement
gdk_window_set_keep_above() and gdk_window_set_keep_below()
* tests/testmerge.c : don't include unistd.h unconditionally,
#define STDOUT_FILENO if it isn't defined
* tests/testfilechooser.c : make it compile on win32
2003-11-15 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
Thu Nov 13 12:55:29 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Update the rest of Section 2
Thu Nov 13 01:46:32 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkicontheme.c (gtk_icon_theme_init): Use
GTK_DATADIR/{icons,pixmaps} instead of
GTK_DATA_PREFIX/{icons,pixmaps}. (#123365, Marco Pesenti Gritti)
Wed Nov 12 21:40:10 2003 Matthias Clasen <maclas@gmx.de>
Changes to improve menu positioning on Xinerama (#108328, #126150):
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event
window of the menuitem to determine the monitor. This fixes some
* gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
to store the monitor on which the menu is to be positioned.
* gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
in the GtkMenuPrivate struct and fetch the monitor geometry after
calling the position_func, in case it has been changed.
* gtk/gtkmenu.c (gtk_menu_set_monitor): New function
to be used in GtkMenuPositionFunc implementations for setting
the monitor_num field in GtkMenuPrivate.
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call
gtk_menu_set_monitor.
Wed Nov 12 21:00:10 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
label for the empty list. String change. (#95446, Tomas Ćgren)
Wed Nov 12 20:57:50 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
the definition of the values. (#123361, Marco Pesenti Gritti)
Wed Nov 12 20:54:02 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdkkeyuni.c: Map KP_Separator to ','.
(#122941, Egmont Koblinger)
2003-11-12 Padraig O'Briain <padraig.obriain@sun.com>
*gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
opacity entry widget. Change tooltip for opacity widgets. (#126426)
2003-11-12 Padraig O'Briain <padraig.obriain@sun.com>
* gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
affect window menu position when popped from keyboard. (#102660)
Wed Nov 12 01:29:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
are using the old API, make all items "is_important". That way
BOTH_HORIZ will continue to show both icon and label in old API
mode.
Mon Nov 10 00:40:41 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkeventbox.c (gtk_event_box_set_above_child):
Remember the new value in all cases. (#126276, Damon Chaplin)
Sat Nov 8 23:06:02 2003 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/main.c (row_activated_cb): Call the do_
functions with the toplevel as argument.
* demos/gtk-demo/geninclude.pl.in: Change the signature
of GDoDemoFunc to take a widget argument
* demos/gtk-demo/ui_manager.c (do_ui_manager):
* demos/gtk-demo/tree_store.c (do_tree_store):
* demos/gtk-demo/textview.c (do_textview):
* demos/gtk-demo/stock_browser.c (do_stock_browser):
* demos/gtk-demo/sizegroup.c (do_sizegroup):
* demos/gtk-demo/pixbufs.c (do_pixbufs):
* demos/gtk-demo/panes.c (do_panes):
* demos/gtk-demo/menus.c (do_menus):
* demos/gtk-demo/list_store.c (do_list_store):
* demos/gtk-demo/images.c (do_images):
* demos/gtk-demo/hypertext.c (do_hypertext):
* demos/gtk-demo/editable_cells.c (do_editable_cells):
* demos/gtk-demo/drawingarea.c (do_drawingarea):
* demos/gtk-demo/dialog.c (do_dialog):
* demos/gtk-demo/colorsel.c (do_colorsel):
* demos/gtk-demo/changedisplay.c (do_changedisplay):
* demos/gtk-demo/button_box.c (do_button_box):
* demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
as argument, and make new windows or dialogs appear on the
same screen. (#80388)
Sat Nov 8 21:59:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkeventbox.c (gtk_event_box_class_init): Let
visible-window default to TRUE, as documented and
implemented. (#126270 Damon Chaplin)
Sat Nov 8 01:50:17 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkicontheme.c:
* gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new):
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new):
* gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
2.4 additions.
2003-11-07 Federico Mena Quintero <federico@ximian.com>
Changing GtkFileChooserEntry to use GtkEntryCompletion.
* gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
a GtkListStore for the completion list. Create a
GtkEntryCompletion and attach it to the chooser entry.
(gtk_file_chooser_entry_finalize): Unref the completion store.
(completion_match_func): New callback for the GtkEntryCompletion.
(completion_idle_callback): Fill the completion store with filenames.
Fri Nov 7 22:55:49 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c (gtk_window_set_role):
* gtk/gtkwindow.c (gtk_window_set_title):
* gtk/gtkwidget.c (gtk_widget_set_name):
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title):
* gtk/gtkbutton.c (gtk_button_set_label): Make string setters
safe for self-assignment. (#122745, Soeren Sandmann)
Thu Nov 6 20:41:40 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
(#126369, Olexiy Avramchenko)
Thu Nov 6 00:21:41 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcolorbutton.c (gtk_color_button_init):
* gtk/gtkfontbutton.c (gtk_font_button_init): Improve the
consistency of titles. (#126193, Damon Chaplin)
Wed Nov 5 22:49:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off
menus to be transient for the toplevel they were torn off from.
(gtk_menu_get_toplevel): Auxiliary function to find the
toplevel of a menu. (#54775, Jon-Kare Hellan)
Wed Nov 5 21:07:58 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
min-position and max-position. (#58431, Padraig O'Briain)
Wed Nov 5 21:02:26 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcolorsel.c (update_color):
(make_label_spinbutton):
(adjustment_changed): Change the ranges for Saturation and
Value to be 0-100 instead of 0-255, since these axes of HSV
are usually expressed in percent. (#121519, Gregory Merchan)
Wed Nov 5 08:51:48 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: More 2.x updates
Tue Nov 4 15:00:33 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: More 2.x updates, fix
pkg-config command error, update copyright.
2003-11-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
well. Use a helper function.
(shortcuts_append_home): Display an error box if necessary.
(shortcuts_append_desktop): Likewise.
(add_bookmark_button_clicked_cb): Likewise.
(gtk_file_chooser_default_select_path): Likewise.
(entry_activate): Likewise.
(shortcuts_append_paths): New helper function.
(shortcuts_append_file_system_roots): Use
shortcuts_append_paths().
(shortcuts_append_bookmarks): Likewise.
Mon Nov 3 23:12:41 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if
menu is NULL.
(update_smart_separators): Remove some unneeded ifs.
Mon Nov 3 22:45:58 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make
these usable in C++. Forgot this file in my Oct 11 commit.
2003-11-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
icon to the "Add bookmark" button.
* gtk/gtkfilesystemunix.c: Mark missing strings for translation.
* gtk/gtkfilesystemmodel.c: Likewise.
* gtk/gtkfilechooser.c: Likewise.
* gtk/gtkfilechooserdefault.c: Likewise.
Mon Nov 3 20:56:28 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk.c:
* gdk/gdkinternals.h:
* gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
Xinerama mode when no actual Xinerama setup is found.
2003-11-03 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
(create_shortcuts_tree): Don't call the above.
(bookmarks_changed_cb): Likewise.
(tree_selection_changed): Unselect everything from the shortcuts
list. This is the behavior that Mac OS has.
(toolbar_add_item): Return the item.
(toolbar_create): Store the up_button in the impl structure.
(toolbar_check_sensitivity): New function to set the sensitivity
of the "Up" button in the toolbar.
(tree_selection_changed): Call toolbar_check_sensitivity().
2003-11-02 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
not set a border width for the toplevel container.
(toolbar_create): New function; create a simple toolbar for the
file chooser.
(gtk_file_chooser_default_constructor): Use a spacing of 12 for
the table, as per the HIG.
(gtk_file_chooser_default_init): Likewise, for the default
implementation's vbox.
* gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
note that NULL is a valid return value for the parent path.
Sat Nov 1 14:59:27 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserdefault.c (shortcuts_row_activated):
Change on activation, not selection change (temporary
workaround for #125955, needed for keynav, likely
the right UI anyways.)
* gtk/gtkfilechooserdefault.c (shortcuts_select_func):
Don't allow the separator node to be selected.
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
Set the focus chain so that the entry gets focused first.
(Not really right after initial focusing, maybe we
should just have a gtk_file_chooser_focus_entry() that
we call from gtk_file_chooser_dialog on creation.)
Sat Nov 1 12:41:04 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
residual call to gtk_window_get_private().
Sat Nov 1 09:10:13 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.[ch]: Move above_initially, below_initially
into GtkWindowPrivate structure, fixing ABI breakage
on Win32. (Hans Breuer). Switch GtkWindowPrivate over
to instance-private-data.
Fri Oct 31 02:43:34 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (get_item_requisition): delete this function
(toolbar_item_is_homogeneous): cache max_homogeneous_pixels
instead of re-calculating for each item.
(gtk_toolbar_size_allocate): Update comments
Thu Oct 30 22:04:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
placeholders when include_internals is TRUE.
Thu Oct 30 17:57:53 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (logical_to_physical): Make it work even when
item 0 is a placeholder. (#125826)
* tests/testtoolbar.c: add an assertion that
gtk_toolbar_get_nth_item (0) != NULL
Thu Oct 30 17:40:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (logical_to_physical): Make it work for
logical == 0.(#125826)
Thu Oct 30 16:20:58 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
return the index of a real item.
(get_nth_item) assert that the returned items is not a
placeholder. (#125826, Marco Pesenti Gritti).
2003-10-29 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkcellrendererseptext.c
(gtk_cell_renderer_sep_text_render): Only paint a separator if the
text is NULL, rather than also doing it if it is an empty string.
Wed Oct 29 15:40:26 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_new/
gtk_message_dialog_new_with_format): Allow NULL
for message_format, as described in the docs and
as worked previously. (#125759, Richard Hult)
* gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
Use g_markup_vprintf_escaped() to escape arguments.
* gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
so there is some way to set literal markup.
Wed Oct 29 15:01:32 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
the call to gdk_error_trap_pop() to the right place,
fixing a problem where we'd pop() too many times
when bailing out. (#123302, Thomas Leonard)
Wed Oct 29 12:50:02 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserutils.c (delegate_set_current_folder):
Fix infinite recursion. (#125679, Christian Persch)
Wed Oct 29 13:29:15 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: further 2.x updates:
mirrors,compiling,g_main_context_iteration
Wed Oct 29 02:54:35 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
function; remove gtk_toolbar_highlight_drop_location() and
gtk_toolbar_unhighlight_drop_location().
Also fix bug where the number of overflowed items were miscounted.
Tue Oct 28 12:20:16 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
some accidentally committed duplicate code.
Tue Oct 28 17:06:17 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Update info on compiling GTK+
Tue Oct 28 10:34:24 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.[ch] (gtk_window_is_active,
gtk_has_toplevel_focus): Add getters corresponding to
the is_active and has_toplevel_focus properties.
(#122531)
2003-10-28 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkexpander.c:
(gtk_expander_class_init): hook up the destroy handler.
(gtk_expander_destroy), (gtk_expander_unrealize):
remove the expand/collapse timeout on destroy instead
of unrealize to avoid leaving the expander in a inconsistent
state when unrealizing during animation.
(gtk_expander_start_animation): remove realized check.
(gtk_expander_set_expanded): if the widget isn't realized,
expand immediately.
Tue Oct 28 09:44:16 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
do nothing when recipient is NULL, as described in the
doc comment. (#123107, Thomas Leonard)
Tue Oct 28 09:21:29 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmain.c (gtk_check_version): Move docs inline,
rewrite docs, mention memory management for the return
value. (Partly addresses #125549, Michael Natterer)
2003-10-28 Padraig O'Briain <padraig.obriain@sun.com>
* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
Change index to filter_index to fix compilation error.
* gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
Mon Oct 27 15:47:58 2003 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
we have RandR support, for XRRUpdateConfiguration declaration.
* gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
declaration.
* gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
length a gsize variable, since that's what g_file_get_contents()
expects.
Mon Oct 27 12:18:49 2003 Owen Taylor <otaylor@redhat.com>
* NEWS: Fix attribution for above/below EWMH work.
Sat Oct 25 23:30:13 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name"
as a construct-only property. (#125475, Murray Cumming)
Thu Oct 23 21:55:10 2003 Soeren Sandmann <sandmann@daimi.au.dk>
Fix bug 116297 and 125472
* gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
this function take an index and a GtkToolItem.
* tests/testtoolbar.c (main): Make "Show Arrow" default to
true. Make one of the separators !draw and expand.
Update for new highlight_drop_location() API.
* gtk/gtktoolitem.[ch]: Remove "pack_end" property
* gtk/gtktoolbar.h: Formatting fixes.
* gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
separator tool items to expand.
(logical_to_physical, physical_to_logical): Fix off-by-one errors
(Fix #125472, Marco Pesenti Gritti)
* gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
(gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
return FALSE, not TRUE.
(gtk_separator_too_item_{set|get}_property,
(gtk_separator_tool_item_{set|get}_draw): new functions
Fri Oct 24 16:54:04 2003 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.0 ===
* configure.in: Remove a stray comma.
* README.in: Fix a few notes about Xft 1 and pango-1.0.
* NEWS: Finish updates for 2.3.0.
* po/Makefile.in.in: Update to latest GLib version.
Fri Oct 24 20:31:35 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
Sandmann).
Fri Oct 24 20:22:40 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelfilter.h: add padding to the class structure.
2003-10-23 Federico Mena Quintero <federico@ximian.com>
* gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
(gtk_file_chooser_remove_filter): Likewise.
(gtk_file_chooser_select_all): Added docs.
(gtk_file_chooser_unselect_all): Likewise.
* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
* gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
Thu Oct 23 23:22:15 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilefilter.c:
* gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
Thu Oct 23 22:33:47 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
Thu Oct 23 21:49:05 2003 Matthias Clasen <maclas@gmx.de>
* NEWS: Remove a few duplicates, group the menu changes.
Thu Oct 23 21:12:50 2003 Kristian Rietveld <kris@gtk.org>
* NEWS: Updates for 2.3.0; changed header to match the style we used
for 2.1.0.
Thu Oct 23 20:47:44 2003 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
assign the new leader. (#125168, Mariano Suarez-Alvarez)
Thu Oct 23 20:21:16 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
Thu Oct 23 15:13:56 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* NEWS: Partial update for 2.3.0.
Thu Oct 23 01:09:04 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
GtkComboBox.
Wed Oct 22 23:20:04 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch]
gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
Basic framework for the new file selector widget.
* gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch]
gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
Initial implementation of the GtkFileChooser user interface.
* gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
for Unix files.
* configure.in gtk/Makefile.am gtk/xdgmime: Build code
for freedesktop.org MIME system on Unix.
* tests/testfilechooser.c: Test program for GtkFileChooser
* tests/prop-editor.c: Add support for properties on interfaces.
Tue Oct 21 16:12:51 2003 Owen Taylor <otaylor@redhat.com>
* demos/gtk-demo/menus.c (do_menus): Fix some unused
variables.
* gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
variable warning.
Thu Oct 23 00:04:50 2003 Matthias Clasen <maclas@gmx.de>
* NEWS: Partial update for 2.3.0.
Tue Oct 21 22:07:12 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
ctrl_pressed and shift_pressed according to the current event
state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
Mon Oct 20 23:24:27 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_key_press): remove the completion
timeout when the user pressed on Enter/ESC. Fixes the bug where the
completion popup popped up after the user pressed on Enter (which is
just weird). Reported by the Epiphany people (all of them).
Mon Oct 20 20:27:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
Add support for OS X like sliding of toolbar items during drag and
drop, (#110919, Dave Bordoley)
Make dnd highlighting the responsibility of the
application. (Fixes #116298, Owen Taylor)
* gtk/gtktoolbar.h: Add prototypes for new API.
* gtk/gtktoolbar.c
(physical_to_logical, logical_to_physical): new functions
converting between "position including placeholders" and "position
excluding placeholders".
(gtk_toolbar_class_init): remove drag_leave and drag_motion
handlers
(struct _ToolbarContent): new struct containing information
related to toolbar items.
(gtk_toolbar_highlight_drop_location): new public function
(gtk_toolbar_unhighlight_drop_location): new public function
* tests/testtoolbar.c
(toolbar_drag_motion, toolbar_drag_leave): new functions
(main): connect to dnd signals. Make the "New" item expand to
make drag and drop more exciting.
Wed Oct 15 22:39:23 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
_set_active, not _set_active_item.
Wed Oct 15 22:31:09 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.h: add padding to the class structure.
* gtk/gtkcomboboxentry.h: ditto.
* gtk/gtkentrycompletion.h: ditto.
Wed Oct 15 22:04:59 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c (gtk_combo_box_get_active),
(gtk_combo_box_set_active): mention in the docs that -1 is a valid
value and what it means.
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
item to -1 (default),
(gtk_combo_box_entry_active_changed): do nothing when the index is
< 0.
Tue Oct 14 16:10:21 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
to set the active row by iter.
* gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
to get the active row by iter.
2003-10-13 Federico Mena Quintero <federico@ximian.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
operations on windows if the tree view is not mapped.
(gtk_tree_view_button_press): Compare equal types of pointers, not
GtkWidget* vs. GtkTreeView*.
Mon Oct 13 21:01:43 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
the reset of first_sel_changed, as after the first popup the treeview
will always have a row selected and will thus not focus_to_cursor.
* gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
whether the keyval should move the completion selection cursor (used
to avoid ending up with extreme cluttered code), also added
all KP_ equivalents of the keys here,
(gtk_entry_completion_key_press): Keynav tweaks based on comments
from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
as possible current selection, implement Home/End keys, modified
the down key to stop cycling. Maybe page up/down should be implemented
at some later time.
Mon Oct 13 20:58:07 2003 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work
as documented when pixmap or mask is NULL. (#124081)
Mon Oct 13 20:21:38 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
I was adding the signal block/unblock code. Oops. (Noticed by
Marco Pesenti Gritti).
Mon Oct 13 20:21:55 2003 Kristian Rietveld <kris@gtk.org>
* demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
(set_interp_type), (main): port over from option menu to GtkComboBox.
Mon Oct 13 19:41:55 2003 Kristian Rietveld <kris@gtk.org>
* tests/testmenus.c: Still uses option menus, so turn off
GTK_DISABLE_DEPRECATED.
Sun Oct 12 01:10:29 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkalignment.[hc]:
* gtk/gtkcombobox.[hc]:
* gtk/gtkcomboboxentry.[hc]:
* gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
from header to implementation.
Sun Oct 12 00:18:02 2003 Matthias Clasen <maclas@gmx.de>
* tests/testtreeview.c:
* demos/testpixbuf-scale.c:
* tests/prop-editor.c: These files still use option menus,
so turn off GTK_DISABLE_DEPRECATED to fix the build.
Sat Oct 11 23:14:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.h:
* gtk/gtkaction.h:
* gtk/gtkradioaction.h:
* gtk/gtkradiotoolbutton.h:
* gtk/gtkseparatortoolitem.h:
* gtk/gtktoggleaction.h:
* gtk/gtktoolitem.h:
* gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make
these usable in C++. (#124351, Murray Cumming)
Sat Oct 11 19:09:05 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
non-NULL before accessing it. Oops.
Sat Oct 11 15:47:03 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
(gtk_entry_completion_insert_action_text),
(gtk_entry_completion_insert_action_markup): the gchar* parameters
should be const (pointed out by both Marco Pesenti Gritti and
Murray Cumming (#124356).
Sat Oct 11 15:37:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
child list mode, allocate the height allocation->height to the
button instead of the height requested by the button. (Tiny
size allocation screwup noticed by Macro Pesenti Gritti).
Sat Oct 11 15:23:27 2003 Kristian Rietveld <kris@gtk.org>
Fixes based on comments from Marco Pesenti Gritti.
* gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
signal handler, avoids the completion popup to popup when text is
set programmatically in most cases (we actually have to handle this
in the _editable functions as well, but that will break popping up
when the user actually typed something :),
(gtk_entry_completion_key_press): when handling enter, bail out
when nothing has been selected,
(gtk_entry_completion_changed): don't popdown when the entry content
changed.
* gtk/gtkentrycompletion.c (gtk_entry_completion_init),
(gtk_entry_completion_selected_changed): unselect_all on the
first selected changed signal. Avoids having a default row selected,
(_gtk_entry_completion_popup): don't select the first row by default.
* gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
first_sel_changed field.
Fri Oct 10 23:02:58 2003 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager
in the intro (again).
Fri Oct 10 22:50:05 2003 Matthias Clasen <maclas@gmx.de>
Fixes for (#124212, Marco Pesenti Gritti):
* gtk/gtkuimanager.c (update_smart_separators): Don't spit
warnings for popups.
(_gtk_menu_is_empty): Return FALSE for non-menus.
Fri Oct 10 19:10:12 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombo.h: Deprecate.
* gtk/gtkoptionmenu.h: Ditto.
* gtk/gtkcombobox.c (gtk_combo_box_size_request),
(gtk_combo_box_size_allocate): Rework, things behave better now. Still
needs some work on requesting enough size when taking the items in
the list into account.
* gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
deprecated" guards.
* gtk/gtkinputdialog.c: ditto.
* gtk/gtkitemfactory.c: ditto.
* gtk/gtkoptionmenu.c: ditto.
* demos/gtk-demo/menus.c: remove the option menu.
* demos/gtk-demo/sizegroup.c: replace the option menus with
GtkComboBox.
* demos/gtk-demo/textview.c: ditto.
(A general GtkComboBox demo will be added later on).
Wed Oct 8 00:06:17 2003 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/ui_manager.c (activate_radio_action): New
callback to propertly report radio actions.
* demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
Tue Oct 7 23:23:05 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkplug.c (xembed_set_info): Put the supported protocol
version in in the right field of the _XEMBED_INFO property.
(#123885, Denis Mikhalkin)
Mon Oct 6 14:18:47 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
the child if we have one.
(gtk_expander_button_release): use
gtk_widget_activate instead.
Mon Oct 6 21:05:46 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtktable.c (gtk_table_class_init): Start the blurb for
"right_attach" with a capital. (#123945, Christian Rose)
Sun Oct 5 23:59:03 2003 Matthias Clasen <maclas@gmx.de>
* tests/testsocket.c (child_read_watch): Remove an
extraneous unref. (#122336, Frederic Crozat)
Sun Oct 5 22:38:22 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtkeventbox.c (gtk_event_box_class_init): Trim
whitespace in "visible-window" blurb. (#123910, Christian Rose)
Sun Oct 5 00:53:15 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
focus arrow before pack_end items (#123851, Matthias Clasen)
Fri Oct 3 20:50:48 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
on ->priv->cell_view if ->priv->cell_view is non-NULL.
* gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
field to GtkComboBoxEntryPrivate,
(gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
(gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
(gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
a construct-only "text_column" property and reorder code to use it
and support inheriting this widget.
Thu Oct 2 23:28:02 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c: Added API doc comments.
* gtk/gtkcomboboxentry.c: Ditto.
2003-10-02 Matthias Clasen <maclas@gmx.de>
* gtk/gtktoggleaction.c: Documentation tweaks.
Wed Oct 1 22:43:40 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
packing/attribute/cell data functions from the header,
(gtk_cell_view_set_cell_data): added support for cell data funcs.
* gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
packing/attribute/cell data functions from the header, implemented
cell data func support.
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
for the move to GtkCellLayout.
* tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
2003-10-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c (gtk_action_class_init):
(gtk_action_[gs]et_property): Introduce a separate
"hide_if_empty" property for empty menu handling.
(_gtk_action_sync_menu_visible): ...and use it here.
* tests/testmerge.c (main): ...and here.
* gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc
comments to pacify gtk-doc.
* gtk/gtkmain.c: Doc formatting tweaks.
* gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
* gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio):
Use the same parameter names as in .c file, to pacify gtk-doc.
* gtk/gtktoggletoolbutton.[hc]:
* gtk/gtktoolbutton.[hc]:
* gtk/gtktoolitem.[hc]:
* gtk/gtktoolbar.[hc]:
* gtk/gtkcolorbutton.[hc]:
* gtk/gtkfontbutton.[hc]:
* gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the
source, not in the header.
* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio):
Document these as 2.4 API additions.
Tue Sep 30 23:42:56 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkentry.c (gtk_entry_set_completion),
(gtk_entry_get_completion): Add API doc comments.
* gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
Tue Sep 30 23:12:34 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
Tue Sep 30 22:59:58 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
* gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
2003-09-30 Matthias Clasen <maclas@gmx.de>
* tests/merge-*.ui:
* tests/testmerge.c: Test handling of empty menus.
* gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
whether a menu is empty. Used in gtkaction.c.
(update_smart_separators): Also update the visibility of empty menus.
(update_node): When creating a new menu proxy, insert an "Empty" menu
item which only gets shown if the menu is empty.
* gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
"is_important" for menu proxies.
(_gtk_action_sync_menu_visible): New function to sync the visibility
of menu proxies. Used in gtkuimanager.c.
(gtk_action_sync_visible): New function to sync the visibility of
proxies.
Tue Sep 30 21:43:34 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
popup_in_progress to TRUE,
(gtk_combo_box_menu_show): and back to FALSE here; the menu now
won't disappear on the first button release. (Reported by Matthias
Clasen).
Tue Sep 30 21:08:43 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
Marco Pesenti Gritti).
2003-09-30 Murray Cumming <murrayc@usa.net>
* gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
instead of a GdkWindow*, because that what it is given. The
documentation was already correct. This should cause no API/ABI
breakage with C compilers.
* gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c,
gtkcellrenderertogger.c: Updated the declarations of the render vfunc
implementation accordingly.
2003-09-30 Matthias Clasen <maclas@gmx.de>
* gdk/gdkkeys.c (gdk_keymap_class_init): Document the
"direction-changed" and "keys-changed" signals.
* gdk/gdkscreen.c (gdk_screen_class_init): Document the
"size-changed" signal.
* gdk/gdkdisplaymanager.c (gdk_display_manager_class_init):
Document the "display-opened" signal.
* gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
(gdk_display_class_init): Document the "closed" signal.
Sat Sep 27 16:02:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktextview.[ch]: rename property tab_moves_focus to
accepts_tab. (#122709 again).
2003-09-27 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c (gtk_window_new):
* gtk/gtkitemfactory.c (gtk_item_factory_new): Document
the fact that the newly created object does not come with
a floating reference. (#103068, patch by Frederic Lespez)
* gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor
of GtkUIManager. Just leave GtkTranslateFunc undeprecated,
since GtkActionGroup uses it.
* tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
this test uses the soon-to-be-deprecated GtkItemFactory.
* demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
remove item_factory.c
* demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c
using GtkUIManager instead of GtkItemFactory.
* tests/testmerge.c: Demonstrate the use of the
connect-proxy signal.
* gtk/gtkaction.c (connect_proxy): Add connect-proxy and
disconnect-proxy signals to do small customizations
like displaying tooltips in the statusbar without
custom actions. (#122894, Philip Langdale)
* gtk/gtkuimanager.c (update_node): Don't leak tooltip.
Fri Sep 26 23:49:44 2003 Kristian Rietveld <kris@gtk.org>
Landing the new ComboBox. Note that only gtkcombobox.h and
gtkcomboboxentry.h are public.
* gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
* gtk/Makefile.am, gtk/gtk.h: adding the new files.
* tests/testcombo.c: and a new test.
* tests/Makefile.am: adding the new test.
2003-09-25 Tor Lillqvist <tml@iki.fi>
* demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
2003-09-21 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (handle_wm_paint): New
function. Code split out from gdk_event_translate(). Needed
because gdk_event_get_graphics_expose() couldn't do anything
sensible otherwise. (Not that I think graphics exposes work anyway
in gdk/win32, but at least now the code could work.)
(gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
gdk_event_translate(), which couldn't have worked as it doesn't
take any pre-allocated GdkEvent parameter any longer.
(gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
2003-09-24 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
on toolitems.
* gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
* gtk/gtkuimanager.c (update_node): Don't complain about missing
actions on popups. Re-set "tooltip" property on toolitems after
adding them to parent to trigger proxy update.
2003-09-22 Matthias Clasen <maclas@gmx.de>
* tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
group member to test the fix for #122904.
* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
Add the action to the group before activating it, otherwise we
may end up with multiple active group members. (#122904, Marco
Pesenti Gritti)
2003-09-21 Matthias Clasen <maclas@gmx.de>
Changes to make cross-process merging feasible:
* gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
merged UI definition. Remove the "changed" signal, since its role
is now filled by "notify::ui". Instead add a "actions-changed" signal
which gets emitted when the set of actions changes.
* gtk/gtktoggleactionprivate.h:
* gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
Add a "draw_as_radio" property to toggle actions so that they can be
used as proxies for radio actions much like the "draw_as_radio"
property on check menu items enables them to operate as proxies for
radio actions.
Prevent the "show_all" trap for action-based menus (see
http://mail.gnome.org/archives/gtk-devel-list/2003-September/
msg00260.html):
* gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
calls from static functions.
* gtk/gtkuimanager.c (update_node):
* gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
widgets whose visibility is externally controlled.
* gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
"no_show_all" property with setter and getter. When TRUE, it keeps
gtk_widget_{hide,show}_all() from modifying the visibility of the
widget and its children.
Sun Sep 21 23:13:37 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
2003-09-20 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
including editor backup files. List files we want explicitly.
* gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
LC_ALL, LC_CTYPE and LANG environment variables, than calls
g_win32_getlocale().
(gtk_get_default_language): Code snippet moved to above function,
call it.
* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
* gtk/gtkrc.c (gtk_rc_context_parse_file): Call
_gtk_get_lc_ctype() instead of setlocale().
Fri Sep 19 18:15:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
(#96632)
Fri Sep 19 13:24:54 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
documentation. (#117306, Steve Chaplin)
2003-09-19 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
present on the US-International keyboard. For clarity, order
keysyms in case statement according to numeric value.
(gdk_keymap_translate_keyboard_state): Handle Caps Lock
correctly. (#120176, Ken Rastatter and Owen Taylor)
2003-09-18 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
unref a closure, not g_object_unref(). (#122637, Marco Pesenti Gritti)
Install accelerators on actions, not on proxies, support
accelerator-only actions:
* gtk/gtkmenu.c (get_accel_path): New function to get the accel path
and its lock status either via _gtk_widget_get_accel_path() or by
looking at the accel_path stored in the menu item itself and determining
its lock status by peeking into the contained accel label. This was
already (accidentally) committed a week ago.
* gtk/gtkaction.h (gtk_action_set_accel_group):
(gtk_action_[dis]connect_accelerator): New functions.
* gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
accel_closure and accel_count. We must have a reference to the
accel_group, since we need it in connect_proxy. The count is necessary
to ensure that the accelerator isn't removed before the last proxy
requesting it has been unmerged.
(connect_proxy): Connect the accelerator to the
action now, only set the accel_path on the menuitem.
(remove_proxy): Disconnect the accelerator from the action, not from
the menuitem.
(gtk_action_set_accel_group): Set the accel group.
(gtk_action_[dis]connect_accelerator): Count the number of times
this functions have been called and install/remove the accelerator if
the count leaves/reaches zero.
* gtk/gtkuimanager.h (GtkUIManagerItemType): Add
GTK_UI_MANAGER_ACCELERATOR.
* gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
(start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
<accelerator> elements.
(gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
type is GTK_UI_MANAGER_ACCELERATOR.
(update_node): Set the accel group on actions before creating their
proxies. Don't set the accel group on created menus. For
NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
(print_node): Also emit <accelerator> elements.
* tests/testmerge.c (dump_accels): Add a "Dump Accels" button.
* gtk/gtkuimanager.c (update_node): Robustness improvements.
2003-09-17 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (text_handler): Report unexpected character
data as error from the GMarkup parser, otherwise things like
gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error)
pass unexpectedly.
Wed Sep 17 02:38:53 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
committed redraw_on_allocate change.
Tue Sep 16 10:42:00 2003 Eric Warmenhoven <eric@warmenhoven.org>
* gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
stubs to fix compilation
* gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
* gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
variable. Patch from Marc Welz (#121347).
2003-09-16 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.h: Apply egtk-format-protos.
2003-09-15 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c: Doc tweaks.
Smart separators; see
http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
* gtk/gtkuimanager.c (update_smart_separators): New function which
implements "smart" separators by iterating once over the entries of a
menu, hiding and showing separators as necessary.
(update_node): Mark separators used as fences of placeholders as
hidden. Explicitly added separators are marked as smart. Call
update_smart_separators after updating a menu or toolbar node.
Connect update_smart_separators to "notify::visible" signal on menu
and tool items.
* tests/merge-[12].ui: Test smart separators.
Changes to allow setting action state before connecting signal; see
the thread starting at
http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
* gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
(gtk_action_group_add_radio_actions_full): Add value parameter to allow
setting the currently selected group member before connecting signals.
(GtkToggleActionEntry): Separate struct for constructing toggle actions,
including a boolean to initialize the action state before connecting
signals.
(gtk_action_group_add_toggle_actions):
(gtk_action_group_add_toggle_actions_full): New functions to construct
toggle actions from an array of GtkToggleActionEntries.
* demos/gtk-demo/appwindow.c:
* tests/testactions.c:
* tests/testmerge.c: Adjust to new action group API.
Sun Sep 14 16:59:52 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow
"gtk-toolbar-arrow" so themes can special-case it.
Sun Sep 14 16:07:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/Makefile.am (gtk_c_sources): sort the list of files.
Sun Sep 14 15:49:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
PangoFontMetrics. Patch from Steve Chaplin (#122257).
2003-09-14 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
the usefulness of which was already in doubt. Removing it fixes
bugs #118575 and #121851.
Fri Sep 12 16:32:53 2003 Jonathan Blandford <jrb@redhat.com>
Merge from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
pressed button (used to determine if we want to initiate a drag later
on) if the current grab widget is either NULL or tree_view (Reported
by Jeroen Zwartepoorte).
2003-09-12 Matthias Clasen <maclas@gmx.de>
* gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
(gdk_draw_text_wc): Add deprecation notes. (#121955, Martin Pool)
2003-09-11 Matthias Clasen <maclas@gmx.de>
* gdk/gdkpango.c: Doc tweaks.
* tests/testgtk.c: Add table menu tests.
* gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the
GtkMenuPrivate struct itself. Pointed out by valgrind.
* gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up
properly. (#121998)
Wed Sep 10 22:25:04 2003 Kristian Rietveld <kris@gtk.org>
The table menu patch! Turns GtkMenu into a table, so you can attach
menu items in numerous new ways! Be creative!
Contains some bug fixes and RTL adaptions from Matthias Clasen.
* gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
GtkMenuPrivate, introduce AttachInfo, add child properties enum,
(gtk_menu_free_private), (gtk_menu_get_private): we have to free
the heights array in the private struct,
(gtk_menu_class_init): reorder code a bit, install child properties,
(get_attach_info), (get_child_attach): new utility functions,
(gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
child properties, for the attach info,
(gtk_menu_remove): remove AttachInfo from menu item,
(gtk_menu_real_insert): implemented algorithm to automagically place
inserted menu items at the correct place in the table,
(gtk_menu_size_request), (gtk_menu_size_allocate),
(compute_child_offset): reworked/rewritten to support table menus,
(gtk_menu_attach): new function,
(find_child_containing), (gtk_menu_move_current): new functions to
get table menu keynav right.
* gtk/gtkmenu.h: add gtk_menu_attach() prototype.
2003-09-10 Matthias Clasen <maclas@gmx.de>
* gtk/gtksocket.c (gtk_socket_filter_func): Only remove
PropertyNotify events from the stream if they have been handled,
in order to enable extending the plug<->socket communication via
properties.
Wed Sep 10 01:06:44 2003 Kristian Rietveld <kris@gtk.org>
Big TreeView DnD fixage, makes drops on empty models work, makes
TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
Related bugs #95362 and #113314. I don't want to touch this code
ever again.
* gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
* gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
for selection_data->length.
* gtk/gtktreeview.c (struct DestRow), (dest_row_free),
(set_dest_row), (get_dest_row): we don't store just the row ref
anymore, but a struct with the row ref and additional info,
(set_destination_row): handle drops on empty space and some
style fixes,
(get_logical_dest_row): also return path_down_mode/drop_append_mode
flags, handle dropping childs on their new parents, rewrite
drop append handling into something saner,
(gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
spaces,
(gtk_tree_view_drag_drop): updates for updated backend,
(gtk_tree_view_drag_data_received): updates for updated backend,
path down mode (treestore DnD) handling,
(gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
when we are trying to drop a row on an empty model,
(gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
* gtk/gtkliststore.c (gtk_list_store_drag_data_received),
(gtk_list_store_row_drop_possible): style and drop-append fixes.
* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
2003-09-08 Alexander Larsson <alexl@redhat.com>
* gtk/gtkeventbox.[hc]:
Implement gtk_event_box_get/set_input_only()
* tests/testgtk.c:
Tests for the new input only event boxes
Mon Sep 8 21:44:20 2003 Kristian Rietveld <kris@gtk.org>
Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
the call to gtk_tree_model_filter_add_root,
(gtk_tree_model_filter_row_changed): bail out if c_path is not above
the virtual root, allow building levels on the second try to convert
the child path to a filter path,
(gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
root when calling gtk_tree_model_filter_elt_get_path.
2003-09-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (update_node): Fix a C99ism. (#121640,
Josh Beam)
Fixes for accelerator handling during (un)merging:
* gtk/gtkuimanager.c (update_node): Move setting info-action
after the switch, since the old action is needed in some cases.
In cases of proxy type mismatch, disconnect the old proxy from
the old action.
* gtk/gtkaction.c (remove_proxy): Renamed from
gtk_action_remove_proxy(). Move unsetting of the accelerator
here from disconnect_proxy() in order to catch all cases of
removing a proxy.
(gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
to fail if proxy isn't a proxy of action.
2003-09-07 Pablo Saratxaga <pablo@mandrakesoft.com>
* configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
ALL_LINGUAS
2003-09-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c (disconnect_proxy): Make disconnect work
for toolitems.
2003-09-06 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from
prev_action, not from action. (Fix by David Hampton)
Fri Sep 5 14:15:10 2003 Owen Taylor <otaylor@redhat.com>
* Back out locale-dependent interpretation of
KP_Decimal, the official XFree86 interpretation
is that KP_Decimal => . KP_Separator => ,
always, independent of locale.
(#105161, Frederic Crozat,
http://bugs.xfree86.org/show_bug.cgi?id=534)
2003-09-04 Matthias Clasen <maclas@gmx.de>
* tests/testmerge.c: Test buttons and toggle buttons as proxies.
* gtk/gtktoggleaction.c (connect_proxy):
(gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note
that a "draw_as_radio" property is needed for check buttons similar to
check menu items, in order to fully support button proxies for radio actions.
* gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
* tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui().
* gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
'type' argument of gtk_ui_manager_add_ui().
* gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
to make this function as powerful as the XML methods of adding UI. (#120647)
Thu Sep 4 19:11:23 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* docs/RELEASE-HOWTO: updates.
2003-09-04 Matthias Clasen <maclas@gmx.de>
* tests/merge-2.ui: Use "position" instead of "pos".
* gtk/gtkuimanager.c (start_element_handler): No need
to be terse: Change the name of the "pos" attribute
to "position".
2003-09-04 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and
GtkUIManagerNode to shorten the names and to make the
GTK_UI_MANAGER_<TYPE> names available for a public enum.
* gtk/gtkactiongroup.c:
* gtk/gtkuimanager.c: Various doc tweaks.
* gtk/gtkuimanager.c (start_element_handler):
(end_element_handler): Improve error reporting.
Wed Sep 3 23:18:17 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
use end_position - page_size instead of G_MAXINT, since
gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
reported by Havoc Pennington).
Wed Sep 3 21:58:03 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
unref it. (Fixes memleak, patch from Kjartan Maraas).
Wed Sep 3 21:38:26 2003 Kristian Rietveld <kris@gtk.org>
* gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
gtk/gtktypeutils.h: big patch from Kjartan Maraas
to fix numerous typos.
Wed Sep 3 17:38:01 BST 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Correct compile line for threads example.
2003-09-02 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
CloseHandle() on the HMODULE returned from GetModuleHandle().
Didn't cause any harm, but didn't do anything useful either. When
running a GTK+ program under MS's debugger, the CloseHandle() call
would cause a "first-chance exception" in ntdll.dll to show up.
(The exception is caught appropriately if you let it proceed, but
it confuses the person using the debugger). Thanks to Bruce
Hochstetler for noticing.
Tue Sep 2 21:01:19 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
to only select when button 1 is pressed introduced in the fix of
bug #120187.
2003-09-02 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
* gtk/gtkuimanager.c: Shorten the names of some static
functions.
Support adding and removing merge nodes dynamically (#120647,
Anders Carlsson):
* gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
and made it public.
(gtk_ui_manager_add_ui): New function to add UI elements
without juggling XML fragments, currently restricted to menuitems,
toolitems and separators. Actions still come from registered
action groups.
Mon Sep 1 19:39:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
background pixmap was being offset twice, once by the ts_origin in
gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
2003-09-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
this public again, since it's occasionally useful. (#121128,
Marco Pesenti Gritti)
* gtk/gtkaction.c: Add an "is_important" property and propagate
it to toolitem proxies. (#121058, Marco Pesenti Gritti)
Mon Sep 1 00:32:30 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/testtoolbar.c (main): connect to "delete_event" so the
application will actually quit when you close the window
2003-09-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.c (gtk_ui_manager_get_widget)
(gtk_ui_manager_get_action): g_return_if_fail() if
path is NULL.
(gtk_ui_manager_get_node): Avoid a segfault if path is empty.
(gtk_ui_manager_finalize): Remove the idle on finalize. (#121125,
Marco Pesenti Gritti)
2003-08-31 Matthias Clasen <maclas@gmx.de>
* gtk/gtktoolitem.c: Fix some typos in docs.
* gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
replaces gtk_ui_manager_activate(). (#120658)
* tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
gtk_ui_manager_activate().
* gtk/gtkaction.c:
* gtk/gtkactiongroup.c: Some doc tweaks.
* gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
wasn't emitted anyway. Some doc tweaks.
2003-08-30 Matthias Clasen <maclas@gmx.de>
* tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
rather than to "remove" on handlebox.
* gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
activate an action found by following a path. (#120658)
* tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
* tests/testmerge.c (add_widget): Put toolbars in handleboxes.
* gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
setter and getter. If it is set, add tearoff menu items to regular
menus, but not to popups. Add a signal "changed", which gets emitted
when the merged ui has changed. (#120649, #120656)
* tests/testmerge.c: Add button to test the generation of tearoff
menu items.
2003-08-29 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
Actually group the actions together rather than putting each in its
own group.
* gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on
proxy menu items for radio actions.
* gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
Fri Aug 29 21:40:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
Fix use of uninitialized variable.
* gtk/gtktextutil.c
(_gtk_text_util_append_special_char_menuitems): add const cast to
get rid of warning
2003-08-29 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install
"draw_as_radio" as a separate property, not as an alias of
"inconsistent".
(gtk_check_menu_item_get_property):
(gtk_check_menu_item_set_property): Also support "draw_as_radio".
Fri Aug 29 20:32:07 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
are narrower than 13 time the estimated character width of the
font. (#107781, David Bordoley)
* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
here if the GtkToggleButton is active. This may be the case if it
is a radio button.
* gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
Suarez-Alvarez).
* gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
property. (#111207, David Bordoley).
* gtk/gtktoggletoolbutton.c
(gtk_toggle_tool_button_create_menu_proxy): use new
"draw_as_radio" property on the menu item when the item is a radio
tool button
* gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
to only pay attention to the "use_underline" property when the
button label comes from the "label" property.
2003-08-29 Laurent Dhima <laurenti@alblinux.net>
* configure.in: Added "sq" to ALL_LINGUAS.
2003-08-28 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
fix in the docs.
* gtk/gtkuimanager.c: Change the XML format:
<Root> element is replaced by <ui>,
<menu> element is replaced by <menubar>,
<submenu> element is replaced by <menu>,
<dockitem> element is replaced by <toolbar>,
<popups> element is gone,
verb attribute is replaced by action,
name defaults to action or the element name.
* gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by
GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified
by removing the user_data, entry_type and extra_data fields,
GtkRadioActionEntry is further simplified by removing the callback.
The user_data can now be specified as an argument to
gtk_action_group_add_actions(). There is a new method
gtk_action_group_add_radio_actions(), which is similar to
gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
and a callback parameter in addition to the user_data. The callback
is connected to the ::changed signal of the first group member.
There are _full() variants taking a GDestroyNotify of
gtk_action_group_add_[radio_]actions().
* gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted
on every member of the radio group when the active member is changed.
Add an integer property "value", and a getter for the value of "value"
on the currently active group member.
* tests/testactions.c:
* tests/testmerge.c:
* tests/merge-[123].ui:
* demos/gtk-demo/appwindow.c: Adjust to these changes.
* gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
2003-08-27 Anders Carlsson <andersca@gnome.org>
* demos/gtk-demo/appwindow.c (do_appwindow): Focus the
text view, so the tool bar won't have focus.
Tue Aug 26 09:57:38 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
declaration not at start of block. (#120371, Damien Carbery)
2003-08-26 Matthias Clasen <maclas@gmx.de>
* gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize
for length, not gsize.
* gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to
<ui> and make it optional in strings. Rename verb to action, <dockitem>
to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
* demos/gtk-demo/appwindow.c:
* tests/testactions.c:
* tests/testmerge.c:
* tests/merge-1.ui:
* tests/merge-2.ui:
* tests/merge-3.ui: Adjust to the new XML format.
Mon Aug 25 19:55:55 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_update_layout_width):
Since we add one to the layout's reported width to
account for the cursor, we need to subtract one when
setting the wrap width for the layout. (Fixes infinite
loop (#120325, Frederic Crozat)
* gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
Be a bit more careful about rounding when converting
wrapped width from Pango units to pixels.
2003-08-26 Matthias Clasen <maclas@gmx.de>
Rename GtkMenuMerge to GtkUIManager.
* gtk/gtkuimanager.[hc]: New files.
* gtk/gtkmenumerge.[hc]: Removed.
* gtk/Makefile.am:
* gtk/gtk.h:
* tests/testmerge.c:
* tests/testactions.c:
* demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by
GtkUIManager.
* demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating:
add comments to entries array, remove newlines from ui definition. Don't
use the ::add_widget signal.
Mon Aug 25 17:28:04 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_forall): Don't
include page->menu_label - causes various problems,
including #12047.
Mon Aug 25 23:21:43 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
Fixes #115871, reported by Michael Natterer.
* gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
added ctrl_pressed and shift_pressed bitfields,
(_gtk_tree_selection_internal_select_node): replace GdkModifierType
arg with GtkTreeSelectMode.
* gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
(gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
(_gtk_tree_selection_internal_select_node): all updated for
GdkModifierType -> GtkTreeSelectMode move.
* gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
and shift_pressed around selection handling block,
(gtk_tree_view_real_select_cursor_row),
(gtk_tree_view_real_toggle_cursor_row),
(gtk_tree_view_real_selection_cursor_parent),
(gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
instead of checking the event state. And also updates for the
GdkModifierType -> GtkTreeSelectMode move.
Wed Aug 20 21:26:49 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkplug.c (gtk_plug_focus): Send the focus on
to the parent when there was no focus widget before
and no focus widget after - that is, when there are
no focusable widgets. (#108678, help tracking it
down from Padraig O'Briain, Federico Mena Quintero, )
* gtk/gtkxembed.[ch]: Move various shared utilities
for the XEMBED protocol eused by GtkPlug and GtkSocket
here.
* gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
a flag bit that is sent with focus mesages to indicate
that the focus has wrapped around on the toplevel;
use this bit to catch infinite loops when there is no
focusable widget at ll in the entire toplevel.
* tests/testsocket.c (child_read_watch): Remove an
extraneous unref.
* gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
Up XEMBED protocol version to 1, add logic for
sending the right version in XEMBED_EMBEDDED_NOTIFY.
* gtk/gtksocket.c (gtk_socket_add_window): Send
the embedder window in the XEMBED_EMBEDDED_NOTIFY
as the spec requires.
Mon Aug 25 16:15:41 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkkeys-x11.c: Fix up CapsLock and
NumLock handling for non-XKB. Add a special case
hack for NumLock on Sun servers. (Patch from
Robert Basch, #115819)
2003-08-25 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten
Welinder)
* gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
gtk_action_group_set_translation_domain): Hooks for translation of
label and tooltip in GtkActionGroupEntries. (#120620)
2003-08-25 Matthias Clasen <maclas@gmx.de>
* gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
values properly. Sorry about the resize grip trouble, Owen. (#120621)
* gtk/gtkactiongroup.c:
* demos/gtk-demo/appwindow.c:
* tests/testmerge.c:
* tests/testactions.c: Use new GtkActionGroupEntryType enum.
Sun Aug 24 17:14:44 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtk.h: Remove reference to gtkresizegrip.h.
Sun Aug 24 17:03:44 2003 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am: Fix accidental commit of references
to gtkresizegrip.[ch]
Sun Aug 24 17:00:03 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c: Fix some missing initializations of
rc_file->directory.
2003-08-24 Matthias Clasen <maclas@gmx.de>
* gtk/gtkaction.[ch]:
* gtk/gtktoggleaction.[ch]:
* gtk/gtktoggleactionprivate.h:
* gtk/gtkradioaction.[ch]:
* gtk/gtkactiongroup.[ch]:
* gtk/gtkmenumerge.[ch]: A model-view separation for menus and
toolbars, using the EggMenu code by James Henstridge.
* gtk/gtk.h: Include new headers.
* gtk/Makefile.am: Add new files.
* tests/testactions.c: Test for actions.
* tests/testmerge.c: Test for menu merging.
* tests/merge-[123].ui: Test data for testmerge.
* tests/Makefile.am: Add testactions and testmerge.
* demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the
menubar and toolbar.
Sat Aug 23 21:40:18 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix
problem where rc_file->directory wasn't always getting
set. (#120549, Luis Villa)
2003-08-22 Christian Rose <menthos@menthos.com>
* configure.in: Added "ne" to ALL_LINGUAS.
Thu Aug 21 16:00:36 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c: Keep a list of current GtkRcFiles
being parsed, not just the directories for those
files. Use that to catch recursion. (Part of
#114988)
Thu Aug 21 21:27:45 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
Fix option menu scrolling (#119821, Owen Taylor).
* gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
by #80484 and the CLAMP,
(get_menu_height): new function,
(gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
new_offset to handle page up/down right.
Thu Aug 21 15:17:42 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkkeys-x11.c: Change the interpretation
of consumed_modifiers so that it contains:
- Modifiers combinations actually found in
state.
- Single modifier modifier combinations.
But not multi-modifier combinations that aren't
in event->state. Document. (#100439)
Thu Aug 21 20:53:46 2003 Kristian Rietveld <kris@gtk.org>
Slightly modified patch from Yann Rouillard to improve selection
behavior with the mouse. Fixes #120187.
* gtk/gtktreeview.c (gtk_tree_view_button_press): only
select/deselect items on the first button press of button 1,
expand checks for row_activated to include triple clicks.
Thu Aug 21 01:33:51 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
approximate digit widths up, to avoid truncation, convert to
pango pixels when we have the full string width instead of converting
the approx digit width to pango pixels, take inner border and
interior focus into account correctly. (Fixes #116368, patch from
Morten Welinder).
2003-08-20 Noah Levitt <nlevitt@columbia.edu>
* gtk/queryimmodules.c: Don't look at the same directory twice (in
simple cases). (#120342)
Wed Aug 20 22:04:47 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkwindow.c: Make the layers in the paint stack have their
own pixmap instead of sharing one. (#118317)
* tests/testgtk.c (create_get_image): Fixes to make the window fit
on an 800x600 screen
Wed Aug 20 22:03:25 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtkspinbutton.c (start_spinning): change the type of step
to gdouble, since it gets it's data from a gdouble (Fixes #113547).
Mon Aug 18 17:19:12 2003 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.[ch]: Substantially
rework the handling of status windows:
- Store the current StatusWindow in the
GtkIMContextXIM structure and vice-versa, so we
don't have to hunt the window hierarchy on
cleanup.
- Use the Gtkidget hierarchy instead of/or as well
as the GdkWindow hierarchy when finding the toplevel;
this helps for things like GtkHandlebox
- Watch GtkWidget::hierarchy_changed to catch
changes in the toplevel without changes in the
GdkWindow (reparenting)
- Never create the GtkWindow for the status window
unless we have text to display.
- Various cleanups, add lots of comments.
(#115077, much help from Takuro Ashie and Hidetoshi
Tajima in tracking this down and figuring out a fix.)
* modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in):
* modules/input/gtkimcontextxim.c: Track the current
screen for each toplevel so that we show the status
window on the right screen. (#116340, James Su)
* modules/input/gtkimcontextxim.c: If create a new IC
when we currently have the focus, call XSetICFocus()
on it.
* modules/input/gtkimcontextxim.c (get_im): Fix bug
with multiple open screens.
Tue Aug 19 14:37:46 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext):
Replace client_window field with 'priv' pointer,
retaining binary compatibility.
* gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
save use_preedit/cursor_location/focus status and set
up the new slave appropriately. (#118651, Botond Botyanszki)
Tue Aug 19 13:58:50 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
Don't use impl->position_info.clip_rect for toplevels.
(#107068, reported by Thomas Mirlacher)
Mon Aug 18 11:48:51 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c (convert_to_format):
Add a fallback for unaligned source data for
FORMAT_ARGB_MASK. (#117217)
Mon Aug 18 10:51:57 2003 Owen Taylor <otaylor@redhat.com>
* configure.in: Rework handling of REBUILD_PNGS,
so that we also don't try to REBUILD_PNGS when
cross-compiling and there is no gdk-pixbuf-csource.
But give an error if gtk/stock-icons/gtkstockpixbufs.h
is not in the source tree. (Note that REBUILDS_PNG
was set backwards before, which is why you always
had to manually recreate gtkstockpixbufs.h!)
Mon Aug 18 10:19:55 2003 Owen Taylor <otaylor@redhat.com>
* gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
path to libgtk.la. (#120080, Benedikt Spranger)
Sat Aug 16 10:34:49 2003 Owen Taylor <otaylor@redhat.com>
* modules/input/imcedilla.c: Make the list of default
languages more comprehensive. (Suggestion of
Fco. Javier F. Serrador)
Sat Aug 9 12:47:11 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdk.c (gdk_arg_context_parse): Fix broken
parentheses when skipping args.
Sat Aug 16 16:22:23 2003 Kristian Rietveld <kris@gtk.org>
Fix major bug in row ref handling, so the new combo box
will actually work right (:. Bug #107748. Patch written
with help from Tim Janik.
The basic idea is to update the row refs in a closure,
before the actual signal is emitted (rather than having
the model connect signal handlers).
* gtk/gtktreemodel.c (gtk_tree_model_base_init): change
g_signal_new calls for row_inserted, row_deleted and
rows_reordered to use the new marshallers,
(row_inserted_marshall), (row_deleted_marshall),
(rows_reordered_marshall): the new marshallers,
(gtk_tree_row_ref_inserted_callback): renamed to
gtk_tree_row_ref_inserted since it isn't a callback
anymore and gets called by the marshaller now,
(gtk_tree_row_ref_deleted_callback): likewise,
(gtk_tree_row_ref_reordered_callback): likewise,
(connect_ref_callbacks), (disconnect_ref_callbacks):
removed,
(gtk_tree_row_reference_new_proxy),
(gtk_tree_row_reference_free),
(gtk_tree_row_reference_inserted),
(gtk_tree_row_reference_deleted),
(gtk_tree_row_reference_reordered): updated.
Fri Aug 15 16:54:39 2003 Owen Taylor <otaylor@redhat.com>
Improve Cedilla handling - based on a patch from Gustavo
De Nardin, #111334
* modules/input/imcedilla.c po/POTFILES.in: Input method that
produces C_WITH_CEDILLA rather than C_WITH_ACUTE for
dead_acute+c combinations. Make this the default for
fr and pt.
* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
Use LC_CTYPE instead of LC_MESSAGES to pick the default
input method.
Fri Aug 15 17:00:19 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimcontextsimple.c: Fix missing compose sequence
for Multi_key+c+apostrophe.
Fri Aug 15 21:57:34 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
on vertical scrolling. (#108035, reported by Tim Janik).
Fri Aug 15 20:06:42 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
(gtk_tree_model_sort_level_find_insert),
(gtk_tree_model_sort_insert_value): fix off-by-one error.
(#109292 continued, patch from Yann Rouillard).
Fri Aug 15 19:43:14 2003 Kristian Rietveld <kris@gtk.org>
(Note: This is not exactly the same as the patch which went in
gtk-2-2).
* gtk/gtktreeview.c (gtk_tree_view_class_init),
(gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
Also support the up, down, left, right, home, end, page up and
page down keys on the numpad. (#119419, reported by Alex Larsson).
Fri Aug 15 12:34:04 2003 Owen Taylor <otaylor@redhat.com>
Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
* configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
we link libgtk against X explicitely, since we
make GTK+ calls for plug/socket.
* gtk/queryimmodules.c: Use USE_LA_MODULES and
G_MODULE_SUFFIX here.
* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
XShmPutImage with #ifdef USE_SHM.
Thu Aug 14 18:25:39 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (gtk_file_selection_populate):
Don't reposition the cursor when we aren't trying
to complete. (Fixes problems with selection on
startup, #108433, reported by Mark Finlay.)
* gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
code that tried to position the cursor after the common
prefix when there was one, it wasn't working, and
would be hard to fix. Just always put the cursor
at the end when completing.
Thu Aug 14 17:58:23 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (get_current_dir_utf8): If getting
the current directory fails because of encoding
conversion problems, walk up textually to parent
directories until we can convert. (#113627)
Wed Aug 13 17:01:49 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
Remove usage of menu_shell->ignore leave which was
to deal with stray events we no longer get because
we do grabbing differently. Comment it as unused in
the header. (#115837, Keith Bissett)
Wed Aug 13 16:32:43 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request):
Fix some places that weren't properly Xinerama-ified.
* gtk/gtkmenu.c: Fix problem with windows that scroll
at the top of the screen.
Wed Aug 13 11:34:53 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcombo.c (gtk_combo_init): connect_after() to
key-press-event on the entry, so input methods get access to
key presses before GtkCombo customization.
(#115451, Botond Botyanszki)
2003-08-13 Anders Carlsson <andersca@gnome.org>
* tests/testtoolbar.c: (set_important_func), (important_toggled),
(create_items_list):
Add an important column.
Tue Aug 12 15:00:15 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
against reentrancy from ::focus-out handlers.
(#118129, Felipe Heidrich)
Tue Aug 12 14:27:42 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
GDK_LOCK_MASK before calling
gdk_keymap_translate_keyboard_state so bindings
and accelerators are independent of the Caps-lock
key. (#115384, reported by Toni Willberg)
Mon Aug 11 12:07:14 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (get_real_window): Add missing
break statements (#119494, Soeren Sandmann)
Mon Aug 11 11:10:07 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.h: Mark parent public as well; it's
extensively accessed in existing code, so there is
no advantage in making people use get_parent().
(Tweak to #119463 fix)
2003-08-11 Matthias Clasen <maclas@gmx.de>
Add support for EWMH "Above" and "Below" window states. (105100,
Manuel Clos)
* tests/testgtk.c: Add "Above" and "Below" to the the "Window
State" demo.
* gtk/gtkwindow.h: Add gtk_window_set_keep_above and
gtk_window_set_keep_below.
* gtk/gtk.def: Add gtk_window_set_keep_above and
gtk_window_set_keep_below.
* gtk/gtkwindow.c (gtk_window_set_keep_below):
(gtk_window_set_keep_above): New functions, call the corresponding
gdk functions.
* gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
function, sets _NET_WM_STATE_BELOW.
(gdk_window_set_keep_above): New function, sets
_NET_WM_STATE_ABOVE.
* gdk/gdkwindow.h: Add gdk_window_set_keep_above and
gdk_window_set_keep_below.
* gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
GDK_WINDOW_STATE_BELOW.
* gdk/gdk.def: Add gdk_window_set_keep_above and
gdk_window_set_keep_below.
* acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
xmlcatalog in PATH. (#119115)
2003-08-10 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
public. (#119463)
2003-08-09 Noah Levitt <nlevitt@columbia.edu>
* gdk/gdkevents.h:
* docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
docs on GdkFilterFunc and GdkFilterReturn.
2003-08-09 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcalendar.c: Add and hook in gtk_calendar_scroll,
to let the mouse wheels select the month. Scrolling down
moves forward in time. (#53134, Abigail Brady)
* gtk/gtkcalendar.c: Complete the RTL flipping support for
GtkCalendar, make it possible to flip the headings using the
"magic translated string" technique. Translators, note the
comment in gtk_calendar_init() explaining this. (#102416)
* gtk/gtkcalendar.c: Get the information about the first day of
the week from the locale using another instance of the "magic
translated string" technique. Ignore the display option
GTK_CALENDAR_WEEK_START_MONDAY with a warning. (#87977)
* gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
date is dragged as text, formatted via strftime %x. Text drops are
accepted if g_date_set_parse() can make sense of the text. A
dedicated data format for date DND has not been introduced yet,
since there didn't seem to be sufficient consensus on such a
format on xdg-list. (#117297)
2003-08-08 Matthias Clasen <maclas@gmx.de>
* gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
Fix a segfault. (#115284, Jan Kratochvil)
2003-08-08 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (print_event): Print also the root
coordinates for events that have such. Print coordinates for enter
and leave events.
(gdk_event_translate): Don't use event uninitialixed in the
return_exposes branch of the WM_PAINT handler.
* gdk/win32/gdkwindow-win32.c (gdk_window_new,
_gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer):
Must offset top-level window coordinates here, too.
2003-08-08 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
when maximized or fullscreen.
2003-08-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkinput-win32.h
* gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
_gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
used.
* gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
accordingly, in fact an uninitialised variable was dereferenced.
[Win32] Add support for multiple monitors.
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkglobals-win32.c: New global variables for
multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
_gdk_offset_x and _gdk_offset_y.
* gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
functions, enumeration functions passed to EnumDisplayMonitors().
(gdk_display_open): If the EnumDisplayMonitors() and
GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
if to find out monitor info.
Calculate the offset between Win32 coordinates (relative to the
primary monitor's origin (and thus negative on monitors to the
left of or above it), and GDK's (visible coordinates should be
non-negative).
* gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
gdk_screen_get_monitor_geometry): Use information collected above.
(gdk_window_move, gdk_window_move_resize_window_get_geometry):
Subtract _gdk_offset_{x,y} from GDK root window coordinates.
(gdk_window_get_geometry, gdk_window_get_origin,
gdk_window_get_frame_extents): For top-level windows, add
_gdk_offset_{x,y} to GDK root window coordinates
Still need to handle multiple monitors in
gdk_window_fullscreen(). Probably should make the window
fullscreen on the monitor where the cursor is?
* gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
root window coordinates in GdkEvents.
[Win32] Fix geometry hint handling. Add support for resize
increment and base size, and aspect ratio geometry hints. The
"gridded geometry" test in testgtk now works beautifully.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
Turns out this function shouldn't actually ever modify the
window's size, just store the hints. (Old code kept for a while
inside #if 0.)
(gdk_window_set_hints): Remove presumably broken code that handles
the position hints, this function is obsolete anyway.
* gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
variables, not used.
(adjust_drag): New function, used to implement resize increment
hints.
(gdk_event_translate): Handle WM_SIZING, implement resize
increment and base size, and aspect ratio geometry hints here. The
WM_GETMINMAXINFO handler takes care of the minimum and maximum
size hints as before. Fix the WM_GETMINMAXINFO handler to take
into account window decorations. No need to modify the
ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
the defaults are fine.
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
_gdk_win32_get_adjusted_client_rect): New helper functions.
2003-08-07 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
toplevel->have_* flags before iterating over the _NET_WM_STATE
atoms. (#119217)
Thu Aug 7 16:49:29 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_style_internal):
Fix a bug where on theme change, resize/redraw wasn't
properly getting queued on toplevel windows. (#116346,
Rajkumar Siva)
* gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
Fix bug where wrong coordinates were used for toplevel
window.
Thu Aug 7 16:40:21 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
page_num variable (Archit Baweja)
2003-08-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
cope with C libraries with crippled locale support. (#115293)
2003-08-07 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
(only if the new window not known to Gdk) to get proper
leave notification, and get rid of the wrong placed
tooltips, bug #102283
(gdk_event_translate) : small code reordering to not get
GDK_MOTION_NOTIFY for still mouse and get back tooltips on
menus, bug #117367
2003-08-07 Tor Lillqvist <tml@iki.fi>
* gdk/gdk.def
* gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
missing function, trivially implement.
2003-08-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtkctree.c (draw_row): Don't cut descenders when
rendering. (#118646, Charles Kerr)
2003-08-06 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
initialize bits to 0 (probably default on NT)
* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
now it works as intended ;-)
2003-08-04 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
* gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
(gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
against all expectations it is basically ony a call with WM_SETICON
needed (the visual effect is there, though colors or mask are
still somewhat wrong).
* gdk/win32/gdkwindow-win32.h : place to store the HICON
* gdk/win32/gdkdrawabke.win32.c : readded the conditional end
pixel drawing as it was fixed at 1999-08-23
gtk/gtk.def : updated
Tue Aug 5 10:07:08 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmessagedialog.c (gtk_message_dialog_get_property):
Add a missing break. (#119156, Callum McKenzie)
Tue Aug 5 00:24:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c (gtk_menu_position): New positioning
algorithm.(#116649)
Fri Aug 1 15:26:46 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
property
* gtk/gtkradiotoolbutton.c
(gtk_radio_tool_button_new_from_widget): Don't take a stock id
* gtk/gtkradiotoolbutton.c
(gtk_radio_tool_button_new_with_stock_from_widget): make this
function take a stock_id.
* gtk/toolbar: documentation
Mon Aug 4 14:53:46 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init):
Fix problem where use_xshm was getting set wrong if
MIT_SHM wasn't found. (George Lebel)
2003-08-04 Tor Lillqvist <tml@iki.fi
* gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
actually use the passed-in filter list. The function also needs a
GdkWindow parameter, as filter functions expect
GdkEvent::any.window to be valid. (#119034, Hans Breuer)
2003-08-03 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors):
(gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
the term "virtual screen". (#119030, Tor Lillqvist)
2003-08-02 Matthias Clasen <maclas@gmx.de>
* tests/testtext.c (test_init):
* tests/testgtk.c (test_init):
* tests/testdnd.c (test_init):
* demos/pixbuf-init.c (pixbuf_init):
* demos/gtk-demo/main.c (main): Use g_setenv().
* gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
g_unsetenv().
Sat Aug 2 12:53:16 2003 Owen Taylor <otaylor@redhat.com>
* configure.in: Requires glib-2.3.0, pango-1.2.0.
* configure.in: Require Xft version 2,
remove code for handling older versions of pango and Xft.
Many miscellaneous improvements to X checks
* acinclude.m4: Add GTK_ADD_LIB() macro for adding
a library to a variable, avoiding dups.
* gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
Always load "fixed"
* gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
for pangox.
2003-08-02 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcolorsel.c (color_sample_drop_handle)
(palette_drop_handle):
* gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received): Accept
drops with the wrong format, since the KDE color chooser incorrectly
drops application/x-color with format 8. (#118810)
* gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle):
* gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):
Accept drops with the wrong format, since the KDE color chooser
incorrectly drops application/x-color with format 8. (#118810)
2003-08-02 Tor Lillqvist <tml@iki.fi>
Fix gdk/win32 window geometry handling again. The window position
in a GDK_CONFIGURE event should be that of the client area, not of
the window decorations. (I was confused by the term "window
border" in X11. It does *not* mean the window manager
decorations. There are no X11-style window borders in Win32.)
Also, this time do take the geometry hints into account
appropriately when moving windows. Now testgtk's gravity test's
move buttons work OK. There are stil problems with taking gravity
into account when showing a hidden window.
* gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
instead of separate fields.
* gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
adjust for decorations.
* gdk/win32/gdkwindow-win32.c (get_outer_rect,
adjust_for_gravity_hints): New functions.
(gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
above functions, take geometry hints into account.
(gdk_window_set_geometry_hints): Size hints specicy client area,
not including decorations.
Fri Aug 1 17:10:22 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (cmpl_completion_fullname): Always
return an absolute path (#115590), fix a problem where
you could crash the file selector with a looong name
by returning a newly allocated buffer.
Fri Aug 1 16:44:51 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
bug in rarely or never hit code path (#118071,
Tor Lillqvist)
Fri Aug 1 16:30:13 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render):
If the check for missing depths, try actually creating pixmaps
of the depths to deal with Xinerama not reporting
all the depths it should. (#115822)
Fri Aug 1 15:33:59 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c: Patch from Denis Mikhalkin to
forward KeyRelease events as well as KeyPress events.
(#115597)
Fri Aug 1 15:06:25 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
if argc is 0 as well, instead of leaving it unset.
(#116023, Michael Meeks)
Thu Jul 31 23:09:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
default to TRUE; ignore the property when api_mode != NEW_API
2003-07-31 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
to icon, to pacify gtk-doc.
* gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion
example.
Thu Jul 31 15:33:33 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
Thu Jul 31 15:29:28 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
overflow_item field.
Wed Jul 30 21:11:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
an internal function
* gtk/gtktoolitem.h: remove unused declaration of
_gtk_tool_item_get_drag_window().
Wed Jul 30 17:03:58 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.[ch]:
(gtk_tool_button_new): swap icon_widget and label arguments to
match BonoboUIToolbarButton.
* gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
2003-07-30 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
signal docs.
2003-07-29 Tor Lillqvist <tml@iki.fi>
Fix for #108007, #112402, #117042: There was confusion in
gdk/win32 at various places whether a window position refers to
the decoration position or the client area position. Also whether
window size includes decorations or not.
The correct interpretation apparently is that in GDK (like in
X11), a top-level window position means the decoration's position,
but size means the window's inner size (client area size). In the
Win32 API, the window size usually includes the decorations,
though.
* gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
#ifdef G_ENABLE_DEBUG.
(handle_configure_event): New function, generates GDK_CONFIGURE
events from WM_SIZE and WM_MOVE messages. Even if no event is
generated because of the event mask, still set the private
position and size fields. Calculate position and size correctly.
(gdk_event_translate): Call handle_configure_event().
* gdk/win32/gdkgeometry-win32.c: Cosmetics.
* gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
macros. Cosmetic debugging output changes.
(SafeAdjustWindowRectEx): Remove. If an application wants to
locate a window outside of the screen, it's not GDK's business to
prevent it. And anyway, with multiple monitors, negative
coordinates are perfectly normal.
(gdk_window_new): Adjust the window size for decorations after
_gdk_window_init_position() has done its job. (But the big window
code currently is presumably broken on Win32 anyway.)
(gdk_window_move): The position passed in is supposed to be that
of the window border, so don't need to adjust for decorations.
(gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
Tue Jul 29 13:55:44 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c (gtk_toolbar_set_style,
gtk_toolbar_prepend_element, gtk_toolbar_append_element,
gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
gtk_toolbar_append_space, gtk_toolbar_insert_item,
gtk_toolbar_prepend_item, gtk_toolbar_append_item,
gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
gtk_toolbar_new, gtk_toolbar_prepend_item):
Move documentation inline from template files.
* gtk/gtktoolbar.c (gtk_toolbar_insert_element,
gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
gtk_toolbar_append_widget, gtk_toolbar_remove_space,
gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
gtk_toolbar_get_style, gtk_toolbar_get_orientation)
Copy documentation from stable that was added after the EggToolbar
branched.
* gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
Mon Jul 28 18:21:34 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk+/docs/: Commit autogenerated changes, so patches will make
sense.
2003-07-27 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
the keyboard state returned by GetKeyboardState() doesn't
distinguish between the left and right Control and Alt keys. Thus
we cannot detect AltGr (which is supposed to be left Control +
right Alt) the same way as on NT-based systems, but have to accept
either Control + either Alt as AltGr.
2003-07-27 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
Fix function name in warning message. (#118156, Tim-Philipp
Mller)
* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
is-expander and is-expanded are boolean properties, not ints.
(#118359, Josh Parsons)
Sat Jul 26 15:21:27 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkimagemenuitem.c
(gtk_image_menu_item_toggle_size_request): don't request
toggle_space when the image width is 0.
2003-07-25 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkprivate-win32.h
* gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
and _gdk_keyboard_has_altgr.
* gdk/win32/gdkevents-win32.c: Lots of changes. Most important
ones detailled here.
Code that has been ifdeffed out for a long time removed. Remove
some really old doc comments that were left behind for some public
functions, the official ones are in the X11 backend anyway. Change
GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
multi-line boolean expressions to have the operators at ends of
lines.
As mouse capture with SetCapture() indeed seems to work OK, no
need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
Ifdef out the gdk-ping-msg stuff. I don't remember why it was
needed at some time, and things seem to work fine now without
(knock on wood).
Ifdef out the search for some Latin locale keyboard layout being
loaded. Not used currently, but might be needed after all, if we
decide that we want to be able to generate ASCII control character
events with a non-Latin keyboard.
(assign_object): New helper function, handles the g_object_ref()
and unref() calls when assigning GObject pointers.
(generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
enter event when the pointer has moved to an ancestor window. Was
left out by mistake.
(gdk_window_is_ancestor): Renamed from gdk_window_is_child().
(gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
functionality, using ClipCursor().
(find_window_for_mouse_event): Splice part of code into new
function find_real_window_for_grabbed_mouse_event().
(fixup_event, append_event, apply_filters): New functions, code
refactored out from elsewhere.
(synthesize_enter_or_leave_event, synthesize_leave_event,
synthesize_enter_event,
synthesize_leave_events,synthesize_enter_events): Also take a
GdkCrossingMode parameter, in preparation to generating
GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
(fixup_event, append_event, fill_key_event_string): New functions,
code refactoring.
(vk_from_char, build_keypress_event, build_keyrelease_event):
Removed as part of dropping WM_CHAR handling.
(build_key_event_state,gdk_event_translate): Call
GetKeyboardState(), once, for each keyboard message, instead of
several calls to GetKeyState() here and there.
(gdk_event_translate): Fix bugs #104516, #104662, #115902. While
at it, do some major refactoring, and some fixes for potential
problems noticed while going through the code.
Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
WM_KEYUP. Don't need the state variables related to whether to
wait for WM_CHAR or not, and whether the current key is
AltGr. Remove lots of complexity. Thus don't need the
use_ime_composition flag.
Not handling WM_CHAR means dead key handling will have to be taken
care of by GTK, but that seems to work fine, so no worry.
Another side-effect is that Alt+keypad digits don't work any
longer, but it's better to learn to use GTK's ISO14755 support is
anyway.
Be more careful in checking whether AltGr is involved. Only
attempt to handle it if the keyboard actually has it. And
explicitly check for *left* Control plus *right* Alt being
pressed. Still, allow (left) Alt and/or (right) Control with AltGr
chars.
Handle keys using similar code as in the X11 backend. As we have
built a keymap in gdkkeys-win32.c anyway, use it by calling
gdk_keymap_translate_keyboard_state() to look up the keysym from
the virtual key code and keyboard state. Build the key event
string in exactly the same way as the X11 backend.
If an IME is being used, don't generate GDK events for keys
between receiving WM_IME_STARTCOMPOSITION and
WM_IME_ENDCOMPOSITION, as those keys are for the IME.
For WM_IME_COMPOSITION, handle all the Unicode chars returned from
the IME, not just the first one.
gdk_event_translate() is still quite complex, could split the
message handler cases out into separate functions.
On mouse events, when the mouse is grabbed, use
find_real_window_for_grabbed_mouse_event() in order to be able to
generate correct crossing events.
No longer take a pre-allocated GdkEvent as parameter. Instead,
allocate events as needed and append them to the queue. (This is
different from how gdk_event_translate() in the X11 backend
works.) This change made the code much clearer, especially in the
cases where we have to generate several GDK events for one Windows
message. Return FALSE if DefWindowProc() should be called, TRUE
if not. If DefWindowProc() should not be called, also return the
value to be returned from the window procedure.
(Previously, the interaction with gdk_event_translate()'s caller
was much more complex, when we had to indicate whether the
already-queued event should be left in the queue or removed, and
in addition also had to indicate whether to call DefWindowProc()
or not, and what value to return from the window procedure if
not.)
Don't use a separate "private" variable required to be pointing to
the GdkWindowObject of the "window" variable at all times. Just
use casts, even if looks a bit uglier.
Notice destroyed windows as early as possible, and break out of
the messsage switch.
Use _gdk_pointer_root as current_window when the pointer is
outside GDK's top-level windows.
On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
appropriate, based on ImmIsIME().
(gdk_event_translate, gdk_event_send_client_message_for_display,
gdk_screen_broadcast_client_message): Implement client messages.
Use a registered Windows message to pass GDK client messages. Note
that the amount of user data is restricted to four bytes, as it is
carried in the LPARAM. (The WPARAM is used for the message type
"atom".)
(real_window_procedure): Adapt for new gdk_event_translate()
interface.
* gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
_gdk_input_locale_is_ime initially.
* gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
of g_colormap_ref()/unref().
(gdk_window_new): Made code a bit more like the X11 one, pretend
to handle screens (although we just have one for now).
* gdk/x11/gdkevents-x11.c
(gdk_event_send_client_message_for_display,
gdk_screen_broadcast_client_message): Document the user data
limitation on Win32.
* gdk/win32/gdkevents-win32.c (print_event): More complete enter
and leave notify detail output.
* gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
for those, so that the GtkIMContextCimple compose tables will
work. Deduce if the keyboard layout has the AltGr key, and set the
above flag accordingly.
2003-07-26 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c: Document DND signals.
2003-07-24 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
insensitive when editing isn't possible. (#118150)
2003-07-23 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue
spinbutton wrap. (#118097, John Darrington)
* docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps.
2003-07-20 Hans Breuer <hans@breuer.org>
* makefile.msc : new file to build it all
* Makefile.am : ... added to EXTRA_DIST
* gdk/makefile.msc gtk/stock-icons/makefile.msc
gtk/makefile.msc.in tests/makefile.msc : updated
* gdk/gdk.def gtk/gtk.def : export a bunch of new
functions
* gtk/gtkbbox.c : use g_return_val_if_fail() if
there is a value to return
* gtk/gtkfontsel.c gtk/gtkiconfactory.c :
static correctness
* gtk/gtkicontheme.c : ported to use GTimeVal instead of
struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
* gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
* gtk/gtkimmulticontext.c : use gtkprivate.h
* gtk/stock-icons/stock_color_picker_25.png
gtk/stock-icons/stock_jump_to_rtl_16.png
gtk/stock-icons/stock_jump_to_rtl_24.png
gtk/stock-icons/stock_redo_rtl_16.png
gtk/stock-icons/stock_redo_rtl_24.png
gtk/stock-icons/stock_undelete_rtl_16.png
gtk/stock-icons/stock_undelete_rtl_24.png
gtk/stock-icons/stock_undo_rtl_16.png :
gtk/stock-icons/stock_undo_rtl_24.png :
readded as binary
Sat Jul 19 22:39:24 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
leftover request of {xy}thickness
Sat Jul 19 16:26:02 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
attempt to add a NULL icon to the box.
Sat Jul 19 12:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
on focus in/out.
2003-07-19 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id.
* gtk/gtkiconfactory.c (get_default_icons): Add
stock_dialog_authentication_48. (#65765)
* gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
* gtk/stock-icons/stock_dialog_authentication_48.png: New image.
* gtk/gtkbbox.h:
* gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
function. (#64562)
Sat Jul 19 00:18:40 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
declaration
* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
(gtk_widget_real_focus_{in|out}_event): queue shallow draws
instead of full draws.
2003-07-18 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c: Add properties decorated and gravity. (#80234)
* gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
signal, move_viewport.
(gtk_text_view_move_viewport): New function which implements the
move_viewport functionality.
(gtk_text_view_move_cursor_internal): If the cursor is not visible, move
the viewport. (#78669)
* gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
move_viewport argument.
* gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
property. (#111779)
* gtk/gtkwindow.h:
* gtk/gtkwindow.c (gtk_window_set_default_icon): New method. (#95816)
* gtk/gtkmessagedialog.h:
* gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
(#65501, Sebastian Rittau)
Fri Jul 18 20:06:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktextview.c (changed_handler): use
gtk_widget_queue_resize_noredraw().
2003-07-16 Jody Goldberg <jody@gnome.org>
* gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
Fri Jul 18 19:55:50 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
API.
Fri Jul 18 18:43:01 2003 Soeren Sandmann <sandmann@daimi.au.dk>
By popular request give toolbuttons a border.
* gtk/gtktoolitem.c
(gtk_tool_item_size_allocate):
(gtk_tool_item_size_request): don't request and allocate a border
around the child
* gtk/gtktoolbutton.c
(gtk_tool_button_size_allocate):
(gtk_tool_button_size_request): remove these functions
* gtk/gtktoolbar.c
(gtk_toolbar_size_request):
(gtk_toolbar_size_allocate): request and allocate a border if we
have a shadow.
Thu Jul 17 19:24:51 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
Fixes issues pointed out by Morten Welinder in #115140.
* gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
(do_validate_rows): update validated_area with a logic OR instead
of a bitwise OR,
(validate_rows_handler): make the if statement match the one in
validate_rows(), so we don't leak the timeout.
Thu Jul 17 19:12:02 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
should only grab focus back if the "cell_editable" widget still
has focus. (Fixes #110104, testcase provided by Marco Pesenti
Gritti).
Thu Jul 17 19:06:34 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
Don't set attr.event_mask twice, those things were meant to be
ORred. (#115139, pointed out by Morten Welinder).
Thu Jul 17 16:11:21 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
if needed. (Fixes #115869, reported by Michael Natterer).
2003-07-15 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
Fight against gtk-doc stupidity.
2003-07-13 Matthias Clasen <maclas@gmx.de>
* gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to
targets, to pacify gtk-doc.
Sun Jul 13 15:57:57 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
label_text, label_widget and icon_widget. (#117312,
Christian Persch)
Sun Jul 13 01:37:51 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c (gtk_menu_class_init): new properties
"horizontal-offset" and "vertical-offset" that determines the
position of the menu when it is a submenu.
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
submenus according to new vertical- and horizontal-offset
properties.
Sat Jul 12 16:16:04 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
case drags to "0", scroll to the top after dropping. (Fixes #94968,
reported by Alp Toker).
Sat Jul 12 16:08:32 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
code (#115784, Owen Taylor).
Sat Jul 12 16:01:03 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
free the old text and extra_attrs *after* we parsed the new
markup string. (Fixes #114485, reported by Owen Taylor).
Sat Jul 12 15:51:33 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
Fixes #113904, testcase provided by Rene Seindal.
* gtk/gtktreeview.c (gtk_tree_view_button_press): set
pressed_button to -1 when a row has been activated,
(gtk_tree_view_motion_bin_window): only start a drag if there's
a button being pressed.
Sat Jul 12 15:51:18 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
to avoid a roundtrip (#110272, Owen Taylor).
Sat Jul 12 15:28:26 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
This patch really really fixes scrolling. Related bugs: #81627,
testcase provided by Timo Sirainen, #111500, testcase provided by
manu, #113241, reported by Pedro Gimeno/Michael Natterer.
* gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
which is equal to the lower border of the window means scrolling
to an invisible row, always update the dy when scrolling to an
invisible row, corrected area_above/below calculations for
invisible rows, when walking the tree correct the size
subtracted for invalidated rows, fix wrong logic in comment.
2003-07-11 Matthias Clasen <maclas@gmx.de>
* gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
mime_types. (#117219, Steve Chaplin)
Tue Jul 8 20:11:04 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (get_real_window)
gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
Don't assume that all events start with XEventAny - Xkb events
don't! (#105745). So, only do that for core events, and for
non-core events, add a system for registering event types
that start with XEventAny.
* gdk/x11/gdkevents-x11.c (gdk_event_translate):
Check to see if the result of gdk_window_lookup_for_display()
is actually a window.
Fri Jul 11 20:48:14 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
check a silent assert, so it follows the g_free() behaviour.
2003-07-11 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents
vertically. (#109823, Joe Shaw)
2003-07-11 Morten Welinder <terra@gnome.org>
* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
access error. (#69436)
Fri Jul 11 14:32:43 2003 Kristian Rietveld <kris@gtk.org>
Landing GtkTreeModelFilter and the completion code. (Test program
and documentation will follow next week).
* gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
* gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
necessary code to hook up completion.
* gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
GtkCellLayout interface.
* gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
* gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
source files.
Wed Jul 9 19:48:26 2003 Kristian Rietveld <kris@gtk.org>
Merge from stable.
* gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
directly return from ->window_at_pointer, but set win_x and win_y
first if needed. (Fixes #110166, reported by Arno Charlet).
* gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
function to accept GdkDrawables and not just GdkWindows. This was
already done in some other functions a while back, but this patch
got lost for some reason.
2003-07-09 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
direction when sorting children. (#116540, Soeren Sandmann)
Tue Jul 8 17:36:21 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c:
Change _gdk_x11_send_xevent_async() to
_gdk_x11_send_client_message_async() avoid using Xlib
internals that are different on Solaris.
(#116917, Morten Welinder)
2003-07-08 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
(#116501, Doug Quale)
Tue Jul 8 21:35:22 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoggletoolbutton.h: remove strange #define
* gtk/gtktoolbutton.h: fix cut'n'paste error
* gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
private data
* gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
private data instead of g_new0()
* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
instance private data
Tue Jul 8 21:10:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
for INPUT_ONLY window
* gtk/gtkmenuitem.c (gtk_menu_item_realize): same
* gtk/gtknotebook.c (gtk_notebook_realize): same
* gtk/gtkexpander.c (gtk_expander_realize): same
* gtk/gtkrange.c (gtk_range_realize): same
Fix #116303
Tue Jul 8 19:57:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
when detail is "menuitem". With the new menu look is isn't needed
anymore.
* gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
resize here, so that tool items will get a chance to relayout
themselves based on the toolbar configuration.
change DEFAULT_SPACE_SIZE to 4 instead of 5
* gtk/gtktoolbar.c
Get rid of "!GTK_BIN (item)->child means separator". Separators
are widgets in their own right
change DEFAULT_SPACE_SIZE to 4 instead of 5
(get_space_size): remove this function
(toolbar_item_is_homogeneous): new function
* gtk/gtkseparatortoolitem.c
(gtk_separator_tool_item_size_request): new function.
Tue Jul 8 14:10:35 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoggletoolbutton.h: use private data, add new
internal function _gtk_toggle_tool_button_get_button()
* gtk/gtktoolbutton.h: move to private data
* gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
private data.
Tue Jul 8 12:50:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
type check, (#116947, Krasimir Angelov)
* gtk/gtktoolbar.c: Use new GtkToolItem accessors.
* gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
data. Not instance private data yet, because of bug 116921.
* gtk/gtktoolitem.h: new accessors:
gtk_tool_item_get_homogeneous ()
gtk_tool_item_get_expand ()
gtk_tool_item_get_pack_end ()
gtk_tool_item_get_use_drag_window ()
Mon Jul 7 16:50:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkcellrenderertext.c
(gtk_cell_renderer_text_class_init): remove accidentally committed
debugging spew
* gtk/gtktoolbar.c
(gtk_toolbar_paint_space_line): remove this function
(gtk_toolbar_expose): always propagate expose, even if the item is
a separator item
* gtk/gtkseparatortoolitem.c
(gtk_separator_tool_item_expose): moved here from gtktoolbar.c
(get_space_size): new function.
(get_space_style): new function
Sun Jul 6 13:00:20 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (_gtk_drag_source_handle_event)
* gtk/gtkdnd.c (gtk_drag_begin_internal): Remove use
of GDK_POINTER_MOTION_HINT_MASK.
* gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
of the drag into an idle as a superior form of
expose compression.
* gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
creation here, so that we have an icon at the start
of the drag (e.g., when retrieving the window cache
information.)
Sun Jul 6 17:21:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* docs/widget_geometry.txt: better drawing of GtkMenuItem
* docs/widget_geometry.txt: add notes about GtkMenu
* gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
Sat Jul 5 10:34:00 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkmenu.c: add vertical_padding style property.
* gtk/gtkmenuitem.c: add style properties toggle_spacing,
arrow_spacing and horizontal_padding. Also center separators and
make them a bit taller.
* gtk/*menuitem.c: use new style properties.
* docs/widget_geometry.txt: Add note about GtkMenuItem
* gtk/gtkstyle.c
(gtk_default_draw_vline, gtk_default_draw_hline):
fix +/-1 errors.
(gtk_default_draw_shadow): draw a black border around menus.
* gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
x2 and y1, y2 respectively, not x, width and y, height).
Sat Jul 5 09:55:38 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
all the atoms in the target list at once.
* gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
Local drag short-circuit.
* gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
local case, poke the actions in directly instead of
going through xdnd_set_actions.
* gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
the local case.
* gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
XSelectInput()/add a filter if the drag is local.
* gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection):
Simplify handling of "XdndSelection".
* gdk/x11/gdkevents-x11.c
(gdk_event_send_client_message_to_all_recurse): Somehow,
a WM_STATE => _NET_WM_STATE change hand been made here.
* gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
xatom_names, not atom_names.
* tests/testdnd.c (target_drag_motion): Make the trashcan
open again. (Got lost in deprecation cleanup.)
Sat Jul 5 00:49:32 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
earlier, so we don't get a big pile of uncompressed
motion events before the grab takes effect.
* gtk/gtkdnd.c (gtk_drag_update_icon): Call
gdk_window_process_all_updates() so that the area
we are dragging over gets a change to redraw.
* gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use
gdk_window_get_position(), not gdk_window_get_origin().
* gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
gdkdisplay-x11.h: use XShapeQueryExtension to
avoid duplicate XQueryExtension when we actually
use it. Remove unnecessary caching in GdkDisplayX11.
Fri Jul 4 23:49:22 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info):
Function to get a range of information about all the
children of a window in a single pass.
* gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
_gdk_x11_get_window_child_info() to greatly reduce
the number of roundtrips.
Fri Jul 4 22:57:18 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
a function to XSendEvent() and call a calback on
failure/success.
* gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
messages to the same process, use _gdk_send_xevent_async().
Fri Jul 4 22:26:27 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
toplevel-specific pieces of GdkWindowImplX11 into
a separate GdkToplevelX11 structure.
Fri Jul 4 22:05:09 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
some leftover fields.
Fri Jul 4 15:57:52 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
Use asynchronously _gdk_x11_set_input_focus_safe
to avoid having to trap errors and XSync().
* gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
_gdk_x11_set_input_focus_safe() here as well.
* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
Rework handling of property notifies on _NET_WM_STATE
so that we ignore _NET_WM_DESKTOP notifies unless we
really care.
* gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
XShmQueryExtension() rather than XQueryExtension() to
avoid extra rountrip.
* gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
Remove unused call to XGetWindowAttributes()
* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
unused call to XGetKeyboardControl().
* gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
Add (#99571)
* gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c
No-op implementations of gdk_display_flush().
* gdk/gdkwindow.c (gdk_window_process_all_updates): Use
gdk_display_flush() rather than gdk_flush() to avoid
XSync().
* gdk/x11/gdkwindow-x11.c (update_wm_hints)
gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
so that we don't have to get the property back from the server.
* gdk/x11/gdkwindow-x11.c (show_window_internal): Store
the serial of when we map a toplevel to allow optimizing
out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
XTranslateCoordinates() for override-redirect windows.
Fri Jul 4 15:59:27 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
about setting window group after the window is mapped from docs
- nothing the ICCCM forbids that.
* gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
Fix g_return_val_if_fail() in void return function.
* configure.in: Fix misplaced comma that was resulting
in XShm always being disabled.
Fri Jul 4 19:55:49 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/stresstest-toolbar: remove this accidentally committed
file.
* tests/stresstest-toolbar.c: really add this new test
Fri Jul 4 19:06:31 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/stresstest-toolbar.c: new test for removing items
* tests/testtoolbar.c: add a popup menu
* gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
assert widget->parent == container when the container is a
toolbar.
* gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
simpler. Also make correct.
* gtk/gtktoolbar.c (gtk_toolbar_button_press): make
popup_context_menu a boolean handled signal.
2003-07-04 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
the width and height of the bounding rectangle only after the
minumum x and y have been found, and need a separate loop for
it. Thanks to Bruce Hochstetler for providing a sample program
exhibiting the bug.
2003-07-03 Tor Lillqvist <tml@iki.fi>
* gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
(#116537, Peter Zelezny)
Thu Jul 3 03:13:20 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
fix warning. Assign something to old_value to quiet gcc
* gtk/gtkcalendar.c
(start_spinning): gtk_timeout_add->g_timeout_add
* gtk/gtkicontheme.c
(theme_lookup_icon): Make it compile (remove double semicolon)
* gtk/gtktoolbutton.c
(gtk_tool_button_class_init): Long comment about properties.
(gtk_tool_button_class_init): Improve text for "use_underline"
property
(gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
on whether the passed-in label has use_mnemonic set
(gtk_tool_button_create_menu_proxy): Split image cloning out in
new function. Make that function also handle image with pixbuf
storage.
(gtk_tool_button_construct_contents): Use gtk_widget_destroy()
instead of gtk_container_remove().
(gtk_tool_button_construct_contents): Fix eliding bug
* gtk/gtktoolbar.c
(gtk_toolbar_finalize): New function. Unref tooltips, pointed out
by Morten Welinder
(gtk_toolbar_button_press): Make popup_context_menu signal provide
coordinates and button number
* tests/testtoolbar.c (main): Add new pixbuf toolbutton
* tests/apple-red.png: new file
Wed Jul 2 18:00:56 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkicontheme.[ch]: Implement a loader for
named themed icon based on from gnome-desktop library
by Alex Larsson.
* gtk/gtkiconthemeparser.[ch]: .ini file parsing code
from gnome-desktop.
* gtk/gtkiconfactory.[ch]: Add
gtk_icon_source_set/get_icon_name() to allow stock icons
to be based off of named theme icons.
* gtk/gtkiconfactory.c: Rework sources so that the source
is *either* a pixbuf, or a filename, or an icon name,
instead of the pixbuf/filename mix it was before. Put a
workaround for get_pixbuf() so that it can return the
filename pixbuf, e.g, for render_icon().
* gtk/gtkiconfactory.c: Make the default setup use
themed icons, and add builtin icons to the default
icon theme for all the standard pixbufs, so we
don't rely on actually having an icon theme on disk.
* gtk/gtkrc.c: Add support for @"icon-name" to specify
a themed icon for a stock icon source.
* tests/Makefile.am test/testicontheme.c: Add a test
program from gnome-desktop.
* gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
Net/IconThemeName / gtk-icon-theme-name setting.
* gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
update the icon cache serial so we don't continually
think we are out-of-date.
* gtk/gtkwidget.c: Fix a couple of references in doc comments
to ::direction_set that should have been to ::direction-changed
Wed Jul 2 14:45:41 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
style to the widget.
Wed Jul 2 15:42:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtk.h: Add new toolbar headers
* tests/testtoolbar.c: new file
* tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
* gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
Tue Jul 1 22:49:25 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktoolbar.c:
(gtk_toolbar_remove_tool_item): Fix bug where list is changed
inside a for loop (pointed out by Morten Welinder).
(gtk_toolbar_focus_home_or_end): Minor formatting change
Comments from Owen:
* gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
gtk_toolbar_elide_underscores instead.
* gtk/gtktoolbar.c: rename signal from focus_ends to
focus_home_or_end.
(_gtk_toolbar_elide_underscores): export this as an internal
function.
(gtk_toolbar_move_focus): add comment explaining difference to
gtk_toolbar_focus();
(gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
TAB_BACKWARD focus the right widgets in RTL mode
* gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
"label" and "icon" parameters
* gtk/gtktoolbutton.[ch]: remove icon_set property.
2003-07-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
(116364, Morten Welinder)
* tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
corresponding dialogs.
* gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
gtkcolorbutton.h.
(gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c.
* gtk/gtkfontbutton.[hc]: New files containing a font picker widget.
* gtk/gtkcolorbutton.[hc]: New files containing a color picker widget.
* gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
* gtk/gtkexpander.c: Small additions to the docs.
2003-07-01 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2003-07-01 Matthias Clasen <maclas@gmx.de>
* configure.in: Check for Xcursor.
* gdk/x11/gdkcursor-x11.c:
* gdk/gdkdisplay.h:
* gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
gdk_display_supports_cursor_color(),
gdk_display_get_default_cursor_size() and
gdk_display_get_maximal_cursor_size(). (#69436)
2003-06-30 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
callback proc for EnumWindows().
(gdk_drag_find_window_for_screen): Actually take the drag_window
argument into account: Instead of using WindowFromPoint(), use
EnumWindows(), to be able to skip the drag_window. (#116320, Tony
M Brown, Herman Bloggs)
* gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
gdk_window_ref()/unref() calls with g_object_ref()/unref().
Consistently use %p format in debugging output of pointers and
HANDLEs.
2003-06-30 Mark McLoughlin <mark@skynet.ie>
* gtk/gtkexpander.h: kill some stray characters
breaking the build.
2003-06-30 Mark McLoughlin <mark@skynet.ie>
Add GtkExpander. See discussion in bug #60553.
* gtk/gtkexpander.[ch]: add.
* gtk/Makefile.am: build gtk-expander.[ch].
* docs/widget_geometry.txt: add info on the layout
of GtkExpander.
Mon Jun 30 01:20:19 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtkradiotoolbutton.c: new file
* gtkradiotoolbutton.h: "
* gtktoggletoolbutton.c: "
* gtktoggletoolbutton.h: "
* gtktoolbutton.c: "
* gtktoolbutton.h: "
* gtktoolitem.c: "
* gtktoolitem.h: "
* gtktoolbar.c: many changes
* gtktoolbar.h: many changes
* gtkseparatortoolitem.c: new file
* gtkseparatortoolitem.h "
New toolbar.
- Items on a toolbar are now separate widgets, instances of a
subclass of GtkToolItem.
- Items there aren't room for on the toolbar are unmapped, and an
overflow menu with a proxy menu item is added instead.
- The toolbar is keyboard navigatable. Press TAB to focus the
first item, then use arrow keys and Ctrl TAB to move around the
toolbar. TAB moves focus out of the toolbar.
- Bascially all of the old toolbar API is deprecated in favor of
new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
- The toolbar is backwards compatible with the old toolbar.
2003-06-29 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
from docs, some more formatting fixes.
2003-06-28 Tor Lillqvist <tml@iki.fi>
Fix for #111028, thanks to J. Ali Harlow, who writes:
I found that the GdkPixmap->GdkImage reference really isn't
important. It's only really there to have somewhere convenient to
store the location of the pixel data in the pixmap and as an easy
way of accessing the dimensions of that data. I have therefore put
together a fix which removes this reference entirely which seems
to solve the problem.
* gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
Instead of a pointer to a GdkImage, keep a pointer to the pixels
directly.
* gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
(_gdk_win32_new_image): New function, replacing the above. Creates
a GdkImage without any associated GdkPixmap.
(gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
* gdk/win32/gdkprivate-win32.h: Remove from here, too.
* gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
* gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
* gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
* gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
Corresponding changes.
Thu Jun 26 21:41:16 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
and "is_expanded" if the new value is different fromt he old one.
Wed Jun 25 18:59:15 BST 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Fix typos. Update
thread example I missed yesterday.
2003-06-24 Matthias Clasen <maclas@gmx.de>
* gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
shadow_type.
* gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser):
(gtk_widget_class_list_style_properties): Use same parameter names as in
header (to silence gtk-doc).
* gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
Tue Jun 24 20:00:45 BST 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Thread support updates
from Owen. Various suggestions from Steve Chaplin.
2003-03-24 Mohammad DAMT <mdamt@bisnisweb.com>
* po/id.po: Updated Indonesian translation
2003-06-21 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_event_translate): When
emulating X11's automatic grab on button down, pass owner_events
as FALSE. According to the XLib spec, automatic grabs use True for
owner_events when OwnerGrabButtonMask is selected, and I don't see
the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
(find_window_for_pointer_event): Improve debugging output.
2003-06-17 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
subdirectory, where libtool 1.5 installs them.
* README.win32: Point to FSF's binary Win32 distribution of
gettext-runtime.
2003-06-17 Matthias Clasen <maclas@gmx.de>
* acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
macros to check for XML catalog contents and path, borrowed from
gtk-doc.
* configure.in: New option --enable-man to enable regeneration of
man pages from Docbook, if the necessary tools are found.
2003-06-15 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcalendar.c (gtk_calendar_class_init):
* gtk/gtknotebook.c (gtk_notebook_class_init):
* gtk/gtkalignment.c (gtk_alignment_class_init):
* gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
as 2.4 additions.
* gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs
to the proper place, immediately before the g_signal_new() call.
* gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags
more obvious. (#115122, Jeff Franks)
2003-06-12 Anders Carlsson <andersca@codefactory.se>
* gtk/gtkwidget.c: (event_window_is_still_viewable):
Special case pixmaps. (#114880)
2003-06-12 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c: Document child-notify and drag-data-received
signals. Owen, we need to figure out where the best place for
these comments in the source is. I currently put them in front of
the signals enum.
2003-06-11 Matthias Clasen <maclas@gmx.de>
* gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
Thu Jan 12 01:01:19 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
silly typo fix. s/seperator/separator/. This gets rid of the
assert spam when using TreeView.
Tue Jun 10 11:23:48 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
function for XIM instantiate callback.
* modules/input/gtkimcontextxim.c (xim_info_try_im): New function
where call to XOpenIM() or XRegisterIMInstantiateCallback() is
actually made.
* modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
for XIM's destroy callback.
* modules/input/gtkimcontextxim.c (get_im): add a check if info->im
is set or not - if it's not set, call xim_info_try_im() to try to
initiaize it.
* modules/input/gtkimcontextxim.c (reinitialize_ic): reset
filter_key_release flag of the context.
* modules/input/gtkimcontextxim.c (get_ic_real): removed
* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
code from the removed get_ic_real().
For XIM instantiation, destruction and re-instantiation. With
this, Gtk+ apps will be able to connect or reconnect to the XIM,
when it starts after the apps, or when the XIM gets lost and recover.
(#113099, #107782).
Mon Jun 10 01:12:31 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
check if width is !null, not *width. Doh.
Tue Jun 10 01:09:33 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
Remove the weird dx logic, get all cell_area and background_area
calculations right. Not sure what was up with it before. (Fixes
#110989, testcase from Vasco Alexandre da Silva Costa).
Tue Jun 10 00:58:23 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* tests/testgtk.c: Make it compile with C89 compilers
2003-06-10 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
property "overwrite".
(gtk_text_view_[gs]et_property): Handle "overwrite".
* gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
and setter for "overwrite" property. (#110241, Jeroen Zwartepoorte)
2003-06-09 Matthias Clasen <maclas@gmx.de>
* gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
properties "resize" and "shrink".
(gtk_paned_[gs]et_child_property): Implementations of
GtkContainer::[gs]et_child_property.
* tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
paned child properties instead of remove/add hacks. (#114667,
Soeren Sandmann)
Mon Jun 9 16:18:11 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_button_press): Back
out event->window test - it wasn't needed because
of the call to get_widget_coordinates().
* gtk/gtknotebook.c (gtk_notebook_button_press): Remove
call to gtk_widget_grab_focus() when not clicking on
any tabs. (Real fix for #114534)
Sun Jun 8 22:03:09 2003 Owen Taylor <otaylor@redhat.com>
* tests/testdnd.c: Use application/x-rootwindow-drop for
root window drops. (#108670, Alex Larsson)
* gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop):
Accept either application/x-rootwin-drop (what GTK+ has always used)
or application/x-rootwindow-drop (what the XDND standard specifies).
Fri Jun 6 11:07:33 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (event_window_still_viewable):
Before delivering an event to a widget, check that
(if relevant), the event's window is still viewable.
(#105642, Dennis Bjƶrklund)
* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
NULL out private->parent, since after destruction
it might not be valid any more.
* gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
accesses before g_return_val_if_fail(). Treat
DESTROYED windows as unmapped.
Thu Jun 5 09:28:03 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c: Recompute unconditionally in
gtk_entry_style_set, and in a new gtk_label_screen_changed().
Protect the guts of recompute_idle_func() with
gtk_widget_has_screen(). (#114040, Morten Welinder)
Fix FALSE/0 confusion.
Sun Jun 8 18:27:14 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
Fixes (#114669)
Sun Jun 8 11:27:29 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with
set_adjustment (viewport, NULL);
2003-06-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtkiconfactory.c (get_default_icons):
* gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
* gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
undelete and revert. (#96633)
Fri Jun 6 16:25:44 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkviewport.c: Many fixes, along with extensive cleanups and
refactoring of code to reduce duplication; fixes include:
- gtk_viewport_realize(): Position the window correct from adjustment
values. (#110737, Michael Natterer)
- Remove some division-by-zero checks in places where there is no
longer division. (#110737)
- gtk_viewport_class_init: Make the hadjustment/vadjustment properties
G_PARAM_CONSTRUCT, so that there will always be adjustments, even
if gtk_viewport_new isn't used (#101135, Thomas Leonard).
- Switch over to encapsulated lazy-creation for hadjustment/
vadjustment; even with the CONSTRUCT property, we need this after
destroy.
- When updating the adjustment, immediate set their values to
match the the current range of the viewport, and update the
viewport position to match the value of the new adjustments.
(Part of #1165)
2003-06-06 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkprivate-win32.h: Fix typo.
* gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
graphics_exposures and subwindow_mode, too, even if they aren't
currently used.
Fri Jun 6 23:38:23 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (do_expand_collapse),
(expand_collapse_timeout), (cancel_arrow_animation): made
expand_collapse_timeout a wrapper with locks around
do_expand_collapse, made cancel_arrow_animation use
do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
Peter Bloomfield).
Fri Jun 6 11:05:45 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
* modules/input/gtkimcontextxim.c (preedit_start_callback,
preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag
to keep preedit-[start,changed,end] signals from being called during
finalization (#111861).
2003-06-05 Noah Levitt <nlevitt@columbia.edu>
* gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
presses that are not on the tab (#114534).
Thu Jun 5 20:35:40 2003 Owen Taylor <otaylor@redhat.com>
* demos/Makefile.am: Conditionalize dependencies for
gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlow).
Buildtest-inline-pixbufs.h in srcdir. Don't try to build
test-inline-pixbufs.h if we don't have libpng.
* gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
Add a dependency on gdk-pixbuf.loaders when not
cross-compiling, remove the dependency on gdk-pixbuf-csource
when not cross compiling.
Thu Jun 5 20:12:51 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_get_default_size): Handle
gtk_window_get_geometry_info() returning NULL.
(#107311, John Finlay)
Thu Jun 5 19:24:33 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
twice the border width from the width/height, not
1x the border width. (#106336, Rodney Dawes)
Thu Jun 5 15:33:38 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
If at the end of the buffer, move to the end iter -
parallels behavior of move_iter_to_previous_line.
(#81960, Padraig O'Briain)
Thu Jun 5 16:12:54 2003 Owen Taylor <otaylor@redhat.com>
#80023, Yao Zhang, TOKUNAGA Hiroyuki
* gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
Account for the preedit cursor offset if the iter passed
in is at the same place as the insertion cursor.
* gtk/gtktextview.c (gtk_text_view_get_cursor_location):
Encapsulate getting the insertion cursor location.
* gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
Pass the real y/height to the IM context. Take
text_view->x/yoffset into account.
Thu Jun 5 16:52:54 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.[ch]: Never scroll on focus in
(#81893, Patch from Paolo Maggi)
* gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
Scroll to the current cursor location before handling
the action, in case the user just tabbed in
and the cursor is offscreen.
Thu Jun 5 17:20:40 2003 Owen Taylor <otaylor@redhat.com>
#107883, Gustavo GirƔldez
* gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
Split out the case where we know we changed, and
already dealt with our cached line being invalidated
from external calls to gtk_text_layout_changed.
* gtk/gtktextlayout.c (gtk_text_layout_changed):
Check if the invalidate yrange intersects our
cached line, and clear it if necessary.
2003-06-05 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
filters.
2003-06-05 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
(gtk_text_view_grab_notify):
(gtk_text_view_state_changed): Implement these
to unobscure cursor when grab shadowed or insensitised.
(gtk_text_view_unobscure_mouse_cursor): New function to undo the
effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
gtk_text_view_motion_event().
(gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
* gtk/gtktextview.c (select_all): New keybinding signal for
(un)selecting the whole buffer. Bound to C-a/C-\. (see #107889)
* gtk/gtkcalendar.c (calendar_timer):
(stop_spinning): Replace deprecated gtk_timeout_* functions by
their GLib counterparts. (#114429)
* gtk/gtktreestore.c (gtk_tree_store_new):
* gtk/gtkliststore.c (gtk_list_store_new): Document restriction on
types.
Wed Jun 4 19:42:17 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
When drawing underlines, join up adjacent runs
where possible, so we don't get changes in
shaper/font/etc. breaking underlines. (#103662,
Kang Jeong-Hee)
Wed Jun 4 19:22:58 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
improve the speed of inserting rows into an already sorted list,
#109292
Wed Jun 4 19:24:28 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
track of when we have a clip mask set for the GC,
and when we unset it, or switch to a clip region,
immediately call XSetClipMask (..., None) to avoid
Xlib caching stale data. (#111806)
* gtk/gtktextdisplay.c: Don't set a clip mask
when drawing alpha pixmaps; it isn't necessary any more.
(#111806)
Wed Jun 4 18:27:44 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
(#92548, Tim Evans)
* gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
Use state_type = STATE_INSENSITIVE for insensitive menu items.
Wed Jun 4 21:25:35 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
assert for get_info. (reported by Michael Natterer),
(gtk_tree_view_expand_all_emission_helper),
(gtk_tree_view_expand_all_helper): emit row_expanded for all
expanded rows during an _expand_all operation. (Fixes #111280,
reported by Benjamin Bayart).
Tue Jun 3 18:32:30 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
respond to pings on a root window; prevents infinite
loops if we are selecting for SubstructureNotify on the
root window. (#111945, Sergey V. Udaltsov)
Tue Jun 3 17:39:16 2003 Owen Taylor <otaylor@redhat.com>
#71597, reported by Morten Welinder
* gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
(Patch from Christian Petig)
* gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
Major rewrite of 555 and 565 conversion routines:
- Move all the bit shifting into a small block of macros,
eliminating much duplication of complicated arithmetic.
- Get rid of 2-pixels at a time code, which was buggy,
hard to maintain, caused unaligned accesses, and
probably didn't actually perform any better.
- Simplify cases where different data types were
used for the little and big endian cases, use
GUINT16_SWAP_LE_BE() where appropriate.
Tue Jun 3 15:05:47 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
bad optimization for src_rowstride == dest_stride.
(Didn't consider the case where we were copying only
partial widths of a wider source buffer)
(#113034, reported by Hans Petter Jansson)
2003-06-03 Michael Natterer <mitch@gimp.org>
* gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
reenabled button_release events for xinput devices. (#113948)
2003-06-03 Christian Rose <menthos@menthos.com>
* configure.in: Added "li" to ALL_LINGUAS.
Mon Jun 2 18:58:54 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
map the event window if the notebook isn't mapped. (#113980,
Richard Reich)
2003-06-02 Sven Neumann <sven@gimp.org>
* gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
* gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
2003-06-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add
Since: 2.4 to the docs.
* gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
an example to the docs. (#98427)
2003-05-30 Murray Cumming <murrayc@usa.net>
* gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
uses the new private data system - see g_type_class_add_private() in
gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
2003-05-30 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
signature of gtk_notebook_draw_arrow() for Solaris builds to go
through. (#114043, Anand Subramanian)
Thu May 29 18:30:35 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/imipa.c:
use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
Thu May 29 18:08:01 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* gtk/gtkimmodule.c (_gtk_im_module_list):
use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
Thu May 29 09:34:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
label of default input method localizable.
* gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
use translations of input method context names
* modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
modules/input/iminuktitut.c, modules/input/imthai-broken.c,
modules/input/imti-er.c, modules/input/imti-et.c
modules/input/imviqr.c, modules/input/imxim.c
use GETTEXT_PACKAGE instead of "gtk+" for domain name.
(#113850).
Thu May 29 18:23:01 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
grab separate, the user might clear the tree in the focus-in
callback. (Fixes #113086, testcase from Felipe Heidrich).
Thu May 29 18:06:26 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
of row reference when we unset the model. Also reset
dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
Thu May 29 17:12:19 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
the current editing, if it exists. (Fixes #108956, reported by
Michael Natterer).
Thu May 29 17:06:09 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (check_selection_helper): new function,
(gtk_tree_view_row_deleted): traverse the tree from the
deleted node to see whether the selection changed, instead of
just checking this node. (Fixes #107400, reported by 'Duncan').
Thu May 29 16:31:34 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
(gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
instead of _maybe_begin_dragging_row, so the icon can be
overridden by apps. (Fixes #104374, patch from Daniel Elstner).
Thu May 29 16:14:04 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
cell_area x/width for the expander if needed. (Fixes #101748,
reported by Dave Cook and Mariano Suarez-Alvarez).
Thu May 29 16:01:38 2003 Kristian Rietveld <kris@gtk.org>
Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
if tree/node are still the same after _internal_select_node.
(Fixes #92256, reported by edscott).
Thu May 29 15:38:30 2003 Kristian Rietveld <kris@gtk.org>
Fixes #75745, reported by Richard Hult. Merged from stable.
* gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
cursor or not.
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
if we are rendering a cursor row, and the cell the be
processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
flag (else we unset it).
2003-05-27 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow-decorate.c:
* gtk/gtktreeprivate.h:
* gtk/gtkdnd.c:
* gdk/win32/gdkwindow-win32.h:
* gdk/linux-fb/gdkprivate-fb.h:
* gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
unspecified signedness. (#112919, Morten Welinder)
* gtk/queryimmodules.c (escape_string):
* gtk/gtktextbtree.c (_gtk_text_btree_get_text):
* gtk/gtksettings.c (_gtk_settings_parse_convert):
* gtk/gtkrc.c (gtk_rc_parse_assignment):
* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
* gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
occurances of g_string_new ("") by g_string_new (NULL). (#106975,
Morten Welinder)
2003-05-27 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
* gdk/Makefile.am: libgdk-win32-2.0.la depends on
win32/libgdk-win32.la.
* gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
Sat May 24 22:19:13 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
scrollbar slider length 21 instead of 7.
2003-05-23 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c: Add support for up to four scroll
arrows. Control their display by new style properties
"has_forward_stepper", "has_backward_stepper",
"has_secondary_forward_stepper" and
has_secondary_backward_stepper". (#110540)
* gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
click_child three bits wide, add
has_{before,after}_{previous,next} fields.
* gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
focus out of hex_entry. (#112665)
(hex_focus_out): New signal handler for focus out of hex entry.
Wed May 21 19:01:06 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_realize):
g_return_if_fail() if
GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
(#107872, Christian Reis)
2003-05-22 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilesel.c (gtk_file_selection_create_dir):
(gtk_file_selection_rename_file): Some keynav improvements for the
"Rename File" and "Create Directory" subdialogs: Enter in entry
activates default, default is "Create"/"Rename", Escape cancels
dialog. (#113110)
(gtk_file_selection_set_filename): Add a hint about opening
directories. (#113175)
2003-05-22 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
anyway. (#113476)
Wed May 21 15:53:14 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkprogress.c (gtk_progress_set_format_string,
gtk_progress_set_show_text): Always queue a resize ...
we rely on the size-allocate to do the update, plus a
different format can actually change our size requisition.
(#111052, Vasco Alexandre da Silva Costa)
* gtk/gtkprogress.c (gtk_progress_changed): Track
::changed as well as ::value_changed, and queue a
resize on ::changed when necessary.
* gtk/gtkprogress.c (gtk_progress_set_adjustment):
Call gtk_progress_changed() here to update or
queue a resize as necessary.
Wed May 21 14:06:13 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* gtk/gtkimcontextsimple.c: added composing rules of
Greek accented letters, patch by Vasilis Vasaitis (#107507)
Wed May 21 13:19:05 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle):
* modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
Wed May 21 12:10:25 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* gtk/gtkimcontextsimple.c:
code that can check the compose table for ascending order,
by Vasilis Vasaitis (#104862).
Wed May 21 12:52:01 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
to pass the unmasked state to gdk_keymap_translate_keyboard_state()
to handle the case where a modifier not in the mask
(like Num_Lock) changes the key value, so replace
the masked state with a state/mask pair. (#106913,
Olivier Ripoll)
* gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
in state/mask pair to _gtk_key_hash_lookup()
Tue May 20 21:58:00 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/gtkimcontextxim.c (xim_info_display_closed):
fix a memory leak, free input context list (#113259).
2003-05-21 Matthias Clasen <maclas@gmx.de>
* configure.in (all_loaders): Add pcx.
* gtk/gtkcalendar.c: Make calendar controls spin. (#112540)
Tue May 20 17:27:24 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmodule.c (gtk_im_module_init): Silently
accept a missing gtk.immodules file, some people
want to run without one. (#112406, patch from
Arnaud Charlet)
Tue May 20 17:05:31 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_compute_hints): Fix
height/width confusion (#113370, Xan Lopez)
Tue May 20 15:48:45 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
zero all unused parts of client messages (Mainly Motif DND
and EWMH). Also, fix a couple places where we were putting
contents into Motif DND messages that didn't belong.
(#113361, EWMH problem reported by Lubos Lunak)
* gtk/gtkselection.c (_gtk_selection_request): Handle the
case where the property type for the multiple atoms is
ATOM_PAIR by doing the conversions ourselve. This is
needed for Xt inter-operation.
2003-05-19 Arafat Medini <lumina@silverpen.de>
* configure.in: Added ar to ALL_LINGUAS
2003-05-19 Matthias Clasen <maclas@gmx.de>
* gtk/gtksettings.c (gtk_rc_property_parse_border,
gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
Add docs.
* gtk/gtkwidget.c (gtk_widget_class_install_style_property,
gtk_widget_class_install_style_property_parser): Add docs.
2003-05-17 Matthias Clasen <maclas@gmx.de>
* tests/prop-editor.c: Add navigation for object properties, so
that you can easily edit the properties of the parent of a widget.
(#113152)
Wed May 14 17:45:32 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
inconsistency and leave the old name as an aliass (#104873)
Wed May 14 16:40:09 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
from Charles Schmidt to add missing notify (#108305)
Wed May 14 16:00:51 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
(#105500, Morten Welinder.)
Wed May 14 09:05:11 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
instead of gumake for XNFilterEvents event mask(#110493).
2003-05-11 Anders Carlsson <andersca@codefactory.se>
* gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
a GObject. (#112762)
2003-05-08 Sven Neumann <sven@gimp.org>
* configure.in: set the HAVE_X11R6 automake conditional to false
if not compiling for X11.
2003-05-08 Matthias Clasen <maclas@gmx.de>
* gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options):
(gtk_calendar_get_display_options): New functions.
(gtk_calendar_display_options): Depreate. (#64567)
(gtk_calendar_class_init): Add boolean properties for the display
options. (#50949)
Tue May 6 16:50:52 2003 Owen Taylor <otaylor@redhat.com>
Patch from James Henstridge to update to automake-1.7
(#109542)
* autogen.sh: update to call newer tools.
* configure.in: various updates, to use M4 macros to put
variables that change each release at the top.
Use AC_HELP_STRING to format help strings.
Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
* Makefile.am: require Automake 1.7. Remove gdk-2.0.pc and
gtk+-2.0.pc on uninstall. Pass --enable-gtk-doc to configure
during distcheck.
* docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
makefile fragment.
* */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
Use BUILT_SOURCES where appropriate.
Build generated files in builddir rather than srcdir.
Fix uninstall and distclean targets to satisfy distcheck.
===
* gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
built first, since we are now using BUILT_SOURCES.
* gdk/Makefile.am: Remove an outdated comment about gdk_headers.
* demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
with geninclude.pl.
* configure.in: Update versions to 2.3.0.
2003-05-06 Tor Lillqvist <tml@iki.fi>
Fix for #110165 (thanks to Arnaud Charlet):
* gdk/win32/gdkevents-win32.c (build_keypress_event,
build_keyrelease_event): For unshifted control char, use
lowercase ASCII keyval.
(gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
lowercase keyval. Use build_key_event_state() here, too, instead
of minor code duplication.
2003-05-06 Matthias Clasen <maclas@gmx.de>
* tests/testmultidisplay.c: Don't include strings.h, it's not
needed anymore. (#112388)
* examples/menu/itemfactory.c:
* docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
itemfactory example.
2003-05-05 Matthias Clasen <maclas@gmx.de>
* gtk/gtkdnd.c (gtk_drag_source_set_icon_stock): Actually set the
icon type to the stock icon type. (#111735, Dave Bordoley)
2003-05-05 Christian Rose <menthos@menthos.com>
* configure.in: Added sr and sr@Latn to ALL_LINGUAS.
Removed sp, it's replaced by sr@Latn.
Wed Apr 30 22:09:11 BST 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
Gonzalo Odiard
Mon Apr 28 17:54:39 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
data iff the destroy func isn't NULL.
Thu Apr 24 19:12:05 2003 Owen Taylor <otaylor@redhat.com>
* autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
2003-04-23 Abel Cheung <maddog@linux.org.hk>
* configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
Tue Apr 22 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkfilesel.c (open_new_dir): Fix capitalization
of UTF-8. (#106419, Roozbeh Pournader)
Tue Apr 22 15:17:25 2003 Owen Taylor <otaylor@redhat.com>
* configure.in: Only check for XFT2 if we found pango-xft
(#105692, Jon Nall)
Tue Apr 22 15:12:19 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
Tue Apr 22 19:43:01 BST 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: add note about version converage.
Mon Apr 21 19:02:16 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c (activate_key): Fix prototype for
activate_key. (#108927, Jason D. Hildebrand)
Mon Apr 21 18:42:51 2003 Owen Taylor <otaylor@redhat.com>
* demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
Remove geninclude.pl from CVS and don't dist it either,
it is generated. (#108970, Rich Kinder)
Mon Apr 21 18:35:48 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkobject.h: Remove a couple of obsolete comments,
fix another comment. (#109737, Britton Kerin)
Mon Apr 21 18:29:03 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
the source list, not just it's contents (Patch
from Charles Kerr, #108243)
Mon Apr 21 18:13:46 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
from Alex Larsson fixing problem with restacking during
DND. (#108671)
Mon Apr 21 15:07:29 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
Calling XFlush() after ungrabbing, to avoid problems if
the app subsequently blocks on a long-running operation.
(#106520, reported by Rajkumar Siva)
Fri Apr 18 17:42:45 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
SKIP_TASKBAR/SKIP_PAGER to set of properties we
might set on map. (#110019, problem reported
by Loban Rahman)
Fri Apr 18 17:14:33 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkevents.c (gdk_event_copy): Fix for the
case when gdk_event_copy() is called on a non-allocated
event. (#109716, reported by Rich Burridge)
Fri Apr 18 16:57:44 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
Fix pointer arithmetic on 'void *'. (#108322)
Fri Apr 18 16:31:49 2003 Owen Taylor <otaylor@redhat.com>
* configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
use of XAddConnectionWatch. Remove --enable-xim config option.
Should fix building on X11R6 (#110523, Albert Chin)
Fri Apr 18 15:56:46 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
Patch from Morten Welinder to catch Sun servers with a
broken implementation of the RENDER extension. (#108309)
Fri Apr 18 15:30:38 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkwindow-x11.c (set_text_property): Use
gdk_free_compound_text(), not g_free(). (#107643,
Michael Zucchi)
Fri Apr 18 15:11:50 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
wrong use of base_finalize. (#105126, Sven Neumann)
Fri Apr 18 15:06:00 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkwindow.c (gdk_window_constrain_size): Fix
'/' vs. '*' problem in aspect ration computations. (#108237)
Fri Apr 18 14:15:09 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (gdk_display_open):
* gdk/x11/gdkevents-x11.c (gdk_event_translate): You
don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
event, so select for both. (#108406, Egmont Koblinger)
Thu Apr 17 09:57:44 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (validate_visible_area): remove infinite loop
caused by not clearing the scroll_to_path.
2003-04-16 Matthias Clasen <maclas@gmx.de>
* gtk/gtkstyle.c: Doc additions and fixes.
* gtk/gtktreeviewcolumn.c
(_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
2003-04-14 Michael Natterer <mitch@gimp.org>
* gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
that the iter is not reordered to its own position. Prevents model
corruption for the case that the store contains only a single item
(fixes bug #108387).
Unrelated:
* gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
new list element later so we don't leak it if we decide to return
early.
* gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
set selection->tree_view->priv->anchor to NULL after freeing it.
2003-04-13 Matthias Clasen <maclas@gmx.de>
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_cell_get_position): Document.
* gtk/gtktextbuffer.c (gtk_text_buffer_select_range):
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand):
* gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
these as 2.4 additions.
2003-04-09 Matthias Clasen <maclas@gmx.de>
* INSTALL.in: Fix the real thing.
* INSTALL: Typo fix.
Mon Apr 7 19:43:15 2003 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
after ungrabbing the server.
* gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
calls to XFlush().
* gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
Use gdk_x11_display_grab/ungrab.
* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
use_xshm to TRUE so SHM gets used when present.
2003-04-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextlayout.c (set_para_values):
* gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR. (#110086,
David Brigada)
* gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
misspellings of possessive "its". (#110027, Doug Quale)
2003-04-03 Matthias Clasen <maclas@gmx.de>
* demos/gtk-demo/main.c (demo_find_file): Only use files from the
current directory if it looks like the srcdir. (#109357)
Wed Apr 2 23:02:26 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/gtkbutton.[ch] (gtk_button_class_init): add property
focus_on_click
* gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
navigation not wrap around.
2003-04-02 Matthias Clasen <maclas@gmx.de>
* gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
Return 0 if lower == upper. (#109155)
(gtk_progress_get_current_percentage): Use
gtk_progress_get_percentage_from_value().
2003-04-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
(#109510, Noah Levitt)
Mon Mar 31 13:52:13 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
members so Purify won't complain.
* gtk/gtkliststore.c (gtk_list_store_sort): ditto.
2003-03-31 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c: Add a new property, role, corresponding to
gtk_window_[gs]et_role(). (#93904)
Sun Mar 30 03:57:42 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
fix crash. Patch from Markus Lausser <sgop@users.sourceforge.net>
2003-03-29 Matthias Clasen <maclas@gmx.de>
* gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
of labels back to normal before reparenting back. (#102387)
* gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
a default window title to match the GtkFontSelectionDialog behavior.
(gtk_color_selection_dialog_new): Don't call
gtk_window_set_title() if title is NULL. (bug #101975, Daniel Elstner)
2003-03-29 Matthias Clasen <maclas@gmx.de>
Fix for bug #78499:
* gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
select_lines.
* gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
select_lines on double/triple click.
* gtk/gtkentry.c (gtk_entry_motion_notify): Implement
select-by-words and select-by-lines behaviour.
Fixes for bug #56248:
* gtk/gtknotebook.c (stop_scrolling): New function to remove the
timer and queue a redraw.
(gtk_notebook_grab_notify):
(gtk_notebook_state_changed): New functions to call stop_scrolling()
if necessary.
(gtk_notebook_button_release): Use stop_scrolling().
(gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
* gtk/gtkrange.c (stop_scrolling): New function to remove the
grab, remove the timer and queue a redraw.
(gtk_range_grab_notify):
(gtk_range_state_changed): New functions to call stop_scrolling()
if necessary.
(gtk_range_button_release): Use stop_scrolling().
* gtk/gtkspinbutton.c (gtk_spin_button_grab_notify):
(gtk_spin_button_state_changed): Redraw after stop_spinning.
(gtk_spin_button_stop_spinning): Reset click_child to correct the
drawing of the arrows.
(gtk_spin_button_button_release): Use a local copy of click_child,
since stop_spinning() resets it.
* gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
C-A-PgDown as alternatives to the A-less variants. (This slipped
in accidentally some time ago). (#97860)
2003-03-26 Sven Neumann <sven@gimp.org>
* gtk/gtktreeview.c: rewrote the function that does node and arrow
prelighting, queue all redraws from here (Fixes bug #108792).
2003-03-20 Richard Kinder <r_kinder@yahoo.com>
* demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
Fixes bug #108778.
2003-03-20 Guntupalli Karunakar <karunakar@freedomink.org>
* configure.in: Added "ml" in ALL_LINGUAS
Sat Mar 15 18:49:27 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
G_DISABLE_DEPRECATED.
2003-03-14 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
multiple monitors can have negative coordinates on some of the
monitors. (partial fix for #99496, Arnaud Charlet)
2003-03-15 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c: Add a "buffer" property. (#108353)
2003-03-13 Sven Neumann <sven@gimp.org>
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
removed redundant calls to g_object_notify().
(gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
bug #108236.
* gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
(_gtk_text_iter_get_segment_byte): return 0, not NULL (these
functions return an integer value).
2003-03-13 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
WM_MOUSEMOVE, the test whether we have actually moved (and thus
shouldn't generate an GDK event) moved after the call to
propagate() and translate_mouse_coords(). Otherwise we were
testing wrong values. (#108115, Allin Cottrell)
(gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
is used, must copy the HCURSOR with CopyCursor(), as it is OK to
destroy the GdkCursor after calling gdk_pointer_grab(). Set the
cursor right away with SetCursor(), as we won't get any
WM_SETCURSOR messages while the mouse is captured.
(gdk_display_pointer_ungrab): Correspondingly, destroy the copy
with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
* gdk/win32/gdkevents-win32.c (gdk_event_translate): On
WM_SYSCHAR, return FALSE from the window procedure to prevent the
DefWindowProc from being called. Otherwise Windows would beep,
thinking you are tring to access a (nonexistent) menu when you
press Alt-something. Don't do this for Alt-Space,
though. (#107454, Martyn Russell)
* gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
Tue Mar 11 12:01:07 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
[left/right] expands/collapses the tree, #108092
2003-03-09 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
compensate for LineTo() not drawing the end pixel. It causes more
harm than benefits, see bug #81895.
2003-03-08 Matthias Clasen <maclas@gmx.de>
Bug #107664 continued:
* gdk/x11/gdkinputprivate.h:
* gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove.
(_gdk_input_other_event): Return gboolean.
* gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove.
(_gdk_input_other_event): Return gboolean.
* gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
gboolean, remove pointless call to _gdk_input_window_none_event.
* gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
(_gdk_input_window_none_event): Remove.
* gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment):
(_gtk_text_iter_get_any_segment):
(_gtk_text_iter_get_segment_byte):
(_gtk_text_iter_get_segment_char):
(_gtk_text_iter_get_text_line):
(_gtk_text_iter_get_btree): Fix 0/NULL confusion.
* gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
* gdk/win32/gdkfont-win32.c (gdk_font_equal):
* gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin):
(gdk_window_get_origin):
* gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion.
2003-03-06 Matthias Clasen <maclas@gmx.de>
* gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
(#107664, Morten Welinder)
* gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
* gdk/x11/gdkfont-x11.c (gdk_font_equal):
* gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
Fix TRUE/1 and FALSE/0 confusion. (#107664, Morten Welinder)
* gtk/gtktextmark.c (gtk_text_mark_get_buffer):
* gtk/gtkeditable.c (gtk_editable_get_chars):
* gtk/gtkctree.c (gtk_ctree_find_node_ptr):
* demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
(#107648, Morten Welinder)Fix NULL/FALSE confusion
(#107648, Morten Welinder)
2003-03-04 Matthias Clasen <maclas@gmx.de>
* gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
Sun Mar 2 23:35:57 2003 Jonathan Blandford <jrb@gnome.org>
* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
handle rtl code. Thanks to Matthias Clasen for an initial patch
to handle the RTL code.
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
* gtk/gtktreeview.c: (invalidate_column),
(invalidate_last_column),
(gtk_tree_view_get_real_requested_width_from_column),
(gtk_tree_view_size_allocate_columns),
(gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
(gtk_tree_view_button_release_drag_column),
(gtk_tree_view_update_current_reorder),
(gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
(gtk_tree_view_key_press), (gtk_tree_view_header_focus),
(gtk_tree_view_get_background_xrange),
(gtk_tree_view_get_arrow_xrange),
(gtk_tree_view_is_expander_column),
(gtk_tree_view_set_column_drag_info),
(gtk_tree_view_move_cursor_left_right):
Add RTL support.
* gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
expand flag.
* gtk/gtktreeviewcolumn.c:
(gtk_tree_view_column_class_init),
(gtk_tree_view_column_set_property),
(gtk_tree_view_column_get_property),
(gtk_tree_view_column_set_expand),
(gtk_tree_view_column_get_expand),
(gtk_tree_view_column_cell_process_action):
Add support for expand flag. Thanks to Kristian Rietveld for an
initial patch for this.
Fri Feb 28 02:06:17 2003 Jonathan Blandford <jrb@gnome.org>
2003-03-02 Tor Lillqvist <tml@iki.fi>
* gdk/gdk.def
* gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
Gustin.
2003-03-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
(gtk_scrolled_window_set_hadjustment): Replace uses of
gtk_object_new by g_object_new.
Thu Feb 27 17:44:24 2003 Manish Singh <yosh@gimp.org>
* demos/gtk-demo/main.c
* demos/gtk-demo/tree_store.c
* gdk/x11/gdkscreen-x11.c
* gtk/gtkcellrenderertoggle.c
* gtk/gtkcolorsel.c
* gtk/gtkdnd.c
* gtk/gtkeditable.c
* gtk/gtkentry.c
* gtk/gtkmenu.c
* gtk/gtkmenubar.c
* gtk/gtkmenuitem.c
* gtk/gtkmenushell.c
* gtk/gtkrc.c
* gtk/gtksettings.c
* gtk/gtkstyle.c
* gtk/gtktextbuffer.c
* gtk/gtktextview.c
* gtk/gtktreeviewcolumn.c
* tests/testgtk.c
* tests/testtext.c
* tests/testtreeedit.c
* tests/testtreefocus.c
* tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
Tue Feb 25 21:55:17 2003 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
code.
2003-02-24 Sven Neumann <sven@gimp.org>
* gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
2003-02-21 Tomas Ogren <stric@ing.umu.se>
* docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
2003-02-20 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag):
Check if line_ancestor_parent is NULL. (#102711, Manuel Clos)
* gtk/gtktextview.c (gtk_text_view_scroll_to_iter):
(gtk_text_view_update_adjustments): Make sure cursor stays visible
during horizontal scrolling. (#75270)
2003-02-19 Matthias Clasen <maclas@gmx.de>
* tests/testdnd.c: Replace gtk_timeout_* by their GLib
counterparts. (#106532)
* gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
keys_changed virtual function with the keys_changed signal.
(#106512, Jeff Franks)
2003-02-15 Larry Ewing <lewing@ximian.com>
* gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
2003-02-17 Mohammad DAMT <mdamt@bisnisweb.com>
* po/id.po: Added Indonesian translation
* configure.in: Added "id" to ALL_LINGUAS
2003-02-14 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
2003-02-12 Christian Rose <menthos@menthos.com>
* configure.in: Added "yi" to ALL_LINGUAS.
2003-02-12 Matthias Clasen <maclas@gmx.de>
Fix for #82734 and #78216:
* gtk/gtktextview.c (delete_cb):
(select_all_cb): New callbacks for context menu items.
(popup_targets_received): Add "Delete" and "Select All" to context
menu, mnemonics and title caps for all items.
* gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
context menu item.
(popup_targets_received): Add "Delete" to context menu, mnemonics
and title caps for all items.
2003-02-09 Tor Lillqvist <tml@iki.fi>
* gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
GetDriveType() to recognize removable drives (in order to avoid
hanging if trying to access an empty floppy drive), instead of
hardcoding A: and B: (#105654).
2003-02-09 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in
names. (#57680)
2003-02-09 Christian Rose <menthos@menthos.com>
* configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
Fri Feb 7 04:49:46 2003 Tim Janik <timj@gtk.org>
* gtk/gtkobject.c: remove quark_user_data usage in
gtk_object_{g|s}et_user_data(). fixes get_user_data()
returning NULL for user_data set through property interface.
* gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
need to be a programming error (in case of loaded data), (b) it breaks
with 2.0 behaviour where extra magic could be used to create empty
images. don't attempt to retrieve pixbufs from NULL extra_data.
2003-02-06 Matthias Clasen <maclas@gmx.de>
* gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
a GdkVisual *, not a GdkVisual **. (#105243)
* gtk/gtkclist.c:
* gtk/gtkctree.c:
* gtk/gtkcontainer.c:
* gtk/gtkdnd.c:
* gtk/gtkentry.c:
* gtk/gtklist.c:
* gtk/gtkmenu.c:
* gtk/gtkmenuitem.c:
* gtk/gtknotebook.c:
* gtk/gtkselection.c:
* gtk/gtkspinbutton.c:
* gtk/gtktext.c:
* gtk/gtktextview.c:
* gtk/gtktooltips.c:
* gtk/gtktreeview.c:
* gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
their non-deprecated GLib counterparts.
* gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
Sun Feb 2 16:45:57 GMT 2003 Tony Gale <gale@gtk.org>
* docs/tutorial/gtk-tut.sgml: cleanups from
Sebastian Rittau (#104832)
2003-02-01 Tor Lillqvist <tml@iki.fi>
Merge from stable:
* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
(#104108, Naofumi Yasufuku)
* gdk/gdk.def: Export the above. Export
gdk_screen_get_system_visual, noticed by Ed Woods.
Fri Jan 31 17:45:22 2003 Manish Singh <yosh@gimp.org>
* demos/pixbuf-demo.c
* demos/testpixbuf.c
* demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
Fri Jan 31 17:33:00 2003 Manish Singh <yosh@gimp.org>
* gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
on the tab_label before unparenting it, in case the unparent
drops the refcount to 0.
2003-02-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
headers. Sorry about gtk_selection_clear, Yosh.
Thu Jan 30 17:16:05 2003 Manish Singh <yosh@gimp.org>
* gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
too, for gtkwidget.c. Remember people, when introducing new
deprecations, make sure internal code isn't using it, or if so,
reorganize appropriately like I've done in other places.
* tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
2003-01-31 Matthias Clasen <maclas@gmx.de>
* gtk/gtkselection.h:
* gtk/gtkselection.c (gtk_selection_clear): Deprecate. (#85683)
* gdk/gdkpixbuf.h:
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable):
(gdk_pixbuf_render_to_drawable_alpha): Deprecate. (#60582)
* gtk/gtkcolorsel.h:
* gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
Deprecate. (#98167)
* gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
* gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
and gtk_input_* functions. (#71596)
* gtk/gtkentry.c (gtk_entry_move_cursor):
* gtk/gtklabel.c (gtk_label_move_cursor): Handle
GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
* gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs(). (#79803)
* gtk/gtkitemfactory.h:
* gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate.
(#69244)
Thu Jan 30 23:48:30 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
only count the special cell if it is also visible,
(_gtk_tree_view_column_get_neighbor_sizes): only take the width into
account from visible cells,
(gtk_tree_view_column_cell_get_position): likewise, (Reported and
testcase provided by Vasco Alexandre da Silva Costa, via IRC,
tracking bug was #104563).
Thu Jan 30 23:46:15 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
subtract expander space and focus line space from the extra space
we are about the allocate. (Fixes #104635).
Thu Jan 30 23:42:03 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
(Fixes #96242, patch from Soeren Sandmann).
Thu Jan 30 16:54:29 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c: Patch from Soeren Sandmann
to update the states of the tab label child
widgets to match the state of the tabs.
(#93389, Reported by Tommi Komulainen)
Thu Jan 30 16:30:54 2003 Owen Taylor <otaylor@redhat.com>
* Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
EXTRA_DIST, and from dist rules. (#102231)
2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
* gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
function that sets the icon's and label's packing options and
visibility based on toolbar->style.
(gtk_toolbar_internal_insert_element):
(gtk_real_toolbar_style_changed): Make use of
set_child_packing_and_visibility() to clean up the code and get
the packing right for icon-only/text-only toolbars. (#104679)
(get_first_child): Remove, and use gtk_bin_get_child() instead.
2003-01-30 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
GTK_MOVEMENT_HORIZONTAL_PAGES. (#68947)
* gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
Thu Jan 30 16:01:29 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the
attempt-to-allocate then free code. To handle multiple
people allocating colors at the same time, we need
to just go ahead and try. (#102213, Shivram U)
2003-01-30 Daniel Elstner <daniel.elstner@gmx.net>
* gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
rectangle using the background color rather than relying on
gdk_window_clear_area(), so that the palette works properly with
pixmap themes. (#101732)
* demos/gtk-demo/colorsel.c: Install an "expose_event" handler
to fill the drawing area in the background color.
Wed Jan 29 14:11:21 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
initialization error for selecting input style (#103549).
Wed Jan 29 17:02:41 2003 Owen Taylor <otaylor@redhat.com>
* gdk/gdkkeyuni.c (get_decimal_char): Make the
translation of GDK_KP_Decimal dependent on LC_NUMERIC.
(#101225)
Wed Jan 29 15:43:56 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
Make up from the menu bar go to the end of the submenu.
(#96114, Ian Peters.)
* gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate):
Only do the select-but-not-activate stuff if the
menu is already active. Otherwise, just activate.
(#101690, Arvind Samptur)
Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
* autogen.sh (have_automake): Fix version in complaint
message about automake. (#104366, Rich Burridge)
Mon Jan 27 16:38:13 2003 Owen Taylor <otaylor@redhat.com>
* configure.in: Remove SOEXT stuff; it doesn't work portably.
Mon Jan 27 22:45:15 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
we appended/prepended, send the rows_reordered signal to the
correct level ... (Reported by Matthew Tuck).
Mon Jan 27 22:43:11 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
out if the level only has one item, recurse over the child if there
is one. (Fixes #100458, reported by Gaƫl Le Mignot).
Mon Jan 27 22:41:26 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_set_model),
(gtk_tree_view_search_equal_func): make TreeView search handle
all types which are transformable by GValue. (Fixes #99803, reported
by Muktha Narayan).
Mon Jan 27 22:39:25 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
*really* handle unsetting the ID. Slightly modified patch from
Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
Mon Jan 27 22:33:43 2003 Kristian Rietveld <kris@gtk.org>
Fixes the total GtkTreeSortable mess, and #83195, reported by
Jarek Dukat
* gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
(gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
(gtk_tree_store_set_default_sort_func): use the constant
GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
work as advertised by the documentation.
* gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
(gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
(gtk_list_store_set_default_sort_func): likewise.
* gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
(gtk_tree_model_set_sort_func),
(gtk_tree_model_sort_set_default_sort_func): make functions work
as advertised by the documentation.
Mon Jan 27 22:31:56 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
before we decide if we edit. (fixes #100973, reported by Dave Cook).
Mon Jan 27 22:29:30 2003 Kristian Rietveld <kris@gtk.org>
Bug report and test case from Paolo Maggi via IRC.
* gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
(gtk_list_store_move): update tail if needed.
Mon Jan 27 16:19:59 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
might be NULL. Use gtk_widget_get_display (widget)
(#102860, Thomas Leonard)
Mon Jan 27 15:58:31 2003 Owen Taylor <otaylor@redhat.com>
* configure.in: Fix --without-modules/--disable-modules
confusion that was causing --disable-modules not to work.
(#102865, Akira Tagoh)
* configure.in: Fix problem with plain --with-xinput
(#104266, Akira Tagoh)
2003-01-24 Sebastian Rittau <srittau@jroger.in-berlin.de>
* docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
patch.
Fri Jan 24 17:06:41 GMT 2003 Tony Gale <gale@gtk.org>
* docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
Thu Jan 23 21:15:29 GMT 2003 Tony Gale <gale@gtk.org>
* docs/faq/gtk-faq.sgml: Learn to spell Library
Thu Jan 23 20:56:56 GMT 2003 Tony Gale <gale@gtk.org>
* Sebastian Rittau <srittau@jroger.in-berlin.de>:
docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
Composite widget" to modern standards. (I.e. use gobject instead of
glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
* docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
code in Appendix C to reflect above changes.
* examples/rangewidgets/rangewidgets.c: From Roger Leigh
auto resize on page size change
2003-01-23 Daniel Elstner <daniel.elstner@gmx.net>
* gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
in addition to show_all in order to keep them symmetric. (#102201)
Wed Jan 22 14:18:46 2003 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
the end of the function, so there is a statement following the "out"
label in all cases (fixes #101961)
2003-01-22 Christian Rose <menthos@menthos.com>
* configure.in: Added "mn" to ALL_LINGUAS.
Wed Jan 15 17:02:18 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
Fix off-by-one error on the backward iteration loop,
that was causing the wrong range to be redrawn.
(at least part of #72734)
2003-01-21 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
vadjustment value after changing its bounds. (fixes #101963 and
#73562)
* gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid
unnecessary roundtrip failures. (#93500)
2003-01-19 Tor Lillqvist <tml@iki.fi>
Merge from stable:
Fix for #103614 and some other problems with GtkFileSelection on
Windows:
* gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
g_ascii_tolower(). Windows file names are case-insensitive for all
Unicode letters.
* gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
earlier, as it includes config.h unconditionally, and gtkprivate.h
redefines GTK_LOCALEDIR.
(struct _CompletionDirSent): Ifdef out the fields not used on
Windows.
(compare_utf8_filenames, compare_sys_filenames): Need different
comparison implementation for UTF-8 file names and system locale
file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
need to casefold all Unicode letters.
(cmpl_completion_matches, open_dir, correct_parent): Ifdef out
variables not used on Win32 to avoid warnings about unused
variables.
(open_ref_dir): Use g_path_skip_root() to skip past potential
drive letter in front of the leading (back)slash.
(open_new_dir): Ifdef out use of CompletionDirSent fields not
there on Win32.
(correct_parent): Bypass inode check also on Cygwin.
Fix bug noticed by Alex Shaduri: Tooltips and other
GDK_WINDOW_TEMP windows were activated. This looked very odd, and
was a regression from earlier versions.
* gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
(gdk_window_move, gdk_window_resize): Add debug logging.
* gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
WM_SIZE message for a non-visible (withdrawn) window, don't clear
the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
even if its size changes.
2003-01-16 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
(totally_invisible_line): Fix an incorrect optimization which
caused invisible paragraphs to be occasionally misrendered.
Wed Jan 15 15:55:47 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtksettings.c: Set the double click speed from
XSETTINGS when creating a new GtkSettings object
as well as when getting a notify. (#103601, reported
by Louis Garcia)
Wed Jan 15 14:56:09 2003 Owen Taylor <otaylor@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_size_allocate):
Show/hide the notebook event window as necessary,
we weren't previously keeping the visibility updated
properly. (#103599)
2003-01-15 Matthias Clasen <maclas@gmx.de>
* examples/menu/itemfactory.c:
* docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
example. (#103211)
2002-12-29 Murray Cumming <murrayc@usa.net>
Fixes #102168.
* gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
Actually implement the GtkTreeDragSource::row_draggable virtual
function in GtkListStore and GtkTreeStore instead of just checking
whether it's implemented at all. This means that DnD isn't broken by
gtkmm's virtual function wrappers. The alternative would be to
hard-code the TRUE return value into gtkmm's wrappers, but that's
part of GTK+'s implementation, not it's API.
Tue Jan 14 23:42:29 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c: fix compiler warning.
Tue Jan 14 23:29:00 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
make sure exposed pixbufs are clipped to the exposed area before
drawing, which is a slight speedup. (#102379, patch from Soeren
Sandmann).
Tue Jan 14 23:26:41 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): silly typo fix,
only free scroll_to_path when the complete tree has been validated.
This makes sure that we scrolled to the correct path.
Tue Jan 14 23:25:32 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_style_set): update the
background of widget->window and bin->window. (Fixes #96650, reported
by Dave Camp).
Tue Jan 14 23:24:02 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
updates before scrolling, avoiding a "selection streak". (Fixes
#101235, patch from Soeren Sandmann).
Tue Jan 14 23:22:13 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (validate_visible_area): actually put values
in the requisition using gtk_widget_size_request. (Fixes #100172,
reported by Kjartan Maraas).
Tue Jan 14 23:19:45 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
arrow animation timeout before we actually reorder the rbtree. If
we don't do this we can get stuck arrows,
(cancel_arrow_animation): new function. (Fixes #93629, part 2,
reported and testcase provided by Hans Petter Jansson).
Tue Jan 14 23:18:21 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
anchor_path should be start_path, not end_path. (Fixes #102618,
patch from Carlos Garnacho Parro).
Tue Jan 14 23:16:15 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
only correct new_pos if we don't move to the head/tail.
Tue Jan 14 23:11:55 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
the parent_iter if depth >= 1, so we send the reordered signal to
the correct level, remove debugging printfs which I forgot the remove
earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
testcase provided by Matthew Tuck).
Tue Jan 14 20:58:44 2003 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreeview.c (invalite_last_column): split out actual column
invalidation into invalidate_column(),
(gtk_tree_view_size_allocate_columns): invalidate column if the
new width is larger than the old width.
(fixes #102890, reported by Alex Duggan).
2003-01-14 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
GTK_MOVEMENT_WORDS.
* gtk/gtktextiter.c,
gtk/gtktextiter.h: Add some variant movement functions which
skip invisible chars, and do some cleanups.
2003-01-12 Tor Lillqvist <tml@iki.fi>
Merge from stable:
* gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
lookup.
* gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
gdk.def.
* gdk/gdk.def
* gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
* gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
gtk-demo}.exe and share/gtk-2.0.
* gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
Implement by setting or clearing the WS_EX_TOOLWINDOW extended
window style.
(gdk_window_set_type_hint): Add all cases to the switch (not all
do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
calling gdk_window_set_skip_taskbar_hint(). This means that GTK
won't know that the skip_taskbar hint is on for the window, is
this bad?
Wed Jan 8 18:43:03 2003 Manish Singh <yosh@gimp.org>
* gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
<string.h> for strlen.
* gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
<string.h> for strrchr.
* tests/testgtk.c (create_saved_position): "x" and "y" properties
for widgets no longer exist, use gtk_window_move instead.
* test/testtextbuffer.c (check_get_set_text): cast strlen to
int for g_error.
2003-01-08 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
the selection in the presence of invisible segments.
2003-01-07 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
to "select all" and "unselect all". (#102065)
* gtk/gtktextview.h (struct _GtkTextView): Add a comment that
the just_selected_element is unused.
* gtk/gtktextview.c (extend_selection): New helper function to
find the range that should be added to the selection.
(selection_motion_event_handler):
(gtk_text_view_start_selection_drag):
(gtk_text_view_end_selection_drag):
(selection_motion_event_handler):
(selection_scan_timeout): Support select-by-words/lines.
(gtk_text_view_button_press_event): Start a selection drag on
double/triple clicks. (#78499)
2003-01-06 Matthias Clasen <maclas@gmx.de>
Implement a utility function proposed in #102534:
* gtk/gtktextbtree.h:
* gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
(_gtk_text_btree_place_cursor): Now a simple wrapper around
_gtk_text_btree_select_range().
* gtk/gtktextbuffer.h:
* gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
(gtk_text_buffer_place_cursor): Now a simple wrapper around
gtk_text_buffer_select_range().
2003-01-05 Havoc Pennington <hp@pobox.com>
* configure.in: fix a stray bracket that was breaking the build
2003-01-05 Tor Lillqvist <tml@iki.fi>
* gtk-zip.sh.in: Use correct DLL and import library names, with
GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
(DEVZIP): Add gdk-pixbuf-query-loaders.exe.
* configure.in: Improve check for dimm.h.
* configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
gdk-pixbuf/Makefile.am.
* gdk-pixbuf/makefile.mingw.in
* gdk-pixbuf/pixops/makefile.mingw.in
* gdk/makefile.mingw.in
* gdk/win32/makefile.mingw.in
* gtk/makefile.mingw.in: Remove. Not maintained anyway.
* gdk-pixbuf/Makefile.am
* gdk-pixbuf/pixops/Makefile.am
* gdk/Makefile.am
* gdk/win32/Makefile.am
* gtk/Makefile.am
* configure.in: Remove makefile.mingw{,.in} from here, too.
* README.win32: Updates. Don't mention the now removed
makefile.mingw files.
* gdk/gdk.def
* gtk/gtk.def: Add a couple of missing entries.
* gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
* gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
earlier.
* gdk/win32/rc/Makefile.am: Add hack to help
build/win32/lt-compile-resource decide which kind of libtool
object file to produce.
2003-01-05 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
C-Down step through the sequence of paragraph ends (old behaviour
included paragraph starts). (#80340, patch by Narayana Pattipati)
* gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
Check for a tag toggle at the start iterator before calling
gtk_text_iter_forward_to_tag_toggle(). (#102090, patch by Daniel
Elstner)
2003-01-04 Matthias Clasen <maclas@gmx.de>
* gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
and /*< private >*/ as appropriate. (#97211)
2003-01-04 Tor Lillqvist <tml@iki.fi>
* Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
distribute gtk-zip.sh.in.
* gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
2003-01-03 Havoc Pennington <hp@pobox.com>
* docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
* docs/text_widget_internals.txt: add a file documenting some of
the text widget internals
2003-01-02 Matthias Clasen <maclas@gmx.de>
* gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
return NULL. (#102069)
2003-01-01 Matthias Clasen <maclas@gmx.de>
* gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
a main() in the library is obviously bad.
2002-12-27 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
cursor at drop point. (#72384)
(gtk_text_view_size_allocate): Update the horizontal adjustment
value. (#75694)
2002-12-25 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
selection wrt. to empty lines. (#90435, #90582, #91619)
* gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
Keep the cursor on screen. (#96929)
2002-12-24 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextbuffer.c (paste_from_buffer):
(clipboard_text_received): Let the user action span the insertion
and the deletion of the old selection. (#82844)
2002-12-23 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
Don't call gtk_text_iter_backward_sentence_start() if
count is zero. (#99115)
* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
move_cursor() even if the cursor hasn't moved, since it has the
side effect of canceling the selection. (#81395, #98537, #98333)
2002-12-22 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
with empty ranges. (fixes #101564 and #80637)
2002-12-21 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
sets the window style and extended window style, and adjusts the
width and height to take the window decorations into account
earlier. The adjusted width and height used to be ignored. Remove
the local x, y, width and height variables, no need to further
confuse the code by having local copies. (Partial fix, I hope, for
#101588)
(gdk_window_move): When moving top-level windows, take title bar
and border width into account, offsetting the coordinates before
calling SetWindowPos().
(gdk_window_set_decorations, gdk_window_set_functions):
Reimplement, taking into account the peculiar semantics of
GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
(gdk_window_get_decorations): Implement. (#98981)
(gdk_window_set_type_hint): When setting
GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
(#79036)
* gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
2002-12-21 Matthias Clasen <maclas@gmx.de>
* gtk/gtktextview.c (gtk_text_view_set_background): New static
function to set the background of all windows.
(gtk_text_view_style_set): Use gtk_text_view_set_background().
(gtk_text_view_state_changed): New function; change background
according to state. (#88126)
2002-12-21 Havoc Pennington <hp@pobox.com>
* gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
|