diff options
author | Suren A. Chilingaryan <csa@suren.me> | 2019-09-01 00:00:32 +0200 |
---|---|---|
committer | Suren A. Chilingaryan <csa@suren.me> | 2019-09-01 00:00:32 +0200 |
commit | ca9627e70852f6b2e835660df870fe3ab405882d (patch) | |
tree | 0a008b1d5b16fa0679a195ed7b5662c7891f591c /x11-libs | |
download | darklin4-ca9627e70852f6b2e835660df870fe3ab405882d.tar.gz darklin4-ca9627e70852f6b2e835660df870fe3ab405882d.tar.bz2 darklin4-ca9627e70852f6b2e835660df870fe3ab405882d.tar.xz darklin4-ca9627e70852f6b2e835660df870fe3ab405882d.zip |
Initial import
Diffstat (limited to 'x11-libs')
45 files changed, 5854 insertions, 0 deletions
diff --git a/x11-libs/gtk+/Manifest b/x11-libs/gtk+/Manifest new file mode 100644 index 0000000..fb53237 --- /dev/null +++ b/x11-libs/gtk+/Manifest @@ -0,0 +1,42 @@ +AUX gtk+-1.2-locale_fix.patch 419 BLAKE2B 63ac434efd157c988bc9661c0c67c9803a60a473c4a768ee6ec5046b6f34977b37d3e36490c8ccac44ad0cd00e333eb83c23787a554b02ddb113de6a87bc68d9 SHA512 7350d2b60e4d66219ec57ce56f9e2cd3c9c2b5c399d8e35c49243a0383b3455ba4225257bcd1303ad5b4ef98ea6b6ff401afde43b1b3841eeac2527443f7cd33 +AUX gtk+-1.2.10-alt-linkage.patch 3397 BLAKE2B 117884c2092f759be0264ece131b5ca160ee1174f636ceb873919e413642216341712547acca515fdedd0cdf4d0be8a4202635fc69b8ed47f26f65c19b8d3946 SHA512 4408d158df7652e4a324639ea6b65845aa0c8c4fd2f441efaefc18f20274a261b3f8ffdcfbbaa68342d007339605dc2edf73bd4271943f8afd2d8ae25f9d4a73 +AUX gtk+-1.2.10-as-needed.patch 19865 BLAKE2B ba24ecbacecb77571ed595ffcff9b882493239d42f1f2636db94875d1daa0e3a8613329fc88f314474f89b11c92ed3f4e56e3fdace45189738bda9760b0c3df6 SHA512 e69ab1a967218889dda64e8a87a390140ab70585b0ad031c3d6cbd5431857c0bf9c76300bb0f9ca8dfd703c0297c618d806795df1f18a5ab23fe3f06fb11c5a2 +AUX gtk+-1.2.10-automake.diff 7312 BLAKE2B fc69f6fa4d816516bc5c032faa9b6b3d7c6adb855f322675274aa82fb43b2b78615739cad04b629efc3bca400142f69ca58f6e96802b41a8e6b17dbf6812a5b6 SHA512 65540b0580c31c0289957e7708969732f034529dccae176abce6d498cba04404237ea01a05a868e1e980a9f3eb83752609eea2e098b5802cbe94a71fbabcd595 +AUX gtk+-1.2.10-cvs-border.patch 3134 BLAKE2B 2a76463367985bd871bcfbe571cc9adbad644db9f0ecc25a147eb898a76da14bfb159a6a61e6deaf78771adfa98bc00ffa68baa4a32307dbff5e13a940eff1f9 SHA512 abc15fbbcc08a5d604ca4377a10c8b856bb607b8e75dcf68ca6d15843de1a99d531dd8cb041b6a4ca5d0f7dc1f47461f503e28a24e56e685c3e5a58748132ad1 +AUX gtk+-1.2.10-cvs-dndnewwindow.patch 792 BLAKE2B 5bbf213bc47f06d1f88aa65a89bc207985ab709b5a52cf3134f9488062a57d185dc6fc14af2d09d9e050b299c8cfaea17e84c5393119ae4f30a2eb1bcc5ec51e SHA512 72003120e133ff602a01f264328e0819f4bb9a47890245fd404adefb3bddf937537dc012051c485b0a92cba61ff21a1dc09622f8fb0d8fc13101c8fba8019553 +AUX gtk+-1.2.10-cvs-expose.patch 808 BLAKE2B 23b33f32df4ffd7a932d32fef068853b4f31f9a5031318f6623f72dcc3d27dac08cab8792aedf7e35d70bc2202194ec22bbef6f627d2036e3f2bdbe65624f44c SHA512 198c1a50bbe1457b09f9504bd0d74a3071741b5cb0497160af192d78cecd194770f41949c2f02c5137bede69afc52e270ac08e6904aa9db7c4ad0a262c81ca6f +AUX gtk+-1.2.10-cvs-focus.patch 841 BLAKE2B 5ad5f4c22cd04d7e6bdf073d6b593d41b14bd6f0fcaf72c2c1f98bc4abdd1996fbebb0c2d3b96d3490aa7d2cac1c427d471c5a7eee3230e4591b9559cb4a1ee2 SHA512 246b2dd6176976d7d7c789c90c39b1e0ea528ac5893b54d9358cc18d2fba30632b389b77c0aa445a4776f64430521ce0ecc6cbfd61f88c70d666f15b758e43aa +AUX gtk+-1.2.10-cvs-labelvariable.patch 358 BLAKE2B af09b9005b9ded825e8cd60906d5583624c36c6675a2cc7aa5678380ff2e7c8ae3fc0ac490e2be48594dfcd3225db5405698c492bba5786b470a1f447d6b729b SHA512 6e903e0fb56f2c3b112f7e8c5d3ffff71c3faf2449b65de4ee0a6aa929e6cfc9194845234b44194c16b45592b9ea4193bf91a67c2245688ab07f4c12173b15a0 +AUX gtk+-1.2.10-cvs-netwmpid.patch 671 BLAKE2B 68d59832779a5536f0cf1dca873c0b2ee62cc1b44f0389d1eee3c48f1681a387df600a85a611eb81e839e68b5317ac3e44bfcd44249eaa0e1d55f9e7854fe7dd SHA512 b00c0c888900498e9e624c09c5a432bc275717c11daa55c3b557d3b68e7000256167c2dca90b00e2915b4c2af766d9fcbc0a236675dfa90b47eb86e1dd0f9ecc +AUX gtk+-1.2.10-cvs-rclocale.patch 3757 BLAKE2B 10261c74a6409f8ed278d5ddfe1a9b3fd1efbcb4560b1379a6fa0545b54a9d62c74a2e779fa120cfa3c7044f7608fa60153929294f0b1ab8ee1a47c0d7c780fc SHA512 36a46c90d9a48dd3ef2b33eb38a0963913a5d414fdbae055775f14356200b5cc1942635b28e360b14cd8826066147248f587b5bc10bfc8aa73b2d1aaf367fcda +AUX gtk+-1.2.10-m4.patch 220 BLAKE2B 70a7f1bfb12fd9ccff65d014e4fc7c4e4f8417f20dd9870a54ad773d4f781966ec0270fa7e1a60fced36678aafe734b1e48ea31ede75b5286e74ae84038cee53 SHA512 4900aad1e8b84f3fa9bc497455fe28d521950708e33274da5776f18444f19bdb383d65406142550f2fc6fb7bffe5ac5fd7b1c40ac2d008ab166a1a0c6a8b1d8b +AUX gtk+-1.2.10-mdk-argb.patch 346 BLAKE2B 51ef234bb309ad4c8141740712e04c12f23f2bf3dffb2733eeb8002f6dff821c17144438099b19d47f9c1ebc1d0f2b6eec01b78409c36e7a56c42b3e5288d1e7 SHA512 273ad42b6493815b163b1d22c80142cbb584e84b4d0cde024986139c5006af07f5849ffe1e2c8147777213921797b0e6cbb19a036352ba457f07438f88228a47 +AUX gtk+-1.2.10-mdk-defaultcolor.patch 1134 BLAKE2B b3797e5e5937ce0e55c788f92faa8280fe3b1ecc44332996fedee7c61b90532c56a3d47fab846d03d77ef116de64d14ec3440273817b6f4c65040e50c9b599d3 SHA512 8ee26856992732eb9e625adc8bff445c87f1c0996b90075a4df67465bc52dc013e6ccdb7479c1046a52e3096a0d55e0b320dd76d53ce0f2cee7e531aa686ce4a +AUX gtk+-1.2.10-mdk-fileselectorfallback.patch 1273 BLAKE2B 30860bf460172cd14c166a62c1444e1494a7e8275a29f2412eb2949d914b1f3c3c823e2ad2fd9a1ca9c2c6c644ee273f6c64807af143abb6f4991db303606945 SHA512 9637871f84e310a4d6fb83eee1d1401af71ff39e9d5cf388fe600ee98b87e643b7a0ccf30d212e4f7630d4e58f93e7140100787c84523bcafa9a340b3418b244 +AUX gtk+-1.2.10-mdk-gtklist.patch 1940 BLAKE2B c11518207f4ed12ab90b5d192b4ede54a01c7a2d5fa7e0991bdd5a106b94511c23e29f93baa4afab6e432cf7bb4618ecf64cf6459d375fcdbee7dc0f02d249ef SHA512 4215619b27a85678fcfc0de15a09685c5af3f6cc2304fad8f69f0c077666ebe27566b3c58a83bef54a14f7d8d2908fee39afe570065703a8fcc6c4435f96d4b4 +AUX gtk+-1.2.10-mdk-gtkrc_files.patch 17215 BLAKE2B a4adcc0e34d1f4797ca7dd6d09f4280d27451202967e1814599f2043d60fd97e49a64a04a8a340fc7c5a4671a5eb9ea3e0c36e090477b49eaa971d1cd3bb96c0 SHA512 1d65622cbbaab3186a635772291648ea86d81f6f163217fc26e9ea1c9889b0294e8cba98b1b588081c944225f6931d42f4213d8ab79f238fee52b74554553202 +AUX gtk+-1.2.10-mdk-libdir.patch 376 BLAKE2B 34326a1750a6dc94d8d425d383e6d5474d38aaa059bbadc7485cbf1de24235bbf36f06ae6ca76361c588e4530ced6ba603677110b84893cfb709bcc55308438e SHA512 7118701a0f59f1019336d9876b2e68b8891b9392c9e53ecdb8e5626e2bf8c6b42a2f0213d8655464593113cf3aa1544bbb53c364f480475d63faf1843b4fae66 +AUX gtk+-1.2.10-mdk-themeswitch.patch 2350 BLAKE2B 38b6e535af81deabfa7330c936409a5c748446f090f184df6ff048286ade9f50dedc9035f37874c3f15d8ff4045c40d0fc061594dfe262f3045a4c0d77d46853 SHA512 b86c153136c9629c10eb49ccdb6723728f0f27e2f766dd6c02246d068ea7a69060ab33523ea187e967b21b0e8f19516aa4fa32ca253ef8b0706a2da5835f9948 +AUX gtk+-1.2.10-rh-alignment.patch 654 BLAKE2B 9d6133077dd9d7a0fb922da0ef2c6ab8fb91fe26049a7b10e37ee41a0f1ed7e56bde3b3e4caf7accc3705e3a478ccc6b8f12149a2d973c61cc38aa119e61f7cd SHA512 3d0fb80acb19ec0bc61b177cee33b57c5c8474c5802416ffe32539450fb16755e3b1342aad60e7ceb2e86a24136020373ddf22728102cb9f4700d9649b762935 +AUX gtk+-1.2.10-rh-bellvolume.patch 222 BLAKE2B 7b22bb3cc712ee42b6981ed408f9fb8747d3722de3a14adee5baf9b767cf11391aa5ae8d794ccf8d1f0f32804352245fc8497973ce13e3198b33be9c2abec8d3 SHA512 681869e3636e8eceec3f0f636fcf91792932e3b976aff698531c005b525f10ea03aa167d377cbeb51b89d358040ae8adf1c5b1f201de31fc0329be7589297dc2 +AUX gtk+-1.2.10-rh-clistfocusrow.patch 1143 BLAKE2B 5bdd3a838730fa3ff7c760519db46f97b1ca4fa9dde97c4613cef6142049b3eab1d53024cdec346280d39d85f1517525ebbb80a54fa074c97409ac9948ad2175 SHA512 74ca9ac15d84d42784e82e249dabae5eba5b0ed664577aed6ccb8b1f9b5403c2c8ee3cbea200857d7d0adad0e18b1242bdcff81a468a24f9ddf8abf064691104 +AUX gtk+-1.2.10-rh-ctext.patch 3652 BLAKE2B 21987434494ee8f3b04b00319c793cf3a3996fc360a55c267ccce7c5a0eb755bee77a6e176a71376a12ada3a45792deea9e2c64d5d724cc22437b22512b091fc SHA512 3702da7de2886bfe22613b3cab6666cd2ef82394875fcb70ca6b576bb9acf445cc9d353fa81e177025f5ec7ea416e1c0ba803242d2fd01f13ca8ba64f64ebf97 +AUX gtk+-1.2.10-rh-deletedir.patch 5054 BLAKE2B 56f59983723761e17e852a4830d3f7ccd0c1423996e7d542d9d78c128d295c73ecb255f8025a296b3e54d7d4721a5acaf724910519461cab57163c12620c27a8 SHA512 e80804fd29309346912c3838f93be224dcc1cb3b42c5bc1204792d9e2f42b2c7dbf247fa37bc83c2dedf9c1566797698fdbc020759b7d2a7f244974fd39f9755 +AUX gtk+-1.2.10-rh-encoding.patch 4335 BLAKE2B a3484acdffd6507b23c5aebfb9b1bada35b8240ceff10ce177e08fe35e481ea0ec4805553afeb889f01125b3550780f1aa710824cbc36af3ce52e5c1c2167403 SHA512 400b7f359e022557f487f4b6baccdd483c90343240cecbf97e92b75b2b608ddcf452eaca4048039b7b9f7b0941f8e7c1edb663a22fe4bbe66edb3bd173169bc0 +AUX gtk+-1.2.10-rh-fontwarning.patch 1388 BLAKE2B cd82042a18570f174e9ef77c2a9cea497aeee171f98385105c84f6b6c5286553b36713e50ff8227b2ed6a0d33ffaa80cc82732490da7fade34659288cf595c47 SHA512 98ed7a0b5ef7676da35116e8fd8e79ee64de581e283e96b022a476a4c600718dc36b1ae96444200e783db731b1f85f8d1c104c39cc5273a4f73e1cfa5f789eac +AUX gtk+-1.2.10-rh-kpenter.patch 1743 BLAKE2B 0984711df592fa316673b3135bbdb11b66da5e2fa5644b7e9edd038cf9cad6736fd3a8d52fb4372aa4c5fc8a0236a685911c3e7a7aaeb54a3f84634d574fb41a SHA512 6e9d30914a90f83b26264c182914e81902b22cebffbcfd1213fa9bf94d265141c00b76ef38573c900f53faa2cc1b74a57d6e650a39b16f90f0a896fb79f1f7f1 +AUX gtk+-1.2.10-rh-localecrash.patch 674 BLAKE2B 48c3c8db111878900881900f299f0392bb01e6c383103086780094cdbaa2ccd034c86c88020e159afabd5f5402d754b84b996276285de944b21b2981470dfcf5 SHA512 f152704f6886b1b6de7457a827c72fd139a3a0c911b65c637e84c1493f5b3ba7259c3bc7f61d46e167c8f49e19c06470420c6896ca4e7e0326d6e226ff84ce11 +AUX gtk+-1.2.10-rh-m4.patch 417 BLAKE2B 344fdc11482e990ff8afd501020d278a4e7e2656445a51d6d20f4178b318f01f3fbe65b568c3c6d0e0e8762321798c2947e6208abb20ec087ba92d5739377ec8 SHA512 8ca88eaf52fc1c838f23a8e845e8127e3fed892f32f1c3b7e4aa866383b8456cb6465255d8c35643cc89cdaa164bee9c265ebf4539213fa1aa227bb0e62f414b +AUX gtk+-1.2.10-rh-missingchar.patch 976 BLAKE2B 5dd9bdd7b2d4059f11fb58007a00d938befb2d735432b1adc8e67257c87cfab46546d8332df58d638dcefbf06fd40903835560cd017653ea0dc98a35ce8d4201 SHA512 bfec0b3944c26644882b5dbe8a8887f51659769db6341e9a1abb2b2e1837e67e5993a8779782e56ac164a4757febb4fd1be52b892dc5779388dbbf9d3c56cf55 +AUX gtk+-1.2.10-rh-pixmapref.patch 540 BLAKE2B e4e1eca342e97aa72c51b0128ad2640db53f020dad75a94263c1c3e32c4263a7678449e7b91e76ad3c978d479bc717d916989aa666d9f19ad0759e1641aeaa13 SHA512 6ef7341c3e6ea2e9985f40477839a9d591d7c8727d6069596e07768d086f142b967b6faec1163b3a5038c4c6713c86d3b92c820ece10bd409f2b88978e079d08 +AUX gtk+-1.2.10-rh-troughpaint.patch 613 BLAKE2B bcc5b683f19528d78680d65830017e7ef22b24e6f3e6f3600928f3fcbf4e4c84bdb000e483123e38a4da39e55edb8aacd31c576b45faa76b2d4c9d63617c7f93 SHA512 d39bb917035f6eb68a61fef356fcdb9c43c522e28c583f416e82e5d4d091910fae1f56a8c9d82482a5381c76a57cbad9ed7556d0f3c0e04fd2ea65eb6b5aa45c +AUX gtk+-1.2.6-ximian-noborder.patch 2168 BLAKE2B b0534c8bb5dc2161d08cbd51e34c2bf56a704abdee63b0ee7875cb66a45c6014264c2e36732e35b4d1c2f8dfd742c68b682712cc3bb7775ac4055970de2b4f15 SHA512 7a11cbe7db66e9aace133d83c09402c5e9703c358ba67966cad2c96f5efcefaad70c341dd6702e303c89a95f2304648eacd7cfadb01154b5c5c443f5c006a803 +AUX gtk+-1.2.8-advanced-gtkfilesel.patch 41292 BLAKE2B 05682a74ec8faf622ece7a472621b63c6bbdb1860660928b91f100d3b9961768d03f7df45a3a676b38fd14a0ab5667c66c0d6eb065b7a599d895370b0dcbc334 SHA512 51f87accf3c7e20b9cd6341d402555e939716054e018a1a04caba4b33b85dd454a0625cdcd815662bdd79ea9a156c9a2ef91317cf67cf3b1b30b72ad2d5ac092 +AUX gtk+-1.2.9-be.patch 11736 BLAKE2B a21a7ecdedae81921e09ab66a9d80be176c0c88216925b81523d69ce865e64d47ec16118c458c7ba299371fe399017a495aecd19df69591bb01ab746ee31167e SHA512 2e206e5ee72270d1ae613d9f7c87f1d6a232137cfcbdf39a22932a285da9e2bfeb8630a97f3b3b074f5673b2805bacfd18f0de2f8090aa6968ed060c56d23201 +AUX gtk+-1.2.9-rc.patch 5168 BLAKE2B 79897d3f55fd70fe2d9c38bfc644600b2d122e486c8ecd2b082673bf6ceea13e371af7bcc81d3baec99508de63fa13577edd0aa7618beec45916806dc863b594 SHA512 b8e9045dd5ae378b77b6bae48f2403bc26184e180cb65da2718e0beaf1e47562d578507e965f8c9f6d00f4ab020be8cde0c88492ac9ac84e225be7d7b520c462 +AUX gtk+-1.2.9-rc2.patch 1253 BLAKE2B 3bd293dd3db4fd0409a9ad482b00eba100f887ced5ec44201c6b228d73b0e6b1b95471b7e275482ff5a5b7880e13cc375c498ef0c65bdb4e62c9e2913f6cf3db SHA512 de1a2eee899654081075ca74d2f9d2b46a327a90ee03aea858cc6b6db89bc76ec3bd17567189e3b69699bbd3254f8b4d552926823f554d5bd7a3732e1974e7c1 +AUX gtk+-ds-gentooalt.patch 16835 BLAKE2B 7a620287bce5b8fb004a7b99d5ff600537c557c2ab0442073ef526eeb1170e34ddfd1f6347a819becdff6d77b102315c3fadaf723aadc39e0a56721cc3926fb1 SHA512 3f3627e806a6d561e153fabc3cf917ec12ddfb5a32361b2719da38c4491fcc070d2cd4df7fae74170a8789a1344536bc56d334a8faf53d07a2b84d539a13f352 +AUX gtkrc 627 BLAKE2B 57af25dcadfa09ea784ac485db383753deda23c42ce22582f03041abf7a061e70eced09592ab0750786bea3555d760febc913762b8369b50b327fbd03d918279 SHA512 9fb246b8e483cfb5f8d3666397d50547ad0cdaa8bdf5737e67e14dd100952438ac93396f0d752306c02aa4934453a43eb360093c4e323e99bbe0706c40171dc4 +DIST gtk+-1.2.10-r8-gentoo.diff.bz2 81223 BLAKE2B 6c83789e1322a19f806052a49a969155bb50e99bbdf26253f4da0311c3333c4242dd15e7c944a2aea69d35be3bbd0832ba28c3ae15b67db28645eb797030d5b1 SHA512 aaef9275ff6330a9fe1cbe1e40def181329d79cd33eb2b2ff5ae9cba5fa57e706716233ac7515f621d913f81343eb8244c6669e6411f7d50ca69187bf8d4fd86 +DIST gtk+-1.2.10.tar.gz 2868322 BLAKE2B e6c36b089159d126d2e8f4ae6f282252336e38781a3f1a99500341b88df79124b7b9696a526d308f43591d01e77d16a8f28dad9c6c93e20c3ea85c98861f9b69 SHA512 6a05062520954287b0e24a95169d18c216145ee79d1fa7f54222db32c8e39e011e3dc49886d3bc4de1cc1ebd71f5744e41891cde8d5c2759f637e71c390a235f +EBUILD gtk+-1.2.10-r15.ebuild 4286 BLAKE2B 1860e60336929544ab4348d0e66911e164878e53868b2343e9404eef0c2b48725c60c6e3d3802725ed094e95984b894208eb101b5a1afd7723559a21310f5678 SHA512 60b9257067f144d0ce7fa5b8c132f5036902f801c743f7656ce5952faa4e5dec197070ad0fdf79da717b8a1a3db4be32475b2cfef56c5f1a23765db29f92bee3 diff --git a/x11-libs/gtk+/files/gtk+-1.2-locale_fix.patch b/x11-libs/gtk+/files/gtk+-1.2-locale_fix.patch new file mode 100644 index 0000000..a3fd198 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2-locale_fix.patch @@ -0,0 +1,19 @@ +--- gtk/gtkrc.c.~1.40.2.17.~ 2001-07-10 20:06:35.000000000 +0200 ++++ gtk/gtkrc.c 2003-03-05 16:56:10.000000000 +0100 +@@ -453,7 +453,7 @@ + + if (!initted) + { +- char *locale = setlocale (LC_CTYPE, NULL); ++ char *locale = g_strdup (setlocale (LC_CTYPE, NULL)); + char *p; + + initted = TRUE; +@@ -558,6 +558,7 @@ + + if (tmp) g_free (tmp); + } ++ g_free (locale); + } + + i = 0; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-alt-linkage.patch b/x11-libs/gtk+/files/gtk+-1.2.10-alt-linkage.patch new file mode 100644 index 0000000..04a967c --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-alt-linkage.patch @@ -0,0 +1,85 @@ +diff -uprk.orig gtk+-1.2.10.orig/gdk.pc.in gtk+-1.2.10/gdk.pc.in +--- gtk+-1.2.10.orig/gdk.pc.in 2000-11-30 04:18:35 +0300 ++++ gtk+-1.2.10/gdk.pc.in 2004-08-26 18:05:20 +0400 +@@ -7,5 +7,5 @@ Name: GDK + Description: GIMP Drawing Kit + Version: @VERSION@ + Requires: glib +-Libs: -L${libdir} @x_ldflags@ -lgdk @INTLLIBS@ @GDK_WLIBS@ @x_libs@ -lm ++Libs: -L${libdir} @x_ldflags@ -lgdk + Cflags: -I${includedir}/gtk-1.2 @x_cflags@ +diff -uprk.orig gtk+-1.2.10.orig/gtk/Makefile.am gtk+-1.2.10/gtk/Makefile.am +--- gtk+-1.2.10.orig/gtk/Makefile.am 2004-08-26 17:09:34 +0400 ++++ gtk+-1.2.10/gtk/Makefile.am 2004-08-26 18:05:20 +0400 +@@ -32,7 +32,7 @@ libgtk_la_LDFLAGS = @STRIP_BEGIN@ \ + @x_libs@ \ + -lm \ + @STRIP_END@ +-# $(top_builddir)/gdk/libgdk.la ++libgtk_la_LIBADD = $(top_builddir)/gdk/libgdk.la + + + # +@@ -424,10 +424,9 @@ uninstall-local: + # test programs, not to be installed + # + noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple # testthreads +-DEPS = libgtk.la $(top_builddir)/gdk/libgdk.la ++DEPS = libgtk.la + LDADDS = @STRIP_BEGIN@ \ + libgtk.la \ +- $(top_builddir)/gdk/libgdk.la \ + @x_ldflags@ \ + @x_libs@ \ + @GDK_WLIBS@ \ +diff -uprk.orig gtk+-1.2.10.orig/gtk/Makefile.in gtk+-1.2.10/gtk/Makefile.in +--- gtk+-1.2.10.orig/gtk/Makefile.in 2004-08-26 17:09:34 +0400 ++++ gtk+-1.2.10/gtk/Makefile.in 2004-08-26 18:10:32 +0400 +@@ -137,7 +137,6 @@ lib_LTLIBRARIES = libgtk.la + libgtkincludedir = $(includedir)/gtk-1.2/gtk + libgtk_la_LDFLAGS = @STRIP_BEGIN@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) -export-dynamic @GLIB_DEPLIBS@ @x_ldflags@ @x_libs@ -lm @STRIP_END@ + +-# $(top_builddir)/gdk/libgdk.la + + # + # setup source file variables +@@ -198,8 +197,8 @@ gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.e + # test programs, not to be installed + # + noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple # testthreads +-DEPS = libgtk.la $(top_builddir)/gdk/libgdk.la +-LDADDS = @STRIP_BEGIN@ libgtk.la $(top_builddir)/gdk/libgdk.la @x_ldflags@ @x_libs@ @GDK_WLIBS@ @GLIB_LIBS@ -lm @STRIP_END@ ++DEPS = libgtk.la ++LDADDS = @STRIP_BEGIN@ libgtk.la @x_ldflags@ @x_libs@ @GDK_WLIBS@ @GLIB_LIBS@ -lm @STRIP_END@ + + testgtk_DEPENDENCIES = $(DEPS) + testinput_DEPENDENCIES = $(DEPS) +@@ -228,7 +227,8 @@ X_CFLAGS = @X_CFLAGS@ + X_LIBS = @X_LIBS@ + X_EXTRA_LIBS = @X_EXTRA_LIBS@ + X_PRE_LIBS = @X_PRE_LIBS@ +-libgtk_la_LIBADD = ++libgtk_la_LIBADD = $(top_builddir)/gdk/libgdk.la ++libgtk_la_DEPENDENCIES = $(top_builddir)/gdk/libgdk.la + libgtk_la_OBJECTS = gtkaccelgroup.lo gtkaccellabel.lo gtkadjustment.lo \ + gtkalignment.lo gtkarg.lo gtkarrow.lo gtkaspectframe.lo gtkbin.lo \ + gtkbindings.lo gtkbbox.lo gtkbox.lo gtkbutton.lo gtkcalendar.lo \ +diff -uprk.orig gtk+-1.2.10.orig/gtk-config.in gtk+-1.2.10/gtk-config.in +--- gtk+-1.2.10.orig/gtk-config.in 2000-10-21 22:20:40 +0400 ++++ gtk+-1.2.10/gtk-config.in 2004-08-26 18:18:31 +0400 +@@ -1,6 +1,6 @@ + #!/bin/sh + +-glib_libs="@glib_libs@" ++glib_libs= + glib_cflags="@glib_cflags@" + glib_thread_libs="@glib_thread_libs@" + glib_thread_cflags="@glib_thread_cflags@" +@@ -107,6 +107,6 @@ if test "$echo_libs" = "yes"; then + fi + done + +- echo $libdirs @x_ldflags@ -lgtk -lgdk $my_glib_libs @INTLLIBS@ @x_libs@ @GDK_WLIBS@ -lm ++ echo $libdirs @x_ldflags@ -lgtk $my_glib_libs + fi + diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-as-needed.patch b/x11-libs/gtk+/files/gtk+-1.2.10-as-needed.patch new file mode 100644 index 0000000..aa295f2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-as-needed.patch @@ -0,0 +1,696 @@ +--- gtk+-1.2.10/acinclude.m4.orig 2006-05-24 23:23:51.000000000 -0700 ++++ gtk+-1.2.10/acinclude.m4 2006-05-24 23:23:19.000000000 -0700 +@@ -672,7 +672,7 @@ + AC_DEFINE(HAVE_STPCPY) + fi + +- AM_LC_MESSAGES ++ gt_LC_MESSAGES + AM_GTK_WITH_NLS + + if test "x$CATOBJEXT" != "x"; then +--- gtk+-1.2.10/gtk.m4.orig 2006-05-24 23:32:00.000000000 -0700 ++++ gtk+-1.2.10/gtk.m4 2006-05-24 23:36:16.000000000 -0700 +@@ -1,6 +1,11 @@ + # Configure paths for GTK+ + # Owen Taylor 97-11-3 +- ++AC_DEFUN([GTK_AC_DIVERT_BEFORE_HELP], ++[ifdef([m4_divert_text], [m4_divert_text([NOTICE],[$1])], ++ [ifdef([AC_DIVERT], [AC_DIVERT([NOTICE],[$1])], ++ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++$1 ++AC_DIVERT_POP()])])]) + dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) + dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS + dnl +--- gtk+-1.2.10/configure.in.orig 2006-05-25 05:45:06.000000000 -0700 ++++ gtk+-1.2.10/configure.in 2006-05-25 05:44:08.000000000 -0700 +@@ -1,6 +1,8 @@ ++builtin(include,gtk.m4) ++ ++ + # Process this file with autoconf to produce a configure script. + AC_INIT(gdk/gdktypes.h) +- + # In the following, there are a the following variants + # of GLib cflags and libs variables + # +@@ -12,12 +14,11 @@ + # glib_thread_cflags: cflags to store in gtk-config for gtk-config gthread + # glib_thread_libs: libs to store in gtk-config for gtk-config gthread + ++AC_CANONICAL_TARGET + # Save this value here, since automake will set cflags later + cflags_set=${CFLAGS+set} + +-dnl we need to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they +-dnl are available for $ac_help expansion (don't we all *love* autoconf?) +-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++GTK_AC_DIVERT_BEFORE_HELP([ + # + # Making releases: + # GTK_MICRO_VERSION += 1; +@@ -32,9 +33,8 @@ + GTK_MICRO_VERSION=10 + GTK_INTERFACE_AGE=1 + GTK_BINARY_AGE=10 +-GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION +-dnl +-AC_DIVERT_POP()dnl ++GTK_VERSION="$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION" ++]) + + AC_SUBST(GTK_MAJOR_VERSION) + AC_SUBST(GTK_MINOR_VERSION) +@@ -44,9 +44,9 @@ + AC_SUBST(GTK_VERSION) + + # libtool versioning +-LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION ++LT_RELEASE="$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION" + LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE` +-LT_REVISION=$GTK_INTERFACE_AGE ++LT_REVISION="$GTK_INTERFACE_AGE" + LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE` + AC_SUBST(LT_RELEASE) + AC_SUBST(LT_CURRENT) +@@ -54,11 +54,8 @@ + AC_SUBST(LT_AGE) + + # For automake. +-VERSION=$GTK_VERSION +-PACKAGE=gtk+ +- +-# Save this value here, since automake will set cflags later +-cflags_set=${CFLAGS+set} ++VERSION="$GTK_VERSION" ++PACKAGE="gtk+" + + dnl Initialize automake stuff + AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define) +@@ -67,42 +64,40 @@ + AM_CONFIG_HEADER(config.h) + + dnl Initialize libtool +-AM_PROG_LIBTOOL ++AC_PROG_LIBTOOL + + dnl Initialize maintainer mode + AM_MAINTAINER_MODE + +-AC_CANONICAL_HOST +- + dnl figure debugging default, prior to $ac_help setup +-dnl +-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++ ++GTK_AC_DIVERT_BEFORE_HELP([ + if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then +- debug_default=yes ++ debug_default="yes" + else +- debug_default=minimum ++ debug_default="minimum" + fi +-AC_DIVERT_POP()dnl +- ++]) + dnl declare --enable-* args and collect ac_help strings +-AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default) ++AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],, ++ [enable_debug="$debug_default"]) + AC_ARG_ENABLE(shm, [ --enable-shm support shared memory if available [default=yes]], +- echo $enable_shm, enable_shm="yes") +-AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]], +- , enable_ansi=no) ++ [echo "$enable_shm"],[enable_shm="yes"]) ++AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]],,[enable_ansi="no"]) + AC_ARG_WITH(glib, [ --with-glib=DIR Use uninstalled copy of glib]) +-AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]], +- , enable_xim="yes") +-AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback], +- , enable_xim_inst="maybe") +-AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes) ++AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]],,[enable_xim="yes"]) ++AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback],, ++ [enable_xim_inst="maybe"]) ++AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],, ++ [enable_rebuilds="yes"]) + AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ]) +- + AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ]) +-AC_ARG_WITH(native_locale, [ --with-native-locale=[yes/no] Use native locale support [default=no]],,with_native_locale=no) ++AC_ARG_WITH(native_locale, [ --with-native-locale=[yes/no] Use native locale support [default=no]],, ++ [with_native_locale="no"]) ++ + + if test "x$enable_debug" = "xyes"; then +- test "$cflags_set" = set || CFLAGS="$CFLAGS -g" ++ test "$cflags_set" = "set" || CFLAGS="$CFLAGS -g" + GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG" + else + if test "x$enable_debug" = "xno"; then +@@ -113,16 +108,14 @@ + fi + + AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}") +- + # Build time sanity check... + AM_SANITY_CHECK + + # Checks for programs. + AC_PROG_CC + AC_ISC_POSIX +-AM_PROG_CC_STDC ++AC_PROG_CC_STDC + AC_PROG_INSTALL +-AC_PROG_MAKE_SET + + changequote(,)dnl + if test "x$GCC" = "xyes"; then +@@ -144,7 +137,6 @@ + fi + fi + changequote([,])dnl +- + # Honor aclocal flags + ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +@@ -158,8 +150,7 @@ + AC_CHECK_PROG(INDENT, indent, indent) + + REBUILD=\# +-if test "x$enable_rebuilds" = "xyes" && \ +- test -n "$PERL" && \ ++if test "x$enable_rebuilds" = "xyes" && test -n "$PERL" && \ + $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \ + test -n "$AWK" ; then + REBUILD= +@@ -194,55 +185,58 @@ + + dnl Check for nl_langinfo and CODESET + AC_MSG_CHECKING([for nl_langinfo (CODESET)]) +-AC_TRY_COMPILE([#include <langinfo.h>], ++AC_TRY_COMPILE([#include <langinfo.h> ++ ], + [char *codeset = nl_langinfo (CODESET);], + AC_DEFINE(HAVE_CODESET,1,[Have nl_langinfo (CODESET)]) +- have_codeset=yes, +- have_codeset=no) ++ have_codeset="yes", ++ have_codeset="no" ++) + AC_MSG_RESULT($have_codeset) + + dnl The DU4 header files don't provide library prototypes unless + dnl -std1 is given to the native cc. + AC_MSG_CHECKING([for extra flags to get ANSI library prototypes]) + +-gtk_save_LIBS=$LIBS ++gtk_save_LIBS="$LIBS" + LIBS="$LIBS -lm" + AC_TRY_RUN([#include <math.h> + int main (void) { return (log(1) != log(1.)); }], + AC_MSG_RESULT(none needed), +- gtk_save_CFLAGS=$CFLAGS ++ [gtk_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -std1" + AC_TRY_RUN([#include <math.h> + int main (void) { return (log(1) != log(1.)); }], + AC_MSG_RESULT(-std1), + AC_MSG_RESULT() +- CFLAGS=$gtk_save_CFLAGS +- AC_MSG_WARN( +- [No ANSI prototypes found in library. (-std1 didn't work.)]), +- true +- ), ++ CFLAGS="$gtk_save_CFLAGS" ++ AC_MSG_WARN([No ANSI prototypes found in library. (-std1 didn't work.)]), ++ true)], + AC_MSG_RESULT(none needed) + ) +-LIBS=$gtk_save_LIBS ++LIBS="$gtk_save_LIBS" + + dnl NeXTStep cc seems to need this + AC_MSG_CHECKING([for extra flags for POSIX compliance]) +-AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;], ++AC_TRY_COMPILE([#include <dirent.h> ++ ],[DIR *dir;], + AC_MSG_RESULT(none needed), +- gtk_save_CFLAGS=$CFLAGS ++ [gtk_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -posix" +- AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;], ++ AC_TRY_COMPILE([#include <dirent.h> ++ ],[DIR *dir;], + AC_MSG_RESULT(-posix), + AC_MSG_RESULT() +- CFLAGS=$gtk_save_CFLAGS +- AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)]))) ++ CFLAGS="$gtk_save_CFLAGS" ++ AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])])) + +-if test x$with_glib = xyes ; then +- AC_MSG_ERROR([ +-*** Directory must be specified for --with-glib]) ++ ++ ++if test "x$with_glib" = "xyes" ; then ++ AC_MSG_ERROR([*** Directory must be specified for --with-glib]) + fi + +-if test x$with_glib = x ; then ++if test "x$with_glib" = "x" ; then + # Look for separately installed glib + + AM_PATH_GLIB(1.2.8,, +@@ -261,7 +255,7 @@ + else + # Use uninstalled glib (assume they got the version right) + +- GLIB_CONFIG=$with_glib/glib-config ++ GLIB_CONFIG="$with_glib/glib-config" + if test -x $GLIB_CONFIG ; then + : + else +@@ -277,9 +271,9 @@ + glib_release=`$GLIB_CONFIG --version | sed 's%\\.[[0-9]]*$%%'` + + # canonicalize relative paths +- case $with_glib in ++ case "$with_glib" in + /*) +- glib_dir=$with_glib ++ glib_dir="$with_glib" + ;; + *) + glib_dir="\$(top_builddir)/$with_glib" +@@ -312,61 +306,56 @@ + saved_ldflags="$LDFLAGS" + + CFLAGS="$CFLAGS $X_CFLAGS" +-LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS" ++LDFLAGS="$LDFLAGS $X_LDFLAGS" + + if test "x$no_x" = "xyes"; then + AC_MSG_ERROR([ + *** X libraries or include files not found. Check 'config.log' for + *** more details.]) + fi +- + # Checks for libraries. + # Check for the X11 library +-AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS", ++AC_CHECK_LIB(X11,XOpenDisplay, ++ x_libs="-lX11 $X_EXTRA_LIBS", + AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]), +- $X_EXTRA_LIBS) +- ++ $X_EXTRA_LIBS ++) + if test "x$enable_shm" = "xyes"; then + # Check for the Xext library (needed for XShm extention) + AC_CHECK_LIB(Xext, XShmAttach, + x_libs="-lXext $x_libs", + # On AIX, it is in XextSam instead, but we still need -lXext +- AC_CHECK_LIB(XextSam, XShmAttach, ++ [AC_CHECK_LIB(XextSam, XShmAttach, + x_libs="-lXextSam -lXext $x_libs", +- no_xext_lib=yes, $x_libs), +- $x_libs) ++ no_xext_lib="yes", ++ $x_libs ++ )], ++ $x_libs ++ ) + fi +- + # Check for shaped window extension +- + AC_CHECK_LIB(Xext, XShapeCombineMask, +- if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then ++ if test -z "`echo $x_libs | grep \-lXext 2> /dev/null`"; then + x_libs="-lXext $x_libs" + fi +- AC_DEFINE(HAVE_SHAPE_EXT), +- , +- $x_libs) +- ++ AC_DEFINE(HAVE_SHAPE_EXT),, ++ $x_libs ++) + # Check for XConvertCase (X11R6 specific) +- + AC_CHECK_LIB(X11, XConvertCase, +- AC_DEFINE(HAVE_XCONVERTCASE), +- , +- $x_libs) +- ++ AC_DEFINE(HAVE_XCONVERTCASE),, ++ $x_libs ++) + # Check for XIM support. +- +-AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback, +- : , ++AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback,, + enable_xim_inst="no", +- $x_libs) +- ++ $x_libs ++) + # On Solaris, calling XRegisterIMInstantiateCallback seems to + # cause an immediate segfault, so we disable it, unless + # the user specifically forces it to be on. +- +-if test x$enable_xim_inst = xmaybe ; then +- case host in ++if test "x$enable_xim_inst" = "xmaybe" ; then ++ case "$host" in + *-*-solaris*) + enable_xim_inst="no" + ;; +@@ -384,16 +373,15 @@ + fi + + x_cflags="$X_CFLAGS" +-x_ldflags="$X_LDFLAGS $X_LIBS" ++x_ldflags="$X_LDFLAGS" + + # set up things for XInput +- + if test "x$with_xinput" = "xgxi"; then + AC_MSG_WARN([ + *** The generic XInput support has not been tested for several years + *** and is not known to work with any currently available X servers]) + AC_DEFINE(XINPUT_GXI) +- xinput_progs=gxid ++ xinput_progs="gxid" + x_libs="-lXi $x_libs" + elif test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then + AC_DEFINE(XINPUT_XFREE) +@@ -413,77 +401,72 @@ + + if test "x$enable_shm" = "xyes"; then + # Check for shared memory +- AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes) +- AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes) ++ AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc="yes") ++ AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm="yes") + + # Check for the X shared memory extension header file + AC_MSG_CHECKING(X11/extensions/XShm.h) + if test "x$no_xext_lib" = "xyes"; then + AC_MSG_RESULT(no) +- no_xshm=yes ++ no_xshm="yes" + else + if test -f "$x_includes/X11/extensions/XShm.h"; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_XSHM_H) + else + AC_MSG_RESULT(no) +- no_xshm=yes ++ no_xshm="yes" + fi + fi + fi +- + # Check if X_LOCALE definition is necessary +- + AC_MSG_CHECKING(need -DX_LOCALE) + + AC_TRY_RUN([ + #include <stdio.h> + #include <locale.h> +- +-int +-main () ++ int main () + { + return setlocale (LC_ALL, "${with_locale}") == NULL; + }], +-need_x_locale=no, +-need_x_locale=yes, +-need_x_locale=no) ++ need_x_locale="no", ++ need_x_locale="yes", ++ need_x_locale="no" ++) + AC_MSG_RESULT($need_x_locale) + +-use_native_locale=no +-if test $need_x_locale = yes; then ++use_native_locale="no" ++if test "$need_x_locale" = "yes"; then + GTK_LOCALE_FLAGS="-DX_LOCALE" + else +- if test x$with_native_locale = xyes ; then ++ if test "x$with_native_locale" = "xyes" ; then + AC_MSG_CHECKING(functioning locale support) + +- AC_TRY_COMPILE([#include <stdlib.h>],[ +- char c; ++ AC_TRY_COMPILE([#include <stdlib.h>], ++ [char c; + if (MB_CUR_MAX == 1) { + wctomb(&c, 42); +- } +- ],use_native_locale=yes,) +- ++ }], ++ use_native_locale="yes" ++ ) + AC_MSG_RESULT($use_native_locale) + fi + fi + +-if test x$use_native_locale = xyes ; then ++if test "x$use_native_locale" = "xyes" ; then + AC_MSG_CHECKING(if sizeof(wchar_t) == 4) + +- AC_TRY_RUN([ +- #include <stdlib.h> +- +- int +- main () ++ AC_TRY_RUN([#include <stdlib.h> ++ int main () + { + return (sizeof(wchar_t) == 4) ? 0 : 1; +- }], +- ,use_native_locale=no,:) ++ }],, ++ use_native_locale="no" ++ ) + AC_MSG_RESULT($use_native_locale) + fi + +-if test $use_native_locale = yes ; then ++if test "$use_native_locale" = "yes" ; then + AC_DEFINE(USE_NATIVE_LOCALE) + fi + +@@ -502,13 +485,17 @@ + + # Check if <sys/select.h> needs to be included for fd_set + AC_MSG_CHECKING([for fd_set]) +-AC_TRY_COMPILE([#include <sys/types.h>], +- [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_COMPILE([#include <sys/types.h> ++ ], ++ [fd_set readMask, writeMask;], ++ gtk_ok="yes", ++ gtk_ok="no" ++) ++if test "$gtk_ok" = "yes"; then + AC_MSG_RESULT([yes, found in sys/types.h]) + else +- AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes) +- if test $gtk_ok = yes; then ++ AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok="yes") ++ if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_SYS_SELECT_H) + AC_MSG_RESULT([yes, found in sys/select.h]) + else +@@ -520,30 +507,35 @@ + # Duplicate `widechar' tests from `glib'. + # Check for wchar.h + AC_MSG_CHECKING(for wchar.h) +-AC_TRY_CPP([#include <wchar.h>], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_CPP([#include <wchar.h> ++ ], ++ gtk_ok="yes", ++ gtk_ok="no" ++) ++if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_WCHAR_H,1,[Define if wchar.h exists]) + fi + AC_MSG_RESULT($gtk_ok) + + # Check for wctype.h (for iswalnum) + AC_MSG_CHECKING(for wctype.h) +-AC_TRY_CPP([#include <wctype.h>], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_CPP([#include <wctype.h>], gtk_ok="yes", gtk_ok="no") ++if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_WCTYPE_H,1,[Define if wctype.h exists]) + fi + AC_MSG_RESULT($gtk_ok) + + # in Solaris 2.5, `iswalnum' is in -lw + GDK_WLIBS= +-AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)]) ++AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS="-lw")]) + + # The following is necessary for Linux libc-5.4.38 + oLIBS="$LIBS" + LIBS="$LIBS $GDK_WLIBS" + AC_MSG_CHECKING(if iswalnum() and friends are properly defined) +-AC_TRY_LINK([#include <stdlib.h>],[ +-#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H)) ++AC_TRY_LINK([#include <stdlib.h> ++ ], ++ [#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H)) + # ifdef HAVE_WCTYPE_H + # include <wctype.h> + # else +@@ -554,11 +546,13 @@ + #else + # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c)) + #endif +-iswalnum((wchar_t) 0); +-], gtk_ok=yes, gtk_ok=no) ++ iswalnum((wchar_t) 0);], ++ gtk_ok="yes", ++ gtk_ok="no" ++) + LIBS="$oLIBS" + +-if test $gtk_ok = no; then ++if test "$gtk_ok" = "no"; then + AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Define if the wctype function is broken]) + GDK_WLIBS= + fi +@@ -580,5 +574,5 @@ + gtk/Makefile + gtk/gtkfeatures.h + gdk.pc +-gtk+.pc +-], [chmod +x gtk-config]) ++gtk+.pc], ++[chmod +x gtk-config]) +--- gtk+-1.2.10/gdk/Makefile.am.orig 2006-05-19 02:41:18.000000000 -0700 ++++ gtk+-1.2.10/gdk/Makefile.am 2006-05-19 02:11:54.000000000 -0700 +@@ -21,12 +21,11 @@ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @GLIB_DEPLIBS@ \ + @x_ldflags@ \ +- @x_libs@ \ +- -lm \ + @STRIP_END@ + ++libgdk_la_LIBADD = @GLIB_DEPLIBS@ @x_libs@ -lm ++ + # + # setup source file variables + # +@@ -104,14 +103,13 @@ + EXTRA_PROGRAMS = gxid + bin_PROGRAMS = @xinput_progs@ + LDADDS = @STRIP_BEGIN@ \ +- @x_ldflags@ \ + @x_libs@ \ + @GLIB_LIBS@ \ + -lm \ + @STRIP_END@ + gxid_SOURCES = gxid.c + gxid_LDADD = $(LDADDS) +- ++gxid_LDFLAGS = @x_ldflags@ + + .PHONY: files + +--- gtk+-1.2.10/gtk/Makefile.am.orig 2006-05-25 07:40:45.000000000 -0700 ++++ gtk+-1.2.10/gtk/Makefile.am 2006-05-25 07:43:20.000000000 -0700 +@@ -27,13 +27,15 @@ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @GLIB_DEPLIBS@ \ + @x_ldflags@ \ +- @x_libs@ \ +- -lm \ + @STRIP_END@ +-# $(top_builddir)/gdk/libgdk.la +- ++libgtk_la_LIBADD = @STRIP_BEGIN@ \ ++ $(top_builddir)/gdk/libgdk.la \ ++ @x_libs@ \ ++ @GDK_WLIBS@ \ ++ @GLIB_LIBS@ \ ++ -lm \ ++ @STRIP_END@ + + # + # setup source file variables +@@ -374,14 +376,17 @@ + + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \ ++# removed references to non-existent gtkrc files - tsh ++gtkconf_DATA = \ ++ gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \ + gtkrc.ko gtkrc.ru gtkrc.th gtkrc.uk \ +- gtkrc.utf-8 gtkrc.iso-8859-2 \ +- gtkrc.iso-8859-3 gtkrc.iso-8859-5 gtkrc.iso-8859-7 \ +- gtkrc.iso-8859-9 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ +- gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \ +- gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \ +- gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 ++ gtkrc.iso-8859-2 gtkrc.iso-8859-5 \ ++ gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ ++ gtkrc.iso-8859-15 gtkrc.zh_TW.big5 \ ++ gtkrc.zh_CN gtkrc.cp1251 gtkrc.cp1255 \ ++ gtkrc.ka_GE.georgianacademy \ ++ gtkrc.ka_GE.georgianps \ ++ gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii + + # We create a dummy theme for the default GTK+ theme + install-data-local: +@@ -428,7 +433,6 @@ + LDADDS = @STRIP_BEGIN@ \ + libgtk.la \ + $(top_builddir)/gdk/libgdk.la \ +- @x_ldflags@ \ + @x_libs@ \ + @GDK_WLIBS@ \ + @GLIB_LIBS@ \ +@@ -441,12 +445,20 @@ + testdnd_DEPENDENCIES = $(DEPS) + simple_DEPENDENCIES = $(DEPS) + #testthreads_DEPENDENCIES = $(DEPS) ++ + testgtk_LDADD = $(LDADDS) ++testgtk_LDFLAGS=@x_ldflags@ + testinput_LDADD = $(LDADDS) ++testinput_LDFLAGS = @x_ldflags@ + testselection_LDADD = $(LDADDS) ++testselection_LDFLAGS = @x_ldflags@ + testrgb_LDADD = $(LDADDS) ++testrgb_LDFLAGS = @x_ldflags@ + testdnd_LDADD = $(LDADDS) ++testdnd_LDFLAGS = @x_ldflags@ + simple_LDADD = $(LDADDS) ++simple_LDFLAGS = @x_ldflags@ ++ + #testthreads_LDADD = $(LDADDS) + + .PHONY: files test test-debug diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-automake.diff b/x11-libs/gtk+/files/gtk+-1.2.10-automake.diff new file mode 100644 index 0000000..e089f56 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-automake.diff @@ -0,0 +1,293 @@ +diff -dPNur gtk+-1.2.10/docs/Makefile.am gtk+-1.2.10-ds/docs/Makefile.am +--- gtk+-1.2.10/docs/Makefile.am 2014-10-01 19:39:24.369668923 +0200 ++++ gtk+-1.2.10-ds/docs/Makefile.am 2014-10-01 19:42:46.667975511 +0200 +@@ -166,7 +166,7 @@ + echo $$p; \ + done + +-EXTRA_DIST += \ ++EXTRA_DIST = \ + Changes-1.2.txt \ + debugging.txt \ + developers.txt \ +diff -dPNur gtk+-1.2.10/gdk/Makefile.am gtk+-1.2.10-ds/gdk/Makefile.am +--- gtk+-1.2.10/gdk/Makefile.am 2014-10-01 19:39:24.364668816 +0200 ++++ gtk+-1.2.10-ds/gdk/Makefile.am 2014-10-01 19:44:27.190115302 +0200 +@@ -1,14 +1,13 @@ + ## Makefile.am for gtk+/gdk + +-INCLUDES = @STRIP_BEGIN@ \ ++INCLUDES = \ + -DG_LOG_DOMAIN=\"Gdk\" \ + -I$(top_srcdir) \ + @GTK_DEBUG_FLAGS@ \ + @GTK_XIM_FLAGS@ \ + @GTK_LOCALE_FLAGS@ \ + @GLIB_CFLAGS@ \ +- @x_cflags@ \ +-@STRIP_END@ ++ @x_cflags@ + + # + # libraries to compile and install +@@ -17,12 +16,11 @@ + + # libtool stuff: set version and export symbols for resolving + libgdkincludedir = $(includedir)/gtk-1.2/gdk +-libgdk_la_LDFLAGS = @STRIP_BEGIN@ \ ++libgdk_la_LDFLAGS = \ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @x_ldflags@ \ +-@STRIP_END@ ++ @x_ldflags@ + + libgdk_la_LIBADD = @GLIB_DEPLIBS@ @x_libs@ -lm + +@@ -30,7 +28,7 @@ + # setup source file variables + # + # GDK header files for public installation (non-generated) +-gdk_public_h_sources = @STRIP_BEGIN@ \ ++gdk_public_h_sources = \ + gdk.h \ + gdkcursors.h \ + gdkrgb.h \ +@@ -38,9 +36,9 @@ + gdkkeysyms.h \ + gdkprivate.h \ + gdktypes.h \ +- gdkx.h \ +-@STRIP_END@ +-gdk_c_sources = @STRIP_BEGIN@ \ ++ gdkx.h ++ ++gdk_c_sources = \ + gdk.c \ + gdkcc.c \ + gdkcolor.c \ +@@ -71,17 +69,16 @@ + MwmUtil.h \ + gxid_lib.h \ + gxid_proto.h \ +- gxid_lib.c \ +-@STRIP_END@ ++ gxid_lib.c + + # + # setup GDK sources and their dependancies + # + libgdkinclude_HEADERS = $(gdk_public_h_sources) + libgdk_la_SOURCES = $(gdk_c_sources) +-MAINTAINERCLEANFILES += +-EXTRA_HEADERS += +-EXTRA_DIST += ++MAINTAINERCLEANFILES = ++EXTRA_HEADERS = ++EXTRA_DIST = + EXTRA_DIST += + + # +@@ -102,11 +99,10 @@ + # + EXTRA_PROGRAMS = gxid + bin_PROGRAMS = @xinput_progs@ +-LDADDS = @STRIP_BEGIN@ \ ++LDADDS = \ + @x_libs@ \ + @GLIB_LIBS@ \ +- -lm \ +-@STRIP_END@ ++ -lm + gxid_SOURCES = gxid.c + gxid_LDADD = $(LDADDS) + gxid_LDFLAGS = @x_ldflags@ +diff -dPNur gtk+-1.2.10/gtk/Makefile.am gtk+-1.2.10-ds/gtk/Makefile.am +--- gtk+-1.2.10/gtk/Makefile.am 2014-10-01 19:39:24.394669455 +0200 ++++ gtk+-1.2.10-ds/gtk/Makefile.am 2014-10-01 19:45:06.767957759 +0200 +@@ -1,6 +1,6 @@ + ## Makefile.am for gtk+/gtk + +-INCLUDES = @STRIP_BEGIN@ \ ++INCLUDES = \ + -DG_LOG_DOMAIN=\"Gtk\" \ + -DGTK_DISABLE_COMPAT_H \ + -DGTK_LIBDIR=\"$(libdir)\" \ +@@ -12,8 +12,7 @@ + @GTK_XIM_FLAGS@ \ + @GTK_LOCALE_FLAGS@ \ + @GLIB_CFLAGS@ \ +- @x_cflags@ \ +-@STRIP_END@ ++ @x_cflags@ + + + # +@@ -23,25 +22,23 @@ + + # libtool stuff: set version and export symbols for resolving + libgtkincludedir = $(includedir)/gtk-1.2/gtk +-libgtk_la_LDFLAGS = @STRIP_BEGIN@ \ ++libgtk_la_LDFLAGS = \ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @x_ldflags@ \ +-@STRIP_END@ +-libgtk_la_LIBADD = @STRIP_BEGIN@ \ ++ @x_ldflags@ ++libgtk_la_LIBADD = \ + $(top_builddir)/gdk/libgdk.la \ + @x_libs@ \ + @GDK_WLIBS@ \ + @GLIB_LIBS@ \ +- -lm \ +- @STRIP_END@ ++ -lm + + # + # setup source file variables + # + # GTK+ header files for public installation (non-generated) +-gtk_public_h_sources = @STRIP_BEGIN@ \ ++gtk_public_h_sources = \ + gtk.h \ + gtkaccelgroup.h \ + gtkaccellabel.h \ +@@ -150,13 +147,13 @@ + gtkvscrollbar.h \ + gtkvseparator.h \ + gtkwidget.h \ +- gtkwindow.h \ +-@STRIP_END@ ++ gtkwindow.h ++ + # GTK+ header files that don't get installed +-gtk_private_h_sources = @STRIP_BEGIN@ \ +-@STRIP_END@ ++gtk_private_h_sources = ++ + # GTK+ C sources to build the library from +-gtk_c_sources = @STRIP_BEGIN@ \ ++gtk_c_sources = \ + gtkaccelgroup.c \ + gtkaccellabel.c \ + gtkadjustment.c \ +@@ -264,8 +261,8 @@ + gtkwidget.c \ + gtkwindow.c \ + fnmatch.c \ +- fnmatch.h \ +-@STRIP_END@ ++ fnmatch.h ++ + # we use our own built_sources variable rules to avoid automake's + # BUILT_SOURCES oddities + # we generate frequently rebuild files piggyback on a stamp file, so sources +@@ -273,7 +270,7 @@ + # content + # + # built sources that don't get installed +-gtk_built_sources = @STRIP_BEGIN@ \ ++gtk_built_sources = \ + stamp-gtk.defs \ + stamp-gtktypebuiltins.h \ + stamp-gtkmarshal.h \ +@@ -281,17 +278,17 @@ + gtktypebuiltins_ids.c \ + gtktypebuiltins_evals.c \ + gtkmarshal.c \ +- gtk.defs \ +-@STRIP_END@ ++ gtk.defs ++ + # built sources that get installed with the header files +-gtk_built_public_sources = @STRIP_BEGIN@ \ ++gtk_built_public_sources = \ + gtkmarshal.h \ +- gtktypebuiltins.h \ +-@STRIP_END@ ++ gtktypebuiltins.h ++ + # non-header sources (headers should be specified in the above variables) + # that don't serve as direct make target sources, i.e. they don't have + # their own .lo rules and don't get publically installed +-gtk_extra_sources = @STRIP_BEGIN@ \ ++gtk_extra_sources = \ + gtkfeatures.h.in \ + makeenums.pl \ + makeenums.awk \ +@@ -300,22 +297,21 @@ + gtkargcollector.c \ + gtk-boxed.defs \ + genmarshal.pl \ +- gtkmarshal.list \ +-@STRIP_END@ ++ gtkmarshal.list ++ + # Extra headers that are used for enum type array/id generation +-gdk_headers = @STRIP_BEGIN@ \ ++gdk_headers = \ + ../gdk/gdktypes.h \ +- ../gdk/gdkrgb.h \ +-@STRIP_END@ ++ ../gdk/gdkrgb.h + + # + # setup GTK+ sources and their dependancies + # + libgtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_built_public_sources) gtkfeatures.h + libgtk_la_SOURCES = $(gtk_c_sources) +-MAINTAINERCLEANFILES += $(gtk_built_public_sources) $(gtk_built_sources) +-EXTRA_HEADERS += +-EXTRA_DIST += $(gtk_private_h_sources) ++MAINTAINERCLEANFILES = $(gtk_built_public_sources) $(gtk_built_sources) ++EXTRA_HEADERS = ++EXTRA_DIST = $(gtk_private_h_sources) + EXTRA_DIST += $(gtk_built_sources) $(gtk_built_public_sources) $(gtk_extra_sources) + + # +@@ -323,7 +319,7 @@ + # + # setup autogeneration dependancies + gen_sources = xgen-gdef xgen-gtbh xgen-gtbvc xgen-gtbic xgen-gtbec xgen-gmh xgen-gmc +-CLEANFILES += $(gen_sources) ++CLEANFILES = $(gen_sources) + COPYING: $(gtk_built_public_sources) $(gtk_built_sources) + $(OBJECTS): COPYING # this is our oldest-source-stamp + # initial creation of the real stamp-* files +@@ -430,14 +426,14 @@ + # + noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple # testthreads + DEPS = libgtk.la $(top_builddir)/gdk/libgdk.la +-LDADDS = @STRIP_BEGIN@ \ ++LDADDS = \ + libgtk.la \ + $(top_builddir)/gdk/libgdk.la \ + @x_libs@ \ + @GDK_WLIBS@ \ + @GLIB_LIBS@ \ +- -lm \ +-@STRIP_END@ ++ -lm ++ + testgtk_DEPENDENCIES = $(DEPS) + testinput_DEPENDENCIES = $(DEPS) + testselection_DEPENDENCIES = $(DEPS) +@@ -478,7 +474,7 @@ + cd $$builddir; cd $(srcdir); \ + $(SHELL) $$top_builddir/libtool --mode=execute gdb $$builddir/testgtk + +-EXTRA_DIST += @STRIP_BEGIN@ \ ++EXTRA_DIST += \ + testgtk.1 \ + testgtkrc \ + testgtkrc2 \ +@@ -499,5 +495,4 @@ + check-y.xpm \ + check-n.xpm \ + test.xpm \ +- $(gtkconf_DATA) \ +-@STRIP_END@ ++ $(gtkconf_DATA) diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-border.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-border.patch new file mode 100644 index 0000000..c165f7a --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-border.patch @@ -0,0 +1,66 @@ +--- gtk+-1.2.10/gtk/gtkoptionmenu.c.border Mon Feb 12 21:36:37 2001 ++++ gtk+-1.2.10/gtk/gtkoptionmenu.c Wed Feb 13 18:26:17 2002 +@@ -342,30 +342,26 @@ + GtkWidget *child; + GtkAllocation child_allocation; + GtkOptionMenuProps props; ++ gint border_width; + +- g_return_if_fail (widget != NULL); +- g_return_if_fail (GTK_IS_OPTION_MENU (widget)); +- g_return_if_fail (allocation != NULL); +- + gtk_option_menu_get_props (GTK_OPTION_MENU (widget), &props); ++ border_width = GTK_CONTAINER (widget)->border_width; + + widget->allocation = *allocation; + if (GTK_WIDGET_REALIZED (widget)) + gdk_window_move_resize (widget->window, +- allocation->x, allocation->y, +- allocation->width, allocation->height); ++ allocation->x + border_width, allocation->y + border_width, ++ allocation->width - 2 * border_width, allocation->height - 2 * border_width); + + child = GTK_BIN (widget)->child; + if (child && GTK_WIDGET_VISIBLE (child)) + { +- child_allocation.x = (GTK_CONTAINER (widget)->border_width + +- GTK_WIDGET (widget)->style->klass->xthickness) + 1; +- child_allocation.y = (GTK_CONTAINER (widget)->border_width + +- GTK_WIDGET (widget)->style->klass->ythickness) + 1; +- child_allocation.width = MAX (1, (gint)allocation->width - child_allocation.x * 2 - ++ child_allocation.x = GTK_WIDGET (widget)->style->klass->xthickness + 1; ++ child_allocation.y = GTK_WIDGET (widget)->style->klass->ythickness + 1; ++ child_allocation.width = MAX (1, (gint)allocation->width - child_allocation.x * 2 - border_width * 2 - + props.indicator_width - props.indicator_left_spacing - props.indicator_right_spacing - + CHILD_LEFT_SPACING - CHILD_RIGHT_SPACING - 2); +- child_allocation.height = MAX (1, (gint)allocation->height - child_allocation.y * 2 - ++ child_allocation.height = MAX (1, (gint)allocation->height - child_allocation.y * 2 - border_width * 2 - + CHILD_TOP_SPACING - CHILD_BOTTOM_SPACING - 2); + child_allocation.x += CHILD_LEFT_SPACING; + child_allocation.y += CHILD_TOP_SPACING; +@@ -380,6 +376,7 @@ + { + GdkRectangle button_area; + GtkOptionMenuProps props; ++ gint border_width; + + g_return_if_fail (widget != NULL); + g_return_if_fail (GTK_IS_OPTION_MENU (widget)); +@@ -388,11 +385,12 @@ + if (GTK_WIDGET_DRAWABLE (widget)) + { + gtk_option_menu_get_props (GTK_OPTION_MENU (widget), &props); ++ border_width = GTK_CONTAINER (widget)->border_width; + +- button_area.x = GTK_CONTAINER (widget)->border_width + 1; +- button_area.y = GTK_CONTAINER (widget)->border_width + 1; +- button_area.width = widget->allocation.width - button_area.x * 2; +- button_area.height = widget->allocation.height - button_area.y * 2; ++ button_area.x = 1; ++ button_area.y = 1; ++ button_area.width = widget->allocation.width - button_area.x * 2 - border_width * 2; ++ button_area.height = widget->allocation.height - button_area.y * 2 - border_width * 2; + + /* This is evil, and should be elimated here and in the button + * code. The point is to clear the focus, and make it diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-dndnewwindow.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-dndnewwindow.patch new file mode 100644 index 0000000..f3b8071 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-dndnewwindow.patch @@ -0,0 +1,24 @@ +--- gtk+-1.2.10/gdk/gdkdnd.c.newwindow Tue Mar 14 00:41:53 2000 ++++ gtk+-1.2.10/gdk/gdkdnd.c Wed Feb 13 18:40:04 2002 +@@ -275,12 +275,16 @@ + GUINT_TO_POINTER (xce->above)); + if (above_node && node->prev != above_node) + { ++ /* Put the window above (before in the list) above_node ++ */ + cache->children = g_list_remove_link (cache->children, node); +- node->next = above_node->next; +- if (node->next) +- node->next->prev = node; +- node->prev = above_node; +- above_node->next = node; ++ node->prev = above_node->prev; ++ if (node->prev) ++ node->prev->next = node; ++ else ++ cache->children = node; ++ node->next = above_node; ++ above_node->prev = node; + } + } + } diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-expose.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-expose.patch new file mode 100644 index 0000000..7fa625a --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-expose.patch @@ -0,0 +1,29 @@ +--- gtk+-1.2.10/gdk/gdkevents.c.expose Sun Dec 3 17:02:49 2000 ++++ gtk+-1.2.10/gdk/gdkevents.c Wed Feb 13 17:53:38 2002 +@@ -383,6 +383,7 @@ + struct _GdkExposeInfo + { + Window window; ++ Window toplevel_window; + gboolean seen_nonmatching; + }; + +@@ -401,7 +402,9 @@ + * expose events. + */ + if (xevent->xany.type != Expose && +- xevent->xany.type != GravityNotify) ++ xevent->xany.type != GravityNotify && ++ (xevent->xany.type != ConfigureNotify || ++ xevent->xany.window == info->toplevel_window)) + { + info->seen_nonmatching = TRUE; + } +@@ -429,6 +432,7 @@ + GdkEvent event; + + info.window = xevent->xany.window; ++ info.toplevel_window = GDK_WINDOW_XWINDOW (gdk_window_get_toplevel (window)); + info.seen_nonmatching = FALSE; + + rect1.x = xevent->xexpose.x; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-focus.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-focus.patch new file mode 100644 index 0000000..96c3662 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-focus.patch @@ -0,0 +1,17 @@ +--- gtk-1.2.10/gtk/gtkwindow.c.orig Sat Mar 10 00:39:16 2001 ++++ gtk-1.2.10/gtk/gtkwindow.c Thu Apr 26 00:30:52 2001 +@@ -985,7 +985,13 @@ + break; + case EnterNotify: + case LeaveNotify: +- if (xev->xcrossing.detail != NotifyInferior && ++ /* We only track the actual destination of keyboard events for real ++ * toplevels, not for embedded toplevels such as GtkPlug. The reason for ++ * this is that GtkPlug redirects events so the widget may effectively not ++ * have the focus even if it actually has the focus. ++ */ ++ if (gdk_window_get_parent (GTK_WIDGET (window)->window) == GDK_ROOT_PARENT () && ++ xev->xcrossing.detail != NotifyInferior && + xev->xcrossing.focus && !window->window_has_focus) + { + window->window_has_pointer_focus = (xev->xany.type == EnterNotify) ? TRUE : FALSE; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-labelvariable.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-labelvariable.patch new file mode 100644 index 0000000..5fa0e0b --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-labelvariable.patch @@ -0,0 +1,11 @@ +--- gtk+-1.2.10/gtk/gtklabel.c.labelvariable Mon Apr 2 05:12:38 2001 ++++ gtk+-1.2.10/gtk/gtklabel.c Wed Feb 13 17:57:15 2002 +@@ -1004,7 +1004,7 @@ + *r = 0; + + result_str = gdk_wcstombs (string_wc); +- if (string) ++ if (result_str) + { + gtk_label_set_text_internal (label, result_str, string_wc); + gtk_label_set_pattern (label, pattern); diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-netwmpid.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-netwmpid.patch new file mode 100644 index 0000000..a9c7bbf --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-netwmpid.patch @@ -0,0 +1,28 @@ +--- gtk-1.2.10/gdkwindow.c Tue Jan 22 16:42:19 2002 ++++ gtk/gdk/gdkwindow.c Sat Oct 13 17:10:16 2001 +@@ -28,6 +28,9 @@ + #include <X11/Xutil.h> + #include <X11/Xatom.h> + #include <netinet/in.h> ++#include <sys/types.h> ++#include <unistd.h> ++ + #include "gdk.h" + #include "config.h" + #include "gdkinput.h" +@@ -488,6 +491,15 @@ + XFree (class_hint); + } + ++ { ++ gulong pid = getpid (); ++ ++ XChangeProperty (private->xdisplay, private->xwindow, ++ gdk_atom_intern ("_NET_WM_PID", FALSE), ++ XA_CARDINAL, 32, ++ PropModeReplace, ++ (guchar *)&pid, 1); ++ } + + return window; + } diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-cvs-rclocale.patch b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-rclocale.patch new file mode 100644 index 0000000..2340efd --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-cvs-rclocale.patch @@ -0,0 +1,133 @@ +--- gtk+-1.2.10/gtk/gtkrc.c.encoding Thu Mar 15 13:41:40 2001 ++++ gtk+-1.2.10/gtk/gtkrc.c Thu Jul 5 12:48:48 2001 +@@ -33,6 +33,7 @@ + #include <string.h> + #include <stdio.h> + #include <stdlib.h> ++#include <langinfo.h> + + #include "gtkrc.h" + #include "gtkbindings.h" +@@ -440,7 +441,7 @@ + void + gtk_rc_init (void) + { +- static gchar *locale_suffixes[3]; ++ static gchar *locale_suffixes[8]; + static gint n_locale_suffixes = 0; + + gint i, j; +@@ -449,9 +450,7 @@ + + if (!initted) + { +- gint length; +- +- char *locale = setlocale (LC_CTYPE, NULL); ++ char *locale = g_strdup (setlocale (LC_CTYPE, NULL)); + char *p; + + initted = TRUE; +@@ -470,39 +469,84 @@ + * We normalize the charset into a standard form, + * which has all '-' and '_' characters removed, + * and is lowercase. ++ * ++ * the search is done in that order: ++ * gtkrc.ll_cc.lowercasecodeset ++ * gtkrc.ll_cc.normalizedcodeset ++ * gtkrc.ll.lowercasecodeset ++ * gtkrc.ll.normalizedcodeset ++ * gtkrc.lowercasecodeset ++ * gtkrc.normalizedcodeset ++ * gtkrc.ll_cc ++ * gtkrc.ll ++ * + */ +- gchar *normalized_locale; ++ char *codeset = NULL; ++ char *normalized_codeset = NULL; ++ char *cc = NULL; ++ char *ll; + + p = strchr (locale, '@'); +- length = p ? (p -locale) : strlen (locale); ++ if (p) ++ *p = '\0'; + ++ codeset = nl_langinfo (CODESET); ++ + p = strchr (locale, '.'); ++ if (!codeset && p) ++ codeset = p + 1; + if (p) ++ *p = '\0'; ++ ++ if (codeset) + { +- gchar *tmp1 = g_strndup (locale, p - locale + 1); +- gchar *tmp2 = _gtk_normalize_codeset (p + 1, length - (p - locale + 1)); ++ codeset = g_strdup (codeset); + +- normalized_locale = g_strconcat (tmp1, tmp2, NULL); +- g_free (tmp1); +- g_free (tmp2); +- +- locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_locale); +- length = p - locale; ++ p = codeset; ++ while (*p) ++ { ++ /* tolower not used, because some locales are not ++ * compatible with C locale in lowercasing ascii ++ */ ++ if (*p >= 'A' && *p <= 'Z') ++ *p = (*p) - 'A' + 'a'; ++ p++; ++ } ++ ++ normalized_codeset = _gtk_normalize_codeset(codeset, strlen (codeset)); ++ if (strcmp (normalized_codeset, codeset) == 0) ++ normalized_codeset = NULL; + } +- else +- normalized_locale = g_strndup (locale, length); + +- p = strchr (normalized_locale, '_'); ++ p = strchr (locale, '_'); + if (p) + { +- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length); +- length = p - normalized_locale; ++ cc = p + 1; ++ *p = '\0'; + } +- +- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length); + +- g_free (normalized_locale); ++ ll = locale; ++ ++ if (cc && codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", codeset, NULL); ++ if (cc && normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", normalized_codeset, NULL); ++ if (codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", codeset, NULL); ++ if (normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", normalized_codeset, NULL); ++ if (codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strdup (codeset); ++ if (normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_codeset); ++ if (cc) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, NULL); ++ locale_suffixes[n_locale_suffixes++] = g_strdup (ll); ++ ++ g_free (codeset); + } ++ ++ g_free (locale); + } + + i = 0; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-m4.patch b/x11-libs/gtk+/files/gtk+-1.2.10-m4.patch new file mode 100644 index 0000000..37fb7c2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-m4.patch @@ -0,0 +1,9 @@ +Fix aclocal warnings: +/usr/share/aclocal/gtk.m4:7: warning: underquoted definition of AM_PATH_GTK +--- gtk+-1.2.10/gtk.m4 ++++ gtk+-1.2.10/gtk.m4 +@@ -6,3 +6,3 @@ + dnl +-AC_DEFUN(AM_PATH_GTK, ++AC_DEFUN([AM_PATH_GTK], + [dnl diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-argb.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-argb.patch new file mode 100644 index 0000000..de4a3cf --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-argb.patch @@ -0,0 +1,11 @@ +--- gtk+-1.2.10/gdk/gdk.c.argb 2006-07-25 18:30:47.000000000 +0200 ++++ gtk+-1.2.10/gdk/gdk.c 2006-07-25 18:32:24.000000000 +0200 +@@ -408,6 +408,8 @@ + } + + GDK_NOTE (MISC, g_message ("progname: \"%s\"", g_get_prgname ())); ++ ++ putenv("XLIB_SKIP_ARGB_VISUALS=1"); + + gdk_display = XOpenDisplay (gdk_display_name); + if (!gdk_display) diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-defaultcolor.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-defaultcolor.patch new file mode 100644 index 0000000..14ebbb2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-defaultcolor.patch @@ -0,0 +1,19 @@ +--- gtk+-1.2.10/gtk/gtkstyle.c.orig 2003-01-22 15:41:57.000000000 +0100 ++++ gtk+-1.2.10/gtk/gtkstyle.c 2003-01-22 16:27:31.000000000 +0100 +@@ -326,11 +326,11 @@ + static GdkColor gtk_default_selected_fg = { 0, 0xffff, 0xffff, 0xffff }; + static GdkColor gtk_default_insensitive_fg = { 0, 0x7530, 0x7530, 0x7530 }; + +-static GdkColor gtk_default_normal_bg = { 0, 0xd6d6, 0xd6d6, 0xd6d6 }; +-static GdkColor gtk_default_active_bg = { 0, 0xc350, 0xc350, 0xc350 }; +-static GdkColor gtk_default_prelight_bg = { 0, 0xea60, 0xea60, 0xea60 }; +-static GdkColor gtk_default_selected_bg = { 0, 0, 0, 0x9c40 }; +-static GdkColor gtk_default_insensitive_bg = { 0, 0xd6d6, 0xd6d6, 0xd6d6 }; ++static GdkColor gtk_default_normal_bg = { 0, 0xdcdc, 0xdada, 0xd5d5 }; ++static GdkColor gtk_default_active_bg = { 0, 0xbaba, 0xb5b5, 0xabab }; ++static GdkColor gtk_default_prelight_bg = { 0, 0xeeee, 0xebeb, 0xe7e7 }; ++static GdkColor gtk_default_selected_bg = { 0, 0x4b4b, 0x6969, 0x8383 }; ++static GdkColor gtk_default_insensitive_bg = { 0, 0xdcdc, 0xdada, 0xd5d5 }; + + GtkStyle* + gtk_style_copy (GtkStyle *style) diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-fileselectorfallback.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-fileselectorfallback.patch new file mode 100644 index 0000000..c2d895c --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-fileselectorfallback.patch @@ -0,0 +1,46 @@ +--- gtk+-1.2.10/gtk/gtkfilesel.c.fileselectorfallback 2002-09-11 11:25:27.000000000 +0200 ++++ gtk+-1.2.10/gtk/gtkfilesel.c 2002-09-11 13:05:39.000000000 +0200 +@@ -1578,6 +1578,7 @@ + { + gchar getcwd_buf[2*MAXPATHLEN]; + CompletionState *new_state; ++ gint fallback = 0; + + new_state = g_new (CompletionState, 1); + +@@ -1594,6 +1595,7 @@ + * a root directory, right? Right? (Probably not portable to non-Unix) + */ + strcpy (getcwd_buf, "/"); ++ fallback = 1; + } + + tryagain: +@@ -1616,7 +1618,26 @@ + if (!new_state->reference_dir) + { + /* Directories changing from underneath us, grumble */ +- strcpy (getcwd_buf, "/"); ++ if (fallback == 0) { ++ strcpy (getcwd_buf, "/"); ++ fallback = 1; ++ } ++ else { ++ if (fallback == 1) { /* last try with user home dir */ ++ if (g_get_home_dir ()) { ++ strcpy (getcwd_buf, g_get_home_dir ()); ++ } ++ fallback = 2; ++ } ++ else { ++ g_error ("no readable fallback directory found for GtkFileSelector, exiting"); ++ } ++ } ++ /* don't leak updated_text and the_completion.text */ ++ if (new_state->the_completion.text) ++ g_free (new_state->the_completion.text); ++ if (new_state->updated_text) ++ g_free (new_state->updated_text); + goto tryagain; + } + diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtklist.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtklist.patch new file mode 100644 index 0000000..c07447b --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtklist.patch @@ -0,0 +1,62 @@ +--- gtk+-1.2.10/gtk/gtklist.c.gtklist Wed Jan 31 22:19:29 2001 ++++ gtk+-1.2.10/gtk/gtklist.c Wed Feb 13 18:19:31 2002 +@@ -1299,7 +1299,7 @@ + if (start_list->prev) + new_focus_child = start_list->prev->data; + else if (list->children) +- new_focus_child = list->children->prev->data; ++ new_focus_child = list->children->data; + + if (GTK_WIDGET_HAS_FOCUS (container->focus_child)) + grab_focus = TRUE; +@@ -1312,16 +1312,20 @@ + widget = tmp_list->data; + tmp_list = tmp_list->next; + ++ gtk_widget_ref (widget); ++ + if (widget->state == GTK_STATE_SELECTED) + gtk_list_unselect_child (list, widget); + ++ gtk_signal_disconnect_by_data (GTK_OBJECT (widget), (gpointer) list); ++ gtk_widget_unparent (widget); ++ + if (widget == list->undo_focus_child) + list->undo_focus_child = NULL; + if (widget == list->last_focus_child) + list->last_focus_child = NULL; + +- gtk_signal_disconnect_by_data (GTK_OBJECT (widget), (gpointer) list); +- gtk_widget_unparent (widget); ++ gtk_widget_unref (widget); + } + + g_list_free (start_list); +@@ -1431,6 +1435,7 @@ + widget = tmp_list->data; + tmp_list = tmp_list->next; + ++ gtk_widget_ref (widget); + if (no_unref) + gtk_widget_ref (widget); + +@@ -1449,14 +1454,16 @@ + } + } + ++ gtk_signal_disconnect_by_data (GTK_OBJECT (widget), (gpointer) list); ++ list->children = g_list_remove (list->children, widget); ++ gtk_widget_unparent (widget); ++ + if (widget == list->undo_focus_child) + list->undo_focus_child = NULL; + if (widget == list->last_focus_child) + list->last_focus_child = NULL; + +- gtk_signal_disconnect_by_data (GTK_OBJECT (widget), (gpointer) list); +- list->children = g_list_remove (list->children, widget); +- gtk_widget_unparent (widget); ++ gtk_widget_unref (widget); + } + + if (new_focus_child && new_focus_child != old_focus_child) diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtkrc_files.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtkrc_files.patch new file mode 100644 index 0000000..d7018b7 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-gtkrc_files.patch @@ -0,0 +1,371 @@ +--- gtk+-1.2.10/gtk/gtkrc.hy_AM.utf8.rclocale Thu Feb 14 17:16:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.hy_AM.utf8 Thu Feb 14 17:19:33 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset = "-*-armnet helvetica-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-artsounk-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.ja_JP.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.ja_JP.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default" { ++ fontset = "-*-sazanami mincho-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-kochi mincho-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.tg_TJ.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.tg_TJ.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,9 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-bookman-light-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-urw bookman l-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.tr.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.tr Wed Feb 13 16:52:34 2002 +@@ -1,8 +0,0 @@ +-style "gtk-default-tr" { +- fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9,*-r-*" +-} +-class "GtkWidget" style "gtk-default-tr" +- +--- gtk+-1.2.10/gtk/gtkrc.zh_TW.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.zh_TW.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset = "-*-AR PL Mingti2L Big5-medium-r-normal--16-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.utf-8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.utf-8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-nimbus sans l-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.ko_KR.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.ko_KR.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset = "-*-baekmuk gulim-medium-r-normal--16-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.zh_CN.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.zh_CN Wed Feb 13 16:52:34 2002 +@@ -7,7 +7,7 @@ + # + + style "gtk-default-zh-cn" { +- fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\ ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-*-*,\ + -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*" + } + class "GtkWidget" style "gtk-default-zh-cn" +--- gtk+-1.2.10/gtk/gtkrc.az.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.az Wed Feb 13 16:52:34 2002 +@@ -2,7 +2,9 @@ + fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ + -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ + -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9e,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9e,*-r-*" ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9e,\ ++ -*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso10646-1,\ ++ -urw-nimbus sans l-medium-r-normal--12-*-*-*-p-*-iso10646-1,\ + -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso10646-1,\ + -*-arial-medium-r-normal--12-*-*-*-*-*-iso10646-1,*-r-*" + } +--- gtk+-1.2.10/gtk/gtkrc.az_AZ.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.az_AZ.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso10646-1,\ ++ -urw-nimbus sans l-medium-r-normal--12-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.el_GR.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.el_GR.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-kerkis-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.iso-8859-9.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.iso-8859-9 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default-tr" { ++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9,*-r-*" ++} ++class "GtkWidget" style "gtk-default-tr" ++ +--- gtk+-1.2.10/gtk/gtkrc.eo.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.eo Wed Feb 13 16:52:34 2002 +@@ -1,8 +0,0 @@ +-style "gtk-default-eo" { +- fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-3,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-3,*-r-*" +-} +-class "GtkWidget" style "gtk-default-eo" +- +--- gtk+-1.2.10/gtk/gtkrc.ru.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.ru Wed Feb 13 16:52:34 2002 +@@ -1,8 +1,9 @@ + style "gtk-default-ru" { +- fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -cronyx-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-koi8-r,*-r-*" ++ fontset = "-*-arial-medium-r-normal--14-*-*-*-*-*-iso8859-1,\ ++ -adobe-helvetica-medium-r-normal--14-*-*-*-*-*-iso8859-*,\ ++ -*-arial-medium-r-normal--14-*-*-*-*-*-koi8-r,\ ++ -cronyx-helvetica-medium-r-normal--14-*-*-*-*-*-koi8-r,\ ++ *-r-*" + } + class "GtkWidget" style "gtk-default-ru" + +--- gtk+-1.2.10/gtk/gtkrc.th_TH.utf8.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.th_TH.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,15 @@ ++# $(gtkconfigdir)/gtkrc.th ++# ++# This file defines the fontsets for Thai language (th) using ++# the UTF-8 charset encoding. ++# ++# 2004, Pablo Saratxaga <pablo@mandrakesoft.com> ++# ++ ++style "gtk-default-th" { ++ fontset = "-*-norasi-medium-r-normal--18-*-*-*-*-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default-th" ++ +--- gtk+-1.2.10/gtk/gtkrc.th.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.th Wed Feb 13 16:52:34 2002 +@@ -8,8 +8,8 @@ + + style "gtk-default-th" { +- fontset = "-*-helvetica-medium-r-normal--14-*-*-*-*-*-iso8859-1,\ +- -*-phaisarn-medium-r-normal--14-*-*-*-*-*-tis620.2533-1,\ +- -*-*-medium-r-normal--14-*-*-*-*-*-tis620.2533-1,*-r-*" ++ fontset = "-*-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\ ++ -*-norasi-medium-r-normal--18-*-*-*-*-*-tis620-0,\ ++ -*-*-medium-r-normal--16-*-*-*-*-*-tis620-0,*-r-*" + } + class "GtkWidget" style "gtk-default-th" + +--- gtk+-1.2.10/gtk/Makefile.am.rclocale Fri Feb 2 18:09:02 2001 ++++ gtk+-1.2.10/gtk/Makefile.am Wed Feb 13 16:52:34 2002 +@@ -374,11 +374,16 @@ + + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \ +- gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \ +- gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ ++gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja \ ++ gtkrc.ko gtkrc.ru gtkrc.th gtkrc.th_TH.utf8 gtkrc.uk \ ++ gtkrc.utf-8 gtkrc.iso-8859-2 \ ++ gtkrc.iso-8859-3 gtkrc.iso-8859-5 gtkrc.iso-8859-7 \ ++ gtkrc.iso-8859-9 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ + gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \ + gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \ ++ gtkrc.az_AZ.utf8 gtkrc.ja_JP.utf8 gtkrc.ko_KR.utf8 gtkrc.hy_AM.utf8 \ ++ gtkrc.tg_TJ.utf8 gtkrc.zh_CN.utf8 gtkrc.zh_TW.utf8 gtkrc.ka_GE.utf8 \ ++ gtkrc.el_GR.utf8 gtkrc.am_ET.utf8 gtkrc.vi_VN.utf8 \ + gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 + + # We create a dummy theme for the default GTK+ theme +@@ -409,9 +414,13 @@ + ln -s gtkrc.iso-8859-14 gtkrc.cy ; \ + ln -s gtkrc.iso-8859-14 gtkrc.ga ; \ + ln -s gtkrc.iso-8859-15 gtkrc.et ; \ +- ln -s gtkrc.ka_GE.georgianps gtkrc.ka ; \ ++ ln -s gtkrc.ka_GE.utf8 gtkrc.ka ; \ + ln -s gtkrc.vi_VN.viscii gtkrc.vi_VN.viscii111 ; \ +- ln -s gtkrc.vi_VN.tcvn gtkrc.vi ; \ ++ ln -s gtkrc.vi_VN.utf8 gtkrc.vi ; \ ++ ln -s gtkrc.zh_CN gtkrc.zh_SG ; \ ++ ln -s gtkrc.zh_CN.utf8 gtkrc.zh_SG.utf8 ; \ ++ ln -s gtkrc.zh_TW.big5 gtkrc.zh_HK ; \ ++ ln -s gtkrc.zh_TW.utf8 gtkrc.zh_TW.utf8 ; \ + ln -s gtkrc.cp1251 gtkrc.be ; \ + ln -s gtkrc.cp1251 gtkrc.bg + +--- gtk+-1.2.10/gtk/gtkrc.ja.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.ja Wed Feb 13 16:52:34 2002 +@@ -1,5 +1,5 @@ + style "gtk-default-ja" { +- fontset = "-adobe-helvetica-medium-r-normal--14-100-100-100-p-76-iso8859-1,\ ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-*-*,\ + -ricoh-ms mincho-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0,\ + -misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0,\ + *-r-*" +--- gtk+-1.2.10/gtk/gtkrc.el.rclocale Mon May 8 20:49:18 2000 ++++ gtk+-1.2.10/gtk/gtkrc.el Wed Feb 13 16:52:34 2002 +@@ -1,8 +0,0 @@ +-style "gtk-default-el" { +- fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-7,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-7,*-r-*" +-} +-class "GtkWidget" style "gtk-default-el" +- +--- gtk+-1.2.10/gtk/gtkrc.vi_VN.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.vi_VN.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -urw-nimbus sans l-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.am_ET.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.am_ET.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset = "-*-gf zemen unicode-medium-r-normal--14-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.ka_GE.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.ka_GE.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset = "-*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/Makefile.in.rclocale Mon Apr 2 05:14:13 2001 ++++ gtk+-1.2.10/gtk/Makefile.in Wed Feb 13 16:52:34 2002 +@@ -191,8 +191,7 @@ + CLEANFILES = $(gen_sources) + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 +- ++gtkconf_DATA = gtkrc.az gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.th gtkrc.th_TH.utf8 gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.utf8 gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 gtkrc.utf-8 gtkrc.iso-8859-3 gtkrc.iso-8859-7 gtkrc.iso-8859-9 gtkrc.az_AZ.utf8 gtkrc.ja_JP.utf8 gtkrc.ko_KR.utf8 gtkrc.tg_TJ.utf8 gtkrc.zh_CN.utf8 gtkrc.zh_TW.utf8 gtkrc.ka_GE.utf8 gtkrc.hy_AM.utf8 gtkrc.el_GR.utf8 gtkrc.am_ET.utf8 + + # + # test programs, not to be installed +@@ -1505,9 +1504,13 @@ + ln -s gtkrc.iso-8859-14 gtkrc.cy ; \ + ln -s gtkrc.iso-8859-14 gtkrc.ga ; \ + ln -s gtkrc.iso-8859-15 gtkrc.et ; \ +- ln -s gtkrc.ka_GE.georgianps gtkrc.ka ; \ ++ ln -s gtkrc.ka_GE.utf8 gtkrc.ka ; \ + ln -s gtkrc.vi_VN.viscii gtkrc.vi_VN.viscii111 ; \ +- ln -s gtkrc.vi_VN.tcvn gtkrc.vi ; \ ++ ln -s gtkrc.vi_VN.utf8 gtkrc.vi ; \ ++ ln -s gtkrc.zh_CN gtkrc.zh_SG ; \ ++ ln -s gtkrc.zh_CN.utf8 gtkrc.zh_SG.utf8 ; \ ++ ln -s gtkrc.zh_TW.big5 gtkrc.zh_HK ; \ ++ ln -s gtkrc.zh_TW.utf8 gtkrc.zh_TW.utf8 ; \ + ln -s gtkrc.cp1251 gtkrc.be ; \ + ln -s gtkrc.cp1251 gtkrc.bg + +--- gtk+-1.2.10/gtk/gtkrc.zh_CN.utf8.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.zh_CN.utf8 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,7 @@ ++style "gtk-default" { ++ fontset ="-*-AR PL SungtiL GB-medium-r-normal--16-*-*-*-p-*-iso10646-1,\ ++ -*-clearlyu-medium-r-normal--17-*-*-*-p-*-iso10646-1,\ ++ -*-r-*-iso10646-1,*" ++} ++class "GtkWidget" style "gtk-default" ++ +--- gtk+-1.2.10/gtk/gtkrc.zh_TW.big5.rclocale Fri Nov 3 23:40:27 2000 ++++ gtk+-1.2.10/gtk/gtkrc.zh_TW.big5 Wed Feb 13 16:52:34 2002 +@@ -10,8 +10,8 @@ + # the lowercasing of "big5" is done on purpose, if you change it it won't work + + style "gtk-default-zh-tw" { +- fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\ +- -taipei-*-medium-r-normal--*-*-*-*-*-*-big5-0,\ ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-*-*,\ ++ -taipei-*-medium-r-normal--16-*-*-*-*-*-big5-0,\ + -*-*-medium-r-normal--16-*-*-*-*-*-big5-0,*-r-*" + } + class "GtkWidget" style "gtk-default-zh-tw" +--- gtk+-1.2.10/gtk/gtkrc.iso-8859-7.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.iso-8859-7 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,9 @@ ++style "gtk-default-el" { ++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso8859-7,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-7,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-7,*-r-*" ++} ++class "GtkWidget" style "gtk-default-el" ++ +--- gtk+-1.2.10/gtk/gtkrc.ko.rclocale Tue Oct 19 13:39:25 1999 ++++ gtk+-1.2.10/gtk/gtkrc.ko Wed Feb 13 16:52:34 2002 +@@ -1,8 +1,8 @@ + style "gtk-default-ko" { +- fontset = "-adobe-helvetica-medium-r-normal--*-120-*-*-*-*-*-*,\ +- -*-gulim-medium-r-normal--*-120-*-*-*-*-ksc5601.1987-0,\ +- -*-kodig-medium-r-normal--*-120-*-*-*-*-ksc5601.1987-0,\ +- -*-*-medium-r-normal--*-120-*-*-*-*-ksc5601.1987-0,*" ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-*-*,\ ++ -*-gulim-medium-r-normal--*-140-*-*-*-*-ksc5601.1987-0,\ ++ -*-kodig-medium-r-normal--*-140-*-*-*-*-ksc5601.1987-0,\ ++ -*-*-medium-r-normal--*-140-*-*-*-*-ksc5601.1987-0,*" + } + class "GtkWidget" style "gtk-default-ko" + +--- gtk+-1.2.10/gtk/gtkrc.iso-8859-3.rclocale Wed Feb 13 16:52:34 2002 ++++ gtk+-1.2.10/gtk/gtkrc.iso-8859-3 Wed Feb 13 16:52:34 2002 +@@ -0,0 +1,10 @@ ++style "gtk-default-eo" { ++ fontset = "-*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso8859-1,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-bpg glaho international-medium-r-normal--12-*-*-*-p-*-iso8859-3,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-3,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-3,*-r-*" ++} ++class "GtkWidget" style "gtk-default-eo" ++ diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-libdir.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-libdir.patch new file mode 100644 index 0000000..b32cbdb --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-libdir.patch @@ -0,0 +1,11 @@ +--- gtk+-1.2.10/gtk-config.in.libdir 2002-06-17 18:07:31.000000000 +0200 ++++ gtk+-1.2.10/gtk-config.in 2002-06-17 18:07:50.000000000 +0200 +@@ -96,7 +96,7 @@ + + if test "$echo_libs" = "yes"; then + my_glib_libs= +- libdirs=-L@libdir@ ++ libdirs= + for i in $glib_libs ; do + if test $i != -L@libdir@ ; then + if test -z "$my_glib_libs" ; then diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-mdk-themeswitch.patch b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-themeswitch.patch new file mode 100644 index 0000000..5bf8490 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-mdk-themeswitch.patch @@ -0,0 +1,88 @@ +--- gtk+-1.2.10/gtk/gtkwindow.c.themeswitch Mon Aug 13 13:42:05 2001 ++++ gtk+-1.2.10/gtk/gtkwindow.c Mon Aug 13 13:42:05 2001 +@@ -859,13 +859,60 @@ + GTK_OBJECT_CLASS(parent_class)->finalize (object); + } + ++ ++static void ++reread_rc_files () ++{ ++ if (gtk_rc_reparse_all ()) ++ { ++ /* If the above returned true, some of our RC files are out ++ * of date, so we need to reset all our widgets. Our other ++ * toplevel windows will also get the message, but by ++ * then, the RC file will up to date, so we have to tell ++ * them now. ++ */ ++ GList *toplevels; ++ ++ toplevels = gtk_container_get_toplevels(); ++ while (toplevels) ++ { ++ gtk_widget_reset_rc_styles (toplevels->data); ++ toplevels = toplevels->next; ++ } ++ } ++} ++ + static void + gtk_window_show (GtkWidget *widget) + { + GtkWindow *window = GTK_WINDOW (widget); + GtkContainer *container = GTK_CONTAINER (window); + gboolean need_resize; ++ GList *toplevels; ++ gboolean had_visible = FALSE; + ++ /* If we have no windows shown at this point, then check for ++ * theme changes before showing the window. We really should ++ * be checking realized, not shown, but shown => realized, ++ * and checking in realize might cause reentrancy problems. ++ * ++ * Plus, this allows us to get the new size right before ++ * realizing. ++ */ ++ toplevels = gtk_container_get_toplevels (); ++ while (toplevels) ++ { ++ if (GTK_WIDGET_VISIBLE (toplevels->data)) ++ { ++ had_visible = TRUE; ++ break; ++ } ++ toplevels = toplevels->next; ++ } ++ ++ if (!had_visible) ++ reread_rc_files (); ++ + GTK_WIDGET_SET_FLAGS (widget, GTK_VISIBLE); + + need_resize = container->need_resize || !GTK_WIDGET_REALIZED (widget); +@@ -1480,23 +1527,7 @@ + } + } + +- if (gtk_rc_reparse_all ()) +- { +- /* If the above returned true, some of our RC files are out +- * of date, so we need to reset all our widgets. Our other +- * toplevel windows will also get the message, but by +- * then, the RC file will up to date, so we have to tell +- * them now. +- */ +- GList *toplevels; +- +- toplevels = gtk_container_get_toplevels(); +- while (toplevels) +- { +- gtk_widget_reset_rc_styles (toplevels->data); +- toplevels = toplevels->next; +- } +- } ++ reread_rc_files (); + } + + static gint diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-alignment.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-alignment.patch new file mode 100644 index 0000000..7d90898 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-alignment.patch @@ -0,0 +1,29 @@ +--- gtk+-1.2.10/gtk/gtktypeutils.h.alignment Fri Aug 18 17:36:34 2000 ++++ gtk+-1.2.10/gtk/gtktypeutils.h Tue Jul 3 21:07:40 2001 +@@ -191,6 +191,13 @@ + GtkTypeClass *klass; + }; + ++#ifdef __GNUC__ ++struct _GtkTypeClassDummyAlign ++{ ++ GtkType type; ++ guint *signals; ++}; ++#endif /* __GNUC__ */ + + /* A GtkTypeClass defines the minimum structure requirements for + * a types class. Classes returned from gtk_type_class () and +@@ -203,7 +210,11 @@ + * one unique identifier per class. + */ + GtkType type; +-}; ++} ++#ifdef __GNUC__ ++__attribute__ ((aligned (__alignof (struct _GtkTypeClassDummyAlign)))) ++#endif /* __GNUC__ */ ++; + + + struct _GtkArg diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-bellvolume.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-bellvolume.patch new file mode 100644 index 0000000..c64293c --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-bellvolume.patch @@ -0,0 +1,11 @@ +--- gtk+-1.2.10/gdk/gdk.c.bellvolume Wed Jan 15 12:32:25 2003 ++++ gtk+-1.2.10/gdk/gdk.c Wed Jan 15 12:32:28 2003 +@@ -989,7 +989,7 @@ + void + gdk_beep (void) + { +- XBell(gdk_display, 100); ++ XBell(gdk_display, 0); + } + + /* diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-clistfocusrow.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-clistfocusrow.patch new file mode 100644 index 0000000..afae023 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-clistfocusrow.patch @@ -0,0 +1,30 @@ +Index: gtk/gtkclist.c +=================================================================== +RCS file: /cvs/gnome/gtk+/gtk/gtkclist.c,v +retrieving revision 1.156.2.25 +retrieving revision 1.156.2.26 +diff -u -p -r1.156.2.25 -r1.156.2.26 +--- gtk/gtkclist.c 1 Mar 2001 00:18:20 -0000 1.156.2.25 ++++ gtk/gtkclist.c 14 Dec 2002 04:17:03 -0000 1.156.2.26 +@@ -2800,10 +2800,6 @@ real_remove_row (GtkCList *clist, + clist->row_list_end = g_list_previous (list); + g_list_remove (list, clist_row); + +- /*if (clist->focus_row >=0 && +- (row <= clist->focus_row || clist->focus_row >= clist->rows)) +- clist->focus_row--;*/ +- + if (row < ROW_FROM_YPIXEL (clist, 0)) + clist->voffset += clist->row_height + CELL_SPACING; + +@@ -4331,7 +4327,9 @@ sync_selection (GtkCList *clist, + clist->focus_row += d; + if (clist->focus_row == -1 && clist->rows >= 1) + clist->focus_row = 0; +- else if (clist->focus_row >= clist->rows) ++ else if (d < 0 && clist->focus_row >= clist->rows - 1) ++ clist->focus_row = clist->rows - 2; ++ else if (clist->focus_row >= clist->rows) /* Paranoia */ + clist->focus_row = clist->rows - 1; + } + diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-ctext.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-ctext.patch new file mode 100644 index 0000000..28fca0c --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-ctext.patch @@ -0,0 +1,140 @@ +--- gtk+-1.2.10/gdk/gdkselection.c.ctext Thu Jul 5 12:41:42 2001 ++++ gtk+-1.2.10/gdk/gdkselection.c Thu Jul 5 12:45:25 2001 +@@ -191,73 +191,6 @@ + gdk_send_xevent (requestor, False, NoEventMask, (XEvent*) &xevent); + } + +- +-/* The output of XmbTextPropertyToTextList may include stuff not valid +- * for COMPOUND_TEXT. This routine tries to correct this by: +- * +- * a) Canonicalizing CR LF and CR to LF +- * b) Stripping out all other non-allowed control characters +- * +- * See the COMPOUND_TEXT spec distributed with X for explanations +- * what is allowed. +- */ +-static gchar * +-sanitize_ctext (const char *str, +- gint *length) +-{ +- gchar *result = g_malloc (*length + 1); +- gint out_length = 0; +- gint i; +- const guchar *ustr = (const guchar *)str; +- +- for (i=0; i < *length; i++) +- { +- guchar c = ustr[i]; +- +- if (c == '\r') +- { +- result[out_length++] = '\n'; +- if (i + 1 < *length && ustr[i + 1] == '\n') +- i++; +- } +- else if (c == 27 /* ESC */) +- { +- /* Check for "extended segments, which can contain arbitrary +- * octets. See CTEXT spec, section 6. +- */ +- +- if (i + 5 < *length && +- ustr[i + 1] == '%' && +- ustr[i + 2] == '/' && +- (ustr[i + 3] >= 48 && ustr[i + 3] <= 52) && +- ustr[i + 4] >= 128 && +- ustr[i + 5] >= 128) +- { +- int extra_len = 6 + (ustr[i + 4] - 128) * 128 + ustr[i + 5] - 128; +- extra_len = MAX (extra_len, *length - i); +- +- memcpy (result + out_length, ustr + i, extra_len); +- out_length += extra_len; +- i += extra_len - 1; +- } +- else +- result[out_length++] = c; +- } +- else if (c == '\n' || c == '\t' || c == 27 /* ESC */ || +- (c >= 32 && c <= 127) || /* GL */ +- c == 155 /* CONTROL SEQUENCE INTRODUCER */ || +- (c >= 160 && c <= 255)) /* GR */ +- { +- result[out_length++] = c; +- } +- } +- +- result[out_length] = '\0'; +- *length = out_length; +- +- return result; +-} +- + gint + gdk_text_property_to_text_list (GdkAtom encoding, gint format, + guchar *text, gint length, +@@ -266,32 +199,16 @@ + XTextProperty property; + gint count = 0; + gint res; +- gchar *sanitized_text = NULL; + + if (!list) + return 0; + + property.encoding = encoding; + property.format = format; +- +- if (encoding == gdk_atom_intern ("COMPOUND_TEXT", FALSE) && format == 8) +- { +- gint sanitized_text_length = length; +- +- property.value = sanitized_text = sanitize_ctext (text, &sanitized_text_length); +- property.nitems = sanitized_text_length; +- } +- else +- { +- property.value = text; +- property.nitems = length; +- } +- ++ property.value = text; ++ property.nitems = length; + res = XmbTextPropertyToTextList (GDK_DISPLAY(), &property, list, &count); + +- if (sanitized_text) +- g_free (sanitized_text); +- + if (res == XNoMemory || res == XLocaleNotSupported || + res == XConverterNotFound) + return 0; +@@ -314,8 +231,6 @@ + { + gint res; + XTextProperty property; +- gint sanitized_text_length; +- gchar *sanitized_text; + + res = XmbTextListToTextProperty (GDK_DISPLAY(), + (char **)&str, 1, XCompoundTextStyle, +@@ -334,17 +249,10 @@ + *encoding = property.encoding; + if (format) + *format = property.format; +- +- sanitized_text_length = property.nitems; +- sanitized_text = sanitize_ctext (property.value, &sanitized_text_length); +- + if (ctext) +- *ctext = sanitized_text; +- else +- g_free (sanitized_text); +- ++ *ctext = g_strdup (property.value); + if (length) +- *length = sanitized_text_length; ++ *length = property.nitems; + + if (property.value) + XFree (property.value); diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-deletedir.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-deletedir.patch new file mode 100644 index 0000000..7a1151c --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-deletedir.patch @@ -0,0 +1,188 @@ +--- gtk+-1.2.10/gtk/gtkfilesel.c.deletedir Thu Feb 15 23:36:19 2001 ++++ gtk+-1.2.10/gtk/gtkfilesel.c Wed Apr 17 20:36:25 2002 +@@ -325,7 +325,8 @@ + + static void gtk_file_selection_populate (GtkFileSelection *fs, + gchar *rel_path, +- gint try_complete); ++ gboolean try_complete, ++ gboolean reset_entry); + static void gtk_file_selection_abort (GtkFileSelection *fs); + + static void gtk_file_selection_update_history_menu (GtkFileSelection *fs, +@@ -522,7 +523,7 @@ + } + else + { +- gtk_file_selection_populate (filesel, "", FALSE); ++ gtk_file_selection_populate (filesel, "", FALSE, TRUE); + } + + gtk_widget_grab_focus (filesel->selection_entry); +@@ -637,7 +638,7 @@ + name = last_slash + 1; + } + +- gtk_file_selection_populate (filesel, buf, FALSE); ++ gtk_file_selection_populate (filesel, buf, FALSE, TRUE); + + if (filesel->selection_entry) + gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), name); +@@ -673,7 +674,7 @@ + + if (filesel->selection_entry) + gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), pattern); +- gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE); ++ gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE, TRUE); + } + + static void +@@ -806,7 +807,7 @@ + g_free (full_path); + + gtk_widget_destroy (fs->fileop_dialog); +- gtk_file_selection_populate (fs, "", FALSE); ++ gtk_file_selection_populate (fs, "", FALSE, FALSE); + } + + static void +@@ -903,7 +904,7 @@ + g_free (full_path); + + gtk_widget_destroy (fs->fileop_dialog); +- gtk_file_selection_populate (fs, "", FALSE); ++ gtk_file_selection_populate (fs, "", FALSE, TRUE); + } + + static void +@@ -1009,8 +1010,9 @@ + g_free (new_filename); + g_free (old_filename); + ++ gtk_file_selection_populate (fs, "", FALSE, FALSE); ++ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), file); + gtk_widget_destroy (fs->fileop_dialog); +- gtk_file_selection_populate (fs, "", FALSE); + } + + static void +@@ -1112,7 +1114,7 @@ + + text = g_strdup (text); + +- gtk_file_selection_populate (fs, text, TRUE); ++ gtk_file_selection_populate (fs, text, TRUE, TRUE); + + g_free (text); + +@@ -1124,7 +1126,6 @@ + return FALSE; + } + +- + static void + gtk_file_selection_history_callback (GtkWidget *widget, gpointer data) + { +@@ -1142,7 +1143,7 @@ + + if (callback_arg->menu_item == widget) + { +- gtk_file_selection_populate (fs, callback_arg->directory, FALSE); ++ gtk_file_selection_populate (fs, callback_arg->directory, FALSE, FALSE); + break; + } + +@@ -1272,7 +1273,7 @@ + gpointer user_data) + { + GtkFileSelection *fs = NULL; +- gchar *filename, *temp = NULL; ++ gchar *filename = NULL; + + g_return_if_fail (GTK_IS_CLIST (widget)); + +@@ -1280,39 +1281,23 @@ + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); + +- gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &temp); +- filename = g_strdup (temp); +- +- if (filename) +- { +- if (bevent) +- switch (bevent->type) +- { +- case GDK_2BUTTON_PRESS: +- gtk_file_selection_populate (fs, filename, FALSE); +- break; +- +- default: +- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); +- break; +- } +- else +- gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); +- +- g_free (filename); +- } ++ gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &filename); ++ ++ if (filename && bevent && bevent->type == GDK_2BUTTON_PRESS) ++ gtk_file_selection_populate (fs, filename, FALSE, FALSE); + } + + static void + gtk_file_selection_populate (GtkFileSelection *fs, + gchar *rel_path, +- gint try_complete) ++ gboolean try_complete, ++ gboolean reset_entry) + { + CompletionState *cmpl_state; + PossibleCompletion* poss; + gchar* filename; + gint row; +- gchar* rem_path = rel_path; ++ gchar* rem_path; + gchar* sel_text; + gchar* text[2]; + gint did_recurse = FALSE; +@@ -1323,6 +1308,8 @@ + + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); ++ ++ rem_path = rel_path = g_strdup (rel_path); + + cmpl_state = (CompletionState*) fs->cmpl_state; + poss = cmpl_completion_matches (rel_path, &rem_path, cmpl_state); +@@ -1422,7 +1409,7 @@ + + did_recurse = TRUE; + +- gtk_file_selection_populate (fs, dir_name, TRUE); ++ gtk_file_selection_populate (fs, dir_name, TRUE, TRUE); + + g_free (dir_name); + } +@@ -1441,7 +1428,7 @@ + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), rem_path); + } + } +- else ++ else if (reset_entry) + { + if (fs->selection_entry) + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), ""); +@@ -1466,8 +1453,9 @@ + { + gtk_file_selection_update_history_menu (fs, cmpl_reference_position (cmpl_state)); + } +- + } ++ ++ g_free (rel_path); + } + + static void diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-encoding.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-encoding.patch new file mode 100644 index 0000000..ca645f3 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-encoding.patch @@ -0,0 +1,148 @@ +--- gtk+-1.2.10/gtk/gtkrc.c.encoding Thu Mar 15 13:41:40 2001 ++++ gtk+-1.2.10/gtk/gtkrc.c Fri Jul 26 16:49:24 2002 +@@ -33,6 +33,7 @@ + #include <string.h> + #include <stdio.h> + #include <stdlib.h> ++#include <langinfo.h> + + #include "gtkrc.h" + #include "gtkbindings.h" +@@ -440,7 +441,7 @@ + void + gtk_rc_init (void) + { +- static gchar *locale_suffixes[3]; ++ static gchar *locale_suffixes[8]; + static gint n_locale_suffixes = 0; + + gint i, j; +@@ -449,9 +450,7 @@ + + if (!initted) + { +- gint length; +- +- char *locale = setlocale (LC_CTYPE, NULL); ++ char *locale = g_strdup (setlocale (LC_CTYPE, NULL)); + char *p; + + initted = TRUE; +@@ -470,39 +469,88 @@ + * We normalize the charset into a standard form, + * which has all '-' and '_' characters removed, + * and is lowercase. ++ * ++ * the search is done in that order: ++ * gtkrc.ll_cc.lowercasecodeset ++ * gtkrc.ll_cc.normalizedcodeset ++ * gtkrc.ll.lowercasecodeset ++ * gtkrc.ll.normalizedcodeset ++ * gtkrc.lowercasecodeset ++ * gtkrc.normalizedcodeset ++ * gtkrc.ll_cc ++ * gtkrc.ll ++ * + */ +- gchar *normalized_locale; ++ char *codeset = NULL; ++ char *normalized_codeset = NULL; ++ char *cc = NULL; ++ char *ll; + + p = strchr (locale, '@'); +- length = p ? (p -locale) : strlen (locale); ++ if (p) ++ *p = '\0'; + ++ codeset = nl_langinfo (CODESET); ++ + p = strchr (locale, '.'); ++ if (!codeset && p) ++ codeset = p + 1; + if (p) ++ *p = '\0'; ++ ++ if (codeset) + { +- gchar *tmp1 = g_strndup (locale, p - locale + 1); +- gchar *tmp2 = _gtk_normalize_codeset (p + 1, length - (p - locale + 1)); ++ codeset = g_strdup (codeset); + +- normalized_locale = g_strconcat (tmp1, tmp2, NULL); +- g_free (tmp1); +- g_free (tmp2); +- +- locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_locale); +- length = p - locale; ++ p = codeset; ++ while (*p) ++ { ++ /* tolower not used, because some locales are not ++ * compatible with C locale in lowercasing ascii ++ */ ++ if (*p >= 'A' && *p <= 'Z') ++ *p = (*p) - 'A' + 'a'; ++ p++; ++ } ++ ++ normalized_codeset = _gtk_normalize_codeset(codeset, strlen (codeset)); ++ if (strcmp (normalized_codeset, codeset) == 0) ++ { ++ g_free (normalized_codeset); ++ normalized_codeset = NULL; ++ } + } +- else +- normalized_locale = g_strndup (locale, length); + +- p = strchr (normalized_locale, '_'); ++ p = strchr (locale, '_'); + if (p) + { +- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length); +- length = p - normalized_locale; ++ cc = p + 1; ++ *p = '\0'; + } +- +- locale_suffixes[n_locale_suffixes++] = g_strndup (normalized_locale, length); + +- g_free (normalized_locale); ++ ll = locale; ++ ++ if (cc && codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", codeset, NULL); ++ if (cc && normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, ".", normalized_codeset, NULL); ++ if (codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", codeset, NULL); ++ if (normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, ".", normalized_codeset, NULL); ++ if (codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strdup (codeset); ++ if (normalized_codeset) ++ locale_suffixes[n_locale_suffixes++] = g_strdup (normalized_codeset); ++ if (cc) ++ locale_suffixes[n_locale_suffixes++] = g_strconcat (ll, "_", cc, NULL); ++ locale_suffixes[n_locale_suffixes++] = g_strdup (ll); ++ ++ g_free (normalized_codeset); ++ g_free (codeset); + } ++ ++ g_free (locale); + } + + i = 0; +--- gtk+-1.2.10/gtk/gtkrc.iso88599.encoding Fri Jul 26 16:47:04 2002 ++++ gtk+-1.2.10/gtk/gtkrc.iso88599 Fri Jul 26 16:47:04 2002 +@@ -0,0 +1,8 @@ ++style "gtk-default-iso-8859-9" { ++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-9,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-9,*-r-*" ++} ++class "GtkWidget" style "gtk-default-iso-8859-9" ++ diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-fontwarning.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-fontwarning.patch new file mode 100644 index 0000000..c3f6b27 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-fontwarning.patch @@ -0,0 +1,41 @@ +--- gtk+-1.2.10/gdk/gdkfont.c.fontwarning 2002-07-30 15:38:52.000000000 +0200 ++++ gtk+-1.2.10/gdk/gdkfont.c 2002-07-30 15:43:43.000000000 +0200 +@@ -26,6 +26,8 @@ + + #include <X11/Xlib.h> + #include <X11/Xos.h> ++#include <langinfo.h> ++#include <locale.h> + #include "gdk.h" + #include "gdkprivate.h" + +@@ -173,9 +175,26 @@ + if (missing_charset_count) + { + gint i; +- g_warning ("Missing charsets in FontSet creation\n"); +- for (i=0;i<missing_charset_count;i++) +- g_warning (" %s\n", missing_charset_list[i]); ++ const char *codeset; ++ ++ codeset = nl_langinfo (CODESET); ++ ++ /* Hack - UTF-8 is likely to be rendered with a list of ++ * possible legacy fallback charsets, so a failure here ++ * shouldn't be warned about. But we don't want to suppress ++ * this warning in general, since for other character sets ++ * it gives a useful indication of what went wrong. ++ */ ++ if (g_strcasecmp (codeset, "utf-8") != 0 && ++ g_strcasecmp (codeset, "utf8") != 0) ++ { ++ g_printerr ("The font \"%s\" does not support all the required character sets for the current locale \"%s\"\n", ++ fontset_name, setlocale (LC_ALL, NULL)); ++ for (i=0;i<missing_charset_count;i++) ++ g_printerr (" (Missing character set \"%s\")\n", ++ missing_charset_list[i]); ++ } ++ + XFreeStringList (missing_charset_list); + } + diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-kpenter.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-kpenter.patch new file mode 100644 index 0000000..a72fcb2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-kpenter.patch @@ -0,0 +1,52 @@ +--- gtk+-1.2.10/gtk/gtkentry.c.kpenter Sat Jul 21 20:27:08 2001 ++++ gtk+-1.2.10/gtk/gtkentry.c Sat Jul 21 20:27:16 2001 +@@ -1184,6 +1184,7 @@ + } + break; + case GDK_Return: ++ case GDK_KP_Enter: + return_val = TRUE; + gtk_widget_activate (widget); + break; +--- gtk+-1.2.10/gtk/gtktext.c.kpenter Sat Jul 21 20:28:56 2001 ++++ gtk+-1.2.10/gtk/gtktext.c Sat Jul 21 20:29:17 2001 +@@ -2055,6 +2055,7 @@ + case GDK_Up: scroll_int (text, -KEY_SCROLL_PIXELS); break; + case GDK_Down: scroll_int (text, +KEY_SCROLL_PIXELS); break; + case GDK_Return: ++ case GDK_KP_Enter: + if (event->state & GDK_CONTROL_MASK) + gtk_signal_emit_by_name (GTK_OBJECT (text), "activate"); + else +@@ -2161,6 +2162,7 @@ + gtk_editable_insert_text (editable, "\t", 1, &position); + break; + case GDK_Return: ++ case GDK_KP_Enter: + if (event->state & GDK_CONTROL_MASK) + gtk_signal_emit_by_name (GTK_OBJECT (text), "activate"); + else +--- gtk+-1.2.10/gtk/gtkmenushell.c.kpenter Sat Jul 21 20:27:59 2001 ++++ gtk+-1.2.10/gtk/gtkmenushell.c Sat Jul 21 20:28:05 2001 +@@ -258,6 +258,11 @@ + GTK_TYPE_BOOL, + TRUE); + gtk_binding_entry_add_signal (binding_set, ++ GDK_KP_Enter, 0, ++ "activate_current", 1, ++ GTK_TYPE_BOOL, ++ TRUE); ++ gtk_binding_entry_add_signal (binding_set, + GDK_space, 0, + "activate_current", 1, + GTK_TYPE_BOOL, +--- gtk+-1.2.10/gtk/gtknotebook.c.kpenter Sat Jul 21 20:28:30 2001 ++++ gtk+-1.2.10/gtk/gtknotebook.c Sat Jul 21 20:28:38 2001 +@@ -1369,6 +1369,7 @@ + gtk_notebook_switch_focus_tab (notebook, list); + return TRUE; + case GDK_Return: ++ case GDK_KP_Enter: + case GDK_space: + gtk_notebook_page_select (GTK_NOTEBOOK (widget)); + return TRUE; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-localecrash.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-localecrash.patch new file mode 100644 index 0000000..368380b --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-localecrash.patch @@ -0,0 +1,20 @@ +--- gtk+-1.2.10/gdk/gdkselection.c.localecrash Thu Aug 22 16:50:01 2002 ++++ gtk+-1.2.10/gdk/gdkselection.c Thu Aug 22 17:50:46 2002 +@@ -238,12 +238,14 @@ + if (res != Success) + { + property.encoding = None; +- property.format = None; ++ property.format = 8; + property.value = NULL; + property.nitems = 0; +- } + +- g_assert (property.encoding == gdk_atom_intern ("COMPOUND_TEXT", FALSE) && property.format == 8); ++ g_warning ("Error converting string to compound text.\n" ++ "This might mean that your locale setting is supported\n" ++ "by the C library but not by Xlib."); ++ } + + if (encoding) + *encoding = property.encoding; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-m4.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-m4.patch new file mode 100644 index 0000000..3e7ae15 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-m4.patch @@ -0,0 +1,11 @@ +--- gtk+-1.2.10/gtk.m4.underquoted 2004-08-15 22:20:34.253447389 +0100 ++++ gtk+-1.2.10/gtk.m4 2004-08-15 22:20:47.874844660 +0100 +@@ -4,7 +4,7 @@ + dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) + dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS + dnl +-AC_DEFUN(AM_PATH_GTK, ++AC_DEFUN([AM_PATH_GTK], + [dnl + dnl Get the cflags and libraries from the gtk-config script + dnl diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-missingchar.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-missingchar.patch new file mode 100644 index 0000000..0d76f93 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-missingchar.patch @@ -0,0 +1,33 @@ +--- gtk+-1.2.10/gdk/gdkfont.c.missingchar Mon Aug 13 13:37:52 2001 ++++ gtk+-1.2.10/gdk/gdkfont.c Mon Aug 13 13:39:30 2001 +@@ -461,7 +461,6 @@ + GdkFontPrivate *private; + XCharStruct *chars; + gint width; +- guint ch = character & 0xff; /* get rid of sign-extension */ + XFontStruct *xfont; + XFontSet fontset; + +@@ -474,21 +473,7 @@ + case GDK_FONT_FONT: + /* only 8 bits characters are considered here */ + xfont = (XFontStruct *) private->xfont; +- if ((xfont->min_byte1 == 0) && +- (xfont->max_byte1 == 0) && +- (ch >= xfont->min_char_or_byte2) && +- (ch <= xfont->max_char_or_byte2)) +- { +- chars = xfont->per_char; +- if (chars) +- width = chars[ch - xfont->min_char_or_byte2].width; +- else +- width = xfont->min_bounds.width; +- } +- else +- { +- width = XTextWidth (xfont, &character, 1); +- } ++ width = XTextWidth (xfont, &character, 1); + break; + case GDK_FONT_FONTSET: + fontset = (XFontSet) private->xfont; diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-pixmapref.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-pixmapref.patch new file mode 100644 index 0000000..0a6c3b2 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-pixmapref.patch @@ -0,0 +1,14 @@ +--- gtk+-1.2.10/gtk/gtkstyle.c.pixmapref Tue Feb 20 11:46:58 2001 ++++ gtk+-1.2.10/gtk/gtkstyle.c Sun Aug 12 15:42:06 2001 +@@ -348,8 +348,9 @@ + new_style->bg[i] = style->bg[i]; + new_style->text[i] = style->text[i]; + new_style->base[i] = style->base[i]; +- +- new_style->bg_pixmap[i] = style->bg_pixmap[i]; ++ ++ if (style->bg_pixmap[i] && !(style->rc_style && style->rc_style->bg_pixmap_name[i])) ++ new_style->bg_pixmap[i] = gdk_pixmap_ref (style->bg_pixmap[i]); + } + + gdk_font_unref (new_style->font); diff --git a/x11-libs/gtk+/files/gtk+-1.2.10-rh-troughpaint.patch b/x11-libs/gtk+/files/gtk+-1.2.10-rh-troughpaint.patch new file mode 100644 index 0000000..6c01495 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.10-rh-troughpaint.patch @@ -0,0 +1,14 @@ +--- gtk+/gtk/gtkrange.c 22 Feb 2001 20:38:14 -0000 1.26.2.3 ++++ gtk+/gtk/gtkrange.c 19 Jul 2002 15:41:58 -0000 +@@ -829,7 +828,10 @@ gtk_range_expose (GtkWidget *widget + (event->area.x + event->area.width <= + widget->allocation.width - trough_border) && + (event->area.y + event->area.height <= +- widget->allocation.height - trough_border))) ++ widget->allocation.height - trough_border)) || ++ gtk_style_get_prop_experimental (widget->style, ++ "GtkRange::always_draw_trough", ++ 0)) + gtk_range_draw_trough (range); + } + else if (event->window == widget->window) diff --git a/x11-libs/gtk+/files/gtk+-1.2.6-ximian-noborder.patch b/x11-libs/gtk+/files/gtk+-1.2.6-ximian-noborder.patch new file mode 100644 index 0000000..296a80e --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.6-ximian-noborder.patch @@ -0,0 +1,74 @@ +--- gtk+-1.2.6/gtk/gtkmenubar.c.noborder Tue Feb 1 02:41:57 2000 ++++ gtk+-1.2.6/gtk/gtkmenubar.c Tue Feb 1 02:42:11 2000 +@@ -217,6 +217,8 @@ + GList *children; + gint nchildren; + GtkRequisition child_requisition; ++ gint xthickness; ++ gint ythickness; + + g_return_if_fail (widget != NULL); + g_return_if_fail (GTK_IS_MENU_BAR (widget)); +@@ -256,12 +258,21 @@ + } + } + ++ if (menu_bar->shadow_type == GTK_SHADOW_NONE) ++ { ++ xthickness = 0; ++ ythickness = 0; ++ } ++ else ++ { ++ xthickness = widget->style->klass->xthickness; ++ ythickness = widget->style->klass->ythickness; ++ } ++ + requisition->width += (GTK_CONTAINER (menu_bar)->border_width + +- widget->style->klass->xthickness + +- BORDER_SPACING) * 2; ++ xthickness + BORDER_SPACING) * 2; + requisition->height += (GTK_CONTAINER (menu_bar)->border_width + +- widget->style->klass->ythickness + +- BORDER_SPACING) * 2; ++ ythickness + BORDER_SPACING) * 2; + + if (nchildren > 0) + requisition->width += 2 * CHILD_SPACING * (nchildren - 1); +@@ -279,6 +290,8 @@ + GtkAllocation child_allocation; + GtkRequisition child_requisition; + guint offset; ++ gint xthickness; ++ gint ythickness; + + g_return_if_fail (widget != NULL); + g_return_if_fail (GTK_IS_MENU_BAR (widget)); +@@ -295,14 +308,23 @@ + + if (menu_shell->children) + { ++ if (menu_bar->shadow_type == GTK_SHADOW_NONE) ++ { ++ xthickness = 0; ++ ythickness = 0; ++ } ++ else ++ { ++ xthickness = widget->style->klass->xthickness; ++ ythickness = widget->style->klass->ythickness; ++ } ++ + child_allocation.x = (GTK_CONTAINER (menu_bar)->border_width + +- widget->style->klass->xthickness + +- BORDER_SPACING); ++ xthickness + BORDER_SPACING); + offset = child_allocation.x; /* Window edge to menubar start */ + + child_allocation.y = (GTK_CONTAINER (menu_bar)->border_width + +- widget->style->klass->ythickness + +- BORDER_SPACING); ++ ythickness + BORDER_SPACING); + child_allocation.height = MAX (1, (gint)allocation->height - child_allocation.y * 2); + + children = menu_shell->children; diff --git a/x11-libs/gtk+/files/gtk+-1.2.8-advanced-gtkfilesel.patch b/x11-libs/gtk+/files/gtk+-1.2.8-advanced-gtkfilesel.patch new file mode 100644 index 0000000..278e99a --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.8-advanced-gtkfilesel.patch @@ -0,0 +1,1407 @@ +*** ../old/gtk+-1.2.8/gtk/gtkfilesel.h Sun Feb 13 01:59:45 2000 +--- gtk/gtkfilesel.h Wed Jul 26 10:19:19 2000 +*************** +*** 57,69 **** +--- 57,73 ---- + GtkWidget *selection_text; + GtkWidget *main_vbox; + GtkWidget *ok_button; + GtkWidget *cancel_button; + GtkWidget *help_button; ++ ++ /* These are not used. Just fillers in the class structure */ + GtkWidget *history_pulldown; + GtkWidget *history_menu; + GList *history_list; ++ /* ***************** */ ++ + GtkWidget *fileop_dialog; + GtkWidget *fileop_entry; + gchar *fileop_file; + gpointer cmpl_state; + +*************** +*** 71,81 **** + GtkWidget *fileop_del_file; + GtkWidget *fileop_ren_file; + + GtkWidget *button_area; + GtkWidget *action_area; +! + }; + + struct _GtkFileSelectionClass + { + GtkWindowClass parent_class; +--- 75,92 ---- + GtkWidget *fileop_del_file; + GtkWidget *fileop_ren_file; + + GtkWidget *button_area; + GtkWidget *action_area; +! +! GtkWidget *history_combo; +! GList *prev_history; +! GList *next_history; +! GtkWidget *mask_entry; +! gchar *mask; +! gchar *saved_entry; +! + }; + + struct _GtkFileSelectionClass + { + GtkWindowClass parent_class; +*** ../old/gtk+-1.2.8/gtk/gtkfilesel.c Thu Jan 27 09:39:54 2000 +--- gtk/gtkfilesel.c Wed Jul 26 10:19:19 2000 +*************** +*** 52,61 **** +--- 52,63 ---- + #include "gtkmenu.h" + #include "gtkmenuitem.h" + #include "gtkoptionmenu.h" + #include "gtkclist.h" + #include "gtkdialog.h" ++ #include "gtkcombo.h" ++ #include "gtkframe.h" + #include "gtkintl.h" + + #define DIR_LIST_WIDTH 180 + #define DIR_LIST_HEIGHT 180 + #define FILE_LIST_WIDTH 180 +*************** +*** 150,159 **** +--- 152,165 ---- + */ + gchar *text; + gint is_a_completion; + gint is_directory; + ++ gint file_size; ++ gint file_time; ++ gint uid; ++ gint gid; + /* Private fields + */ + gint text_alloc; + }; + +*************** +*** 304,318 **** + gint column, + GdkEventButton *bevent, + gpointer user_data); + + static void gtk_file_selection_dir_button (GtkWidget *widget, +! gint row, +! gint column, + GdkEventButton *bevent, + gpointer data); + + static void gtk_file_selection_populate (GtkFileSelection *fs, + gchar *rel_path, + gint try_complete); + static void gtk_file_selection_abort (GtkFileSelection *fs); + +--- 310,330 ---- + gint column, + GdkEventButton *bevent, + gpointer user_data); + + static void gtk_file_selection_dir_button (GtkWidget *widget, +! gint row, +! gint column, + GdkEventButton *bevent, + gpointer data); + ++ static void gtk_file_selection_undir_button (GtkWidget *widget, ++ gint row, ++ gint column, ++ GdkEventButton *bevent, ++ gpointer data); ++ + static void gtk_file_selection_populate (GtkFileSelection *fs, + gchar *rel_path, + gint try_complete); + static void gtk_file_selection_abort (GtkFileSelection *fs); + +*************** +*** 321,337 **** +--- 333,447 ---- + + static void gtk_file_selection_create_dir (GtkWidget *widget, gpointer data); + static void gtk_file_selection_delete_file (GtkWidget *widget, gpointer data); + static void gtk_file_selection_rename_file (GtkWidget *widget, gpointer data); + ++ static gboolean gtk_file_selection_history_combo_callback (GtkWidget *widget, GdkEventKey *event, gpointer data); ++ static gboolean gtk_file_selection_history_combo_list_key_handler(GtkWidget *widget, ++ GdkEventKey *event, ++ gpointer user_data); ++ static gboolean gtk_file_selection_history_combo_list_callback (GtkWidget *thelist, ++ GdkEventButton *event, ++ gpointer user_data); ++ static void gtk_file_selection_mask_entry_callback (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_create_dir (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_delete_file (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_rename_file (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_home_button (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_up_button (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_prev_button (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_next_button (GtkWidget *widget, gpointer data); ++ static void gtk_file_selection_refresh_button (GtkWidget *widget, gpointer data); ++ ++ static gint gtk_file_selection_match_char (gchar, gchar *mask); ++ static gint gtk_file_selection_match_mask (gchar *,gchar *); + + + static GtkWindowClass *parent_class = NULL; + + /* Saves errno when something cmpl does fails. */ + static gint cmpl_errno; + ++ /* General notes: ++ * Make prev and next inactive if their respective * ++ * histories are empty. ++ * Add facilities for handling hidden files and * ++ * directories * ++ * Add an api to access the mask, and hidden files * ++ * check box? (prob not in 1.2.x series) * ++ */ ++ ++ /* Routine for applying mask to filenames * ++ * Need to be optimized to minimize recursion * ++ * help the for loop by looking for the next * ++ * instance of the mask character following * ++ * the '*'. ei *.c -- look for '.' * ++ * Also, swap all *? pairs (-> ?*), as that * ++ * will make it possible to look ahead (? * ++ * makes it very nondeterministic as in *?.c * ++ * which really is ?*.c * ++ * Allow multiply masks, separted by commas * ++ * Allow more flexible [] handling (ie [a-zA-Z] * ++ * * ++ */ ++ static gint gtk_file_selection_match_char (gchar text, gchar *mask){ ++ gchar *maskc; ++ gint x; ++ gint s; ++ ++ if (mask[0] == '[') ++ { ++ if (!strchr (mask,']')) return 0; ++ maskc = g_strdup(mask + 1); /* get the portion of mask inside []*/ ++ ++ (*(strchr (maskc,']'))) = 0; ++ s = strlen ((char *)maskc); ++ ++ for (x = 0; x < s; x++){ ++ if (text == maskc[x]) ++ { ++ g_free (maskc); ++ return s + 2; ++ } ++ } ++ g_free (maskc); ++ return 0; ++ } ++ ++ if (mask[0] == '?') return 1; ++ if (mask[0] == text) return 1; ++ ++ return 0; ++ } ++ ++ ++ static gint gtk_file_selection_match_mask (gchar *text, gchar *mask){ ++ ++ int mc; ++ int tc; ++ ++ tc = 0; mc = 0; ++ ++ if (mask[0] == 0 && text[0] == 0) return 1; ++ ++ if (mask[0] == '*') ++ { ++ for (tc = 0; tc <= strlen(text); tc++) ++ { ++ if (gtk_file_selection_match_mask (text + tc, mask + 1)) ++ return 1; ++ } ++ return 0; ++ } ++ mc = gtk_file_selection_match_char (text[0], mask); ++ ++ if(mc) ++ return gtk_file_selection_match_mask (text + 1, mask + mc); ++ else ++ return 0; ++ } ++ + GtkType + gtk_file_selection_get_type (void) + { + static GtkType file_selection_type = 0; + +*************** +*** 372,389 **** +--- 482,514 ---- + { + GtkWidget *entry_vbox; + GtkWidget *label; + GtkWidget *list_hbox; + GtkWidget *confirm_area; ++ GtkWidget *vbox; ++ GtkWidget *hbox; + GtkWidget *pulldown_hbox; + GtkWidget *scrolled_win; ++ GtkWidget *mask_label; ++ GtkWidget *bigframe; ++ GtkWidget *label_lookingin; ++ GtkWidget *up_button; ++ GtkWidget *home_button; ++ GtkWidget *prev_button; ++ GtkWidget *next_button; ++ GtkWidget *refresh_button; + + char *dir_title [2]; + char *file_title [2]; + + filesel->cmpl_state = cmpl_init_state (); + ++ filesel->mask=NULL; ++ filesel->prev_history=NULL; ++ filesel->next_history=NULL; ++ filesel->saved_entry=NULL; ++ + /* The dialog-sized vertical box */ + filesel->main_vbox = gtk_vbox_new (FALSE, 10); + gtk_container_set_border_width (GTK_CONTAINER (filesel), 10); + gtk_container_add (GTK_CONTAINER (filesel), filesel->main_vbox); + gtk_widget_show (filesel->main_vbox); +*************** +*** 397,440 **** + gtk_widget_show (filesel->button_area); + + gtk_file_selection_show_fileop_buttons(filesel); + + /* hbox for pulldown menu */ +! pulldown_hbox = gtk_hbox_new (TRUE, 5); + gtk_box_pack_start (GTK_BOX (filesel->main_vbox), pulldown_hbox, FALSE, FALSE, 0); + gtk_widget_show (pulldown_hbox); + +! /* Pulldown menu */ +! filesel->history_pulldown = gtk_option_menu_new (); +! gtk_widget_show (filesel->history_pulldown); +! gtk_box_pack_start (GTK_BOX (pulldown_hbox), filesel->history_pulldown, +! FALSE, FALSE, 0); +! + /* The horizontal box containing the directory and file listboxes */ + list_hbox = gtk_hbox_new (FALSE, 5); +! gtk_box_pack_start (GTK_BOX (filesel->main_vbox), list_hbox, TRUE, TRUE, 0); + gtk_widget_show (list_hbox); + + /* The directories clist */ + dir_title[0] = _("Directories"); + dir_title[1] = NULL; + filesel->dir_list = gtk_clist_new_with_titles (1, (gchar**) dir_title); + gtk_widget_set_usize (filesel->dir_list, DIR_LIST_WIDTH, DIR_LIST_HEIGHT); + gtk_signal_connect (GTK_OBJECT (filesel->dir_list), "select_row", +! (GtkSignalFunc) gtk_file_selection_dir_button, + (gpointer) filesel); + gtk_clist_column_titles_passive (GTK_CLIST (filesel->dir_list)); + + scrolled_win = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (scrolled_win), filesel->dir_list); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), + GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); +! gtk_container_set_border_width (GTK_CONTAINER (scrolled_win), 5); +! gtk_box_pack_start (GTK_BOX (list_hbox), scrolled_win, TRUE, TRUE, 0); + gtk_widget_show (filesel->dir_list); + gtk_widget_show (scrolled_win); + + /* The files clist */ + file_title[0] = _("Files"); + file_title[1] = NULL; + filesel->file_list = gtk_clist_new_with_titles (1, (gchar**) file_title); + gtk_widget_set_usize (filesel->file_list, FILE_LIST_WIDTH, FILE_LIST_HEIGHT); +--- 522,654 ---- + gtk_widget_show (filesel->button_area); + + gtk_file_selection_show_fileop_buttons(filesel); + + /* hbox for pulldown menu */ +! pulldown_hbox = gtk_hbox_new (FALSE, 5); + gtk_box_pack_start (GTK_BOX (filesel->main_vbox), pulldown_hbox, FALSE, FALSE, 0); + gtk_widget_show (pulldown_hbox); + +! /* The combo box that replaces the pulldown menu */ +! label_lookingin = gtk_label_new (_("Looking in:")); +! gtk_widget_show (label_lookingin); +! gtk_box_pack_start (GTK_BOX (pulldown_hbox), label_lookingin, FALSE, FALSE, 0); +! +! filesel->history_combo = gtk_combo_new(); +! gtk_widget_show(filesel->history_combo); +! gtk_combo_set_value_in_list(GTK_COMBO(filesel->history_combo),FALSE,FALSE); +! gtk_box_pack_start (GTK_BOX(pulldown_hbox),filesel->history_combo, +! TRUE,TRUE, 0); +! gtk_signal_connect(GTK_OBJECT(((GtkCombo *)filesel->history_combo)->entry),"key-press-event", +! (GtkSignalFunc) gtk_file_selection_history_combo_callback, +! (gpointer) filesel); +! +! gtk_signal_connect(GTK_OBJECT(((GtkCombo *)filesel->history_combo)->list),"button-press-event", +! (GtkSignalFunc) gtk_file_selection_history_combo_list_callback, +! (gpointer) filesel); +! +! gtk_signal_connect(GTK_OBJECT(((GtkCombo *)filesel->history_combo)->list),"key-press-event", +! (GtkSignalFunc) gtk_file_selection_history_combo_list_key_handler, +! (gpointer) filesel); +! +! /* frame to put the following hbox in */ +! bigframe = gtk_frame_new (NULL); +! gtk_widget_show (bigframe); +! gtk_box_pack_start (GTK_BOX (filesel->main_vbox), bigframe, TRUE, TRUE, 0); +! + /* The horizontal box containing the directory and file listboxes */ + list_hbox = gtk_hbox_new (FALSE, 5); +! gtk_container_add (GTK_CONTAINER(bigframe), list_hbox); +! gtk_container_set_border_width (GTK_CONTAINER (list_hbox), 5); + gtk_widget_show (list_hbox); + ++ /* vbox to put the buttons and directory listing in */ ++ vbox = gtk_vbox_new (FALSE, 0); ++ gtk_widget_show (vbox); ++ gtk_box_pack_start (GTK_BOX (list_hbox), vbox, FALSE, FALSE, 0); ++ ++ hbox = gtk_hbox_new (FALSE, 0); ++ gtk_widget_show (hbox); ++ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); ++ ++ home_button = gtk_button_new_with_label (_("Home")); ++ gtk_widget_show (home_button); ++ gtk_signal_connect (GTK_OBJECT (home_button), "clicked", ++ (GtkSignalFunc) gtk_file_selection_home_button, ++ (gpointer) filesel); ++ gtk_box_pack_start (GTK_BOX (hbox), home_button, TRUE,TRUE, 0); ++ ++ prev_button = gtk_button_new_with_label (_("Prev")); ++ gtk_signal_connect (GTK_OBJECT (prev_button), "clicked", ++ (GtkSignalFunc) gtk_file_selection_prev_button, ++ (gpointer) filesel); ++ gtk_widget_show (prev_button); ++ gtk_box_pack_start (GTK_BOX (hbox), prev_button, TRUE,TRUE, 0); ++ ++ up_button = gtk_button_new_with_label (_("Up")); ++ gtk_signal_connect (GTK_OBJECT (up_button), "clicked", ++ (GtkSignalFunc) gtk_file_selection_up_button, ++ (gpointer) filesel); ++ gtk_widget_show (up_button); ++ gtk_box_pack_start (GTK_BOX (hbox), up_button, TRUE,TRUE, 0); ++ ++ next_button = gtk_button_new_with_label (_("Next")); ++ gtk_widget_show (next_button); ++ gtk_signal_connect (GTK_OBJECT (next_button), "clicked", ++ (GtkSignalFunc) gtk_file_selection_next_button, ++ (gpointer) filesel); ++ gtk_box_pack_start (GTK_BOX (hbox), next_button, TRUE,TRUE, 0); ++ ++ refresh_button = gtk_button_new_with_label (_("Refresh")); ++ gtk_widget_show (refresh_button); ++ gtk_signal_connect (GTK_OBJECT (refresh_button), "clicked", ++ (GtkSignalFunc) gtk_file_selection_refresh_button, ++ (gpointer) filesel); ++ gtk_box_pack_start (GTK_BOX (hbox), refresh_button, TRUE, TRUE, 0); ++ + /* The directories clist */ + dir_title[0] = _("Directories"); + dir_title[1] = NULL; + filesel->dir_list = gtk_clist_new_with_titles (1, (gchar**) dir_title); + gtk_widget_set_usize (filesel->dir_list, DIR_LIST_WIDTH, DIR_LIST_HEIGHT); + gtk_signal_connect (GTK_OBJECT (filesel->dir_list), "select_row", +! (GtkSignalFunc) gtk_file_selection_dir_button, +! (gpointer) filesel); +! gtk_signal_connect (GTK_OBJECT (filesel->dir_list), "unselect_row", +! (GtkSignalFunc) gtk_file_selection_undir_button, + (gpointer) filesel); + gtk_clist_column_titles_passive (GTK_CLIST (filesel->dir_list)); + + scrolled_win = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (scrolled_win), filesel->dir_list); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), + GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); +! gtk_box_pack_start (GTK_BOX (vbox), scrolled_win, TRUE,TRUE, 5); + gtk_widget_show (filesel->dir_list); + gtk_widget_show (scrolled_win); + ++ /* vbox area for mask entry and files clist */ ++ vbox = gtk_vbox_new (FALSE, 0); ++ gtk_widget_show (vbox); ++ gtk_box_pack_start (GTK_BOX (list_hbox), vbox, TRUE, TRUE, 0); ++ ++ hbox = gtk_hbox_new (FALSE, 5); ++ gtk_widget_show (hbox); ++ gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); ++ ++ mask_label = gtk_label_new (_("Mask:")); ++ gtk_widget_show (mask_label); ++ gtk_box_pack_start (GTK_BOX (hbox), mask_label, FALSE, FALSE, 0); ++ ++ filesel->mask_entry = gtk_entry_new (); ++ gtk_widget_show (filesel->mask_entry); ++ gtk_signal_connect(GTK_OBJECT(filesel->mask_entry),"activate", ++ (GtkSignalFunc) gtk_file_selection_mask_entry_callback, ++ (gpointer) filesel); ++ gtk_box_pack_start (GTK_BOX (hbox),filesel->mask_entry, TRUE, TRUE, 0); ++ ++ + /* The files clist */ + file_title[0] = _("Files"); + file_title[1] = NULL; + filesel->file_list = gtk_clist_new_with_titles (1, (gchar**) file_title); + gtk_widget_set_usize (filesel->file_list, FILE_LIST_WIDTH, FILE_LIST_HEIGHT); +*************** +*** 445,456 **** + + scrolled_win = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (scrolled_win), filesel->file_list); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), + GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); +! gtk_container_set_border_width (GTK_CONTAINER (scrolled_win), 5); +! gtk_box_pack_start (GTK_BOX (list_hbox), scrolled_win, TRUE, TRUE, 0); + gtk_widget_show (filesel->file_list); + gtk_widget_show (scrolled_win); + + /* action area for packing buttons into. */ + filesel->action_area = gtk_hbox_new (TRUE, 0); +--- 659,669 ---- + + scrolled_win = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (scrolled_win), filesel->file_list); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_win), + GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); +! gtk_box_pack_start (GTK_BOX (vbox), scrolled_win, TRUE, TRUE, 5); + gtk_widget_show (filesel->file_list); + gtk_widget_show (scrolled_win); + + /* action area for packing buttons into. */ + filesel->action_area = gtk_hbox_new (TRUE, 0); +*************** +*** 653,698 **** + + void + gtk_file_selection_complete (GtkFileSelection *filesel, + const gchar *pattern) + { + g_return_if_fail (filesel != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (filesel)); + g_return_if_fail (pattern != NULL); + + if (filesel->selection_entry) + gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), pattern); +! gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE); + } + + static void + gtk_file_selection_destroy (GtkObject *object) + { + GtkFileSelection *filesel; + GList *list; +- HistoryCallbackArg *callback_arg; + + g_return_if_fail (object != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (object)); + + filesel = GTK_FILE_SELECTION (object); + + if (filesel->fileop_dialog) +! gtk_widget_destroy (filesel->fileop_dialog); + +! if (filesel->history_list) + { +! list = filesel->history_list; + while (list) +! { +! callback_arg = list->data; +! g_free (callback_arg->directory); +! g_free (callback_arg); + list = list->next; +! } +! g_list_free (filesel->history_list); +! filesel->history_list = NULL; + } + + cmpl_free_state (filesel->cmpl_state); + filesel->cmpl_state = NULL; + +--- 866,949 ---- + + void + gtk_file_selection_complete (GtkFileSelection *filesel, + const gchar *pattern) + { ++ gchar *new_pattern; ++ gint x; ++ + g_return_if_fail (filesel != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (filesel)); + g_return_if_fail (pattern != NULL); + + if (filesel->selection_entry) + gtk_entry_set_text (GTK_ENTRY (filesel->selection_entry), pattern); +! +! if(strchr(pattern,'*') || strchr(pattern,'?')) +! { +! for(x=strlen(pattern);x>=0;x--) +! { +! if(pattern[x]=='/') break; +! } +! gtk_entry_set_text(GTK_ENTRY(filesel->mask_entry),g_strdup(pattern+x+1)); +! +! if(filesel->mask) g_free(filesel->mask); +! +! filesel->mask=g_strdup(pattern+x+1); +! new_pattern=g_strdup(pattern); +! new_pattern[x+1]=0; +! gtk_file_selection_populate (filesel, (gchar*) new_pattern, TRUE); +! g_free(new_pattern); +! } +! else +! { +! gtk_file_selection_populate (filesel, (gchar*) pattern, TRUE); +! } + } + + static void + gtk_file_selection_destroy (GtkObject *object) + { + GtkFileSelection *filesel; + GList *list; + + g_return_if_fail (object != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (object)); + + filesel = GTK_FILE_SELECTION (object); + + if (filesel->fileop_dialog) +! gtk_widget_destroy (filesel->fileop_dialog); + +! if (filesel->next_history) + { +! list = filesel->next_history; + while (list) +! { +! g_free (list->data); + list = list->next; +! } +! } +! g_list_free (filesel->next_history); +! filesel->next_history = NULL; +! +! if (filesel->prev_history) +! { +! list = filesel->prev_history; +! while (list) +! { +! g_free (list->data); +! list = list->next; +! } +! } +! g_list_free (filesel->prev_history); +! filesel->prev_history = NULL; +! +! if (filesel->mask) +! { +! g_free (filesel->mask); +! filesel->mask = NULL; + } + + cmpl_free_state (filesel->cmpl_state); + filesel->cmpl_state = NULL; + +*************** +*** 1091,1103 **** + char *text; + + g_return_val_if_fail (widget != NULL, FALSE); + g_return_val_if_fail (event != NULL, FALSE); + + if (event->keyval == GDK_Tab) + { +- fs = GTK_FILE_SELECTION (user_data); + text = gtk_entry_get_text (GTK_ENTRY (fs->selection_entry)); + + text = g_strdup (text); + + gtk_file_selection_populate (fs, text, TRUE); +--- 1342,1355 ---- + char *text; + + g_return_val_if_fail (widget != NULL, FALSE); + g_return_val_if_fail (event != NULL, FALSE); + ++ fs = GTK_FILE_SELECTION (user_data); ++ + if (event->keyval == GDK_Tab) + { + text = gtk_entry_get_text (GTK_ENTRY (fs->selection_entry)); + + text = g_strdup (text); + + gtk_file_selection_populate (fs, text, TRUE); +*************** +*** 1106,1217 **** + + gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "key_press_event"); + + return TRUE; + } + + return FALSE; + } + + + static void +! gtk_file_selection_history_callback (GtkWidget *widget, gpointer data) +! { + GtkFileSelection *fs = data; +- HistoryCallbackArg *callback_arg; + GList *list; + + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); + +! list = fs->history_list; +! +! while (list) { +! callback_arg = list->data; +! +! if (callback_arg->menu_item == widget) +! { +! gtk_file_selection_populate (fs, callback_arg->directory, FALSE); +! break; +! } +! +! list = list->next; +! } + } + +! static void +! gtk_file_selection_update_history_menu (GtkFileSelection *fs, +! gchar *current_directory) +! { +! HistoryCallbackArg *callback_arg; +! GtkWidget *menu_item; + GList *list; +! gchar *current_dir; +! gint dir_len; +! gint i; +! + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); +- g_return_if_fail (current_directory != NULL); +- +- list = fs->history_list; + +! if (fs->history_menu) + { +! while (list) { +! callback_arg = list->data; +! g_free (callback_arg->directory); +! g_free (callback_arg); +! list = list->next; +! } +! g_list_free (fs->history_list); +! fs->history_list = NULL; + +- gtk_widget_destroy (fs->history_menu); + } +! +! fs->history_menu = gtk_menu_new(); + +! current_dir = g_strdup (current_directory); + +! dir_len = strlen (current_dir); + +! for (i = dir_len; i >= 0; i--) + { +! /* the i == dir_len is to catch the full path for the first +! * entry. */ +! if ( (current_dir[i] == '/') || (i == dir_len)) +! { +! /* another small hack to catch the full path */ +! if (i != dir_len) +! current_dir[i + 1] = '\0'; +! menu_item = gtk_menu_item_new_with_label (current_dir); +! +! callback_arg = g_new (HistoryCallbackArg, 1); +! callback_arg->menu_item = menu_item; +! +! /* since the autocompletion gets confused if you don't +! * supply a trailing '/' on a dir entry, set the full +! * (current) path to "" which just refreshes the filesel */ +! if (dir_len == i) { +! callback_arg->directory = g_strdup (""); +! } else { +! callback_arg->directory = g_strdup (current_dir); +! } +! +! fs->history_list = g_list_append (fs->history_list, callback_arg); +! +! gtk_signal_connect (GTK_OBJECT (menu_item), "activate", +! (GtkSignalFunc) gtk_file_selection_history_callback, +! (gpointer) fs); +! gtk_menu_append (GTK_MENU (fs->history_menu), menu_item); +! gtk_widget_show (menu_item); + } + } + +! gtk_option_menu_set_menu (GTK_OPTION_MENU (fs->history_pulldown), +! fs->history_menu); + g_free (current_dir); + } + + static void + gtk_file_selection_file_button (GtkWidget *widget, +--- 1358,1617 ---- + + gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "key_press_event"); + + return TRUE; + } ++ if (fs->saved_entry) ++ { ++ gtk_clist_unselect_all ((GtkCList *) (fs->dir_list)); ++ gtk_entry_set_text(GTK_ENTRY(fs->selection_entry),fs->saved_entry); ++ g_free (fs->saved_entry); ++ fs->saved_entry = NULL; ++ } ++ + + return FALSE; + } + ++ static void ++ gtk_file_selection_home_button (GtkWidget *widget, gpointer data){ ++ GList *list; ++ ++ GtkFileSelection *fs=data; ++ ++ list = fs->next_history; ++ if (list) ++ { ++ g_free (list->data); ++ list = list->next; ++ } ++ g_list_free (fs->next_history); ++ fs->next_history = NULL; ++ ++ gtk_file_selection_populate (fs,"~/",FALSE); ++ } + + static void +! gtk_file_selection_up_button (GtkWidget *widget, gpointer data){ + GtkFileSelection *fs = data; + GList *list; + + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); + +! list = fs->next_history; +! if (list) +! { +! g_free (list->data); +! list = list->next; +! } +! g_list_free (fs->next_history); +! fs->next_history = NULL; +! +! gtk_file_selection_populate (fs, "../", FALSE); /*change directories. */ +! + } + +! static void +! gtk_file_selection_prev_button (GtkWidget *widget, gpointer data){ +! GtkFileSelection *fs = data; + GList *list; +! GList *first; +! gchar *path; +! + g_return_if_fail (fs != NULL); + g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); + +! list = fs->prev_history; +! +! if (list && g_list_length(list) > 1) + { +! first = list; /* get first element */ +! list = list->next; /* pop off current directory */ +! +! list->prev = NULL; /* make this the new head. */ +! +! fs->prev_history = list; /* update prev_history list */ +! fs->next_history = g_list_prepend(fs->next_history,first->data); /* put it on next_history */ +! +! first->next = NULL; /* orphan the old first node */ +! g_list_free (first); /* free the node (data is now in use by next_history) */ +! +! +! +! path = g_malloc(strlen(list->data)+4); /* plenty of space */ +! strcpy(path,list->data); /* get the 2nd path in the history */ +! strcat(path,"/"); /* append a '/' */ +! gtk_file_selection_populate (fs, path, FALSE); /* change directories. */ +! g_free (path); +! } +! } +! +! static void +! gtk_file_selection_next_button (GtkWidget *widget, gpointer data){ +! GtkFileSelection *fs = data; +! GList *list; +! GList *first; +! gchar *path; +! +! g_return_if_fail (fs != NULL); +! g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); +! +! list = fs->next_history; +! +! if (list && g_list_length(list) > 0) +! { +! first = list; /*get first element*/ +! list = list->next; /*pop off current directory*/ +! +! if (list) +! list->prev = NULL; +! +! fs->next_history = list; /*update prev_history list*/ +! +! path = g_malloc(strlen(first->data)+4); /*plenty of space*/ +! strcpy(path,first->data); +! strcat(path,"/"); /*append a / */ +! gtk_file_selection_populate (fs, path, FALSE); /*change directories.*/ +! g_free(path); +! +! first->next = NULL; /* orphan the old first node */ +! g_list_free (first); /* free the node (data is now in use by next_history) */ + + } +! } + +! void static +! gtk_file_selection_refresh_button (GtkWidget *widget, gpointer data){ +! GtkFileSelection *fs = data; + +! g_return_if_fail (fs != NULL); +! g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); +! +! gtk_file_selection_populate (fs,"",FALSE); +! } + +! static void +! gtk_file_selection_mask_entry_callback (GtkWidget *widget, gpointer data){ +! GtkFileSelection *fs = data; +! +! if(fs->mask) +! g_free (fs->mask); +! +! fs->mask = g_strdup(gtk_entry_get_text (GTK_ENTRY(fs->mask_entry))); +! +! if (strlen(fs->mask) == 0) + { +! g_free (fs->mask); +! fs->mask = NULL; +! } +! +! gtk_file_selection_refresh_button (widget,data); +! } +! +! static gboolean gtk_file_selection_history_combo_list_key_handler(GtkWidget *widget, +! GdkEventKey *event, +! gpointer user_data) +! { +! /* +! g_print("Key pressed! \n"); +! */ +! +! return TRUE; +! } +! +! static gboolean gtk_file_selection_history_combo_list_callback (GtkWidget *thelist, +! GdkEventButton *event, +! gpointer user_data) +! { +! +! GtkFileSelection *fs = user_data; +! GList *list; +! gchar *path; +! +! list = fs->next_history; +! if(list) +! { +! g_free (list->data); +! list = list->next; +! } +! g_list_free (fs->next_history); +! fs->next_history = NULL; +! +! path = g_malloc(strlen(gtk_entry_get_text(GTK_ENTRY (((GtkCombo *)fs->history_combo)->entry)))+4); +! strcpy (path,gtk_entry_get_text(GTK_ENTRY( ((GtkCombo *)fs->history_combo)->entry))); +! strcat (path,"/"); +! +! gtk_file_selection_populate (fs,path,TRUE); +! +! g_free (path); +! +! return TRUE; +! } +! +! static gboolean +! gtk_file_selection_history_combo_callback (GtkWidget *widget, GdkEventKey *event, gpointer data) +! { +! GtkEntry *entry=(GtkEntry *)widget; +! GtkFileSelection *fs=data; +! GList *list; +! gchar *path; +! +! g_return_val_if_fail (fs != NULL,FALSE); +! g_return_val_if_fail (GTK_IS_FILE_SELECTION (fs),FALSE); +! +! +! if (event->keyval == GDK_Return) +! { +! list = fs->next_history; +! if (list) +! { +! g_free (list->data); +! list = list->next; + } ++ g_list_free (fs->next_history); ++ fs->next_history = NULL; ++ ++ path = g_malloc(strlen(gtk_entry_get_text(entry))+4); ++ strcpy (path,gtk_entry_get_text(entry)); ++ strcat (path,"/"); ++ gtk_file_selection_populate (fs,path,TRUE); ++ g_free (path); ++ gtk_signal_emit_stop_by_name (GTK_OBJECT (widget), "key_press_event"); ++ return TRUE; + } ++ else ++ { ++ return FALSE; ++ } ++ ++ } ++ ++ static void ++ gtk_file_selection_update_history_menu (GtkFileSelection *fs, ++ gchar *current_directory) ++ { ++ gchar *current_dir; + +! g_return_if_fail (fs != NULL); +! g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); +! g_return_if_fail (current_directory != NULL); +! +! current_dir = g_strdup (current_directory); +! +! if(fs->prev_history) +! { +! if (strcmp((fs->prev_history)->data,current_dir)) +! { /*if this item isn't on the top of the list */ +! fs->prev_history = g_list_prepend(fs->prev_history,g_strdup(current_dir)); +! } +! } else { +! fs->prev_history = g_list_prepend(fs->prev_history,g_strdup(current_dir)); +! } +! +! gtk_combo_set_popdown_strings (GTK_COMBO (fs->history_combo),fs->prev_history); +! + g_free (current_dir); + } + + static void + gtk_file_selection_file_button (GtkWidget *widget, +*************** +*** 1245,1255 **** + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); + break; + } + else + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); +! + g_free (filename); + } + } + + static void +--- 1645,1655 ---- + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); + break; + } + else + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); +! + g_free (filename); + } + } + + static void +*************** +*** 1257,1266 **** +--- 1657,1667 ---- + gint row, + gint column, + GdkEventButton *bevent, + gpointer user_data) + { ++ GList *list; + GtkFileSelection *fs = NULL; + gchar *filename, *temp = NULL; + + g_return_if_fail (GTK_IS_CLIST (widget)); + +*************** +*** 1275,1293 **** + { + if (bevent) + switch (bevent->type) + { + case GDK_2BUTTON_PRESS: + gtk_file_selection_populate (fs, filename, FALSE); + break; +! + default: +! gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); + break; + } + else + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); + + g_free (filename); + } + } + +--- 1676,1758 ---- + { + if (bevent) + switch (bevent->type) + { + case GDK_2BUTTON_PRESS: ++ list = fs->next_history; ++ if (list) ++ { ++ g_free (list->data); ++ list = list->next; ++ } ++ g_list_free (fs->next_history); ++ fs->next_history = NULL; ++ + gtk_file_selection_populate (fs, filename, FALSE); ++ gtk_entry_set_text(GTK_ENTRY(fs->selection_entry),fs->saved_entry); ++ g_free (fs->saved_entry); ++ fs->saved_entry = NULL; + break; +! + default: +! /* here we need to add the "filename" to the beginning of what's already +! in the entry. Save what's in the entry, then restore it on the double click +! */ +! if (fs->saved_entry) g_free (fs->saved_entry); +! fs->saved_entry=g_strdup(gtk_entry_get_text(GTK_ENTRY (fs->selection_entry))); +! +! temp=g_strconcat(filename,fs->saved_entry,NULL); +! gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), temp); +! g_free (temp); +! + break; + } + else + gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); ++ ++ g_free (filename); ++ } ++ } ++ ++ static void ++ gtk_file_selection_undir_button (GtkWidget *widget, ++ gint row, ++ gint column, ++ GdkEventButton *bevent, ++ gpointer user_data) ++ { ++ GtkFileSelection *fs = NULL; ++ gchar *filename, *temp = NULL; ++ ++ g_return_if_fail (GTK_IS_CLIST (widget)); ++ ++ fs = GTK_FILE_SELECTION (user_data); ++ g_return_if_fail (fs != NULL); ++ g_return_if_fail (GTK_IS_FILE_SELECTION (fs)); ++ ++ gtk_clist_get_text (GTK_CLIST (fs->dir_list), row, 0, &temp); ++ filename = g_strdup (temp); ++ ++ if (filename) ++ { ++ if (bevent) ++ switch (bevent->type) ++ { ++ default: ++ /* here we need to add the "filename" to the beginning of what's already ++ in the entry. Save what's in the entry, then restore it on the double click ++ */ ++ if (fs->saved_entry) ++ { ++ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry),fs->saved_entry); ++ g_free (fs->saved_entry); ++ fs->saved_entry = NULL; ++ } ++ break; ++ } ++ else ++ gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), filename); //????? + + g_free (filename); + } + } + +*************** +*** 1344,1388 **** + gtk_clist_set_column_width(GTK_CLIST(fs->file_list),0,file_list_width); + + while (poss) + { + if (cmpl_is_a_completion (poss)) +! { +! possible_count += 1; +! +! filename = cmpl_this_completion (poss); + + text[0] = filename; + +! if (cmpl_is_directory (poss)) +! { +! if (strcmp (filename, "./") != 0 && +! strcmp (filename, "../") != 0) + { + int width = gdk_string_width(fs->dir_list->style->font, + filename); + row = gtk_clist_append (GTK_CLIST (fs->dir_list), text); + if(width > dir_list_width) + { + dir_list_width = width; + gtk_clist_set_column_width(GTK_CLIST(fs->dir_list),0, + width); + } +! } + } +! else + { +! int width = gdk_string_width(fs->file_list->style->font, +! filename); +! row = gtk_clist_append (GTK_CLIST (fs->file_list), text); +! if(width > file_list_width) +! { +! file_list_width = width; +! gtk_clist_set_column_width(GTK_CLIST(fs->file_list),0, +! width); +! } +! } + } + + poss = cmpl_next_completion (cmpl_state); + } + +--- 1809,1871 ---- + gtk_clist_set_column_width(GTK_CLIST(fs->file_list),0,file_list_width); + + while (poss) + { + if (cmpl_is_a_completion (poss)) +! { +! possible_count += 1; +! +! filename = cmpl_this_completion (poss); + + text[0] = filename; + +! if (cmpl_is_directory (poss)) +! { +! if (strcmp (filename, "./") != 0 && +! strcmp (filename, "../") != 0) + { + int width = gdk_string_width(fs->dir_list->style->font, + filename); + row = gtk_clist_append (GTK_CLIST (fs->dir_list), text); + if(width > dir_list_width) + { + dir_list_width = width; + gtk_clist_set_column_width(GTK_CLIST(fs->dir_list),0, + width); + } +! } + } +! else + { +! if(fs->mask) +! { +! if (gtk_file_selection_match_mask(filename,fs->mask)) +! { +! int width = gdk_string_width(fs->file_list->style->font, +! filename); +! row = gtk_clist_append (GTK_CLIST (fs->file_list), text); +! if(width > file_list_width) +! { +! file_list_width = width; +! gtk_clist_set_column_width(GTK_CLIST(fs->file_list),0, +! width); +! } +! } +! } +! else +! { +! int width = gdk_string_width(fs->file_list->style->font, +! filename); +! row = gtk_clist_append (GTK_CLIST (fs->file_list), text); +! if(width > file_list_width) +! { +! file_list_width = width; +! gtk_clist_set_column_width(GTK_CLIST(fs->file_list),0, +! width); +! } +! } +! } + } + + poss = cmpl_next_completion (cmpl_state); + } + +*************** +*** 1430,1440 **** + } + } + else + { + if (fs->selection_entry) +! gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), ""); + } + + if (!did_recurse) + { + if (fs->selection_entry) +--- 1913,1925 ---- + } + } + else + { + if (fs->selection_entry) +! /* Here we need to take the old filename and keep it!*/ +! /*gtk_entry_set_text (GTK_ENTRY (fs->selection_entry), "");*/ +! ; + } + + if (!did_recurse) + { + if (fs->selection_entry) +*************** +*** 1448,1462 **** + + gtk_label_set_text (GTK_LABEL (fs->selection_text), sel_text); + g_free (sel_text); + } + +! if (fs->history_pulldown) +! { +! gtk_file_selection_update_history_menu (fs, cmpl_reference_position (cmpl_state)); +! } +! + } + } + + static void + gtk_file_selection_abort (GtkFileSelection *fs) +--- 1933,1944 ---- + + gtk_label_set_text (GTK_LABEL (fs->selection_text), sel_text); + g_free (sel_text); + } + +! gtk_file_selection_update_history_menu (fs, cmpl_reference_position (cmpl_state)); +! + } + } + + static void + gtk_file_selection_abort (GtkFileSelection *fs) +*************** +*** 2758,2762 **** +--- 3240,3306 ---- + if(err == CMPL_ERRNO_TOO_LONG) + return "Name too long"; + else + return g_strerror (err); + } ++ ++ ++ /* Testing area */ ++ #ifdef TORRIE_DEBUG ++ ++ /* Get the selected filename and print it to the console */ ++ void file_ok_sel( GtkWidget *w, ++ GtkFileSelection *fs ) ++ { ++ g_print ("%s\n", gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs))); ++ } ++ ++ void destroy( GtkWidget *widget, ++ gpointer data ) ++ { ++ gtk_main_quit (); ++ } ++ ++ int main( int argc, ++ char *argv[] ) ++ { ++ GtkWidget *filew; ++ ++ gtk_init (&argc, &argv); ++ ++ /* Create a new file selection widget */ ++ filew = gtk_file_selection_new ("Michael's Glorious File Selector"); ++ // gtk_file_selection_complete(GTK_FILE_SELECTION(filew),"bob"); ++ ++ ++ gtk_signal_connect (GTK_OBJECT (filew), "destroy", ++ (GtkSignalFunc) destroy, &filew); ++ /* Connect the ok_button to file_ok_sel function */ ++ gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filew)->ok_button), ++ "clicked", (GtkSignalFunc) file_ok_sel, filew ); ++ ++ /* Connect the cancel_button to destroy the widget */ ++ gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION ++ (filew)->cancel_button), ++ "clicked", (GtkSignalFunc) gtk_widget_destroy, ++ GTK_OBJECT (filew)); ++ ++ ++ gtk_widget_show(filew); ++ ++ /* ++ g_print("%d",gtk_file_selection_match_mask("mask.c","m*.c")); ++ g_print("%d",gtk_file_selection_match_mask("mask.c","m???.c")); ++ g_print("%d",gtk_file_selection_match_mask("mask.c","m??*.c")); ++ g_print("%d",gtk_file_selection_match_mask("mask.cout","m*.c")); ++ g_print("%d",gtk_file_selection_match_mask("mask.cout","m*.c???")); ++ g_print("%d",gtk_file_selection_match_mask("mask.cout","m*.c*")); ++ g_print("%d",gtk_file_selection_match_mask("mask.cout","n*.c???")); ++ g_print("%d",gtk_file_selection_match_mask("mask.c","[mn]*")); ++ g_print("%d",gtk_file_selection_match_mask("COPYING","*.xpm")); ++ */ ++ gtk_main (); ++ ++ return 0; ++ } ++ /* example-end */ ++ #endif diff --git a/x11-libs/gtk+/files/gtk+-1.2.9-be.patch b/x11-libs/gtk+/files/gtk+-1.2.9-be.patch new file mode 100644 index 0000000..7fde598 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.9-be.patch @@ -0,0 +1,506 @@ +diff -urN gtk+-1.2.9.orig/gtk/Makefile.am gtk+-1.2.9/gtk/Makefile.am +--- gtk+-1.2.9.orig/gtk/Makefile.am Fri Feb 2 20:09:02 2001 ++++ gtk+-1.2.9/gtk/Makefile.am Sat Mar 3 02:14:27 2001 +@@ -374,7 +374,7 @@ + + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \ ++gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \ + gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \ + gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ + gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \ +diff -urN gtk+-1.2.9.orig/gtk/Makefile.in gtk+-1.2.9/gtk/Makefile.in +--- gtk+-1.2.9.orig/gtk/Makefile.in Fri Mar 2 22:49:26 2001 ++++ gtk+-1.2.9/gtk/Makefile.in Sat Mar 3 02:14:50 2001 +@@ -191,7 +191,7 @@ + CLEANFILES = $(gen_sources) + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 ++gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 + + + # +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.be gtk+-1.2.9/gtk/gtkrc.be +--- gtk+-1.2.9.orig/gtk/gtkrc.be Thu Jan 1 03:00:00 1970 ++++ gtk+-1.2.9/gtk/gtkrc.be Sat Mar 3 02:11:56 2001 +@@ -0,0 +1,8 @@ ++style "gtk-default-cp1251" { ++ fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,\ ++ -*-arial-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,*-r-*" ++} ++class "GtkWidget" style "gtk-default-cp1251" ++ +diff -urN gtk+-1.2.9.orig/po/be.po gtk+-1.2.9/po/be.po +--- gtk+-1.2.9.orig/po/be.po Thu Jan 1 03:00:00 1970 ++++ gtk+-1.2.9/po/be.po Sat Mar 3 02:11:56 2001 +@@ -0,0 +1,466 @@ ++# SOME DESCRIPTIVE TITLE. ++# Copyright (C) 1999 Free Software Foundation, Inc. ++# Sergey Panov <sipan@mit.edu>, 1999. ++# ++msgid "" ++msgstr "" ++"Project-Id-Version: gtk+ 1.3.0\n" ++"POT-Creation-Date: 2000-05-19 07:11+0200\n" ++"PO-Revision-Date: 1999-10-05 00:56-0400\n" ++"Last-Translator: Sergey Panov <sipan@mit.edu>\n" ++"Language-Team: Russian <ru@li.org>\n" ++"MIME-Version: 1.0\n" ++"Content-Type: text/plain; charset=cp1251\n" ++"Content-Transfer-Encoding: 8bit\n" ++ ++#: gtk/gtkcolorsel.c:221 ++msgid "Hue:" ++msgstr "Тон:" ++ ++#: gtk/gtkcolorsel.c:222 ++msgid "Saturation:" ++msgstr "Насыщенность:" ++ ++#: gtk/gtkcolorsel.c:223 ++msgid "Value:" ++msgstr "Значение:" ++ ++#: gtk/gtkcolorsel.c:224 ++msgid "Red:" ++msgstr "Красный:" ++ ++#: gtk/gtkcolorsel.c:225 ++msgid "Green:" ++msgstr "Зеленый:" ++ ++#: gtk/gtkcolorsel.c:226 ++msgid "Blue:" ++msgstr "Синий:" ++ ++#: gtk/gtkcolorsel.c:227 ++msgid "Opacity:" ++msgstr "Плотность:" ++ ++#. The OK button ++#: gtk/gtkcolorsel.c:1727 gtk/gtkfilesel.c:469 gtk/gtkfontsel.c:3492 ++#: gtk/gtkgamma.c:416 ++msgid "OK" ++msgstr "OK" ++ ++#. The Cancel button ++#: gtk/gtkcolorsel.c:1733 gtk/gtkfilesel.c:476 gtk/gtkfilesel.c:856 ++#: gtk/gtkfilesel.c:956 gtk/gtkfilesel.c:1071 gtk/gtkfontsel.c:3505 ++#: gtk/gtkgamma.c:424 ++msgid "Cancel" ++msgstr "Отменить" ++ ++#: gtk/gtkcolorsel.c:1738 ++msgid "Help" ++msgstr "Справка" ++ ++#. The directories clist ++#: gtk/gtkfilesel.c:418 ++msgid "Directories" ++msgstr "Каталоги" ++ ++#. The files clist ++#: gtk/gtkfilesel.c:437 ++msgid "Files" ++msgstr "Файлы" ++ ++#: gtk/gtkfilesel.c:507 gtk/gtkfilesel.c:1466 ++#, c-format ++msgid "Directory unreadable: %s" ++msgstr "Каталог не читаем: %s" ++ ++#: gtk/gtkfilesel.c:539 ++msgid "Create Dir" ++msgstr "Создать каталог" ++ ++#: gtk/gtkfilesel.c:550 gtk/gtkfilesel.c:925 ++msgid "Delete File" ++msgstr "Удалить файл" ++ ++#: gtk/gtkfilesel.c:561 gtk/gtkfilesel.c:1029 ++msgid "Rename File" ++msgstr "Переименовать файл" ++ ++#. ++#. gtk_signal_connect (GTK_OBJECT (dialog), "destroy", ++#. (GtkSignalFunc) gtk_file_selection_fileop_destroy, ++#. (gpointer) fs); ++#. ++#: gtk/gtkfilesel.c:722 ++msgid "Error" ++msgstr "Ошибка" ++ ++#. close button ++#: gtk/gtkfilesel.c:745 gtk/gtkinputdialog.c:354 ++msgid "Close" ++msgstr "Закрыть" ++ ++#: gtk/gtkfilesel.c:820 ++msgid "Create Directory" ++msgstr "Создать каталог" ++ ++#: gtk/gtkfilesel.c:834 ++msgid "Directory name:" ++msgstr "Имя каталога:" ++ ++#. buttons ++#: gtk/gtkfilesel.c:847 ++msgid "Create" ++msgstr "Создать" ++ ++#. buttons ++#: gtk/gtkfilesel.c:947 ++msgid "Delete" ++msgstr "Удалить" ++ ++#. buttons ++#: gtk/gtkfilesel.c:1062 ++msgid "Rename" ++msgstr "Переименовать" ++ ++#: gtk/gtkfilesel.c:1445 ++msgid "Selection: " ++msgstr "Выбор: " ++ ++#: gtk/gtkfontsel.c:210 ++msgid "Foundry:" ++msgstr "Коллекция:" ++ ++#: gtk/gtkfontsel.c:211 ++msgid "Family:" ++msgstr "Семейство:" ++ ++#: gtk/gtkfontsel.c:212 ++msgid "Weight:" ++msgstr "Насыщенность:" ++ ++#: gtk/gtkfontsel.c:213 ++msgid "Slant:" ++msgstr "Наклон:" ++ ++#: gtk/gtkfontsel.c:214 ++msgid "Set Width:" ++msgstr "Ширина:" ++ ++#: gtk/gtkfontsel.c:215 ++msgid "Add Style:" ++msgstr "Дополнительный стиль:" ++ ++#: gtk/gtkfontsel.c:216 ++msgid "Pixel Size:" ++msgstr "Размер в пикселах:" ++ ++#: gtk/gtkfontsel.c:217 ++msgid "Point Size:" ++msgstr "Поточечный размер:" ++ ++#: gtk/gtkfontsel.c:218 ++msgid "Resolution X:" ++msgstr "Разрешение по X:" ++ ++#: gtk/gtkfontsel.c:219 ++msgid "Resolution Y:" ++msgstr "Разрешение по Y:" ++ ++#: gtk/gtkfontsel.c:220 ++msgid "Spacing:" ++msgstr "Пропорциональность:" ++ ++#: gtk/gtkfontsel.c:221 ++msgid "Average Width:" ++msgstr "Средняя ширина:" ++ ++#: gtk/gtkfontsel.c:222 ++msgid "Charset:" ++msgstr "Кодировка:" ++ ++#. Number of internationalized titles here must match number ++#. of NULL initializers above ++#: gtk/gtkfontsel.c:459 ++msgid "Font Property" ++msgstr "Свойства шрифта" ++ ++#: gtk/gtkfontsel.c:460 ++msgid "Requested Value" ++msgstr "Запрошенное значение" ++ ++#: gtk/gtkfontsel.c:461 ++msgid "Actual Value" ++msgstr "Настоящее значение" ++ ++#: gtk/gtkfontsel.c:494 ++msgid "Font" ++msgstr "Шрифт" ++ ++#: gtk/gtkfontsel.c:504 gtk/gtkfontsel.c:2181 gtk/gtkfontsel.c:2411 ++msgid "Font:" ++msgstr "Шрифт:" ++ ++#: gtk/gtkfontsel.c:509 ++msgid "Font Style:" ++msgstr "Стиль шрифта:" ++ ++#: gtk/gtkfontsel.c:514 ++msgid "Size:" ++msgstr "Размер:" ++ ++#: gtk/gtkfontsel.c:646 gtk/gtkfontsel.c:868 ++msgid "Reset Filter" ++msgstr "Переустановить фильтр" ++ ++#: gtk/gtkfontsel.c:660 ++msgid "Metric:" ++msgstr "Метрика:" ++ ++#: gtk/gtkfontsel.c:664 ++msgid "Points" ++msgstr "Точек" ++ ++#: gtk/gtkfontsel.c:671 ++msgid "Pixels" ++msgstr "Пиксел" ++ ++#. create the text entry widget ++#: gtk/gtkfontsel.c:687 ++msgid "Preview:" ++msgstr "Пример:" ++ ++#: gtk/gtkfontsel.c:716 ++msgid "Font Information" ++msgstr "Информация о шрифте" ++ ++#: gtk/gtkfontsel.c:749 ++msgid "Requested Font Name:" ++msgstr "Запрошенное имя шрифта:" ++ ++#: gtk/gtkfontsel.c:760 ++msgid "Actual Font Name:" ++msgstr "Настоящее имя шрифта:" ++ ++#: gtk/gtkfontsel.c:771 ++#, c-format ++msgid "%i fonts available with a total of %i styles." ++msgstr "имеется %i шрифтов в %i стилях." ++ ++#: gtk/gtkfontsel.c:786 ++msgid "Filter" ++msgstr "Фильтр" ++ ++#: gtk/gtkfontsel.c:799 ++msgid "Font Types:" ++msgstr "Типы шрифтов:" ++ ++#: gtk/gtkfontsel.c:807 ++msgid "Bitmap" ++msgstr "Растр" ++ ++#: gtk/gtkfontsel.c:813 ++msgid "Scalable" ++msgstr "Масштабируемый" ++ ++#: gtk/gtkfontsel.c:819 ++msgid "Scaled Bitmap" ++msgstr "Масштабированный растр" ++ ++#: gtk/gtkfontsel.c:890 ++msgid "*" ++msgstr "*" ++ ++#. Convert '(nil)' weights to 'regular', since it looks nicer. ++#: gtk/gtkfontsel.c:1215 ++msgid "(nil)" ++msgstr "(nil)" ++ ++#: gtk/gtkfontsel.c:1215 ++msgid "regular" ++msgstr "прямой" ++ ++#: gtk/gtkfontsel.c:1220 gtk/gtkfontsel.c:1973 ++msgid "italic" ++msgstr "курсив" ++ ++#: gtk/gtkfontsel.c:1221 gtk/gtkfontsel.c:1974 ++msgid "oblique" ++msgstr "наклонный" ++ ++#: gtk/gtkfontsel.c:1222 gtk/gtkfontsel.c:1975 ++msgid "reverse italic" ++msgstr "обратный курсив" ++ ++#: gtk/gtkfontsel.c:1223 gtk/gtkfontsel.c:1976 ++msgid "reverse oblique" ++msgstr "обратный наклонный" ++ ++#: gtk/gtkfontsel.c:1224 gtk/gtkfontsel.c:1977 ++msgid "other" ++msgstr "другие" ++ ++#: gtk/gtkfontsel.c:1231 ++msgid "[M]" ++msgstr "[M]" ++ ++#: gtk/gtkfontsel.c:1232 ++msgid "[C]" ++msgstr "[C]" ++ ++#: gtk/gtkfontsel.c:1793 ++msgid "The selected font is not available." ++msgstr "Выбранный шрифт недоступен." ++ ++#: gtk/gtkfontsel.c:1799 ++msgid "The selected font is not a valid font." ++msgstr "Выбран неправильный шрифт." ++ ++#: gtk/gtkfontsel.c:1857 ++msgid "This is a 2-byte font and may not be displayed correctly." ++msgstr "Это 2-х байтный шрифт, возможны проблемы с начертанием." ++ ++#: gtk/gtkfontsel.c:1961 gtk/gtkinputdialog.c:607 ++msgid "(unknown)" ++msgstr "(неизвестен)" ++ ++#: gtk/gtkfontsel.c:1972 ++msgid "roman" ++msgstr "прямой" ++ ++#: gtk/gtkfontsel.c:1984 ++msgid "proportional" ++msgstr "пропорциональный" ++ ++#: gtk/gtkfontsel.c:1985 ++msgid "monospaced" ++msgstr "моноширинный" ++ ++#: gtk/gtkfontsel.c:1986 ++msgid "char cell" ++msgstr "char cell" ++ ++#: gtk/gtkfontsel.c:2186 ++msgid "Font: (Filter Applied)" ++msgstr "Шрифт: (Отфильтрован)" ++ ++#: gtk/gtkfontsel.c:2662 ++msgid "MAX_FONTS exceeded. Some fonts may be missing." ++msgstr "MAX_FONTS превышен. Некоторые шрифты могут отсутствовать." ++ ++#: gtk/gtkfontsel.c:3499 ++msgid "Apply" ++msgstr "Применить" ++ ++#: gtk/gtkfontsel.c:3521 ++msgid "Font Selection" ++msgstr "Выбор шрифта" ++ ++#: gtk/gtkgamma.c:396 ++msgid "Gamma" ++msgstr "Гамма" ++ ++#: gtk/gtkgamma.c:403 ++msgid "Gamma value" ++msgstr "Гамма величина" ++ ++#. shell and main vbox ++#: gtk/gtkinputdialog.c:200 ++msgid "Input" ++msgstr "Ввод" ++ ++#: gtk/gtkinputdialog.c:208 ++msgid "No input devices" ++msgstr "Нет устройства ввода" ++ ++#: gtk/gtkinputdialog.c:237 ++msgid "Device:" ++msgstr "Устройство:" ++ ++#: gtk/gtkinputdialog.c:253 ++msgid "Disabled" ++msgstr "Выключен" ++ ++#: gtk/gtkinputdialog.c:261 ++msgid "Screen" ++msgstr "Экран" ++ ++#: gtk/gtkinputdialog.c:269 ++msgid "Window" ++msgstr "Окно" ++ ++#: gtk/gtkinputdialog.c:277 ++msgid "Mode: " ++msgstr "Режим: " ++ ++#. The axis listbox ++#: gtk/gtkinputdialog.c:307 ++msgid "Axes" ++msgstr "Оси" ++ ++#. Keys listbox ++#: gtk/gtkinputdialog.c:323 ++msgid "Keys" ++msgstr "Клавиши" ++ ++#. We create the save button in any case, so that clients can ++#. connect to it, without paying attention to whether it exits ++#: gtk/gtkinputdialog.c:345 ++msgid "Save" ++msgstr "Сохранить" ++ ++#: gtk/gtkinputdialog.c:500 ++msgid "X" ++msgstr "X" ++ ++#: gtk/gtkinputdialog.c:501 ++msgid "Y" ++msgstr "Y" ++ ++#: gtk/gtkinputdialog.c:502 ++msgid "Pressure" ++msgstr "Нажим" ++ ++#: gtk/gtkinputdialog.c:503 ++msgid "X Tilt" ++msgstr "Наклон X" ++ ++#: gtk/gtkinputdialog.c:504 ++msgid "Y Tilt" ++msgstr "Наклон Y" ++ ++#: gtk/gtkinputdialog.c:544 ++msgid "none" ++msgstr "нет" ++ ++#: gtk/gtkinputdialog.c:578 gtk/gtkinputdialog.c:614 ++msgid "(disabled)" ++msgstr "(отменен)" ++ ++#. and clear button ++#: gtk/gtkinputdialog.c:692 ++msgid "clear" ++msgstr "очистить" ++ ++#: gtk/gtknotebook.c:2059 gtk/gtknotebook.c:4131 ++#, c-format ++msgid "Page %u" ++msgstr "Страница %u" ++ ++#: gtk/gtkrc.c:1702 ++#, c-format ++msgid "Unable to locate image file in pixmap_path: \"%s\" line %d" ++msgstr "Файл с изображением не найден в pixmap_path: \"%s\", строка %d" ++ ++#: gtk/gtkrc.c:1705 ++#, c-format ++msgid "Unable to locate image file in pixmap_path: \"%s\"" ++msgstr "Файл с изображением не найден в pixmap_path: \"%s\"" ++ ++#: gtk/gtkthemes.c:79 ++#, c-format ++msgid "Unable to locate loadable module in module_path: \"%s\"," ++msgstr "Загружаемый модуль не найден в module_path: \"%s\"," ++ ++#: gtk/gtktipsquery.c:180 ++msgid "--- No Tip ---" ++msgstr "--- Нет подсказки ---" diff --git a/x11-libs/gtk+/files/gtk+-1.2.9-rc.patch b/x11-libs/gtk+/files/gtk+-1.2.9-rc.patch new file mode 100644 index 0000000..8702443 --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.9-rc.patch @@ -0,0 +1,105 @@ +diff -urN gtk+-1.2.9.orig/gtk/Makefile.am gtk+-1.2.9/gtk/Makefile.am +--- gtk+-1.2.9.orig/gtk/Makefile.am Sat Mar 3 02:19:46 2001 ++++ gtk+-1.2.9/gtk/Makefile.am Sat Mar 3 02:18:16 2001 +@@ -375,11 +375,13 @@ + + gtkconfdir = $(sysconfdir)/gtk + gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja \ +- gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \ ++ gtkrc.ko gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 \ + gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 \ + gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 \ + gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps \ +- gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 ++ gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 \ ++ gtkrc.ru_RU.koi8r gtkrc.ru_RU.cp1251 gtkrc.ru_RU.pt154 ++ + + # We create a dummy theme for the default GTK+ theme + install-data-local: +diff -urN gtk+-1.2.9.orig/gtk/Makefile.in gtk+-1.2.9/gtk/Makefile.in +--- gtk+-1.2.9.orig/gtk/Makefile.in Sat Mar 3 02:19:46 2001 ++++ gtk+-1.2.9/gtk/Makefile.in Sat Mar 3 02:19:07 2001 +@@ -191,7 +191,7 @@ + CLEANFILES = $(gen_sources) + + gtkconfdir = $(sysconfdir)/gtk +-gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 ++gtkconf_DATA = gtkrc.az gtkrc.be gtkrc.el gtkrc.eo gtkrc.he gtkrc.hy gtkrc.ja gtkrc.ko gtkrc.ru_RU.koi8r gtkrc.ru_RU.cp1251 gtkrc.ru_RU.pt154 gtkrc.tr gtkrc.th gtkrc.uk gtkrc.iso-8859-2 gtkrc.iso-8859-5 gtkrc.iso-8859-13 gtkrc.iso-8859-14 gtkrc.iso-8859-15 gtkrc.zh_CN gtkrc.zh_TW.big5 gtkrc.ka_GE.georgianacademy gtkrc.ka_GE.georgianps gtkrc.vi_VN.tcvn gtkrc.vi_VN.viscii gtkrc.cp1251 gtkrc.cp1255 + + + # +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.be gtk+-1.2.9/gtk/gtkrc.be +--- gtk+-1.2.9.orig/gtk/gtkrc.be Sat Mar 3 02:19:46 2001 ++++ gtk+-1.2.9/gtk/gtkrc.be Sat Mar 3 02:16:54 2001 +@@ -1,8 +1,6 @@ + style "gtk-default-cp1251" { + fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,*-r-*" ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251" + } + class "GtkWidget" style "gtk-default-cp1251" + +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.ru gtk+-1.2.9/gtk/gtkrc.ru +--- gtk+-1.2.9.orig/gtk/gtkrc.ru Mon May 8 22:49:18 2000 ++++ gtk+-1.2.9/gtk/gtkrc.ru Thu Jan 1 03:00:00 1970 +@@ -1,8 +0,0 @@ +-style "gtk-default-ru" { +- fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -cronyx-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-r,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-koi8-r,*-r-*" +-} +-class "GtkWidget" style "gtk-default-ru" +- +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.cp1251 gtk+-1.2.9/gtk/gtkrc.ru_RU.cp1251 +--- gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.cp1251 Thu Jan 1 03:00:00 1970 ++++ gtk+-1.2.9/gtk/gtkrc.ru_RU.cp1251 Sat Mar 3 02:16:54 2001 +@@ -0,0 +1,6 @@ ++style "gtk-default-cp1251" { ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251" ++} ++class "GtkWidget" style "gtk-default-cp1251" ++ +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.koi8r gtk+-1.2.9/gtk/gtkrc.ru_RU.koi8r +--- gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.koi8r Thu Jan 1 03:00:00 1970 ++++ gtk+-1.2.9/gtk/gtkrc.ru_RU.koi8r Sat Mar 3 02:16:54 2001 +@@ -0,0 +1,6 @@ ++style "gtk-default-koi8-r" { ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\ ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-koi8-*" ++} ++class "GtkWidget" style "gtk-default-koi8-r" ++ +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.pt154 gtk+-1.2.9/gtk/gtkrc.ru_RU.pt154 +--- gtk+-1.2.9.orig/gtk/gtkrc.ru_RU.pt154 Thu Jan 1 03:00:00 1970 ++++ gtk+-1.2.9/gtk/gtkrc.ru_RU.pt154 Sat Mar 3 02:16:54 2001 +@@ -0,0 +1,6 @@ ++style "gtk-default-pt154" { ++ fontset = "-adobe-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-*,\ ++ -*-*-medium-r-normal--12-*-*-*-*-*-paratype-cp154" ++} ++class "GtkWidget" style "gtk-default-pt154" ++ +diff -urN gtk+-1.2.9.orig/gtk/gtkrc.uk gtk+-1.2.9/gtk/gtkrc.uk +--- gtk+-1.2.9.orig/gtk/gtkrc.uk Mon May 8 22:49:18 2000 ++++ gtk+-1.2.9/gtk/gtkrc.uk Sat Mar 3 02:16:54 2001 +@@ -4,13 +4,12 @@ + # the KOI8-U charset encoding. + # + # 1999, Pablo Saratxaga <pablo@mandrakesoft.com> ++# 2000, Changed by AEN <aen@logic.ru> + # + + style "gtk-default-uk" { + fontset = "-adobe-helvetica-medium-r-normal--14-*-*-*-*-*-iso8859-*,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--14-*-*-*-*-*-koi8-u,\ +- -*-arial-medium-r-normal--14-*-*-*-*-*-koi8-u,*-r-*" ++ -*-helvetica-medium-r-normal--14-*-*-*-*-*-koi8-u" + } + class "GtkWidget" style "gtk-default-uk" + diff --git a/x11-libs/gtk+/files/gtk+-1.2.9-rc2.patch b/x11-libs/gtk+/files/gtk+-1.2.9-rc2.patch new file mode 100644 index 0000000..976552e --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-1.2.9-rc2.patch @@ -0,0 +1,27 @@ +diff -ur gtk+-1.2.9.orig/gtk/gtkrc.cp1251 gtk+-1.2.9/gtk/gtkrc.cp1251 +--- gtk+-1.2.9.orig/gtk/gtkrc.cp1251 Sun Jun 18 17:55:15 2000 ++++ gtk+-1.2.9/gtk/gtkrc.cp1251 Sat Mar 3 02:51:18 2001 +@@ -1,8 +1,6 @@ + style "gtk-default-cp1251" { + fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251,*-r-*" ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-microsoft-cp1251" + } + class "GtkWidget" style "gtk-default-cp1251" + +diff -ur gtk+-1.2.9.orig/gtk/gtkrc.iso-8859-5 gtk+-1.2.9/gtk/gtkrc.iso-8859-5 +--- gtk+-1.2.9.orig/gtk/gtkrc.iso-8859-5 Mon May 8 22:49:18 2000 ++++ gtk+-1.2.9/gtk/gtkrc.iso-8859-5 Sat Mar 3 02:55:40 2001 +@@ -6,9 +6,7 @@ + + style "gtk-default-iso-8859-5" { + fontset = "-*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-1,\ +- -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-5,\ +- -*-arial-medium-r-normal--12-*-*-*-*-*-iso8859-5,*-r-*" ++ -*-helvetica-medium-r-normal--12-*-*-*-*-*-iso8859-5" + } + class "GtkWidget" style "gtk-default-iso-8859-5" + diff --git a/x11-libs/gtk+/files/gtk+-ds-gentooalt.patch b/x11-libs/gtk+/files/gtk+-ds-gentooalt.patch new file mode 100644 index 0000000..8ad08cd --- /dev/null +++ b/x11-libs/gtk+/files/gtk+-ds-gentooalt.patch @@ -0,0 +1,597 @@ +diff -dPNur gtk+-1.2.10/acinclude.m4 gtk+-1.2.10-new/acinclude.m4 +--- gtk+-1.2.10/acinclude.m4 2000-02-03 02:07:42.000000000 +0100 ++++ gtk+-1.2.10-new/acinclude.m4 2007-06-24 01:09:06.000000000 +0200 +@@ -670,7 +670,7 @@ + AC_DEFINE(HAVE_STPCPY) + fi + +- AM_LC_MESSAGES ++ gt_LC_MESSAGES + AM_GTK_WITH_NLS + + if test "x$CATOBJEXT" != "x"; then +diff -dPNur gtk+-1.2.10/configure.in gtk+-1.2.10-new/configure.in +--- gtk+-1.2.10/configure.in 2001-03-15 21:31:58.000000000 +0100 ++++ gtk+-1.2.10-new/configure.in 2007-06-24 01:09:06.000000000 +0200 +@@ -1,6 +1,8 @@ ++builtin(include,gtk.m4) ++ ++ + # Process this file with autoconf to produce a configure script. + AC_INIT(gdk/gdktypes.h) +- + # In the following, there are a the following variants + # of GLib cflags and libs variables + # +@@ -12,12 +14,11 @@ + # glib_thread_cflags: cflags to store in gtk-config for gtk-config gthread + # glib_thread_libs: libs to store in gtk-config for gtk-config gthread + ++AC_CANONICAL_TARGET + # Save this value here, since automake will set cflags later + cflags_set=${CFLAGS+set} + +-dnl we need to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they +-dnl are available for $ac_help expansion (don't we all *love* autoconf?) +-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++GTK_AC_DIVERT_BEFORE_HELP([ + # + # Making releases: + # GTK_MICRO_VERSION += 1; +@@ -32,9 +33,8 @@ + GTK_MICRO_VERSION=10 + GTK_INTERFACE_AGE=1 + GTK_BINARY_AGE=10 +-GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION +-dnl +-AC_DIVERT_POP()dnl ++GTK_VERSION="$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION" ++]) + + AC_SUBST(GTK_MAJOR_VERSION) + AC_SUBST(GTK_MINOR_VERSION) +@@ -44,9 +44,9 @@ + AC_SUBST(GTK_VERSION) + + # libtool versioning +-LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION ++LT_RELEASE="$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION" + LT_CURRENT=`expr $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE` +-LT_REVISION=$GTK_INTERFACE_AGE ++LT_REVISION="$GTK_INTERFACE_AGE" + LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE` + AC_SUBST(LT_RELEASE) + AC_SUBST(LT_CURRENT) +@@ -54,11 +54,8 @@ + AC_SUBST(LT_AGE) + + # For automake. +-VERSION=$GTK_VERSION +-PACKAGE=gtk+ +- +-# Save this value here, since automake will set cflags later +-cflags_set=${CFLAGS+set} ++VERSION="$GTK_VERSION" ++PACKAGE="gtk+" + + dnl Initialize automake stuff + AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define) +@@ -67,42 +64,40 @@ + AM_CONFIG_HEADER(config.h) + + dnl Initialize libtool +-AM_PROG_LIBTOOL ++AC_PROG_LIBTOOL + + dnl Initialize maintainer mode + AM_MAINTAINER_MODE + +-AC_CANONICAL_HOST +- + dnl figure debugging default, prior to $ac_help setup +-dnl +-AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++ ++GTK_AC_DIVERT_BEFORE_HELP([ + if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then +- debug_default=yes ++ debug_default="yes" + else +- debug_default=minimum ++ debug_default="minimum" + fi +-AC_DIVERT_POP()dnl +- ++]) + dnl declare --enable-* args and collect ac_help strings +-AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default) ++AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],, ++ [enable_debug="$debug_default"]) + AC_ARG_ENABLE(shm, [ --enable-shm support shared memory if available [default=yes]], +- echo $enable_shm, enable_shm="yes") +-AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]], +- , enable_ansi=no) ++ [echo "$enable_shm"],[enable_shm="yes"]) ++AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]],,[enable_ansi="no"]) + AC_ARG_WITH(glib, [ --with-glib=DIR Use uninstalled copy of glib]) +-AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]], +- , enable_xim="yes") +-AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback], +- , enable_xim_inst="maybe") +-AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes) ++AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]],,[enable_xim="yes"]) ++AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback],, ++ [enable_xim_inst="maybe"]) ++AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],, ++ [enable_rebuilds="yes"]) + AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ]) +- + AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ]) +-AC_ARG_WITH(native_locale, [ --with-native-locale=[yes/no] Use native locale support [default=no]],,with_native_locale=no) ++AC_ARG_WITH(native_locale, [ --with-native-locale=[yes/no] Use native locale support [default=no]],, ++ [with_native_locale="no"]) ++ + + if test "x$enable_debug" = "xyes"; then +- test "$cflags_set" = set || CFLAGS="$CFLAGS -g" ++ test "$cflags_set" = "set" || CFLAGS="$CFLAGS -g" + GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG" + else + if test "x$enable_debug" = "xno"; then +@@ -113,16 +108,14 @@ + fi + + AC_DEFINE_UNQUOTED(GTK_COMPILED_WITH_DEBUGGING, "${enable_debug}") +- + # Build time sanity check... + AM_SANITY_CHECK + + # Checks for programs. + AC_PROG_CC + AC_ISC_POSIX +-AM_PROG_CC_STDC ++AC_PROG_CC_STDC + AC_PROG_INSTALL +-AC_PROG_MAKE_SET + + changequote(,)dnl + if test "x$GCC" = "xyes"; then +@@ -144,7 +137,6 @@ + fi + fi + changequote([,])dnl +- + # Honor aclocal flags + ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +@@ -158,8 +150,7 @@ + AC_CHECK_PROG(INDENT, indent, indent) + + REBUILD=\# +-if test "x$enable_rebuilds" = "xyes" && \ +- test -n "$PERL" && \ ++if test "x$enable_rebuilds" = "xyes" && test -n "$PERL" && \ + $PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \ + test -n "$AWK" ; then + REBUILD= +@@ -252,7 +243,7 @@ + else + # Use uninstalled glib (assume they got the version right) + +- GLIB_CONFIG=$with_glib/glib-config ++ GLIB_CONFIG="$with_glib/glib-config" + if test -x $GLIB_CONFIG ; then + : + else +@@ -268,9 +259,9 @@ + glib_release=`$GLIB_CONFIG --version | sed 's%\\.[[0-9]]*$%%'` + + # canonicalize relative paths +- case $with_glib in ++ case "$with_glib" in + /*) +- glib_dir=$with_glib ++ glib_dir="$with_glib" + ;; + *) + glib_dir="\$(top_builddir)/$with_glib" +@@ -303,61 +294,56 @@ + saved_ldflags="$LDFLAGS" + + CFLAGS="$CFLAGS $X_CFLAGS" +-LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS" ++LDFLAGS="$LDFLAGS $X_LDFLAGS" + + if test "x$no_x" = "xyes"; then + AC_MSG_ERROR([ + *** X libraries or include files not found. Check 'config.log' for + *** more details.]) + fi +- + # Checks for libraries. + # Check for the X11 library +-AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS", ++AC_CHECK_LIB(X11,XOpenDisplay, ++ x_libs="-lX11 $X_EXTRA_LIBS", + AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]), +- $X_EXTRA_LIBS) +- ++ $X_EXTRA_LIBS ++) + if test "x$enable_shm" = "xyes"; then + # Check for the Xext library (needed for XShm extention) + AC_CHECK_LIB(Xext, XShmAttach, + x_libs="-lXext $x_libs", + # On AIX, it is in XextSam instead, but we still need -lXext +- AC_CHECK_LIB(XextSam, XShmAttach, ++ [AC_CHECK_LIB(XextSam, XShmAttach, + x_libs="-lXextSam -lXext $x_libs", +- no_xext_lib=yes, $x_libs), +- $x_libs) ++ no_xext_lib="yes", ++ $x_libs ++ )], ++ $x_libs ++ ) + fi +- + # Check for shaped window extension +- + AC_CHECK_LIB(Xext, XShapeCombineMask, +- if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then ++ if test -z "`echo $x_libs | grep \-lXext 2> /dev/null`"; then + x_libs="-lXext $x_libs" + fi +- AC_DEFINE(HAVE_SHAPE_EXT), +- , +- $x_libs) +- ++ AC_DEFINE(HAVE_SHAPE_EXT),, ++ $x_libs ++) + # Check for XConvertCase (X11R6 specific) +- + AC_CHECK_LIB(X11, XConvertCase, +- AC_DEFINE(HAVE_XCONVERTCASE), +- , +- $x_libs) +- ++ AC_DEFINE(HAVE_XCONVERTCASE),, ++ $x_libs ++) + # Check for XIM support. +- +-AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback, +- : , ++AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback,, + enable_xim_inst="no", +- $x_libs) +- ++ $x_libs ++) + # On Solaris, calling XRegisterIMInstantiateCallback seems to + # cause an immediate segfault, so we disable it, unless + # the user specifically forces it to be on. +- +-if test x$enable_xim_inst = xmaybe ; then +- case host in ++if test "x$enable_xim_inst" = "xmaybe" ; then ++ case "$host" in + *-*-solaris*) + enable_xim_inst="no" + ;; +@@ -375,16 +361,15 @@ + fi + + x_cflags="$X_CFLAGS" +-x_ldflags="$X_LDFLAGS $X_LIBS" ++x_ldflags="$X_LDFLAGS" + + # set up things for XInput +- + if test "x$with_xinput" = "xgxi"; then + AC_MSG_WARN([ + *** The generic XInput support has not been tested for several years + *** and is not known to work with any currently available X servers]) + AC_DEFINE(XINPUT_GXI) +- xinput_progs=gxid ++ xinput_progs="gxid" + x_libs="-lXi $x_libs" + elif test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then + AC_DEFINE(XINPUT_XFREE) +@@ -404,77 +389,72 @@ + + if test "x$enable_shm" = "xyes"; then + # Check for shared memory +- AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes) +- AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes) ++ AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc="yes") ++ AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm="yes") + + # Check for the X shared memory extension header file + AC_MSG_CHECKING(X11/extensions/XShm.h) + if test "x$no_xext_lib" = "xyes"; then + AC_MSG_RESULT(no) +- no_xshm=yes ++ no_xshm="yes" + else + if test -f "$x_includes/X11/extensions/XShm.h"; then + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_XSHM_H) + else + AC_MSG_RESULT(no) +- no_xshm=yes ++ no_xshm="yes" + fi + fi + fi +- + # Check if X_LOCALE definition is necessary +- + AC_MSG_CHECKING(need -DX_LOCALE) + + AC_TRY_RUN([ + #include <stdio.h> + #include <locale.h> +- +-int +-main () ++ int main () + { + return setlocale (LC_ALL, "${with_locale}") == NULL; + }], +-need_x_locale=no, +-need_x_locale=yes, +-need_x_locale=no) ++ need_x_locale="no", ++ need_x_locale="yes", ++ need_x_locale="no" ++) + AC_MSG_RESULT($need_x_locale) + +-use_native_locale=no +-if test $need_x_locale = yes; then ++use_native_locale="no" ++if test "$need_x_locale" = "yes"; then + GTK_LOCALE_FLAGS="-DX_LOCALE" + else +- if test x$with_native_locale = xyes ; then ++ if test "x$with_native_locale" = "xyes" ; then + AC_MSG_CHECKING(functioning locale support) + +- AC_TRY_COMPILE([#include <stdlib.h>],[ +- char c; ++ AC_TRY_COMPILE([#include <stdlib.h>], ++ [char c; + if (MB_CUR_MAX == 1) { + wctomb(&c, 42); +- } +- ],use_native_locale=yes,) +- ++ }], ++ use_native_locale="yes" ++ ) + AC_MSG_RESULT($use_native_locale) + fi + fi + +-if test x$use_native_locale = xyes ; then ++if test "x$use_native_locale" = "xyes" ; then + AC_MSG_CHECKING(if sizeof(wchar_t) == 4) + +- AC_TRY_RUN([ +- #include <stdlib.h> +- +- int +- main () ++ AC_TRY_RUN([#include <stdlib.h> ++ int main () + { + return (sizeof(wchar_t) == 4) ? 0 : 1; +- }], +- ,use_native_locale=no,:) ++ }],, ++ use_native_locale="no" ++ ) + AC_MSG_RESULT($use_native_locale) + fi + +-if test $use_native_locale = yes ; then ++if test "$use_native_locale" = "yes" ; then + AC_DEFINE(USE_NATIVE_LOCALE) + fi + +@@ -493,13 +473,17 @@ + + # Check if <sys/select.h> needs to be included for fd_set + AC_MSG_CHECKING([for fd_set]) +-AC_TRY_COMPILE([#include <sys/types.h>], +- [fd_set readMask, writeMask;], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_COMPILE([#include <sys/types.h> ++ ], ++ [fd_set readMask, writeMask;], ++ gtk_ok="yes", ++ gtk_ok="no" ++) ++if test "$gtk_ok" = "yes"; then + AC_MSG_RESULT([yes, found in sys/types.h]) + else +- AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok=yes) +- if test $gtk_ok = yes; then ++ AC_HEADER_EGREP(fd_mask, sys/select.h, gtk_ok="yes") ++ if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_SYS_SELECT_H) + AC_MSG_RESULT([yes, found in sys/select.h]) + else +@@ -511,30 +495,35 @@ + # Duplicate `widechar' tests from `glib'. + # Check for wchar.h + AC_MSG_CHECKING(for wchar.h) +-AC_TRY_CPP([#include <wchar.h>], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_CPP([#include <wchar.h> ++ ], ++ gtk_ok="yes", ++ gtk_ok="no" ++) ++if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_WCHAR_H,1,[Define if wchar.h exists]) + fi + AC_MSG_RESULT($gtk_ok) + + # Check for wctype.h (for iswalnum) + AC_MSG_CHECKING(for wctype.h) +-AC_TRY_CPP([#include <wctype.h>], gtk_ok=yes, gtk_ok=no) +-if test $gtk_ok = yes; then ++AC_TRY_CPP([#include <wctype.h>], gtk_ok="yes", gtk_ok="no") ++if test "$gtk_ok" = "yes"; then + AC_DEFINE(HAVE_WCTYPE_H,1,[Define if wctype.h exists]) + fi + AC_MSG_RESULT($gtk_ok) + + # in Solaris 2.5, `iswalnum' is in -lw + GDK_WLIBS= +-AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)]) ++AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS="-lw")]) + + # The following is necessary for Linux libc-5.4.38 + oLIBS="$LIBS" + LIBS="$LIBS $GDK_WLIBS" + AC_MSG_CHECKING(if iswalnum() and friends are properly defined) +-AC_TRY_LINK([#include <stdlib.h>],[ +-#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H)) ++AC_TRY_LINK([#include <stdlib.h> ++ ], ++ [#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H)) + # ifdef HAVE_WCTYPE_H + # include <wctype.h> + # else +@@ -545,11 +534,13 @@ + #else + # define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c)) + #endif +-iswalnum((wchar_t) 0); +-], gtk_ok=yes, gtk_ok=no) ++ iswalnum((wchar_t) 0);], ++ gtk_ok="yes", ++ gtk_ok="no" ++) + LIBS="$oLIBS" + +-if test $gtk_ok = no; then ++if test "$gtk_ok" = "no"; then + AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Define if the wctype function is broken]) + GDK_WLIBS= + fi +@@ -571,5 +562,5 @@ + gtk/Makefile + gtk/gtkfeatures.h + gdk.pc +-gtk+.pc +-], [chmod +x gtk-config]) ++gtk+.pc], ++[chmod +x gtk-config]) +diff -dPNur gtk+-1.2.10/gdk/Makefile.am gtk+-1.2.10-new/gdk/Makefile.am +--- gtk+-1.2.10/gdk/Makefile.am 2000-10-21 20:20:40.000000000 +0200 ++++ gtk+-1.2.10-new/gdk/Makefile.am 2007-06-24 01:09:06.000000000 +0200 +@@ -21,12 +21,11 @@ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @GLIB_DEPLIBS@ \ + @x_ldflags@ \ +- @x_libs@ \ +- -lm \ + @STRIP_END@ + ++libgdk_la_LIBADD = @GLIB_DEPLIBS@ @x_libs@ -lm ++ + # + # setup source file variables + # +@@ -104,14 +103,13 @@ + EXTRA_PROGRAMS = gxid + bin_PROGRAMS = @xinput_progs@ + LDADDS = @STRIP_BEGIN@ \ +- @x_ldflags@ \ + @x_libs@ \ + @GLIB_LIBS@ \ + -lm \ + @STRIP_END@ + gxid_SOURCES = gxid.c + gxid_LDADD = $(LDADDS) +- ++gxid_LDFLAGS = @x_ldflags@ + + .PHONY: files + +diff -dPNur gtk+-1.2.10/gtk/Makefile.am gtk+-1.2.10-new/gtk/Makefile.am +--- gtk+-1.2.10/gtk/Makefile.am 2001-02-02 18:09:02.000000000 +0100 ++++ gtk+-1.2.10-new/gtk/Makefile.am 2007-06-24 01:09:06.000000000 +0200 +@@ -27,13 +27,15 @@ + -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ + -release $(LT_RELEASE) \ + -export-dynamic \ +- @GLIB_DEPLIBS@ \ + @x_ldflags@ \ +- @x_libs@ \ +- -lm \ + @STRIP_END@ +-# $(top_builddir)/gdk/libgdk.la +- ++libgtk_la_LIBADD = @STRIP_BEGIN@ \ ++ $(top_builddir)/gdk/libgdk.la \ ++ @x_libs@ \ ++ @GDK_WLIBS@ \ ++ @GLIB_LIBS@ \ ++ -lm \ ++ @STRIP_END@ + + # + # setup source file variables +@@ -426,7 +428,6 @@ + LDADDS = @STRIP_BEGIN@ \ + libgtk.la \ + $(top_builddir)/gdk/libgdk.la \ +- @x_ldflags@ \ + @x_libs@ \ + @GDK_WLIBS@ \ + @GLIB_LIBS@ \ +@@ -439,12 +440,20 @@ + testdnd_DEPENDENCIES = $(DEPS) + simple_DEPENDENCIES = $(DEPS) + #testthreads_DEPENDENCIES = $(DEPS) ++ + testgtk_LDADD = $(LDADDS) ++testgtk_LDFLAGS=@x_ldflags@ + testinput_LDADD = $(LDADDS) ++testinput_LDFLAGS = @x_ldflags@ + testselection_LDADD = $(LDADDS) ++testselection_LDFLAGS = @x_ldflags@ + testrgb_LDADD = $(LDADDS) ++testrgb_LDFLAGS = @x_ldflags@ + testdnd_LDADD = $(LDADDS) ++testdnd_LDFLAGS = @x_ldflags@ + simple_LDADD = $(LDADDS) ++simple_LDFLAGS = @x_ldflags@ ++ + #testthreads_LDADD = $(LDADDS) + + .PHONY: files test test-debug +diff -dPNur gtk+-1.2.10/gtk.m4 gtk+-1.2.10-new/gtk.m4 +--- gtk+-1.2.10/gtk.m4 1999-02-18 17:43:35.000000000 +0100 ++++ gtk+-1.2.10-new/gtk.m4 2007-06-24 01:09:06.000000000 +0200 +@@ -1,6 +1,11 @@ + # Configure paths for GTK+ + # Owen Taylor 97-11-3 +- ++AC_DEFUN([GTK_AC_DIVERT_BEFORE_HELP], ++[ifdef([m4_divert_text], [m4_divert_text([NOTICE],[$1])], ++ [ifdef([AC_DIVERT], [AC_DIVERT([NOTICE],[$1])], ++ [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl ++$1 ++AC_DIVERT_POP()])])]) + dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]]) + dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS + dnl diff --git a/x11-libs/gtk+/files/gtkrc b/x11-libs/gtk+/files/gtkrc new file mode 100644 index 0000000..8d17834 --- /dev/null +++ b/x11-libs/gtk+/files/gtkrc @@ -0,0 +1,39 @@ +style "default" + +{ + font = "-*-lucida-medium-r-normal-*-*-100-*-*-*-*-*-*" +} + +style "button" = "default" + +{ + bg[PRELIGHT] = { 0.7, 0.7, 0.9 } +} + +style "treeitem" +{ +bg[ACTIVE] = { 0.7, 0.7, 0.9 } +} + +style "scrollbar" = "button" +{ + bg[ACTIVE] = {0.6, 0.6, 0.6 } +} + +style "status" { + bg[PRELIGHT] = { 0.3, 1.0, 0.3 } +} + +style "gtk-tooltips" { + bg[NORMAL] = "#ffff60" +} + +class "GtkWidget" style "default" +class "GtkButton" style "button" +class "GtkItem" style "button" +class "GtkProgressBar" style "status" +class "GtkScrollbar" style "scrollbar" +class "GtkTreeItem" style "treeitem" +widget "gtk-tooltips" style "gtk-tooltips" + + diff --git a/x11-libs/gtk+/gtk+-1.2.10-r15.ebuild b/x11-libs/gtk+/gtk+-1.2.10-r15.ebuild new file mode 100644 index 0000000..bac36ea --- /dev/null +++ b/x11-libs/gtk+/gtk+-1.2.10-r15.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/gtk+/gtk+-1.2.10-r12.ebuild,v 1.12 2007/01/06 05:09:58 geoman Exp $ + +GNOME_TARBALL_SUFFIX="gz" +WANT_AUTOMAKE=1.11 +inherit eutils toolchain-funcs autotools + +DESCRIPTION="The GIMP Toolkit" +HOMEPAGE="http://www.gtk.org/" +SRC_URI="ftp://ftp.gtk.org/pub/gtk/v1.2/gtk+-1.2.10.tar.gz http://www.ibiblio.org/gentoo/distfiles/gtk+-1.2.10-r8-gentoo.diff.bz2" + +LICENSE="LGPL-2.1" +SLOT="1" +KEYWORDS="alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd" +IUSE="nls debug" + +# Supported languages and translated documentation +# Be sure all languages are prefixed with a single space! +MY_AVAILABLE_LINGUAS=" az ca cs da de el es et eu fi fr ga gl hr hu it ja ko lt nl nn no pl pt_BR pt ro ru sk sl sr sv tr uk vi" +IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}" + +RDEPEND="=dev-libs/glib-1.2* + || ( + ( x11-libs/libXi x11-libs/libXt ) + virtual/x11 + )" +DEPEND="${RDEPEND} + || ( + ( x11-proto/inputproto x11-proto/xextproto ) + virtual/x11 + ) + nls? ( sys-devel/gettext dev-util/intltool )" + +src_unpack() { + unpack ${P}.tar.gz + cd "${S}" + epatch "${FILESDIR}"/${P}-m4.patch + epatch "${DISTDIR}"/gtk+-1.2.10-r8-gentoo.diff.bz2 + epatch "${FILESDIR}"/${PN}-1.2-locale_fix.patch + epatch "${FILESDIR}"/${P}-as-needed.patch +# epatch "${FILESDIR}"/gtk+-ds-gentooalt.patch + +## epatch "${FILESDIR}"/gtk+-1.2.10-alt-linkage.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-cvs-border.patch + epatch "${FILESDIR}"/gtk+-1.2.10-cvs-dndnewwindow.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-cvs-expose.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-cvs-focus.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-cvs-labelvariable.patch + epatch "${FILESDIR}"/gtk+-1.2.10-cvs-netwmpid.patch +### epatch "${FILESDIR}"/gtk+-1.2.10-cvs-rclocale.patch + epatch "${FILESDIR}"/gtk+-1.2.10-mdk-argb.patch + epatch "${FILESDIR}"/gtk+-1.2.10-mdk-defaultcolor.patch + epatch "${FILESDIR}"/gtk+-1.2.10-mdk-fileselectorfallback.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-mdk-gtklist.patch +### epatch "${FILESDIR}"/gtk+-1.2.10-mdk-gtkrc_files.patch + epatch "${FILESDIR}"/gtk+-1.2.10-mdk-libdir.patch + epatch "${FILESDIR}"/gtk+-1.2.10-mdk-themeswitch.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-rh-alignment.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-bellvolume.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-clistfocusrow.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-ctext.patch +### epatch "${FILESDIR}"/gtk+-1.2.10-rh-deletedir.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-rh-encoding.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-fontwarning.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-kpenter.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-localecrash.patch +# epatch "${FILESDIR}"/gtk+-1.2.10-rh-m4.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-missingchar.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-pixmapref.patch + epatch "${FILESDIR}"/gtk+-1.2.10-rh-troughpaint.patch +# epatch "${FILESDIR}"/gtk+-1.2.6-ximian-noborder.patch +# epatch "${FILESDIR}"/gtk+-1.2.8-advanced-gtkfilesel.patch +# epatch "${FILESDIR}"/gtk+-1.2.9-be.patch +# epatch "${FILESDIR}"/gtk+-1.2.9-rc2.patch +# epatch "${FILESDIR}"/gtk+-1.2.9-rc.patch + + epatch "${FILESDIR}"/gtk+-1.2.10-automake.diff + + eautoreconf +} + +src_compile() { + local myconf= + use nls || myconf="${myconf} --disable-nls" + strip-linguas ${MY_AVAILABLE_LINGUAS} + + if use debug ; then + myconf="${myconf} --enable-debug=yes" + else + myconf="${myconf} --enable-debug=minimum" + fi + + econf \ + --sysconfdir=/etc \ + --with-xinput=xfree \ + --with-x \ + ${myconf} || die + + rm -f "${S}"/libtool + cp /usr/bin/libtool "${S}"/ + SED="sed" emake CC="$(tc-getCC)" || die +} + +src_install() { + SED="sed" make install DESTDIR="${D}" || die + + dodoc AUTHORS ChangeLog* HACKING + dodoc NEWS* README* TODO + docinto docs + cd docs + dodoc *.txt *.gif text/* + dohtml -r html + + #install nice, clean-looking gtk+ style + insinto /usr/share/themes/Gentoo/gtk + doins "${FILESDIR}"/gtkrc +} + +pkg_postinst() { + if [[ -e /etc/X11/gtk/gtkrc ]] ; then + ewarn "Older versions added /etc/X11/gtk/gtkrc which changed settings for" + ewarn "all themes it seems. Please remove it manually as it will not due" + ewarn "to /env protection." + fi + + echo "" + einfo "The old gtkrc is available through the new Gentoo gtk theme." +} diff --git a/x11-libs/vte/Manifest b/x11-libs/vte/Manifest new file mode 100644 index 0000000..ed66318 --- /dev/null +++ b/x11-libs/vte/Manifest @@ -0,0 +1,4 @@ +AUX vte-0.30.1-alt-meta.patch 2490 RMD160 33e285f9288bf9f320e3e6d247b15abca20b55c0 SHA1 5f611947b0c7de2e21ab3f8f3f4387f32160e56a SHA256 31a46fee8fe59bd1d6df54bc502b608fe80da57bf3786e2dc6e9856a4e793ed6 +AUX vte-0.30.1-ds-mc.diff 1477 RMD160 3ea015dd3dec285f4acfa5b8ca75d3ece52b3c7d SHA1 ec9ec963d39599c07dcba927e6a202b82e05f3bc SHA256 01e56bf5a801ce641ff3873b34b01a073b6daf2ca4fb112801ad810a405f7418 +DIST vte-0.30.1.tar.xz 951688 RMD160 f4de2cf9a1fdeb583cb849eed3d231ae8450369c SHA1 e8d4894f3acb572519e59baf621856e7ffb3e1fa SHA256 bbe421de3015935c22f685eea0eb8be2c1fecd5021c1f822996b8f0a282f6b64 +EBUILD vte-0.30.1-r3.ebuild 1501 RMD160 dfa92453aa8059b76860247bff3aef2c652fcc33 SHA1 aa08a9b365cf35af440b105709ecfe4ef7a876ad SHA256 3ff50d644c744067e2498f7035f1f74ed66780015a587b965f65c1a4769321c3 diff --git a/x11-libs/vte/files/vte-0.30.1-alt-meta.patch b/x11-libs/vte/files/vte-0.30.1-alt-meta.patch new file mode 100644 index 0000000..bd364be --- /dev/null +++ b/x11-libs/vte/files/vte-0.30.1-alt-meta.patch @@ -0,0 +1,74 @@ +From 180dcc578e13c6096e277fb853e7162db640f207 Mon Sep 17 00:00:00 2001 +From: Alexandre Rostovtsev <tetromino@gentoo.org> +Date: Tue, 15 Nov 2011 03:06:40 -0500 +Subject: [PATCH] Map both gdk's Meta and Alt to vte's Meta for >=gtk+-3.2.2 + compatibility + +Also, since VTE_META_MASK is now a mask with multiple bits set, code that +compares gdk key modifiers to VTE_META_MASK by numerical equality is no +longer guaranteed to work. Therefore, for such comparisons a new function, +vte_keymap_fixup_modifiers, is introduced; it ensures that if any bits +matching matching VTE_META_MASK are set, then all are set. + +https://bugzilla.gnome.org/show_bug.cgi?id=663779 +--- + src/keymap.c | 15 +++++++++++++-- + src/keymap.h | 2 +- + 2 files changed, 14 insertions(+), 3 deletions(-) + +diff --git a/src/keymap.c b/src/keymap.c +index 9a21669..95b4c5b 100644 +--- a/src/keymap.c ++++ b/src/keymap.c +@@ -990,6 +990,17 @@ static const struct _vte_keymap_group { + {GDK_KEY (F35), _vte_keymap_GDK_F35}, + }; + ++/* Restrict modifiers to the specified mask and ensure that VTE_META_MASK, ++ * despite being a compound mask, is treated as indivisible. */ ++GdkModifierType ++_vte_keymap_fixup_modifiers(GdkModifierType modifiers, ++ GdkModifierType mask) ++{ ++ if (modifiers & VTE_META_MASK) ++ modifiers |= VTE_META_MASK; ++ return modifiers & mask; ++} ++ + /* Map the specified keyval/modifier setup, dependent on the mode, to either + * a literal string or a capability name. */ + void +@@ -1104,7 +1115,7 @@ _vte_keymap_map(guint keyval, + } else { + fkey_mode = fkey_default; + } +- modifiers &= (GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK); ++ modifiers = _vte_keymap_fixup_modifiers(modifiers, GDK_SHIFT_MASK | GDK_CONTROL_MASK | VTE_META_MASK | VTE_NUMLOCK_MASK); + + /* Search for the conditions. */ + for (i = 0; entries[i].normal_length || entries[i].special[0]; i++) +@@ -1375,7 +1386,7 @@ _vte_keymap_key_add_key_modifiers(guint keyval, + return; + } + +- switch (modifiers & significant_modifiers) { ++ switch (_vte_keymap_fixup_modifiers(modifiers, significant_modifiers)) { + case 0: + modifier = 0; + break; +diff --git a/src/keymap.h b/src/keymap.h +index 243e22e..21d9b8e 100644 +--- a/src/keymap.h ++++ b/src/keymap.h +@@ -27,7 +27,7 @@ + + G_BEGIN_DECLS + +-#define VTE_META_MASK GDK_META_MASK ++#define VTE_META_MASK (GDK_META_MASK | GDK_MOD1_MASK) + #define VTE_NUMLOCK_MASK GDK_MOD2_MASK + + /* Map the specified keyval/modifier setup, dependent on the mode, to either +-- +1.7.8.rc3 + diff --git a/x11-libs/vte/files/vte-0.30.1-ds-mc.diff b/x11-libs/vte/files/vte-0.30.1-ds-mc.diff new file mode 100644 index 0000000..effeff2 --- /dev/null +++ b/x11-libs/vte/files/vte-0.30.1-ds-mc.diff @@ -0,0 +1,43 @@ +diff -dPNur vte-0.30.1/src/vte.c vte-0.30.1-ds/src/vte.c +--- vte-0.30.1/src/vte.c 2011-09-26 14:32:48.000000000 +0200 ++++ vte-0.30.1-ds/src/vte.c 2012-01-23 02:12:16.000000000 +0100 +@@ -5389,7 +5390,9 @@ + break; + case GDK_KEY (KP_Insert): + case GDK_KEY (Insert): +- if (modifiers & GDK_SHIFT_MASK) { ++ //printf("%lx %s\n", modifiers, terminal->window_title); ++ if (strncmp(terminal->window_title, "mc", 2)) { ++ if (modifiers & GDK_SHIFT_MASK) { + if (modifiers & GDK_CONTROL_MASK) { + vte_terminal_paste_clipboard(terminal); + handled = TRUE; +@@ -5399,10 +5402,27 @@ + handled = TRUE; + suppress_meta_esc = TRUE; + } +- } else if (modifiers & GDK_CONTROL_MASK) { ++ } else if (modifiers & GDK_CONTROL_MASK) { + vte_terminal_copy_clipboard(terminal); + handled = TRUE; + suppress_meta_esc = TRUE; ++ } ++ } ++ ++ if ((modifiers & (GDK_CONTROL_MASK|GDK_SHIFT_MASK)) == (GDK_CONTROL_MASK|GDK_SHIFT_MASK)) { ++ vte_terminal_paste_primary(terminal); ++ handled = TRUE; ++ suppress_meta_esc = TRUE; ++ } else if (modifiers & (GDK_MOD1_MASK|GDK_META_MASK|0x2000)) { ++ if (modifiers & GDK_CONTROL_MASK) { ++ vte_terminal_copy_clipboard(terminal); ++ handled = TRUE; ++ suppress_meta_esc = TRUE; ++ } else if (modifiers & GDK_SHIFT_MASK) { ++ vte_terminal_paste_clipboard(terminal); ++ handled = TRUE; ++ suppress_meta_esc = TRUE; ++ } + } + break; + /* Keypad/motion keys. */ diff --git a/x11-libs/vte/vte-0.30.1-r3.ebuild b/x11-libs/vte/vte-0.30.1-r3.ebuild new file mode 100644 index 0000000..b852849 --- /dev/null +++ b/x11-libs/vte/vte-0.30.1-r3.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-libs/vte/vte-0.30.1-r2.ebuild,v 1.1 2011/11/18 08:48:37 tetromino Exp $ + +EAPI="4" +GCONF_DEBUG="yes" +GNOME2_LA_PUNT="yes" + +inherit eutils gnome2 + +DESCRIPTION="GNOME terminal widget" +HOMEPAGE="http://git.gnome.org/browse/vte" + +LICENSE="LGPL-2" +SLOT="2.90" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="debug doc glade +introspection" + +PDEPEND="x11-libs/gnome-pty-helper" +RDEPEND=">=dev-libs/glib-2.26:2 + >=x11-libs/gtk+-3.1.9:3[introspection?] + >=x11-libs/pango-1.22.0 + + sys-libs/ncurses + x11-libs/libX11 + x11-libs/libXft + + glade? ( >=dev-util/glade-3.9:3.10 ) + introspection? ( >=dev-libs/gobject-introspection-0.9.0 )" +DEPEND="${RDEPEND} + >=dev-util/intltool-0.35 + >=dev-util/pkgconfig-0.9 + sys-devel/gettext + doc? ( >=dev-util/gtk-doc-1.13 )" + +pkg_setup() { + # Python bindings are via gobject-introspection + # Ex: from gi.repository import Vte + G2CONF="${G2CONF} + --disable-gnome-pty-helper + --disable-deprecation + --disable-maintainer-mode + --disable-static + $(use_enable debug) + $(use_enable glade glade-catalogue) + $(use_enable introspection)" + DOCS="AUTHORS ChangeLog HACKING NEWS README" +} + +src_prepare() { + # https://bugzilla.gnome.org/show_bug.cgi?id=663779 + epatch "${FILESDIR}/${PN}-0.30.1-alt-meta.patch" +#SDS + epatch "${FILESDIR}/${PN}-0.30.1-ds-mc.diff" || die +#EDS + + gnome2_src_prepare +} |