changeset 7380:055a0b587a3e v7.4.995

commit https://github.com/vim/vim/commit/36e294c00c784b9ddd05a4fdbea2e331ab2b1ca8 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Dec 29 18:55:46 2015 +0100 patch 7.4.995 Problem: gdk_pixbuf_new_from_inline() is deprecated. Solution: Generate auto/gui_gtk_gresources.c. (Kazunobu Kazunobu, closes https://github.com/vim/vim/issues/507)
author Christian Brabandt <cb@256bit.org>
date Tue, 29 Dec 2015 19:00:05 +0100
parents 0463a4e8a4f0
children bda970de358d
files .gitignore pixmaps/stock_vim_build_tags.png pixmaps/stock_vim_find_help.png pixmaps/stock_vim_save_all.png pixmaps/stock_vim_session_load.png pixmaps/stock_vim_session_new.png pixmaps/stock_vim_session_save.png pixmaps/stock_vim_shell.png pixmaps/stock_vim_window_maximize.png pixmaps/stock_vim_window_maximize_width.png pixmaps/stock_vim_window_minimize.png pixmaps/stock_vim_window_minimize_width.png pixmaps/stock_vim_window_split.png pixmaps/stock_vim_window_split_vertical.png src/Makefile src/auto/configure src/config.h.in src/config.mk.in src/configure.in src/gui_gtk.c src/gui_gtk_gresources.xml src/gui_gtk_x11.c src/proto/gui_gtk_gresources.pro src/version.c
diffstat 24 files changed, 240 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/.gitignore
+++ b/.gitignore
@@ -3,6 +3,8 @@
 src/vim
 src/xxd/xxd
 src/auto/if_perl.c
