kbrown / rpms / libreoffice

Forked from rpms/libreoffice 2 years ago
Clone

Blame SOURCES/0210-sd-tiled-rendering-let-find-all-at-least-select-the-.patch

f325b2
From a264af1921169c7e1174a8c0d0e3dfb069ac3132 Mon Sep 17 00:00:00 2001
f325b2
From: Miklos Vajna <vmiklos@collabora.co.uk>
f325b2
Date: Thu, 15 Oct 2015 15:20:23 +0200
f325b2
Subject: [PATCH 210/398] sd tiled rendering: let find-all at least select the
f325b2
 first match physically
f325b2
f325b2
The LOK API can describe a multi-selection, so find-all can signal all
f325b2
matches, editeng can have a single selection only. Instead of having no
f325b2
selections after a find-all, select the first match, so e.g. copy works.
f325b2
f325b2
Change-Id: I0eab2565916f0c3cce5d77279c0d927ad4b7054c
f325b2
(cherry picked from commit cd4976988cf3acb4f1a23f1df7fcc2bfec0f3da0)
f325b2
---
f325b2
 sd/qa/unit/tiledrendering/data/search-all.odp | Bin 0 -> 10744 bytes
f325b2
 sd/qa/unit/tiledrendering/tiledrendering.cxx  |  19 +++++++++++++++++--
f325b2
 sd/source/ui/view/Outliner.cxx                |  13 ++++++++++++-
f325b2
 3 files changed, 29 insertions(+), 3 deletions(-)
f325b2
 create mode 100644 sd/qa/unit/tiledrendering/data/search-all.odp
f325b2
f325b2
diff --git a/sd/qa/unit/tiledrendering/data/search-all.odp b/sd/qa/unit/tiledrendering/data/search-all.odp
f325b2
new file mode 100644
f325b2
index 0000000000000000000000000000000000000000..cb3cb31cf5c7d5d4025a0025871ad1314c598cdf
f325b2
GIT binary patch
f325b2
literal 10744
f325b2
zcmb7K1wb50mmb`PKyY^n?j%469%OLW1a}`G1P`vk-91>a;O@bl;2PY+AVCkZx0mex
f325b2
z*}c0r(^b`7^}g=1ue<6!c@PXN765<<0C-u*iF42te_#Os01wCgC4iNgm65|+TO&PN
f325b2
zTT3$oJqI%zYZfPKLuMO2uo;-y#@5K%(8j>g%E;P*+1B0&d>{WPBmWmrx10Kza99A~
f325b2
z;lR5GRW^0B(zn(#vjnp^{F!97wKfTomla1vCP2O~f+{H?st5o;-6sL9h%oozJco?(
f325b2
zePk>ztt
f325b2
ztE-QXPe@2ebaZr5Qc_k{R$*abMMXt@eSLd-dw+lb#Kgq>{QTP5+QGpA1OmCey}iHB
f325b2
z-QAsBnZpbK0P|H+R7lx*c7J{*E{hk>Ur!7UW8<y#?Nv)Zai{%<se>0=Dz0=aMZv*%
f325b2
zbk5i8TS871$5sgU2>&6iceQ@|I8Zw~nvf(pgtDpX)Y$UGd6@C)O1>NpO7^M+d|m6y
f325b2
zaCiyj4`_NM{#UXDa%QDb4u^hGq@O&Kx
f325b2
zIgM?njc6$0`0G^A+lt2F?uoR=EfL?Gw_&v3u
f325b2
zLCK#iHZANYd9Bv+0~QV!(9uhgw$2XnqTRHRSYOR|_I|{{o>2X+vU5rZz?(O
f325b2
zo(hzlmwKGcCR@U^Hc>t?zHasc
f325b2
zcslleaw878li+fYtNy>rCf!
f325b2
zMT
f325b2
z$e@5e|8wPjBq=B8MbHRB-)G;SJYP
f325b2
zNR`li+IeEsL=}{-Jk)PQ`mB&H_>o@BLK=PdIcx&jL3_aTLJUZd(4-qGVS
f325b2
z`%@kTb1_gdP5D55y;Nf~HGzUIw=`!bAiLTINuGLlNmo%MKaW1iy(o?vGe6pDV*aYX
f325b2
zg`tm!dEX50#{OvYBv{H?DOEIA5=
f325b2
z;{0q2LNk^6%Nkf`qeO%;5}htvw_({bg?^7`FjS{wG-q}W)`YY{^X_o{?%T!vQEcjf
f325b2
zU_LL^#yl(6?M6?uBLk$e{Pt;z=P(nIz}ZtMg*uuH={W!8zMh$#&f2Ee)l%IzTu^$n
f325b2
z?v!oI1bq$MP>JJY1I1fB_|zz;tQO_w8cZNs?(s`EEfu^sEAn-(S|T~6PkAq?n+Q>q
f325b2
zIiJ>HRTXjEpaV$#AKLj|ybd3Fgb+@b9tZ$HpdNZ80Xh1f4B#by
f325b2
zbZG)Y1OQ+PeP8sCJ_TIp0u18Q=ZtTawMn%-!V*eFHZ
f325b2
z+3nF%wj}LaUHgMMegXgIWNU!U9n>><;%q=YdCx;JNikW`kHWg%e~=g=BH|Bb{1xB_
f325b2
zGa5PQF*{pXhAGR0C$pkAovV>mtFdlSLWPvY7v`5}7HAaId@h%nYS5*equOpMWs8WS
f325b2
zDWs51duy}tb|dlI_j&HcNV>t?=?m6Sw{Rp1I^2M;yZRe~ueadSf*8j^BoXDPW}|jk
f325b2
zCXVS!<;>B9*^4F&3H?DXj9McCd~d^^PH7
f325b2
zju@1-lfR;Un`4tXQ7}d;0k^{lz#n~JT4*IZ3w}>gF+ZVN!*X7pq^SHWqlF|LOBTZH
f325b2
zGXO3B`z)-`P5ctA#pknjt?;7Nsrz*{AB}_IY)F|nbZwMLv2q8Sa@7Zs%9MKG5yXdN
f325b2
z
f325b2
zRuPS%LZK6^^!!)3q)u4hjn;pT&PmwO=8%#a;WvMu^+a0)aa<*ahB`qH=Jw?h1$UwT
f325b2
zggJJA*ID0bp@*g3H5kJ-x^W|7DMzo~`z|B@D6r|d48OBHq3m
f325b2
zNTq#YFr|6kvAC5^zj=DavWHkPLeS<>yS>PIecdkRxp>p3)}XS(l+hsDo5}h4h@QEE
f325b2
zs&BWL`3#-LLiGzi2m^VSAR6oA6kE=xw28ZYE$<>fA6J3I9W;3m0%D`oJNm=>0hR>|
f325b2
z0Q~bHxgY8Pu#tm
f325b2
zfKs+_bfPL@yE*08#EEYeK6=HQdP(l&lzVtZMVv~g?dFEm*~al?P=PyjR&SCAu$?))
f325b2
zp0oY@Q9~?v(_l9rg($oZ0hP4r3BZh=AT*Qw(kl
f325b2
zEo)Ky-n!E;gqFp-KR=Iyi^j6{z>=FUg_txeskX|c>7d&tUPJ^gDI*~W?ohmz*CcjI
f325b2
zgl8k#T>&RsZIg1f$dpg7yiEN<p~_{I`L>0q1cv!+y~2Qj1fJZCB
f325b2
z*d^1v=IpZQ>}#2-^w-a3O#6Cf@FgLJV4N2Ec|l#PuVim6xwwh5ET4lDnl!_sxeu>+
f325b2
zUe{F
f325b2
zUl1-wn-yMX&%SlExt3~eM~;8d=+!a=R|)9|-i&A}`2HeT&uO=`cj9Fv^)n_5+$u}H
f325b2
zV@bO^Robg^cmZLo)|_zyj!bei54B9~r8SBXn^VCG+rT&@!bSxJS;&jzR@^)q?VWED
f325b2
zdoBFTnWDj0qv^|uAF~3Cq9KtVN2YSW@*Xz_LQtcd0Sh=B+$^KcB`ag3YQZw_4x^&@
f325b2
z0bnNQR%(tBaklW95^*%?xv|{0xwB?fNse5}+D1eQ_9Xn=`DHclhdEPHwWAQZ-e?{y
f325b2
z3TzHqYF>UNL%k~fu$_4hdmElxE8t(>QB8g*K)(h!Ec1bWO1<&)EI`7Go?~8J?IyAP
f325b2
z$R#5sE2|;;coirZ0fJfb#zl53GSIs4_TX9EMW&qHc)z?jj{a((YPbe|<@tL7nl0(X
f325b2
zlvWsKWWQB2c<-x>s|*s`I1fa8uuucT87#cNH?q=h9wy&H=w^d&vq
f325b2
zuUrPa7k8z2vY?N6?5lIYY9DE{>B8GB2vv5|HB7UJD>H=I=wpNLrpRIeFW)B_b%W8C
f325b2
zC54631R)iQ9&Cxw%2J0oqSHBso*GX*;-x-~o|5+*uRvfXtM=-uwEoABnOu;9PDumX
f325b2
znxuOloguo?p{dP5&%L5e^@l(a4BYbPcKJwj>0L1m<~rd8f6s<@>;f{pSbS|Sf
f325b2
z<m|R(W#-oCD#um#eR+pYY1v;o!tLVw#kYm4Kwo!>K%G?IGm)@tOY
f325b2
zqE>u15{k$&2y4X+N7$}2o!V^tOxhvo3Mio(RKQ;R1W0j?69hD+O^^3(sVhrrW#7G(
f325b2
zx$yD1dqin<Obf$wb_$<Vfm9R>bmAmBWq%9Ysa*t{pMG#<7`Lu>y?C!H5+<`%2qQ;(
f325b2
z739s(@NTFlkwoG!Qt^>1SFaO=
f325b2
z$LNqg*X!glr!?lr>85PCnA+@z1)+T&u?8k+0#A{sAFo3Makhd7i*sXhoBIbpLRjvg
f325b2
z#~5xXkXA
f325b2
zKWq}~GvEo>$i~{$kXFz!rmqsucv66(Zf-(hP_mFeZ=0q5j964iUezI(Y2`~GlJ!&#
f325b2
zt(+FSKb#|IJK}~Lj+&RBdkLZmvOs@UBv0o@QPDpjmT1p#K8%bR3YB2mRPDT*&kl12
f325b2
ze2x41tTvwbU43Z7*({PA8nPs+OC0Jo8-xx+sTj>4-B({+*+WZ?@<6hdaLLWC#{FsG
f325b2
z>C*?Yjjw6*=YRtMbg2K0Y#+Wu4Q#9(9u^`$xOUKbjT^oBoDRq|n@k0&_#zNiIh|#y
f325b2
zK!(D|t&yRonPuoir$AOPeE@
f325b2
zG61JH)Auc
f325b2
zN0z-2WcrDjSRuK
f325b2
zY)3}PNm^wiq;JHWc#mI}wjmMq9*0k=f`!3?(x};CVc%)j5+>ld^Asn
f325b2
zH^p2Tt3E-$D$$m|2W(*(OifUj-kwBnBv#+;#>yp;MOnH*gyQ8@N6#9-WZ3s
f325b2
zNM~3QZEywtxXmuFZC@TKYb6syG|w{lYhF(a_#8%h=QSzGBfGBgOjkO~kiv*)x3Wa)
f325b2
z*%*^hu0r~E-^wf;Z;qW;
f325b2
zqVq#HYso&<eSFG%a}^NKW9y^j0Emun<L>npoq2~JiNQOK;
f325b2
zW#qPFpTfaRh|tv$0@z!9N@Qgyb)}S$RFa7lo)s-GPisq_D#Tu%j
f325b2
zu0ZJqL_uIU<y{HAIIWUElPdUu1Q}N@X_lapB1B3c26k2FJ&%G?pn18G1>Cq+jC)s<
f325b2
z3O~21DK?$AS!x|Yv@CN+LMk$%;j=Qv*92qxNj>8WW$P2
f325b2
znGdN_lLl*6McYjtmt0-GQrci!;f7(Gx7ow
f325b2
zB#`|xhP<fx6QaSJzDuZe>FepXSf8m6RiE1DkcPYvB^*<7pIDIFQ;0l)9}dJMc0aJ4
f325b2
z)a`YSutvUMigCR&gB
f325b2
z8QolR!7hYa5>2N4q*pjZygeq}==7%M@R{n`hY0D(;*qIc&Q0Yz>urMdSCtyMMvjy<
f325b2
z;27PaI8KCpqOnICQMzpAI!s@lTu0f)Drb%%W@#bzqI`gJXRW@42~bS&6Bqr8wZD=z
f325b2
zoKyci{hjIl4#+9=!xoJ2R8KXPSyT4vM8+1;>)X?d!m1fvtR~$V&-M#nQaDh%LNmFZ
f325b2
z!JAX7ByHJNFIY7Z-)I4rX?B6du}=l}RIj#Qb6W=LO}7h0rf-v%Jm$I4ua=gCmnG|k
f325b2
zhoGcvUsxr)%34*B(EgD1WQxVS02=uts`7#<9SmAa&}sPO
f325b2
z(|$h39mc)@2?FA(#4dm!_PiRz$vdmw5++YUKR(wrQYj7a+XzwxmY_(L6U9cG6NOgx
f325b2
z4cqsr4j%PgZXUJ}Y=nvdRjNWMg0i><EG2U;7t58z%;*XQQ$JWwrilk#ti90T&>UAm
f325b2
z1X>8eR8(<QtY!|dR@L&BFj%nPygIQT8bfhDdfn#pS*1?Pp!RSz$#>4+NiBhhZF-BO
f325b2
zKaHB9sYf(WrnEcaP}({wvqtScPtwEq%i8A46UenWP{x{5j^*R$5vvU|8#k`tyt`6S
f325b2
zD`~YiRyF5P*-7e^rb})KI(;{(&7(y$wT*LXO{i`iRa)T*sUaTcBiVEqBN}Q8l{1qL
f325b2
z^(H6Tq9QDV$QnpZo=0ijs<~nVdc{oE)*q8KQGKbEYhHa+ZpKqt{FeW|M&2rgWRE-F
f325b2
z#Ww$dIr`F~^!al%<DG^outX&Ka$aG_#FhDG>C8vu@oSRLkDkVg*dK`?tdk57m}k9C
f325b2
z{D8}r|H7l>SjNP4_A;pQh{k>DDU(xA0oMCr|Iv;UPykttfh$O}rYT>)zb4f7(|Vr7
f325b2
z7kml`UJ@`6mc<swW>efSG_`jC=+~O)3QyP?TWUj%z`s*Ne#j|ydDBO{v$%|XaBBQs
f325b2
z;6%2z#`4A@q}6x3ofRqYL#J%P>t>
f325b2
zp3hcS#?47tS`Q1v%-^9rygl9on(xEG0|1c}|MvEH*l_|oytOp?@u9x21B#yG#%Mk)
f325b2
zm8XlHmpINvzz$dHwcb}Pe6FEpnXZJ6BpFEOEvA?qDR+f-Ru*vMc?H5j^M>sTkO-nQ
f325b2
z<8&z0M=|wUAgw19%tmUy+J3u+nx>0Kz9#^5R3Utnaj1*?y(nNMe%MpZxFdb>Zk_lQ
f325b2
zb0o|rvr{$UR*w|cAwM3fgn>ZPNngMUH)In}^hwf{E==~@y#YIb`=}|i((p{SGtzFc
f325b2
z8Tch*&HEMb{3o{D!78|r4LRdZdyA*A4S8X7Ol`{6&7CrY0^(^Eoxwg&p#n#taED30
f325b2
zwY&g+u_GD~&t9<3Kaj=_D2lY6I}4o51M<=7l%ev!T<4|S61pri%_+K+7_rs`CVdk(
f325b2
zGm5+3H-_ry9`VA%ddY>TCn^zGtIU$@NLACj{bjtc+=;)0Ue{@g%(B=d^jRr=-ki3I
f325b2
zw3>AT)N#GOn@P5~V(;zw1^IZ9?Knguh8rOkGb^J!Aw|
f325b2
zXj2jOlHU{mOwoghD85#(V&`!lkW)B69MKOt{X<{Ay-mayb#q~@OsZD#u+02Va4M*D
f325b2
z7qJ-c#mRxTc==w8$$UEBuqYkzcb(T%8i1M%5^9;daZwmf1CQ-UJDp=`Vc#sFf-8lZ
f325b2
zD5epDTeWw~X+kB=nyOG8tVGQePpAtcWw2K0Q~TnacN^S@o_QVdc#&tRv>FU<)RBB0
f325b2
z{dR<;LvxZoA!4m4ID(l*fnD&4Ff>*shb$cr@zI9jZpxQniu;#V^KeVJX{xY^=;}%I
f325b2
zrUVL
f325b2
zgH+Hfn-p!!dBrwjH))K4VGFY$XeGcI=9);%OFy8tn--lSk1%_qIFdO&%sJaPUiV;g
f325b2
z34v4q_`>Q&CG-XG_83GB4)8@y2su*#J~a`lag0EDA8Ps%{5b7J8@9g>ON%Ny6(V!{
f325b2
zph+1Gy?i@J)9zqgTxBC6=7j6})tia^NHLKMY=4-uL(#T&^uuSK6R+>Q(@Fhj1qtzH
f325b2
zTPK`(?4F17(w$(X;(SEi*P^LLiPznw26?ubQ>@X$wh{1%2qj;uLa!$2;!#$pWZa0`
f325b2
z1-1yYzi~+@e$>KI(u=1qGV~SW?JG?VuDx85J#f$_-&m|SO!Fg1xv-~+G#nZ1o?e}J
f325b2
zIsMKIR#})G7NDL_h`BQb%ejr0I6`-q?>G*hZ#Ov
f325b2
zLQwyV9OPo;qchfoOMgu9)c5ln^3<ShkDyawe7&ne>LZE-Z?O$7X!=JKyxo)fxnGq(
f325b2
zdViWjq&M_gSxs#xNh8A#&`K~U?8C&!(Qx-|j&$ij)>qwt@~nbmP=s|?U5=<@dej@?
f325b2
z`CWNSjl3Uyc@xM%nL&&Kz3A?3^9@$v+=|ION<1jI
f325b2
z3x|u5Pdi_h{AX&vS_%RKEzyY
f325b2
zszo7djB1jYmFF@Y*KdN^78d?s{NC$>tqfRGYbs$DOfOXBS4mJf=9Q38(M^8ozkTVC
f325b2
zN2eL7a0e#rGOaVI#|6Z9Q)B5f#9%MrDH-Pk!@W1C-(x8{S!OqeCQ|h^t%@_h02IIL
f325b2
zucrCzSg;E6Lq4v492&d%oZx$(yIF38d*0|>AWoUBZ$MU~68{K!;s9j>PB
f325b2
zb1Q=xk46>hcez)&BRX3hN1k^#ZwhS{X`_b9xe32Akf=u_ITX{1dMU)tJ$@vzbw
f325b2
zoqm=Kcjhmnt+=?PzIK=xJ1IE}jj#qJnzqbjB%8q(foi`YH+1rk7&^T^K(F8xHFb(d
f325b2
z4C52|EML+fYC485yrHwovHvKY?{vI!2)*K9LT-+j!Xe#5^9!$!>2*C(m2&Fd^h*`O
f325b2
z(pfL)x7;)P#UEPTa3d|rqlC+SKF5F4k!ogK$e`+CWGwS
f325b2
zhbC*{#iOUK{VqWw%i`C9pL
f325b2
z5fk->!$+H3U(f1BD9jy>nnqy3j9RzDChYX?)MB?J4?p{y5P0C!s~&QTapl7{BfwzD
f325b2
zw_kZ7Z#MC=Q%DNB3vL^83=^h1>#d5q;)DsJYUkT$G4|9P!#UjH?_lLng
f325b2
zN^Z~g<X2Y5lI37cvgS}>3+9|o$}2~(>i8t
f325b2
z@ve*#inZ|qllS;hmto
f325b2
z?KrL5WA!+rT~Dh`?Q2e=Y-v39k;DQEAR(g7vJoi*qMRNV>{+Das3iS{abpRmp6pY1
f325b2
zte*s)TtRF|$M43Qx0Za1iX&!|Bih6imftl|yy3`j2f97aC_%`fyQ!Jqf@2Ed3yikQ
f325b2
zc(LwiTi1GUo0Kxeavasw>nlxFlA9$2q4tj5d>kMB(fsWo+U_^
f325b2
zOVEK~Dk9J1_jD%NI28>0&2v91Q{51-tB~lLxzRTqeVUmMz7WpYw#C~I=x{!+d#1x=
f325b2
zHq)zZ4U7Zzl<&_G_|Uu@O1H
f325b2
z47G{p
f325b2
z-;93zdQwbv(P#O{Zq-_c)sdPP!O=Hw$Jy9tFT7f)d4y4x-E{mou`g_4zn){gGOy|a
f325b2
zfnY*RB-+o{Mm3
f325b2
zcjCT@h-l|VWjB9{f^FHl6gOsb6Gt#I*}++;@UzX%4y?F6;!BfPg5XhXeNY3W^JzK@
f325b2
z$c
f325b2
z*pwNI$;@xcV@eKN#!<DrQ<(>flCL%V$FLP8Y2PH#&*-pkLu4_b8bCBvhZyPinU4Fa
f325b2
zM5p^3Q9GBr_LB>=(KPSA+KCa>p*3i8@97h`Pp|9i;XZOAbt-^fE%DVs?s2ax1D)cl
f325b2
zNKRyj4Oa~v)k#KFM~pEbV1pPc<>&TdU~)y3D+xP8;{p>mDUBz|RW%bm-S3n;i>=W)
f325b2
zv?x>^U(7?73rkdU+v)%}(}JgK2|J790#&G68=*UC7Rb0g_yT1bge<=~p(i`~Ohfj`
f325b2
zjNkZ7@1c_6SmEXdb)=H|<bEfW`;;4P<Y^hP>r%F2rq*Ze$uITe-xro*cKRh7^5Z|h
f325b2
z7^LdS-&e$=(K5qPa_bV~3VKmHboxa4i20TN&T#YC!DVIX?Ou_<l?#{2>r%RrF>#H{
f325b2
zCm>Rz?QF)U!SX+1_n6%93W!47+{+K)6%Ob|bV#WXg(#GllEoGMyq8aU`$Z*-g
f325b2
zhD9j@>}VA*c=j@3Aw|+8)0mt0rLM1qt}I8SOXq1{!GuerSnNHnB=|~y!9|VM!A0g_
f325b2
z32JlI95gcyEetbRWuN9>z>;B7x|XFu*HP+O3wnZOW6qFdp3s|HvU!{ly$!1QIM7Ls
f325b2
zZn$1Z_yvBIK$-|z$T?~IKFLY*^7L$CY!Nc7X#vL68{FtNPAE(btBdGU?wN&P8RimI
f325b2
z7p|lxR=#|`MI%&AUY6~H#!4fw?T!XPX?agU-?{UV2ofGXTjra`JYL2-T(+J`
f325b2
zRqLtNW@cr}D;zxKgo1s%`CcT(JwMqa
f325b2
zVu7C}UC6LKm-trYoM%i&Wv{m)D5&}9o22_Yk$94lG&gGYm7*hiS%zkN8hY!hyf4>A
f325b2
z=h^X5jBM}2Bg({sN(X2OBNT;kI}PLCP3Pv8d^~W`_WRP%Sq>>wy4;+WVOMSnvd)*4
f325b2
z=Gr$K3L=ibbU9}siLU?lJS6!h!~heEE6a%Y?J-4@)+lCwg_geEL5OQjh?r~Bv-8+S
f325b2
zkb#{Q=u(}N>hUoFNr*}BmpoO`M|}*H;pLxP;*X9E6vnBI`K7a6RXQe2r8O6@T=64A
f325b2
zkah6VY1pK;8fu>C9J`O;5{#&YDjcJZL~~{=FhSz6$}ZYBuw$2JStqHX`8{f
f325b2
zIrHW2w#Pj$A?e9NAO1|fxY?{nJlz&>zmz+Hq+fPbkFr!>bvd<6AK=c_1jzr0Z}b~p
f325b2
zTb_sP-w(9cmY}+`*j{zXE_hM4D+n2j(Xkuap4sDlwyQyr8@I$Eu*(yX_0zGMJA#ow
f325b2
zktHd`fMs<3Qh$o?Q
f325b2
zQGpnF8p+O03yf}FjY8de_&E0dX(a?sNu+eLskHQb4zkftav23G>REfVIascAb(BgH
f325b2
z-^S7oPm~wD-s?3)(+w~6zgQV(0lKan2TZewWL;5Lw<`9H!G>znAojDHcI5MvqtF!<
f325b2
zn#obU
f325b2
zRoz72_BY3q(Um$uoFg+Lp@=;j!&dLEg7hYQFi0EJ@y8inehw;d#>H*jUXLv#VW5kx
f325b2
zDzQGEExx%TZM+b_9VS&h4u|Fq${
f325b2
z*S^U8UWRX=QiHPg@-@fjuw?oc-^>CIuqKx&5`u~iEfr|mXN5>*cTXX*GF&;0fooLO
f325b2
z-CQl$s({-QH&=SkHw1(@RB6R$XWe-XtTg=;$5kXMRHKqAv%Me#4~O<<%Fvd=I-0w7
f325b2
zaAL;64fs@xSdKO<(n5eOv>_Q!wzGH=c2wdEP-aro%PE9I^u65K+mqQaz3=snuHvQ1
f325b2
zh5U)wN3>Ty1$)~vj&VyYJ1_UI-O4Hi`rdqNI>&L7Q!yxvuiZJGh`<(~?5Qq(nrEuo
f325b2
z{kFYJ%
f325b2
z5T^94n>(n7MK%1SJSj060Pwo*-xk%h_ls%~8*5`T6G!_WP9b1+7Ci$4BTJ+EQyY60
f325b2
z14n!N|K6^Jxi_OBJQ!60&=0}A{MCWvk86K~1ozS3VI6F2EN%6yjVxLIe|q41Zxu(d
f325b2
zzMlQR=n?(qezx{DCimVh|BL2>tIO}6^xyAC`Wr1XD?Jk
f325b2
zW9w*p@1f)PFM7XwRAWmUJqM$IYntC_J>2ML1%GEe$G)$ijF_?zlcelR7Ark#Gh-w0
f325b2
zk4^g$B_Zn$GW5nxY@9bD$x43uo9G2B5~PC1vqIi*Z5Y%oEY&g7DzSwM?)ve>#{N3f
f325b2
z`z%AMCV{=qmeUNLde|9fsco5hq&?@CVf%A~Lv)<{R8ch<^qZ^;
f325b2
zV`B)dL%VwbNspd>$?Y^IpruAbfpOEK`iK7S&Z(pB)zy!JWl=H1B{r-OQWdy#U^u1y
f325b2
zbi-7Ybyq`)(}5?sawHTv6|#6VX~*`@jn0Gmrm41YzIk=Puyhwdb*g(xbwSa+O8V{<
f325b2
zyDY5FC?J;P^+Ec1iEJ_d*!1Ki>iA^)r4t&7E63MoG6Gh9V+4#b6XKcR(3aQho|>L+
f325b2
z6?AK+?@T&Qqx7(rf=KT^-9SIg3ga4%HjH~?^Xk15lspIu8Vm5x-dgu9`-}YPyY+Xi
f325b2
zzq@1oR8hH4{*!aopD2HJ>90ocA5-^#U
f325b2
z|6TLfoxHz#9TndL{bKw1yW+2G^{~<RQ+6<Z-S+#t-b1-R>F9yWeu}{TX5!x`_CGM&
f325b2
zpP+yG*Zl+m03IgmPl@{t=&!u?*Pj2W_jjD3-{AbpbN`I
f325b2
z_$h+FL3*g!A2jjLC=X2dQ=EQ-@*lkT&tQLT?8@JO{mPU7jPuv3?fwSmCvW~=QONJT
f325b2
xoc=zZe)8xaD1T17U+Lh1Nq>skJ<4x+RUY)P0}cS7-~YJpT~>
f325b2
f325b2
literal 0
f325b2
HcmV?d00001
f325b2
f325b2
diff --git a/sd/qa/unit/tiledrendering/tiledrendering.cxx b/sd/qa/unit/tiledrendering/tiledrendering.cxx
f325b2
index 62ad1cdcad7e..85e14f7496d0 100644
f325b2
--- a/sd/qa/unit/tiledrendering/tiledrendering.cxx
f325b2
+++ b/sd/qa/unit/tiledrendering/tiledrendering.cxx
f325b2
@@ -23,6 +23,7 @@
f325b2
 #include <editeng/outliner.hxx>
f325b2
 #include <sfx2/dispatch.hxx>
f325b2
 #include <sfx2/viewfrm.hxx>
f325b2
+#include <svl/srchitem.hxx>
f325b2
 
f325b2
 #include <DrawDocShell.hxx>
f325b2
 #include <ViewShell.hxx>
f325b2
@@ -51,6 +52,7 @@ public:
f325b2
     void testSetGraphicSelection();
f325b2
     void testResetSelection();
f325b2
     void testSearch();
f325b2
+    void testSearchAll();
f325b2
 #endif
f325b2
 
f325b2
     CPPUNIT_TEST_SUITE(SdTiledRenderingTest);
f325b2
@@ -63,6 +65,7 @@ public:
f325b2
     CPPUNIT_TEST(testSetGraphicSelection);
f325b2
     CPPUNIT_TEST(testResetSelection);
f325b2
     CPPUNIT_TEST(testSearch);
f325b2
+    CPPUNIT_TEST(testSearchAll);
f325b2
 #endif
f325b2
     CPPUNIT_TEST_SUITE_END();
f325b2
 
f325b2
@@ -371,12 +374,13 @@ void SdTiledRenderingTest::testResetSelection()
f325b2
     CPPUNIT_ASSERT(!pView->GetTextEditObject());
f325b2
 }
f325b2
 
f325b2
-static void lcl_search(const OUString& rKey)
f325b2
+static void lcl_search(const OUString& rKey, bool bFindAll = false)
f325b2
 {
f325b2
     uno::Sequence<beans::PropertyValue> aPropertyValues(comphelper::InitPropertySequence(
f325b2
     {
f325b2
         {"SearchItem.SearchString", uno::makeAny(rKey)},
f325b2
-        {"SearchItem.Backward", uno::makeAny(false)}
f325b2
+        {"SearchItem.Backward", uno::makeAny(false)},
f325b2
+        {"SearchItem.Command", uno::makeAny(static_cast<sal_uInt16>(bFindAll ? SvxSearchCmd::FIND_ALL : SvxSearchCmd::FIND))},
f325b2
     }));
f325b2
     comphelper::dispatchCommand(".uno:ExecuteSearch", aPropertyValues);
f325b2
 }
f325b2
@@ -415,6 +419,17 @@ void SdTiledRenderingTest::testSearch()
f325b2
     CPPUNIT_ASSERT_EQUAL(false, m_bFound);
f325b2
 }
f325b2
 
f325b2
+void SdTiledRenderingTest::testSearchAll()
f325b2
+{
f325b2
+    SdXImpressDocument* pXImpressDocument = createDoc("search-all.odp");
f325b2
+
f325b2
+    lcl_search("match", /*bFindAll=*/true);
f325b2
+
f325b2
+    OString aUsedFormat;
f325b2
+    // This was empty: find-all did not highlight the first match.
f325b2
+    CPPUNIT_ASSERT_EQUAL(OString("match"), pXImpressDocument->getTextSelection("text/plain;charset=utf-8", aUsedFormat));
f325b2
+}
f325b2
+
f325b2
 #endif
f325b2
 
f325b2
 CPPUNIT_TEST_SUITE_REGISTRATION(SdTiledRenderingTest);
f325b2
diff --git a/sd/source/ui/view/Outliner.cxx b/sd/source/ui/view/Outliner.cxx
f325b2
index 51635d5cba14..c9ab51dcc7f7 100644
f325b2
--- a/sd/source/ui/view/Outliner.cxx
f325b2
+++ b/sd/source/ui/view/Outliner.cxx
f325b2
@@ -594,6 +594,7 @@ void Outliner::Initialize (bool bDirectionIsForward)
f325b2
 
f325b2
 bool Outliner::SearchAndReplaceAll()
f325b2
 {
f325b2
+    bool bRet = true;
f325b2
     // Save the current position to be restored after having replaced all
f325b2
     // matches.
f325b2
     RememberStartPosition ();
f325b2
@@ -631,6 +632,16 @@ bool Outliner::SearchAndReplaceAll()
f325b2
         do
f325b2
         {
f325b2
             bFoundMatch = ! SearchAndReplaceOnce(&aSelections);
f325b2
+            if (mpSearchItem->GetCommand() == SvxSearchCmd::FIND_ALL && pViewShell->GetDoc()->isTiledRendering() && bFoundMatch && aSelections.size() == 1)
f325b2
+            {
f325b2
+                // Without this, RememberStartPosition() will think it already has a remembered position.
f325b2
+                mnStartPageIndex = (sal_uInt16)-1;
f325b2
+
f325b2
+                RememberStartPosition();
f325b2
+
f325b2
+                // So when RestoreStartPosition() restores the first match, then spellchecker doesn't kill the selection.
f325b2
+                bRet = false;
f325b2
+            }
f325b2
         }
f325b2
         while (bFoundMatch);
f325b2
 
f325b2
@@ -659,7 +670,7 @@ bool Outliner::SearchAndReplaceAll()
f325b2
     RestoreStartPosition ();
f325b2
     mnStartPageIndex = (sal_uInt16)-1;
f325b2
 
f325b2
-    return true;
f325b2
+    return bRet;
f325b2
 }
f325b2
 
f325b2
 bool Outliner::SearchAndReplaceOnce(std::vector<SearchSelection>* pSelections)
f325b2
-- 
f325b2
2.12.0
f325b2