+src/auto/gui_gtk_gresources.c
+src/auto/gui_gtk_gresources.h
 src/tags
 
 # We do need src/auto/configure.
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..3ed7085b2e53c21d434c0908dd7122961648f60b
GIT binary patch
literal 439
zc$@*Z0Z9IdP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS0004QNkl<ZNQv!LJ&VFX5PivdrG$WR-Tf7@kbu8U!M|c7sD)SvT37}_v^cR4
zAt0oXgPqJ3=k2-9_yKob<%1CBWioH)&29obaRb3w%u3D&fC2y=@0YIEW4^gi`%6GW
zr_)jSe!nlc&1S;@-oFc$G?gsNy!dc92o3=9JQsYLrd}Ls0_QNssC-crf@Ahw79DiE
zUF3O=FbrLh)oKMI5<>I&T=3)Z*ju;|Xfzt4ZDR~-wVK++IUmO{+U>S$?JkRcgNF+U
ziw1)MvMfWX^z&%3Sg0?r*K3SMBX8J~$pirGMS*&~u5L+f2E*YH)oRt_;y6aD)pGHl
zTV$;TfVYPUoLUPg7WH~P?Du=Ow}T+Sa=8Q%ftg(aB2v%CbUM8*kR*wi0W+&J(9TD>
zTt>6mbn#sl5s}JkpNg9n?RGnFTUu)|o6S(ER79~fO%X+rE6U8+Zns{}J^zE#XL>7g
hu@=C~mE0%(5ud*0;i!WY+Fk$v002ovPDHLkV1jRcz<>Y%
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..9214945d8d8c5a26762cd0b043e3102da37e7076
GIT binary patch
literal 1717
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
LNkvXXu0mjfPv}0$
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..1f9e781372083f754aa76b45c806406bdf8fdc9a
GIT binary patch
literal 1021
zc$@+K0|NYsP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS000BDNkl<ZNQt$UOK4nG7{`D2+&iz#Ofs1!jgcsdAks}q6%~a>E8=4zx~L!p
zby>w_abZMV6m+AzsynNzuCl11DA9!!MQv<?RwcDU6)JgPl9|lh=Q-bTap%t5;>NV~
z50~?}hwt(Gz5@r~Fko-s_Z&GnfIa(bhrj$5i>FTT+S3oCTo)^X_&z8XdTSj9;3%+?
zj*dbXE4=sVmppXj6*gNtyl`k=X4eCZ2N2p0fBb%#jrC1h-=2l;HVEiAhEfFy0^&*)
zbVA$>aIjd{#cy}8V%XB7T=?YzOXrvK!B>F51F+UXjBw@3pWOEGhg_3B`XIluz41j4
zK#O2KVd0B2++bWMJpdPwNccZ+d09rbmsEzUTq?8LF}O()#DY`6Ni4QdrL*3mK2oC_
z8mi4v{IyjaD+J{xMW;xdSfppr0}$&VMw7=?t-IX!#_?U3;`3w2P)Z>>20#HwC>WI@
z%Hz5onO?viK%_v#^nML+EiEl!v&DZ<yWIw$;JHLmJaC{2mZFm$%5ZIOZ!<kTz3a&5
z=jT&9c|@_XgmIcuhO5zN?AmxHYb~}%B)w>fC5qCGJg(g$3d68JAMtWEPzeZWVKZF*
z>gqKinwy(L8^P!#mq7u<q)}(MN_WpNJ3C7hMgNXeTRaS&=Uuh$`##0taa`rF){O=Z
zz@mF?mEo#4rcljWsVOIoNG#S`JXcYS66!;xK0c)si8f4@iv&@E=PGoRLnM}dYi77M
z+dfJumOnd*gG*zyNn>m;#u$uA5F?1uSS(2xu@)L+YlE4?N4b4+4@j;}wKo02_HkLm
z%2%g(_KAZ${^V15o=3Sdl%BDcZfA$>))sLX@Z<7%7S3Iy+uYBkODi1MzYmdI4SxE1
zfdU1t!X<*=>F~&-k5R6adF##B*;ro#;O%$bWpi_bDDVjbpL_0qkW**AVd$0#5*<?U
zEGA4HDB#``$6w|0&x_=772VWbxiUnh7kQ@6PMai75j6LVQ?CtEu2ksVRZ41bRsl<$
zoz?@VKY5=#E=dew;3LM6B%1ZL)gFIC9EXU}RBLr6Zl0n(Jc8B<*cdUIwZKwx1~o9i
zIbZ~6Ww^RpNaBdV_wjunqfNhSqA*~zImY<JB&AZBC<+lV#8FH^EFu<b1~=IP8ff=$
zeShegBh(vBrtY|t9~Qr3YHEs?UpmUz-kSiZ)`qFqNASD?+gpG0+r<^4Fr<cyi9=!~
r*gmj<9H0!$aGg(=yAB-8=Fk5FTs@H;=86}p00000NkvXXu0mjfW+2#n
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..34251d1fe3538371b75b655c6d311b5bd340f70c
GIT binary patch
literal 1301
zc$@(h1?u{VP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS000EcNkl<ZNQvE+X>3(R6vuya?|pr35h~q~Qlfw*r3<^o1X)T`C?*BPxPXWo
z5{QN`esaSPAc~lnD4+>xT#69TK>UDGkV0z(r3+BQQfW(DUi;ej+SiADOW(Wq&iJ9F
z8leXCoB!lw&di*gGv}Q7PX_)E5Wu~_DWDDT0qSou70~{za}79k_{djtrcKMe$)L1!
z58oU(%++SM)93R=?=*lhby`MoQ)9>Y+}td@JxxO!N+|%cbM9krX_UUc-{%4+2Q#{D
zXn{a@#Ya2dNdpLn!UTgM!r^`*ktn8VGUlEnGP5U=oHF|PtgICMjx&(9ES@uGCXG$!
z35G)0wnEo5bVI}8a3F*rCpUvGx3{3OqOKfB1hR+mw*oly*99@@{_*DbWnUW?F4bU~
zCXxOqx~^e343tzzsjzJu+m^(|jv_8L0Y{7jO$eM$CoxV3x^Ce2_prF&Dbmx^4VTMh
z4`tBR*=^{Wj@#|Q>5Qd66ha6M!_ZMEY)j&djUhJ9Nz@7u>FYz;3ZV&<l-N>XnKr)O
z>i{Grjfiu(2r}3!BM=B<S`wevPsB9&bmxA&9^ajodI;ywH&g>2U>9)E08k2o;Rscg
zwN#%u&4`f(wzO{BsZt8dvM@~x%d|4Vk@@H&PtF&Z$;N<*O(+!RTwMdn$w^#k`SG@#
z&YJqz(EO(}`>;%lNHmJy-$#EWM8e3pi9_uC?ebO5o;^*d|2k4ilu{_AhIA<<t*sr*
z&0ERbyp>$M(1>B^lpQ&YVdz}=^$JT0*0OBr2C6D*XusBZQXx_d04XK4)eWSkrgFKd
zf`R@BK%o=}F;K=;kH5-Wo8G|d>0#Xqn<&ViN4u+qg8X@Ge0d9RZ+e~GB_-_qcrS5r
z&Nd-LzyN4%xyG6`tB6Ji2zG<TD3D5`2@PA?C<XZo7U1*skefYus60hQg)CoQOjl<I
z851Yb)YzsH67H%J*j)yI|N3>-uU|{exw3(d*b*t_fIc`Xso1=ABMTQ5^2v@50XTZB
z9A}Kql&l>5y&Z(YVU8WIR1Syn%a}2vYi(Qg7y$jD2yyW-1cPBL%f_|`PJ1JWl#=IG
zzXrgP!i4}-R8-*ccxi8M=i<c%Hf&f&U0p4O1@lGOv6Gp#wGBVy<V;92016iuai!@3
zZnp>1w6QE}u(4_|BO6d`e}5ZUS(EANbQ6i%G&f(RtINZvgi$P6x{TJAX8OmE<Jo7P
zxcl=j_xJeyrpc_?Q=aDL_kUO^TAZ&wE7_&Cy|-EA&7Q7OQ<K#P+qbE!&5i1%7gwvI
z#rX>8W`Jx$%$l9~Fo<}-0ZIrVhQ0e9Pw#|lZJlo(I=DafTwOJJ56)%!j0foT^-zBN
zDE0N{*<G?H7$5H}PE1Uxbh%u%m^m{u1C1nsh*wI9e~M6BbLrdf4j+mS1_A^EeYCbT
z0}u*_0dRME@OrvAa`Z$WkN_w>EiFDQZ9RZeJ|%6hCbVwAdn<9fyI<M6??An-YiV1y
zZV$)CIvt5gqp7dI$QPvt0^`PwjX6?Q{xgsYyvrb)L{=6e7(@V!9h*LEiE3&(CRvuO
z0njv2Af-CEDF31K@)K1qAy}al#|KSk08KXn{1<fb=Vu`0RtA3nCDLvrA9!ef00000
LNkvXXu0mjf+a6#N
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..5fb0626b7a8b767f15cb3b6fb75cfd49ac12f458
GIT binary patch
literal 1034
zc$@(W1oiugP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS000BQNkl<ZNQu3cO-x)>6vuyW>M$RjuTqB)uxV*motWCV=mv;01Qkk<n7DwX
z8WUZ(HPwaD#E-agLt2*@HJG|lz=~}QHmyU0P6-qWu}QJenhG7Jks>l5k9qfA7jNb<
zACKB@Jjuy@_fGQr-*e8r=MMaj)(5CZ^pAjD4=bSN=jT->lTrU=x~{8*g$32y+pB;$
zPy=Xo(9%Vf$z<?&JP);-L?VIL>&5AG5{X0rJb+$^%rZym<Uw$ylr>5z(RH0rC`3a;
z0|NsC09n9Y8HuBcWCNB`BBdxB@84g;?RFCk25E0^r@y}+AX6!_qd+yd)CK8u8kfrj
zKsX#G8jUhII0*0!;3|qdW(PK1q7;SET+=jjL@Bnm@`OSmyS;S*?*JbId99qS5W=Ve
zV+m;H8VV^SsZ@$|dXqnwmr34Da_!n2>3{Aq@cGvOdw}(-2&AkAD-=p9G>3+g=9*NJ
z8dnX5;i9RjiMnu@P$<Za>oY}^e@B5zaPeCcnz^PFLI}Jb4<5H0!!QtrARMmac1=wY
zwac~!QV4eY{MLM9W4)vX+ID0mMK=tCV9<{cd88C&yy7W31P}-Wn4X@->2z}Q_Zv8!
zPNt@&XlQtX#>RatE-qGq^Z6~5GUvfS0I%0;D=?Evr8sluD>{#N(H3oHJbr<;Xfxg2
zJ-qks+e9LVX>EO`>c~`@-?zJLZl!4S`(ZXWH~93_C)ST09naF!)6Hsfh1!r0Fmtbz
z!Z7mIT~Sg}s2F006vbY9{S5+s9{^)NT_hflqi+dTlPhGhSuRgZ^4-WVhLJ}I!xWOz
z6qN!YOfT<5rhot@JD!UH5Rb=6rS6fqGR@GpL+n3rkZd+bYx6N)e&tmTN1j9qfl|@}
zZ(q&|dND<7YkxTszmBt-yo<giSX#Qp>S~HWFu?PjFYw3hC35>3sjsi&?C2Q6rhTZA
zHd2+M+S<MP=~JfxIC}Ic!jISD^ZR(~<Vo~gj^&jkckV1RdhP-ahr`-+5lr!0DJp|-
zU|xvkAIC1Sr*<#d^xu5&;rq<a&eGZ0!4IP&09>A!<jXHU<LdO4?ZOtIqL8v;53@T(
zm(HIXA-%cD{sRY@OiVDDm>`qQ0+7>nTAPp2+joNB=4T40ru>aiQ0TnMR)FJOFVffh
z5<|mhX^XaS<Vb|Mx$FEq{tK~K3pW>UAq<1@i{}eq&B}KXDwSmF>I`;v2=hg<9`v?Y
z%cK4QDD^jidMJP19GD$20L-v`N1nFb(t|ArtOL1!0e$btdY{WRuK)l507*qoM6N<$
Ef+K?8*#H0l
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6256c79de7ea3ab99f46d46110215d83336ab9db
GIT binary patch
literal 1280
zc$@(M1^@bqP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS000EHNkl<ZNQtGEZA{fw7{Gt`fA8hq3tU755kp$DxnfNPOM4p*U5IWut65D)
z_K888TVd;iIA5Ah%ekhTn{%u&?E`*tSu?^Vk*ld7Fl-WL1T)}Xh&R3WfB$dioIb$4
zfPq;(+q0eLe_np)dCqgr^LO$8MNDhEAMDir!-7kJdy~2fup7R;r~&q*9q(H@9k3Np
zkEnNc?%Wxys(L>Nw3L<<`}+Rqp|qsf2eceHd>{x60BwNFH3?8xIwSP!<FwSBWcQY0
zG`AZiB~sTxbHk*ax9N4hyWGIY$S~p1K*Fu@@iBZpKjBb6SFhcmzM(M!%=g3x7%D>V
zZ#@hRjxc`p3Pi_1f@4|W3m{`LtUwB%Z{NbYqV=3SbsT_(OPBE_xp_MO8OBEY(PJ^{
z8yW%L0K5r+QZA&B_<ept5rNxI0;#~|#bqm$H-**vjsdWtq!@svrX~glhv@6;<JPS%
zDl5xrZM{KhNip>ejkQ2h0^mrA@<>vGZr1EQIP2-U4t>U_pByGXe;MJ>0H!7A?*5%{
zc#yPtX>8cInckjmj3tlp?mKVg)SfvvoX8?KAWiv@<e8A_J$pHE`~(0iSFRu{GlSG%
zDj)9Jg=rY{^@q57w~yL0=Y|34nVPClYNFNF)`p53)1<k%na<8m%FD~CsH~v3r<?r;
z_OY_yIYvi@`TDE#0P!=}0eqjxqHj6|Xm0(P-Ya#~)YQ!BL0VcG=jzT7jYNn<?$g`T
z4S*ht0Wc66WN7eD>KhuPKz70dX-I@7Nl#Dz$1oi{bd<;Q7W3tWixj=QhULri>FBt{
z<sYuHzWBws2LL1hrUp`qhlU8??Afzy+qRAN_I6I6K223s6_#yty}6z8-A6g~@dxpt
z8)pDCuOi6>dMHFeLBX86FDxu18jU9Gs;VkFZvKK0g6zB}dG+lbod2Q*pmzqq5(>j|
z@U2=)b#*nSY5r|-!%=t;csx_NQC3!luInVFW#QIbgrhU(O<gowVVZ(qdM;W<9;uoO
zM@WQJD5dbYHIhu5V6ra}K26iG9YKyiiI{2QacelHGdn=DK_VHsr=w{a?e(>|aFaei
zgY?XW2q6%{Mhb}(4hn^Bn1l_1935iq)(W1;Spd?S!vil!AwUVbnlA9>#v)2LZN}sA
z;148Ej8Tec<UV8LqgY0aj`mhAHQy$hv4T5yx+q+ckCgW808lu>0V&ZV5!S!50e`^H
z{(XBG8Vmz)_{cFvMusqBIz~+A+2>!P?&41*FUiJs3<4g7FlGW0PlZ&V6eLa7B!3{8
zz~s*361jg5+nNYL#)2$@scHBF0phpSH%s}Ndh8s5lmaOvModQvfo(eshC@g>@kUve
zffNoYsX-PlT8!VHjN{n2m4y^8!ZC%<HOCp;{P7ZAyhI&|ZJES$9bMNEj!0yUX~dYH
zkx5o|4nChB(=?D$V3`(PsgP2kgqRhu`sBfnuCIG-JHhk}a+faSM$0vFb8~sGvVzQo
zivUPTO(PhbhsWb(Y;>4kZ+BrD2C29amVu>7R3c!g2SG3J=yiEkeX6i1-Yx?c0f9Kq
q#Y9O+o>cF&@Bda56Mq;{Aodq>4PBTT>V=R10000<MNUMnLSTYn)mjJu
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..ca9b8037c5bf777b166b8871baa6d4eceea1d208
GIT binary patch
literal 2953
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
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..c3aea0fd2167025c241a730820b97b6fed473a48
GIT binary patch
literal 540
zc$@(o0^|LOP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS0005gNkl<ZNQu>zziSjh6vscau1JDi<_}0^BMBBMf<=tjED3gkT<#!*G@=$M
z)1<Po3>Zx%LAc~P8%dZ(0x3cWdt5LFg0)v1%rz=T$z`9#a)V2<dvg+teBr_D+xOmg
z-mhJ_>QDvm<TBy~Mb;v6PA<~7+wI&KVZSSNIvsb`S|dAiD5bF0I(?(j$n`JG;BRQH
zk)=tvc>~!lp|$q%^CHk%Bb9M@cnd-WBg4q<ycbE|67{h8^&7m{qx|v#>uZOcohDv>
zUIe{*Ypp3K@U(i2wU*NB{=VKl=t13mJCMC2c=h-;vO8aBY^`;Y2dRuxogO_;aP4{k
zLm{$V8t8_Z;7gORa3`Zv0J6WBQY8Xifgit7Gg~4enLWru9LGdagzPOSLIr_>BrRtE
z>0xvEBb;>M{b$t7*1x6j{TBp^^|eFSt89}uj!>%yx&B&fCl^7@*5IV;J;EX)Vy$%o
zi0m&4kkK1sgq)9~_a@h#-Q!JV3<9W5k76E8T<#`6e=-3>AtXY1WePTqsCf8!WnisE
z-G2w2pXro+_=2i_D%^*G2pq|5Egj+21FzuFr$nt*i)ORwo{cf6D8d*+9LG*yuh(;9
e{P$nx)yE&A!`u!OhIU;50000<MNUMnLSTYL#_`Jl
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f4173213e7bb875503324c355058fd4b4ab401fe
GIT binary patch
literal 514
zc$@(O0{#7oP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS0005GNkl<ZNQuprze*fY6vlsdTnS3L+y}4<1W_y{l_6b%O&VD<D6%i$JJ?tT
z%%3VqU`-xClx>2NLL{)P$W~SsTP=4R6*aidmtuBJhM95iXoP%li+kof=R2G^=N|aq
zpuI{Ve#w`(HaE`DZ~y^RXT|^scaI198D9bIEW$_$BEdx$)(<e%!-0N*uYh^+1v=-@
z6>J`P1-}!tJzt3bcZu|GQ;B0IN+jvtr`2jDR8n2k>2&UucC*<`+;e}jwH9mbz<`5z
znF7{Y6i(js`)yd88%H~fxgse6Yb{!yhNY=nGwj=kh65NWp{;TzFV#ibo`=VepkyF0
z5P^CA8RuL&k-bWsVx)LJ&VFHDea(s;3rG?mZIz|{iav%D>Ius^mpFZUb!JTZz9216
z3s9|A>wn8Gk#i37`WswyxxR{U&ZV;N^KR_x2bg#JnY_%$&N+wa)wBE|i}45H?lED{
zCkwf+X`Vw-UP7SVZqsNqyaMN;Uau$a5B?T;?*ky7k2lZY^fGP)4|wkbg_AJ*G@g$q
zqwxarfcMJWXq~{y58kf6<kS0~Twg`LuEkJv=|4Dr1OG7QtyNc)ApigX07*qoM6N<$
Ef_^RJPyhe`
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4dd17afd71621d9d9ae29e11f438be8f7d322ed2
GIT binary patch
literal 352
zc$@)X0iXVfP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS0003ONkl<ZNQv#1u}T9$5Qe`!Peifv1*~iYYfFQ*wHN~_@&dktO?m}O5#kdB
z(?%>(2*-(BWo2>I!8I0InB=$hG?1AyV&e}BJFxTrGdnZv27J(`eXux0P60IPxX#B`
z-m}APmX;%kptrXPpw{g(%*n)*CLj&luo}Zu@HU3a2SV?0E{FAsLTFq;`3hq}|H(vN
z2hyM^s>NP7T;yL<Tx4VcX4F8^k5-=N6~38mT9#$)u(K?y*zQ5|;$PtJ1-^ArQ52+U
zTAMIQl8XK7gH{KwAiOn@22GcUM?gB+h4mG5b7U5=3P`OTIM{+Xz{VOHwoM||CzI>^
y1y1ic?(TDOe$V86YISu%8g*O`j<=QE-<A&^)Pt9m!T<IE0000<MNUMnLSTYy<(0Jn
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..8aa4f67c08aa358c17cafc37fc3aeed8e8aa2bda
GIT binary patch
literal 369
zc$@)o0gnEOP)<h;3K|Lk000e1NJLTq000;O000;W1^@s6;CDUv00004b3#c}2nYxW
zd<bNS0003fNkl<ZNQv#0y-LJT5Ju0$hzLG}y&#s7$}+4EAc`R33t0LXf`V1B(Y3SF
zPV7V^Ar=9jAVrF;6jm{2EMj5;8*kjOg^M4gxO4BEZ!+8;_?JOqnAffx%ap0AjbD-^
zMrXTCd4s`VWIPN*W3KTJx@x)%l=i#kC)GHm!O_MNdb<PNOjNg*Ia^yS16JWUGi$-T
zjb3ezYofZp3cD-i7*GLJ@Ah)5Od(Zxc|&^ruPklcroQjvx^BMidJ7ijz!tCsG7!hh
zTO^Lh`N0hgQ@DI8;HFbvl}N7-&#zz!C&v$n;{kcyQo>Fjk;D7n!oN+{FJPGR@tze7
zse+2W*J3SO)X1q`72{MrN;S@Oo#ctgcwNVFOcX^U=Yk+G8ch5}`}_I?Olfr(jx5iN
P00000NkvXXu0mjf>*byn
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..dcf5a3c7bd5eb6a250684a4b5045626509b9b520
GIT binary patch
literal 246
zc%17D@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjEX7WqAsj$Z!;#Vf<gfK~aSZY3
zd^^RF>#%}=>-?qV1&@7;k3Bf1e8%mdu}?Usqw?G(OD<esZ)*Cp`~}Y)zEIW+#?GOF
zf~$}Bb?8j$dw!31PBFukDBtCtnrn*%6<ao}lV8@toRd18BkEt%_LBV>3#T~sTof@n
zzd1I*i}65pK9{}HZ@&3kxE5rK9(E54{d}WsTdP@3ip6!UsJi`pc^VO1Z*_7P?mTFB
s)>1x8^s>p@XS}S-p3DopSGtFx=hY@=|72G$pu-tFUHx3vIVCg!0JFSZ;{X5v
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..7522d1f29411a7417d909a80304bb71f52664067
GIT binary patch
literal 196
zc%17D@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjEX7WqAsj$Z!;#Vf<X3yTIEHw1
zzMbO8)u15Yy8qHz+r>LRa-2KVn!X`aEbU`&lh|hmmdao0EUZ)R2W01dzIwv)^0_w4
zv<X{hNM8RIyJ70acbD9!1+^`05%A0I$!<T^ozcLS;qZNuD~sW=g)jCV7ykbFe4hQ@
sP1Vmb!c~+Q8m3&zeSOaIRA5HfznjxOM4Vh@4Ri*Br>mdKI;Vst0MUd`TmS$7
--- a/src/Makefile
+++ b/src/Makefile
@@ -1199,10 +1199,10 @@ NONE_INSTALL = install_normal
 
 ### GTK GUI
 GTK_SRC		= gui.c gui_gtk.c gui_gtk_x11.c pty.c gui_gtk_f.c \
-			gui_beval.c
+			gui_beval.c $(GRESOURCE_SRC)
 GTK_OBJ		= objects/gui.o objects/gui_gtk.o objects/gui_gtk_x11.o \
 			objects/pty.o objects/gui_gtk_f.o \
-			objects/gui_beval.o
+			objects/gui_beval.o $(GRESOURCE_OBJ)
 GTK_DEFS	= -DFEAT_GUI_GTK $(NARROW_PROTO)
 GTK_IPATH	= $(GUI_INC_LOC)
 GTK_LIBS_DIR	= $(GUI_LIB_LOC)
@@ -1527,7 +1527,8 @@ TAGS_SRC = *.c *.cpp if_perl.xs
 
 EXTRA_SRC = hangulin.c if_lua.c if_mzsch.c auto/if_perl.c if_perlsfio.c \
 	    if_python.c if_python3.c if_tcl.c if_ruby.c if_sniff.c \
-	    gui_beval.c workshop.c wsdebug.c integration.c netbeans.c
+	    gui_beval.c workshop.c wsdebug.c integration.c netbeans.c \
+	    $(GRESOURCE_SRC)
 
 # Unittest files
 MEMFILE_TEST_SRC = memfile_test.c
@@ -1869,6 +1870,9 @@ os_vms.pro: os_vms.c
 if_perl.pro: auto/if_perl.c
 	$(CPROTO) -DFEAT_GUI auto/if_perl.c | sed "/_VI/d" > proto/$@
 
+gui_gtk_gresources.pro: auto/gui_gtk_gresources.c
+	$(CPROTO) -DFEAT_GUI $< > proto/$@
+	echo "/* vim: set ft=c : */" >> proto/$@
 
 notags:
 	-rm -f tags
@@ -2441,7 +2445,7 @@ uninstall_runtime:
 # We support common typing mistakes for Juergen! :-)
 clean celan: testclean
 	-rm -f *.o objects/* core $(VIMTARGET).core $(VIMTARGET) vim xxd/*.o
-	-rm -f $(TOOLS) auto/osdef.h auto/pathdef.c auto/if_perl.c
+	-rm -f $(TOOLS) auto/osdef.h auto/pathdef.c auto/if_perl.c auto/gui_gtk_gresources.c auto/gui_gtk_gresources.h
 	-rm -f conftest* *~ auto/link.sed
 	-rm -f $(UNITTEST_TARGETS)
 	-rm -f runtime pixmaps
@@ -2578,6 +2582,11 @@ auto/pathdef.c: Makefile auto/config.mk
 	-@echo '";' >> $@
 	-@sh $(srcdir)/pathdef.sh
 
+auto/gui_gtk_gresources.c: gui_gtk_gresources.xml
+	$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register $<
+auto/gui_gtk_gresources.h: gui_gtk_gresources.xml
+	$(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=../pixmaps --generate --c-name=gui_gtk --manual-register $<
+
 # All the object files are put in the "objects" directory.  Since not all make
 # commands understand putting object files in another directory, it must be
 # specified for each file separately.
@@ -2663,6 +2672,9 @@ objects/gui_gtk.o: gui_gtk.c
 objects/gui_gtk_f.o: gui_gtk_f.c
 	$(CCC) -o $@ gui_gtk_f.c
 
+objects/gui_gtk_gresources.o: auto/gui_gtk_gresources.c
+	$(CCC) $(PERL_CFLAGS) -o $@ auto/gui_gtk_gresources.c
+
 objects/gui_gtk_x11.o: gui_gtk_x11.c
 	$(CCC) -o $@ gui_gtk_x11.c
 
@@ -3145,6 +3157,16 @@ objects/gui_gtk_f.o: gui_gtk_f.c vim.h a
  auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
  regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
  globals.h farsi.h arabic.h gui_gtk_f.h
+objects/gui_gtk_gresources.o: auto/gui_gtk_gresources.c gui_gtk_gresources.xml \
+ ../pixmaps/stock_vim_build_tags.png ../pixmaps/stock_vim_find_help.png \
+ ../pixmaps/stock_vim_save_all.png ../pixmaps/stock_vim_session_load.png \
+ ../pixmaps/stock_vim_session_new.png ../pixmaps/stock_vim_session_save.png \
+ ../pixmaps/stock_vim_shell.png ../pixmaps/stock_vim_window_maximize.png \
+ ../pixmaps/stock_vim_window_maximize_width.png \
+ ../pixmaps/stock_vim_window_minimize.png \
+ ../pixmaps/stock_vim_window_minimize_width.png \
+ ../pixmaps/stock_vim_window_split.png \
+ ../pixmaps/stock_vim_window_split_vertical.png
 objects/gui_motif.o: gui_motif.c vim.h auto/config.h feature.h os_unix.h \
  auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
  regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
@@ -3197,7 +3219,7 @@ objects/gui_gtk_x11.o: gui_gtk_x11.c vim
  auto/osdef.h ascii.h keymap.h term.h macros.h option.h structs.h \
  regexp.h gui.h gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h \
  globals.h farsi.h arabic.h gui_gtk_f.h ../runtime/vim32x32.xpm \
- ../runtime/vim16x16.xpm ../runtime/vim48x48.xpm
+ ../runtime/vim16x16.xpm ../runtime/vim48x48.xpm $(GRESOURCE_HDR)
 objects/gui_x11.o: gui_x11.c vim.h auto/config.h feature.h os_unix.h auto/osdef.h \
  ascii.h keymap.h term.h macros.h option.h structs.h regexp.h gui.h \
  gui_beval.h proto/gui_beval.pro ex_cmds.h proto.h globals.h farsi.h \
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -636,6 +636,10 @@ GUI_LIB_LOC
 GUI_INC_LOC
 NARROW_PROTO
 MOTIF_LIBNAME
+GRESOURCE_OBJ
+GRESOURCE_SRC
+GRESOURCE_HDR
+GLIB_COMPILE_RESOURCES
 GNOME_INCLUDEDIR
 GNOME_LIBDIR
 GNOME_LIBS
@@ -8907,6 +8911,86 @@ fi
   fi
 fi
 
+if test "x$GUITYPE" = "xGTK"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking version of Gdk-Pixbuf" >&5
+$as_echo_n "checking version of Gdk-Pixbuf... " >&6; }
+  gdk_pixbuf_version=`$PKG_CONFIG --modversion gdk-pixbuf-2.0`
+  if test "x$gdk_pixbuf_version" != x ; then
+    gdk_pixbuf_version_minor=`echo $gdk_pixbuf_version | \
+      sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\)\.[0-9][0-9]*/\1/'`
+    if test "x$gdk_pixbuf_version_minor" != x -a \
+      $gdk_pixbuf_version_minor -ge 32 ; then
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: OK." >&5
+$as_echo "OK." >&6; }
+      # Extract the first word of "glib-compile-resources", so it can be a program name with args.
+set dummy glib-compile-resources; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_GLIB_COMPILE_RESOURCES+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $GLIB_COMPILE_RESOURCES in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_GLIB_COMPILE_RESOURCES="$GLIB_COMPILE_RESOURCES" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_GLIB_COMPILE_RESOURCES="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  test -z "$ac_cv_path_GLIB_COMPILE_RESOURCES" && ac_cv_path_GLIB_COMPILE_RESOURCES="no"
+  ;;
+esac
+fi
+GLIB_COMPILE_RESOURCES=$ac_cv_path_GLIB_COMPILE_RESOURCES
+if test -n "$GLIB_COMPILE_RESOURCES"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_COMPILE_RESOURCES" >&5
+$as_echo "$GLIB_COMPILE_RESOURCES" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
+      { $as_echo "$as_me:${as_lineno-$LINENO}: checking glib-compile-resources" >&5
+$as_echo_n "checking glib-compile-resources... " >&6; }
+      if test "x$GLIB_COMPILE_RESOURCES" = xno ; then
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot be found in PATH." >&5
+$as_echo "cannot be found in PATH." >&6; }
+      else
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: usable." >&5
+$as_echo "usable." >&6; }
+        $as_echo "#define USE_GRESOURCE 1" >>confdefs.h
+
+        GRESOURCE_HDR="auto/gui_gtk_gresources.h"
+        GRESOURCE_SRC="auto/gui_gtk_gresources.c"
+        GRESOURCE_OBJ="objects/gui_gtk_gresources.o"
+      fi
+    else
+      { $as_echo "$as_me:${as_lineno-$LINENO}: result: not usable." >&5
+$as_echo "not usable." >&6; }
+    fi
+  else
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot obtain from pkg_config." >&5
+$as_echo "cannot obtain from pkg_config." >&6; }
+  fi
+fi
+
+
+
+
+
 
 if test -z "$SKIP_MOTIF"; then
   gui_XXX="/usr/XXX/Motif* /usr/Motif*/XXX /usr/XXX /usr/shlib /usr/X11*/XXX /usr/XXX/X11* /usr/dt/XXX /local/Motif*/XXX /local/XXX/Motif* /usr/local/Motif*/XXX /usr/local/XXX/Motif* /usr/local/XXX /usr/local/X11*/XXX /usr/local/LessTif/Motif*/XXX $MOTIFHOME/XXX"
--- a/src/config.h.in
+++ b/src/config.h.in
@@ -452,3 +452,6 @@
 
 /* Define if Xutf8SetWMProperties() is in an X library. */
 #undef HAVE_XUTF8SETWMPROPERTIES
+
+/* Define if GResource is used to load icons */
+#undef USE_GRESOURCE
--- a/src/config.mk.in
+++ b/src/config.mk.in
@@ -158,6 +158,11 @@ GUI_X_LIBS	= @GUI_X_LIBS@
 MOTIF_LIBNAME	= @MOTIF_LIBNAME@
 GTK_LIBNAME	= @GTK_LIBNAME@
 
+GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@
+GRESOURCE_HDR = @GRESOURCE_HDR@
+GRESOURCE_SRC = @GRESOURCE_SRC@
+GRESOURCE_OBJ = @GRESOURCE_OBJ@
+
 ### Any OS dependent extra source and object file
 OS_EXTRA_SRC	= @OS_EXTRA_SRC@
 OS_EXTRA_OBJ	= @OS_EXTRA_OBJ@
--- a/src/configure.in
+++ b/src/configure.in
@@ -2500,6 +2500,40 @@ if test -z "$SKIP_GTK2"; then
   fi
 fi
 
+dnl Check the version of Gdk-Pixbuf.  If the version is 2.32 or later and
+dnl glib-compile-resources is found in PATH, use GResource.
+if test "x$GUITYPE" = "xGTK"; then
+  AC_MSG_CHECKING([version of Gdk-Pixbuf])
+  gdk_pixbuf_version=`$PKG_CONFIG --modversion gdk-pixbuf-2.0`
+  if test "x$gdk_pixbuf_version" != x ; then
+    gdk_pixbuf_version_minor=`echo $gdk_pixbuf_version | \
+      sed -e 's/[[0-9]][[0-9]]*\.\([[0-9]][[0-9]]*\)\.[[0-9]][[0-9]]*/\1/'`
+    if test "x$gdk_pixbuf_version_minor" != x -a \
+      $gdk_pixbuf_version_minor -ge 32 ; then
+      AC_MSG_RESULT([OK.])
+      AC_PATH_PROG(GLIB_COMPILE_RESOURCES,[glib-compile-resources],no)
+      AC_MSG_CHECKING([glib-compile-resources])
+      if test "x$GLIB_COMPILE_RESOURCES" = xno ; then
+        AC_MSG_RESULT([cannot be found in PATH.])
+      else
+	AC_MSG_RESULT([usable.])
+        AC_DEFINE(USE_GRESOURCE)
+        GRESOURCE_HDR="auto/gui_gtk_gresources.h"
+        GRESOURCE_SRC="auto/gui_gtk_gresources.c"
+        GRESOURCE_OBJ="objects/gui_gtk_gresources.o"
+      fi
+    else
+      AC_MSG_RESULT([not usable.])
+    fi
+  else
+    AC_MSG_RESULT([cannot obtain from pkg_config.])
+  fi
+fi
+AC_SUBST(GLIB_COMPILE_RESOURCES)
+AC_SUBST(GRESOURCE_HDR)
+AC_SUBST(GRESOURCE_SRC)
+AC_SUBST(GRESOURCE_OBJ)
+
 dnl Check for Motif include files location.
 dnl The LAST one found is used, this makes the highest version to be used,
 dnl e.g. when Motif1.2 and Motif2.0 are both present.
--- a/src/gui_gtk.c
+++ b/src/gui_gtk.c
@@ -140,6 +140,31 @@ static const char * const menu_stock_ids
     /* 31 */ GTK_STOCK_QUIT
 };
 
+#ifdef USE_GRESOURCE
+typedef struct IconNames {
+    const char *icon_name;
+    const char *file_name;
+} IconNames;
+
+static IconNames stock_vim_icons[] = {
+    { "vim-build-tags", "stock_vim_build_tags.png" },
+    { "vim-find-help", "stock_vim_find_help.png" },
+    { "vim-save-all", "stock_vim_save_all.png" },
+    { "vim-session-load", "stock_vim_session_load.png" },
+    { "vim-session-new", "stock_vim_session_new.png" },
+    { "vim-session-save", "stock_vim_session_save.png" },
+    { "vim-shell", "stock_vim_shell.png" },
+    { "vim-window-maximize", "stock_vim_window_maximize.png" },
+    { "vim-window-maximize-width", "stock_vim_window_maximize_width.png" },
+    { "vim-window-minimize", "stock_vim_window_minimize.png" },
+    { "vim-window-minimize-width", "stock_vim_window_minimize_width.png" },
+    { "vim-window-split", "stock_vim_window_split.png" },
+    { "vim-window-split-vertical", "stock_vim_window_split_vertical.png" },
+    { NULL, NULL }
+};
+#endif
+
+#ifndef USE_GRESOURCE
     static void
 add_stock_icon(GtkIconFactory	*factory,
 	       const char	*stock_id,
@@ -157,6 +182,7 @@ add_stock_icon(GtkIconFactory	*factory,
     gtk_icon_set_unref(icon_set);
     g_object_unref(pixbuf);
 }
+#endif
 
     static int
 lookup_menu_iconfile(char_u *iconfile, char_u *dest)
@@ -262,11 +288,12 @@ toolbar_button_focus_in_event(GtkWidget 
     void
 gui_gtk_register_stock_icons(void)
 {
-#   include "../pixmaps/stock_icons.h"
+#ifndef USE_GRESOURCE
+# include "../pixmaps/stock_icons.h"
     GtkIconFactory *factory;
 
     factory = gtk_icon_factory_new();
-#   define ADD_ICON(Name, Data) add_stock_icon(factory, Name, Data, (int)sizeof(Data))
+# define ADD_ICON(Name, Data) add_stock_icon(factory, Name, Data, (int)sizeof(Data))
 
     ADD_ICON("vim-build-tags",		  stock_vim_build_tags);
     ADD_ICON("vim-find-help",		  stock_vim_find_help);
@@ -282,7 +309,28 @@ gui_gtk_register_stock_icons(void)
     ADD_ICON("vim-window-split",	  stock_vim_window_split);
     ADD_ICON("vim-window-split-vertical", stock_vim_window_split_vertical);
 
-#   undef ADD_ICON
+# undef ADD_ICON
+#else
+    GtkIconFactory * const factory = gtk_icon_factory_new();
+    const char * const path_prefix = "/org/vim/gui/icon";
+    IconNames *names;
+
+    for (names = stock_vim_icons; names->icon_name != NULL; names++)
+    {
+        char path[MAXPATHL];
+        GdkPixbuf *pixbuf;
+
+        vim_snprintf(path, MAXPATHL, "%s/%s", path_prefix, names->file_name);
+        pixbuf = gdk_pixbuf_new_from_resource(path, NULL);
+        if (pixbuf != NULL)
+        {
+            GtkIconSet *icon_set = gtk_icon_set_new_from_pixbuf(pixbuf);
+            gtk_icon_factory_add(factory, names->icon_name, icon_set);
+            gtk_icon_set_unref(icon_set);
+            g_object_unref(pixbuf);
+        }
+    }
+#endif
     gtk_icon_factory_add_default(factory);
     g_object_unref(factory);
 }
new file mode 100644
--- /dev/null
+++ b/src/gui_gtk_gresources.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+    <gresource prefix="/org/vim/gui/icon">
+        <file>stock_vim_build_tags.png</file>
+        <file>stock_vim_find_help.png</file>
+        <file>stock_vim_save_all.png</file>
+        <file>stock_vim_session_load.png</file>
+        <file>stock_vim_session_new.png</file>
+        <file>stock_vim_session_save.png</file>
+        <file>stock_vim_shell.png</file>
+        <file>stock_vim_window_maximize.png</file>
+        <file>stock_vim_window_maximize_width.png</file>
+        <file>stock_vim_window_minimize.png</file>
+        <file>stock_vim_window_minimize_width.png</file>
+        <file>stock_vim_window_split.png</file>
+        <file>stock_vim_window_split_vertical.png</file>
+    </gresource>
+</gresources>
--- a/src/gui_gtk_x11.c
+++ b/src/gui_gtk_x11.c
@@ -22,6 +22,9 @@
  */
 
 #include "vim.h"
+#ifdef USE_GRESOURCE
+#include "auto/gui_gtk_gresources.h"
+#endif
 
 #ifdef FEAT_GUI_GNOME
 /* Gnome redefines _() and N_().  Grrr... */
@@ -1434,6 +1437,9 @@ gui_mch_early_init_check(void)
 	EMSG(_((char *)e_opendisp));
 	return FAIL;
     }
+#ifdef USE_GRESOURCE
+    gui_gtk_register_resource();
+#endif
     return OK;
 }
 
@@ -3620,6 +3626,9 @@ mainwin_destroy_cb(GtkObject *object UNU
 		IOSIZE - 1);
 	preserve_exit();
     }
+#ifdef USE_GRESOURCE
+    gui_gtk_unregister_resource();
+#endif
 }
 
 
new file mode 100644
--- /dev/null
+++ b/src/proto/gui_gtk_gresources.pro
@@ -0,0 +1,5 @@
+/* auto/gui_gtk_gresources.c */
+GResource *gui_gtk_get_resource __ARGS((void));
+void gui_gtk_register_resource __ARGS((void));
+void gui_gtk_unregister_resource __ARGS((void));
+/* vim: set ft=c : */
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    995,
+/**/
     994,
 /**/
     993,