From 802d9c7ab8bcffe085c11f7255e0d7190dbad19b Mon Sep 17 00:00:00 2001 From: weiyixiong <542111388@qq.com> Date: Tue, 17 Nov 2015 17:00:12 +0800 Subject: [PATCH] add gesture library --- .../2.8/taskArtifacts/cache.properties.lock | Bin 17 -> 17 bytes .gradle/2.8/taskArtifacts/fileHashes.bin | Bin 163883 -> 167886 bytes .gradle/2.8/taskArtifacts/fileSnapshots.bin | Bin 3775719 -> 4291913 bytes .../2.8/taskArtifacts/outputFileStates.bin | Bin 21512 -> 22232 bytes .gradle/2.8/taskArtifacts/taskArtifacts.bin | Bin 158397 -> 161735 bytes .idea/gradle.xml | 1 + .idea/modules.xml | 1 + .idea/workspace.xml | 1480 ++++++++++------- Android-Pdf-Viewer-Library.iml | 2 +- PdfView/PdfView.iml | 1 + PdfView/build.gradle | 29 +- .../bundles/release/AndroidManifest.xml | 2 +- .../bundles/release/aapt/AndroidManifest.xml | 2 +- .../intermediates/bundles/release/classes.jar | Bin 1595881 -> 1598422 bytes .../sf/andpdf/pdfviewer/gui/PdfView$1.class | Bin 929 -> 953 bytes .../sf/andpdf/pdfviewer/gui/PdfView$2.class | Bin 1329 -> 1329 bytes .../sf/andpdf/pdfviewer/gui/PdfView$3.class | Bin 679 -> 679 bytes .../net/sf/andpdf/pdfviewer/gui/PdfView.class | Bin 9226 -> 10169 bytes .../net/sf/andpdf/utils/MathUtils.class | Bin 0 -> 2070 bytes .../release/net/sf/andpdf/utils/VectorF.class | Bin 0 -> 1568 bytes .../unspecified/AndroidManifest.xml | 11 + .../unspecified/aapt/AndroidManifest.xml | 11 + .../unspecified/jars/classes.jar | Bin 0 -> 28564 bytes .../mergeResourcesrelease/merger.xml | 2 + .../res/merged/release/anim/slide_in.xml | 28 + .../res/merged/release/anim/slide_out.xml | 28 + .../res/merged/release/drawable-hdpi/icon.png | Bin 0 -> 3966 bytes .../res/merged/release/drawable-ldpi/icon.png | Bin 0 -> 1537 bytes .../res/merged/release/drawable-mdpi/icon.png | Bin 0 -> 2200 bytes .../res/merged/release/drawable/back01.png | Bin 0 -> 1566 bytes .../res/merged/release/drawable/back02.png | Bin 0 -> 1342 bytes .../res/merged/release/drawable/doc.png | Bin 0 -> 1552 bytes .../res/merged/release/drawable/folder.png | Bin 0 -> 942 bytes .../res/merged/release/drawable/icon.png | Bin 0 -> 3022 bytes .../merged/release/drawable/left_arrow.png | Bin 0 -> 536 bytes .../res/merged/release/drawable/pdf.png | Bin 0 -> 1079 bytes .../merged/release/drawable/right_arrow.png | Bin 0 -> 526 bytes .../res/merged/release/drawable/zoom_in.png | Bin 0 -> 1081 bytes .../res/merged/release/drawable/zoom_out.png | Bin 0 -> 1006 bytes .../release/layout/dialog_pagenumber.xml | 47 + .../merged/release/layout/graphics_view.xml | 15 + .../res/merged/release/layout/main.xml | 13 + .../release/layout/navigation_overlay.xml | 51 + .../release/layout/pdf_file_password.xml | 52 + .../merged/release/layout/scroll_layout.xml | 41 + .../res/merged/release/values/values.xml | 13 + PdfView/build/outputs/aar/PdfView-release.aar | Bin 1618136 -> 1620472 bytes .../net/sf/andpdf/pdfviewer/gui/PdfView.java | 34 +- .../java/net/sf/andpdf/utils/MathUtils.java | 78 + .../java/net/sf/andpdf/utils/VectorF.java | 63 + build/intermediates/dex-cache/cache.xml | 2 +- gestureimageview/build.gradle | 18 + .../com/polites/android/BuildConfig.java | 13 + .../bundles/release/AndroidManifest.xml | 11 + .../bundles/release/aapt/AndroidManifest.xml | 11 + .../intermediates/bundles/release/classes.jar | Bin 0 -> 28564 bytes .../com/polites/android/Animation.class | Bin 0 -> 181 bytes .../com/polites/android/Animator.class | Bin 0 -> 2002 bytes .../com/polites/android/BuildConfig.class | Bin 0 -> 570 bytes .../com/polites/android/FlingAnimation.class | Bin 0 -> 1597 bytes .../android/FlingAnimationListener.class | Bin 0 -> 197 bytes .../com/polites/android/FlingListener.class | Bin 0 -> 879 bytes .../polites/android/GestureImageView$1.class | Bin 0 -> 1222 bytes .../polites/android/GestureImageView$2.class | Bin 0 -> 920 bytes .../polites/android/GestureImageView.class | Bin 0 -> 18747 bytes .../android/GestureImageViewListener.class | Bin 0 -> 221 bytes .../GestureImageViewTouchListener$1.class | Bin 0 -> 1120 bytes .../GestureImageViewTouchListener$2.class | Bin 0 -> 1238 bytes .../GestureImageViewTouchListener$3.class | Bin 0 -> 1052 bytes .../GestureImageViewTouchListener$4.class | Bin 0 -> 1654 bytes .../GestureImageViewTouchListener.class | Bin 0 -> 11753 bytes .../com/polites/android/MathUtils.class | Bin 0 -> 2070 bytes .../com/polites/android/MoveAnimation.class | Bin 0 -> 2089 bytes .../android/MoveAnimationListener.class | Bin 0 -> 168 bytes .../release/com/polites/android/VectorF.class | Bin 0 -> 1568 bytes .../com/polites/android/ZoomAnimation.class | Bin 0 -> 3368 bytes .../android/ZoomAnimationListener.class | Bin 0 -> 196 bytes .../incremental/aidl/release/dependency.store | Bin 0 -> 5 bytes .../mergeAssets/release/merger.xml | 2 + .../packageResourcesrelease/merger.xml | 2 + .../outputs/aar/gestureimageview-release.aar | Bin 0 -> 26729 bytes .../build/tmp/packageReleaseJar/MANIFEST.MF | 2 + gestureimageview/gestureimageview.iml | 80 + gestureimageview/src/main/AndroidManifest.xml | 9 + .../java/com/polites/android/Animation.java | 32 + .../java/com/polites/android/Animator.java | 96 ++ .../com/polites/android/FlingAnimation.java | 74 + .../android/FlingAnimationListener.java | 29 + .../com/polites/android/FlingListener.java | 45 + .../com/polites/android/GestureImageView.java | 713 ++++++++ .../android/GestureImageViewListener.java | 30 + .../GestureImageViewTouchListener.java | 540 ++++++ .../java/com/polites/android/MathUtils.java | 78 + .../com/polites/android/MoveAnimation.java | 107 ++ .../android/MoveAnimationListener.java | 27 + .../java/com/polites/android/VectorF.java | 63 + .../com/polites/android/ZoomAnimation.java | 167 ++ .../android/ZoomAnimationListener.java | 26 + import-summary.txt | 45 +- .../src/main/res/layout/activity_main2.xml | 4 +- settings.gradle | 1 + 101 files changed, 3532 insertions(+), 700 deletions(-) create mode 100644 PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/MathUtils.class create mode 100644 PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/VectorF.class create mode 100644 PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/AndroidManifest.xml create mode 100644 PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/aapt/AndroidManifest.xml create mode 100644 PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/jars/classes.jar create mode 100644 PdfView/build/intermediates/incremental/mergeResourcesrelease/merger.xml create mode 100644 PdfView/build/intermediates/res/merged/release/anim/slide_in.xml create mode 100644 PdfView/build/intermediates/res/merged/release/anim/slide_out.xml create mode 100644 PdfView/build/intermediates/res/merged/release/drawable-hdpi/icon.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable-ldpi/icon.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable-mdpi/icon.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/back01.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/back02.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/doc.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/folder.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/icon.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/left_arrow.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/pdf.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/right_arrow.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/zoom_in.png create mode 100644 PdfView/build/intermediates/res/merged/release/drawable/zoom_out.png create mode 100644 PdfView/build/intermediates/res/merged/release/layout/dialog_pagenumber.xml create mode 100644 PdfView/build/intermediates/res/merged/release/layout/graphics_view.xml create mode 100644 PdfView/build/intermediates/res/merged/release/layout/main.xml create mode 100644 PdfView/build/intermediates/res/merged/release/layout/navigation_overlay.xml create mode 100644 PdfView/build/intermediates/res/merged/release/layout/pdf_file_password.xml create mode 100644 PdfView/build/intermediates/res/merged/release/layout/scroll_layout.xml create mode 100644 PdfView/build/intermediates/res/merged/release/values/values.xml create mode 100755 PdfView/src/main/java/net/sf/andpdf/utils/MathUtils.java create mode 100644 PdfView/src/main/java/net/sf/andpdf/utils/VectorF.java create mode 100644 gestureimageview/build.gradle create mode 100644 gestureimageview/build/generated/source/buildConfig/release/com/polites/android/BuildConfig.java create mode 100644 gestureimageview/build/intermediates/bundles/release/AndroidManifest.xml create mode 100644 gestureimageview/build/intermediates/bundles/release/aapt/AndroidManifest.xml create mode 100644 gestureimageview/build/intermediates/bundles/release/classes.jar create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/Animation.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/Animator.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/BuildConfig.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/FlingAnimation.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/FlingAnimationListener.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/FlingListener.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageView$1.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageView$2.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageView.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewListener.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$1.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$2.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$3.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$4.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/MathUtils.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/MoveAnimation.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/MoveAnimationListener.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/VectorF.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/ZoomAnimation.class create mode 100644 gestureimageview/build/intermediates/classes/release/com/polites/android/ZoomAnimationListener.class create mode 100644 gestureimageview/build/intermediates/incremental/aidl/release/dependency.store create mode 100644 gestureimageview/build/intermediates/incremental/mergeAssets/release/merger.xml create mode 100644 gestureimageview/build/intermediates/incremental/packageResourcesrelease/merger.xml create mode 100644 gestureimageview/build/outputs/aar/gestureimageview-release.aar create mode 100644 gestureimageview/build/tmp/packageReleaseJar/MANIFEST.MF create mode 100644 gestureimageview/gestureimageview.iml create mode 100644 gestureimageview/src/main/AndroidManifest.xml create mode 100644 gestureimageview/src/main/java/com/polites/android/Animation.java create mode 100644 gestureimageview/src/main/java/com/polites/android/Animator.java create mode 100644 gestureimageview/src/main/java/com/polites/android/FlingAnimation.java create mode 100644 gestureimageview/src/main/java/com/polites/android/FlingAnimationListener.java create mode 100644 gestureimageview/src/main/java/com/polites/android/FlingListener.java create mode 100644 gestureimageview/src/main/java/com/polites/android/GestureImageView.java create mode 100644 gestureimageview/src/main/java/com/polites/android/GestureImageViewListener.java create mode 100644 gestureimageview/src/main/java/com/polites/android/GestureImageViewTouchListener.java create mode 100644 gestureimageview/src/main/java/com/polites/android/MathUtils.java create mode 100644 gestureimageview/src/main/java/com/polites/android/MoveAnimation.java create mode 100644 gestureimageview/src/main/java/com/polites/android/MoveAnimationListener.java create mode 100644 gestureimageview/src/main/java/com/polites/android/VectorF.java create mode 100644 gestureimageview/src/main/java/com/polites/android/ZoomAnimation.java create mode 100644 gestureimageview/src/main/java/com/polites/android/ZoomAnimationListener.java diff --git a/.gradle/2.8/taskArtifacts/cache.properties.lock b/.gradle/2.8/taskArtifacts/cache.properties.lock index 7d9072dfffb0732a0f84acfe8ba2c83a31e9a6d3..bb5a154b900dba03cd47a91f18f7e64ceed5a841 100644 GIT binary patch literal 17 VcmZSnJ6rr|dGDRq3}Ddf3IIdt1~mWx literal 17 VcmZSnJ6rr|dGDRq3}BFR0surR2A2Q; diff --git a/.gradle/2.8/taskArtifacts/fileHashes.bin b/.gradle/2.8/taskArtifacts/fileHashes.bin index bbc7beb488aa119c10771bb498e357a57b4a010f..7b8dc507abfa727e4311709837bfc6fc2afcb5a0 100644 GIT binary patch delta 8477 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 delta 5203 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 W-$Iy1H{bq3{UtOS!8np4==^WhL4BJ5 diff --git a/.gradle/2.8/taskArtifacts/fileSnapshots.bin b/.gradle/2.8/taskArtifacts/fileSnapshots.bin index f0e9285717efb30cf7a090818f8795b52defa202..9c0655b93317e34e7fe97bb35a86d9897bc49e87 100644 GIT binary patch delta 37248 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 delta 9723 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 Rb{xDN=v~qL3KEnIVgRjvQpx}T delta 121 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 delta 2446 zcmaiz2~<;O7RPhHkOV^27eT_lC?G;HFtmeFWB|dk@0CS#swg1hG6!+M1&k{)LctGw z7!V0nAys5~=u?ozr2^s-OF@uQwH2)%5oHlhQJfdzsGT$IymRh3zuf=5_xp0cdz%L| z>N_;DXMk0XP9!(x4T}Y)Iq}BUSj@34KavF>RSb6m<7JIrXBvhYaT^0N2FwBH0zcrZ*Usds|P!@|5 zq2lp!hX1bO7cUu(&go2}-hi79IN@+zdo0rxVuh|3w$~HkWIbJ6rdNjJ^mTE*z9$~j zx5F+5URY+(h?5O7*ggDid08P=MOi_q773g^r36YSwst`GHZgd2s-0Jb>z7f5>|;0jrmyuccqh;ZS>TubvuTACz5;yBUsFfI6p|q0 z>!0}+CVCIU={dtEA~nunyJRtWL>Kws;>!Z;c&dPq%Tv}^M_O=N_^scc9}VpPeFS}4 zhF1j5({W%L?tsMU=7;`ScGZ-S*==f18d!l%rTekh@}tz9U|-<=!kqXEqSqS3KY%bP z$vl)B{aP6C;<4n*aLY=jtSJsC(!)t{BK#s{E?H~@Z3i(APY)9je@!}fPYW`!^zKlEtPJYun&_UbbmEPxxs-84 zp{5YDm}_c5qE_a?W0hAnv}E+1Tc;-DQxEncz{ShBW?*(*`A@VN`$TE*NBzX(F?=EL znHWBtkzBa?s>6a(mmlNz9(rCp+4F^270Qa(AWl<OSjFa`=Q(`h-)>Z@@m`n zb`(joO6s0UvO1UNivRNhJZfqN2e`^rc0@RTeF4@glOgcHRR@hp1p)rbo>Hv`&art& zx!5U)!f8%G3>I7--s1byrfK)AGdi>Cgvues#i>IFu^U&!6cZublStyQk|Wf%TyNmE zF}ZDsGAUXOMEd3dcWZ;Jhmmt1-fCTzc|bXdR6x-JpbGPycw8SQ-3Q@{&Bt+A=}80; zSQe~LdCQV`+`~+j!-xuv@&!VBXY0Hu&#N}^gY{@`z9N5eP1ZjF5#F)%2WF0;l&p*a z9ct^z0XDaaNvuMYVoNv>|8p#`WwpMJA9J!F{AuCIcH~o@z&Xv7JWU6tK@Fk~(}&c# zwk#IUmQ6`7wWtXStz$w*cK9y!U%0-fxreGdPnxX)OPtU&LEXA60_S+o&%*{D|D513Xb;A?K$22yOk9Ot#g$ybLSDf8@lXNnNHF#^c16D{0 zy#Mwr+}3T3yT6qZdAt`UojEida@_oxzY*!02&SaVDlntV_Q4W_Pmc4294{ut3oY3AH1mr)V?~L3Uw3_% zDHW3|(!heuYzLCwaT~gT@ZtOH@(@JZE+Jk~QH`Y`{~e(0Ak7DOs==vc9-@|7^sEWd z=cj-ThmbEV;t}2H?4((Bd&lFX-_cbwpd1l%Gz?2;ew7#aNW5mR$FQ*Xom=yZp@=wH z+OZumc#r{<99Qh}qi=AwfuE_#+do2-L!Pj{|{&6UFDdm!l zVh|9q)nQLA`F7scH+R1GY0Tf!Cv!@dJA)drVA1fZ`ztdOJnS#HH#^JmN0P_APVKW( z3T*cOdP++gw`KnaX|nRk#UKy_D(Y8$quzh6J^t{S?PVA3FW?7#rgZ;eaAFHiSecZx zt9?>suL zQZY3>aPwg5lS{FpW`~iBSW=-+XP*W9KI<&d4{G6aO`2{2Hx7}?)1tp=9}_r;v{++% zv~`v9lM_cXBe@sRqj#Z2Ly&6ec5TJe z$bBVi>+eSGOusOBDydkAY-qn8$WqI50j^+bopL+)(-`9^4bj!B5t}1WxDP((TkJ9v h-8Mhqh$3MG=j+T8W`Or%L{2Y3={u`4)!0G@1 diff --git a/.idea/gradle.xml b/.idea/gradle.xml index e046e46..7a5d518 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -10,6 +10,7 @@ diff --git a/.idea/modules.xml b/.idea/modules.xml index a094de9..c748180 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -4,6 +4,7 @@ + diff --git a/.idea/workspace.xml b/.idea/workspace.xml index cf7a959..4813806 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -6,7 +6,6 @@ - @@ -25,115 +24,47 @@ + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - - + + - - - - + + - - + + + + + + + + + + + + - + @@ -165,6 +96,10 @@ @@ -522,6 +457,10 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1713,6 +2197,11 @@ + + + + + + + @@ -2276,10 +2852,17 @@ @@ -2287,7 +2870,7 @@ - @@ -2928,17 +3235,17 @@ - + - + - + @@ -2952,8 +3259,8 @@ - - + + @@ -2971,11 +3278,11 @@ - + - + @@ -2991,7 +3298,7 @@ - + @@ -3010,199 +3317,25 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -3221,6 +3354,7 @@ + @@ -3267,13 +3401,6 @@ - - - - - - - @@ -3478,22 +3605,6 @@ - - - - - - - - - - - - - - - - @@ -3598,27 +3709,10 @@ - + - - - - - - - - - - - - - - - - - - - + + @@ -3633,8 +3727,8 @@ - - + + @@ -3645,41 +3739,147 @@ - + - + + + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - - + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Android-Pdf-Viewer-Library.iml b/Android-Pdf-Viewer-Library.iml index e6b0607..a8f705a 100644 --- a/Android-Pdf-Viewer-Library.iml +++ b/Android-Pdf-Viewer-Library.iml @@ -8,7 +8,7 @@ - + diff --git a/PdfView/PdfView.iml b/PdfView/PdfView.iml index e76329a..85ebbf7 100644 --- a/PdfView/PdfView.iml +++ b/PdfView/PdfView.iml @@ -80,5 +80,6 @@ + \ No newline at end of file diff --git a/PdfView/build.gradle b/PdfView/build.gradle index f75faa9..fef3f0b 100644 --- a/PdfView/build.gradle +++ b/PdfView/build.gradle @@ -1,18 +1,21 @@ apply plugin: 'com.android.library' - android { - compileSdkVersion 21 - buildToolsVersion "23.0.2" + compileSdkVersion 21 + buildToolsVersion "23.0.2" - defaultConfig { - minSdkVersion 4 - targetSdkVersion 4 - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + defaultConfig { + minSdkVersion 14 + targetSdkVersion 4 + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } } - } } + +dependencies { + compile project(':gestureimageview') +} \ No newline at end of file diff --git a/PdfView/build/intermediates/bundles/release/AndroidManifest.xml b/PdfView/build/intermediates/bundles/release/AndroidManifest.xml index ecd6cca..59c9e3a 100644 --- a/PdfView/build/intermediates/bundles/release/AndroidManifest.xml +++ b/PdfView/build/intermediates/bundles/release/AndroidManifest.xml @@ -5,7 +5,7 @@ android:versionName="1.0" > diff --git a/PdfView/build/intermediates/bundles/release/aapt/AndroidManifest.xml b/PdfView/build/intermediates/bundles/release/aapt/AndroidManifest.xml index ecd6cca..59c9e3a 100644 --- a/PdfView/build/intermediates/bundles/release/aapt/AndroidManifest.xml +++ b/PdfView/build/intermediates/bundles/release/aapt/AndroidManifest.xml @@ -5,7 +5,7 @@ android:versionName="1.0" > diff --git a/PdfView/build/intermediates/bundles/release/classes.jar b/PdfView/build/intermediates/bundles/release/classes.jar index 105662e1dd02d4b942adb364e2ad9a20e732b70d..780e726c125e47c0d6a157924d7f0a2caa8f6ab0 100644 GIT binary patch delta 13710 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 delta 43 zcmdnUwUKLs9}DB|$^I} delta 23 fcmZ3^x}0@`5)n+tz*zWk?woVK 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 literal 9226 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 diff --git a/PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/MathUtils.class b/PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/MathUtils.class new file mode 100644 index 0000000000000000000000000000000000000000..7c2611c98d3d3ebf79701ead4707e5300e59ddf3 GIT binary patch literal 2070 zcmaJ>?NS?M7(JWp2MGzZ2!uonND>VMyS9azN~Iqp5o&0u+K&F*d@O8+W@EA-{O}Sw z;~#Is8E5=p{NV+72i}b1dEN~PgQdyj$+PeKyyu+v`Pjez{qrvXcd!>n61U^@*2JvG zaTlM&P{KVipT?2EhOFHe^O-zu#_<3TEj+UDSc7@r>v+MYhG=2=r3QV=Z?-f{*1S&Z z>CvlttM|22Kjg|(&2Kn|FP)wz&x1uhIPm%!7HXYVVE0|y=`_1d*FFlo!@j-i1P3p~ z+t4u9^!kC*X%Of}p~kSD?=|gXul2pX>j$3SsT{XD!Nzh`gV7RKL+0u*4cZBR4AxFH ztd9WqdrtSjYxM0s-|Ga`jUmM44IzqjZ)r$h86p95KT{ z`Sjvn`A5A*tLjO>#ISrf+s?6*zyu~OY$Z@eC4nj`7Cuj48#@-BB#=fXfp^8^QApqm z>?BYVQ^cZ$-2|TE8B71xHqmfRnCwGJw4c@6tp>9?cU7;jRrg!LH~cH?NOk1tTMe`4 z@zR5K_0V?$xd`|B-}Q*67gQ}%=V6z!$1!O5?C5CU>o5l+Jt2tUu!&iAqfjm{m+?NQ zDak1WVqi2TX|M6g=D)^&W91KMztD-`I<2V|XE8-T5eDELO!Fy*8O(A;4tt353uITK zzaz4u)3{~vqvA*1N;cch<=XW#=szh>CO~$8}a&Ae_=G~H!(o=dnWu%NZ(&k~{1Hyi&Xg9;d6p>N1X)LLm z5)fHMD_)LXl;@_E6rHChRUQmV$rCM1|4)n%DS4Itib{M{RiUJ-0+ftgp5lz+8LUxl zGwM*0c9p6Ah;_Y5I-8^)Uyzs|6oc@TE}1czA(0*7sZe&5XQz~Go$KRDb||qhkSL`x zC~+pOFXigV&TlZ%Oq%k{k)*IE?(m*#yz{z}u@)X2W@=`bshMG>W(JueffA{ccA2FO z^Yaf8#z_8LdZeUFf0T?>@l9H@WEJyg7-ND=w@oj`5?XHCO__Ddl)cz+Z!Fxar!4MW z5Izr!1P_>-hs??&3V+O|-QqRM*h58Kv->FGqP zur?W9VT$-tA(P1WSf>m*V|-hkkHa>j1!G#qVK4|X7Umh^qp=GodRr-)4daKsKRxJu yK|SyD7etjIOXjog>)ew2`V8YgUWThFxNww`!%8KGl}ZjPl^j$`W0T37;MRZ0R8!Od literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/VectorF.class b/PdfView/build/intermediates/classes/release/net/sf/andpdf/utils/VectorF.class new file mode 100644 index 0000000000000000000000000000000000000000..ec490d027c58a4a64f0a925dcde923d078943ffa GIT binary patch literal 1568 zcmah}YflqV5IvVZX;}PA}j>~1w;Xqf+Z}Ac^tw@2u~COhJBDX6;w(gm^bYM_mGE0*C@CO18Kv~6&x$4 z9~6w^Ln~X<-#C`-rj`_Zrk!KTvSnND3b(QNj)H&P$q}qQZQ16l(uX~>@YdK9_^z~* zHS#+~!IFLL(C;2vMTL>HZMu4KUnkjdZeK6CR=%k3m|52;2va9Bv!%S@nj3bm!mki6 zn(lVB$l=(PRZ2H%?63U6Pc5DXzkx2mIGH_UKiW zuBk=|C}Nv;zFJi_vh9=#Su*2O%N?S{ls8lGcQ!xlC}c%k7X(vp={82X303LR32p64sjU+*1JbA{fEdSnoK zD(@I>#*k;>%Q_sFKbDd{)hChDvgv(R=)cHmREqZxO!vK{ZAqH!b~%D(MG4D089wKm zv-k$>EG3((Ppk12dh=-v#8bG*A3`U8G=A{)p_`r(;kb5+u9cP2at$%ULC_9zmw}HS zFqAlhO8h{}?iqY#`0H-qE5j`qqHW`45X8@2JBIlIv}!s=aDzLAQ4iXxK`$gu5#Tp? zju4md5sm*8t$Ss()7aEmbx9k-hj1nLChHY13WAVH9c{}7C`jA{oZ3MU;TD;@a0 zLAz*y{x$X>s!jO4^NKI$b;)`WAixx-qjT8P7)O$J=28hsug4^NzgOuohIp-nwc6}@ z5>kWkoujRcFum{>B3Ivo{4E1>d<*lJhSK8=CGk(Z_A-LR3pU~{5^t#~-b97@{vVA1 BA(#LF literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/AndroidManifest.xml b/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/AndroidManifest.xml new file mode 100644 index 0000000..a4e05e6 --- /dev/null +++ b/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/aapt/AndroidManifest.xml b/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/aapt/AndroidManifest.xml new file mode 100644 index 0000000..a4e05e6 --- /dev/null +++ b/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/aapt/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/jars/classes.jar b/PdfView/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/gestureimageview/unspecified/jars/classes.jar new file mode 100644 index 0000000000000000000000000000000000000000..86623737c7b1fcd7709ff071585ec66f371a35dc GIT binary patch literal 28564 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 +#9370DB#FFFFFFFF#000000#000000FFHello World, PdfViewerActivity!PdfViewer \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/anim/slide_in.xml b/PdfView/build/intermediates/res/merged/release/anim/slide_in.xml new file mode 100644 index 0000000..425217b --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/anim/slide_in.xml @@ -0,0 +1,28 @@ + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/anim/slide_out.xml b/PdfView/build/intermediates/res/merged/release/anim/slide_out.xml new file mode 100644 index 0000000..1569072 --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/anim/slide_out.xml @@ -0,0 +1,28 @@ + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/drawable-hdpi/icon.png b/PdfView/build/intermediates/res/merged/release/drawable-hdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..882eb148ae9ed4d0283f226739560644923e1fee GIT binary patch literal 3966 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 literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/res/merged/release/drawable-mdpi/icon.png b/PdfView/build/intermediates/res/merged/release/drawable-mdpi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..02e96b96078eaf477369b48eea156f30d9651877 GIT binary patch literal 2200 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 A+yDRo literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/res/merged/release/drawable/doc.png b/PdfView/build/intermediates/res/merged/release/drawable/doc.png new file mode 100644 index 0000000000000000000000000000000000000000..42d821366637369be1a6486edef1caa985c32d8e GIT binary patch literal 1552 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 literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/res/merged/release/drawable/right_arrow.png b/PdfView/build/intermediates/res/merged/release/drawable/right_arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..e13abb80cc0405a703615b1385156c32d2ea06b2 GIT binary patch literal 526 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyO9OmDT!Hl92Of81GUiF{<%Oe*YU6s4T*nOvW z#S`00EDBkET$c_+vTc52`9wgLyTKrzQ9w*blH+dDq7YUEovD^wN{v&su1Ik0e06~7 z&w1|T-e7rVilmtDW2uZ`WA-?epz%*QbDpKAhDdActaHzf-Em!V#k=EWSE$3|_pfj4-x=sX z@p<&R#VlR2*9}^JGvD8GT=@Eymh^3JS>tpTm#4bFZ!52>kUu~F0(Zzp;mLC|Uo8X0 Ns;8@;%Q~loCICb#nHm59 literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/res/merged/release/drawable/zoom_in.png b/PdfView/build/intermediates/res/merged/release/drawable/zoom_in.png new file mode 100644 index 0000000000000000000000000000000000000000..2c80cd4fb44001925f1acb99c0a80191e044ab6a GIT binary patch literal 1081 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0VB8Sk6XFWwQVxuaj4CTDXV0G9 z*4F0aeZ|N z{{5Sgks&WHf9K8}CMG7h!_?H&8X6kR&CP>?Kt73zin@CBs+X5nU|^t%iV8nJe^^+U zgM-7CEnDW!oeR-bQc|*i|Nido?(N&RLqsAXB5vHc5gHmA8yl;ssVOKZn3R;{?ur1bCKKcHTSzu4K?pFVvGbil!b2X%CG zfQq@exYn;%5`1Y28MxCm7koVR~)01cW@666=mz$oDr8>qrk zb?5)PNp{bE{{HtXBecur|NnnLlnV^x|NrH)fldd31&99uMgRZ*^OpleS%VdUi7Zo) ze5Epw_zzR9I!~Yt{P7{CInEK}QrAIx2VqchST_i7`InF8a zfbWLD68nq5pk!R(>Eak-ae8j>*I*_`5xc;iDtMAvXS2=l`$;R*gGESaLY^xV3E=)Y2Yvc5onRkLxDMMh@Uc0Ua z#ar#}JPe9|4ofS1W132MDI1tQ@0mZyRUrm zPEMgY_JHi~6+&lg3T70zRA?P%s(bV&_wo5stz*`e>bieKgJ<$4{`Bc7*PP7o{G#|N zm)N*i?jL7$pHF#sN7wUu`K{mV>m7F#YW{j~@ojaG|C9=Do0UAf4}V?juX}IZllC3A zHrXhjcpQJF?CIBD;}yq}_n*4YFz-&?w7@F<{~xxmIq~tI=HJ`<7~Ze&WMSBThYyr6 NJzf1=);T3K0RXeLvEBdx literal 0 HcmV?d00001 diff --git a/PdfView/build/intermediates/res/merged/release/drawable/zoom_out.png b/PdfView/build/intermediates/res/merged/release/drawable/zoom_out.png new file mode 100644 index 0000000000000000000000000000000000000000..c26c3fd96c0946b169395da2b5b8a818552e5065 GIT binary patch literal 1006 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0VC)a@32_B-DF;kUOsuS|IyyS; z?(Q}=Hqz445HsWB<8R!!@&Et-A3uJqS+jjEsyC z5fMPahYuezGlSd-0W2&mZ{NPn%*+IG4Gau^{`@&_-n_+&7cT;XxpU_pJ$iK0rcDsV zp`oE4KYk1e2|0cGG|*KLK~GOlQBhGvMMYUKkdu=W5)vvZDmrxN5JUlx0@=53->$E(2Qp$}Vs`G_dH3$!%aOxe) zNuZnIY?2rYXGo_2HMEul`2{mDGI6o1_g?w`etXQU-#`C7w&uBBbocN7f54#opD-C1 zf-P2zY4l-mzfYZv(M z->?7wqd^k?{~tN{&(|lruug;oL#7`siEg+<*GG#S~SorjGdk?jv*GOw+5#N zGZ~85h%pflm5qURFPI~Sfk zWO;jmaW0GSnl*Z}CQDzt%)5g9`?s&vdztSYRJ8F4?kR9L;mYXg*({m4kJIR-bApf9 zkL3)$!s!WVW)gE|$18M)Y@4DJ5y!Zt>w2B>n&oq@vYp-ADSYG5?T`(JIm87O(~RfJpDI4NYMED69{m_- zaFR!%TqkYu> + + + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/layout/graphics_view.xml b/PdfView/build/intermediates/res/merged/release/layout/graphics_view.xml new file mode 100644 index 0000000..f4c8804 --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/layout/graphics_view.xml @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/layout/main.xml b/PdfView/build/intermediates/res/merged/release/layout/main.xml new file mode 100644 index 0000000..774162d --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/layout/main.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/layout/navigation_overlay.xml b/PdfView/build/intermediates/res/merged/release/layout/navigation_overlay.xml new file mode 100644 index 0000000..74fe032 --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/layout/navigation_overlay.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/layout/pdf_file_password.xml b/PdfView/build/intermediates/res/merged/release/layout/pdf_file_password.xml new file mode 100644 index 0000000..8c8d09c --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/layout/pdf_file_password.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/layout/scroll_layout.xml b/PdfView/build/intermediates/res/merged/release/layout/scroll_layout.xml new file mode 100644 index 0000000..f066192 --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/layout/scroll_layout.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/PdfView/build/intermediates/res/merged/release/values/values.xml b/PdfView/build/intermediates/res/merged/release/values/values.xml new file mode 100644 index 0000000..be7cb96 --- /dev/null +++ b/PdfView/build/intermediates/res/merged/release/values/values.xml @@ -0,0 +1,13 @@ + + + + + #000000 + #000000FF + #9370DB + #FFFFFFFF + + + PdfViewer + Hello World, PdfViewerActivity! + \ No newline at end of file diff --git a/PdfView/build/outputs/aar/PdfView-release.aar b/PdfView/build/outputs/aar/PdfView-release.aar index f47b23b034637805b93cbbba50a041d9e0f1881d..016f94cb9a7055d1049eb4aac244720e181d5c9e 100644 GIT binary patch delta 89201 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∾x9%Dt> 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/gestureimageview/src/main/AndroidManifest.xml b/gestureimageview/src/main/AndroidManifest.xml new file mode 100644 index 0000000..ceae95b --- /dev/null +++ b/gestureimageview/src/main/AndroidManifest.xml @@ -0,0 +1,9 @@ + + + + + + \ No newline at end of file diff --git a/gestureimageview/src/main/java/com/polites/android/Animation.java b/gestureimageview/src/main/java/com/polites/android/Animation.java new file mode 100644 index 0000000..6e3d3bc --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/Animation.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +/** + * @author Jason Polites + * + */ +public interface Animation { + + /** + * Transforms the view. + * @param view + * @param diffTime + * @return true if this animation should remain active. False otherwise. + */ + public boolean update(GestureImageView view, long time); + +} diff --git a/gestureimageview/src/main/java/com/polites/android/Animator.java b/gestureimageview/src/main/java/com/polites/android/Animator.java new file mode 100644 index 0000000..fbcb7d2 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/Animator.java @@ -0,0 +1,96 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + + +/** + * @author Jason Polites + * + */ +public class Animator extends Thread { + + private GestureImageView view; + private Animation animation; + private boolean running = false; + private boolean active = false; + private long lastTime = -1L; + + public Animator(GestureImageView view, String threadName) { + super(threadName); + this.view = view; + } + + @Override + public void run() { + + running = true; + + while(running) { + + while(active && animation != null) { + long time = System.currentTimeMillis(); + active = animation.update(view, time - lastTime); + view.redraw(); + lastTime = time; + + while(active) { + try { + if(view.waitForDraw(32)) { // 30Htz + break; + } + } + catch (InterruptedException ignore) { + active = false; + } + } + } + + synchronized(this) { + if(running) { + try { + wait(); + } + catch (InterruptedException ignore) {} + } + } + } + } + + public synchronized void finish() { + running = false; + active = false; + notifyAll(); + } + + public void play(Animation transformer) { + if(active) { + cancel(); + } + this.animation = transformer; + + activate(); + } + + public synchronized void activate() { + lastTime = System.currentTimeMillis(); + active = true; + notifyAll(); + } + + public void cancel() { + active = false; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/FlingAnimation.java b/gestureimageview/src/main/java/com/polites/android/FlingAnimation.java new file mode 100644 index 0000000..66cdca5 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/FlingAnimation.java @@ -0,0 +1,74 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +/** + * @author Jason Polites + * + */ +public class FlingAnimation implements Animation { + + private float velocityX; + private float velocityY; + + private float factor = 0.95f; + + private float threshold = 10; + + private FlingAnimationListener listener; + + /* (non-Javadoc) + * @see com.polites.android.Transformer#update(com.polites.android.GestureImageView, long) + */ + @Override + public boolean update(GestureImageView view, long time) { + float seconds = (float) time / 1000.0f; + + float dx = velocityX * seconds; + float dy = velocityY * seconds; + + velocityX *= factor; + velocityY *= factor; + + boolean active = (Math.abs(velocityX) > threshold && Math.abs(velocityY) > threshold); + + if(listener != null) { + listener.onMove(dx, dy); + + if(!active) { + listener.onComplete(); + } + } + + return active; + } + + public void setVelocityX(float velocityX) { + this.velocityX = velocityX; + } + + public void setVelocityY(float velocityY) { + this.velocityY = velocityY; + } + + public void setFactor(float factor) { + this.factor = factor; + } + + public void setListener(FlingAnimationListener listener) { + this.listener = listener; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/FlingAnimationListener.java b/gestureimageview/src/main/java/com/polites/android/FlingAnimationListener.java new file mode 100644 index 0000000..b1b38e3 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/FlingAnimationListener.java @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + + +/** + * @author Jason Polites + * + */ +public interface FlingAnimationListener { + + public void onMove(float x, float y); + + public void onComplete(); + +} diff --git a/gestureimageview/src/main/java/com/polites/android/FlingListener.java b/gestureimageview/src/main/java/com/polites/android/FlingListener.java new file mode 100644 index 0000000..1b9b3dc --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/FlingListener.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.view.GestureDetector.SimpleOnGestureListener; +import android.view.MotionEvent; + + +/** + * @author Jason Polites + * + */ +public class FlingListener extends SimpleOnGestureListener { + + private float velocityX; + private float velocityY; + + @Override + public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { + this.velocityX = velocityX; + this.velocityY = velocityY; + return true; + } + + public float getVelocityX() { + return velocityX; + } + + public float getVelocityY() { + return velocityY; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/GestureImageView.java b/gestureimageview/src/main/java/com/polites/android/GestureImageView.java new file mode 100644 index 0000000..05d4b81 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/GestureImageView.java @@ -0,0 +1,713 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.content.Context; +import android.content.res.Configuration; +import android.database.Cursor; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Canvas; +import android.graphics.ColorFilter; +import android.graphics.Matrix; +import android.graphics.drawable.BitmapDrawable; +import android.graphics.drawable.Drawable; +import android.net.Uri; +import android.provider.MediaStore; +import android.util.AttributeSet; +import android.util.Log; +import android.view.MotionEvent; +import android.view.View; +import android.view.ViewGroup.LayoutParams; +import android.widget.ImageView; + +import java.io.InputStream; +import java.util.concurrent.Semaphore; +import java.util.concurrent.TimeUnit; + +public class GestureImageView extends ImageView { + + public static final String GLOBAL_NS = "http://schemas.android.com/apk/res/android"; + public static final String LOCAL_NS = "http://schemas.polites.com/android"; + + private final Semaphore drawLock = new Semaphore(0); + private Animator animator; + + private Drawable drawable; + + private float x = 0, y = 0; + + private boolean layout = false; + + private float scaleAdjust = 1.0f; + private float startingScale = -1.0f; + + private float scale = 1.0f; + private float maxScale = 5.0f; + private float minScale = 0.75f; + private float fitScaleHorizontal = 1.0f; + private float fitScaleVertical = 1.0f; + private float rotation = 0.0f; + + private float centerX; + private float centerY; + + private Float startX, startY; + + private int hWidth; + private int hHeight; + + private int resId = -1; + private boolean recycle = false; + private boolean strict = false; + + private int displayHeight; + private int displayWidth; + + private int alpha = 255; + private ColorFilter colorFilter; + + private int deviceOrientation = -1; + private int imageOrientation; + + private GestureImageViewListener gestureImageViewListener; + private GestureImageViewTouchListener gestureImageViewTouchListener; + + private OnTouchListener customOnTouchListener; + private OnClickListener onClickListener; + + public GestureImageView(Context context, AttributeSet attrs, int defStyle) { + this(context, attrs); + } + + public GestureImageView(Context context, AttributeSet attrs) { + super(context, attrs); + + String scaleType = attrs.getAttributeValue(GLOBAL_NS, "scaleType"); + + if (scaleType == null || scaleType.trim().length() == 0) { + setScaleType(ScaleType.CENTER_INSIDE); + } + + String strStartX = attrs.getAttributeValue(LOCAL_NS, "start-x"); + String strStartY = attrs.getAttributeValue(LOCAL_NS, "start-y"); + + if (strStartX != null && strStartX.trim().length() > 0) { + startX = Float.parseFloat(strStartX); + } + + if (strStartY != null && strStartY.trim().length() > 0) { + startY = Float.parseFloat(strStartY); + } + + setStartingScale(attrs.getAttributeFloatValue(LOCAL_NS, "start-scale", startingScale)); + setMinScale(attrs.getAttributeFloatValue(LOCAL_NS, "min-scale", minScale)); + setMaxScale(attrs.getAttributeFloatValue(LOCAL_NS, "max-scale", maxScale)); + setStrict(attrs.getAttributeBooleanValue(LOCAL_NS, "strict", strict)); + setRecycle(attrs.getAttributeBooleanValue(LOCAL_NS, "recycle", recycle)); + + initImage(); + } + + public GestureImageView(Context context) { + super(context); + setScaleType(ScaleType.CENTER_INSIDE); + initImage(); + } + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + + if (drawable != null) { + int orientation = getResources().getConfiguration().orientation; + if (orientation == Configuration.ORIENTATION_LANDSCAPE) { + displayHeight = MeasureSpec.getSize(heightMeasureSpec); + + if (getLayoutParams().width == LayoutParams.WRAP_CONTENT) { + float ratio = (float) getImageWidth() / (float) getImageHeight(); + displayWidth = Math.round((float) displayHeight * ratio); + } else { + displayWidth = MeasureSpec.getSize(widthMeasureSpec); + } + } else { + displayWidth = MeasureSpec.getSize(widthMeasureSpec); + if (getLayoutParams().height == LayoutParams.WRAP_CONTENT) { + float ratio = (float) getImageHeight() / (float) getImageWidth(); + displayHeight = Math.round((float) displayWidth * ratio); + } else { + displayHeight = MeasureSpec.getSize(heightMeasureSpec); + } + } + } else { + displayHeight = MeasureSpec.getSize(heightMeasureSpec); + displayWidth = MeasureSpec.getSize(widthMeasureSpec); + } + + setMeasuredDimension(displayWidth, displayHeight); + } + + @Override + protected void onLayout(boolean changed, int left, int top, int right, int bottom) { + super.onLayout(changed, left, top, right, bottom); + if (changed || !layout) { + setupCanvas(displayWidth, displayHeight, getResources().getConfiguration().orientation); + } + } + + protected void setupCanvas(int measuredWidth, int measuredHeight, int orientation) { + + if (deviceOrientation != orientation) { + layout = false; + deviceOrientation = orientation; + } + + if (drawable != null && !layout) { + int imageWidth = getImageWidth(); + int imageHeight = getImageHeight(); + + hWidth = Math.round(((float) imageWidth / 2.0f)); + hHeight = Math.round(((float) imageHeight / 2.0f)); + + measuredWidth -= (getPaddingLeft() + getPaddingRight()); + measuredHeight -= (getPaddingTop() + getPaddingBottom()); + + computeCropScale(imageWidth, imageHeight, measuredWidth, measuredHeight); + + if (startingScale <= 0.0f) { + computeStartingScale(imageWidth, imageHeight, measuredWidth, measuredHeight); + } + + scaleAdjust = startingScale; + + this.centerX = (float) measuredWidth / 2.0f; + this.centerY = (float) measuredHeight / 2.0f; + + if (startX == null) { + x = centerX; + } else { + x = startX; + } + + if (startY == null) { + y = centerY; + } else { + y = startY; + } + + gestureImageViewTouchListener = new GestureImageViewTouchListener(this, measuredWidth, measuredHeight); + + if (isLandscape()) { + gestureImageViewTouchListener.setMinScale(minScale * fitScaleHorizontal); + } else { + gestureImageViewTouchListener.setMinScale(minScale * fitScaleVertical); + } + + + gestureImageViewTouchListener.setMaxScale(maxScale * startingScale); + + gestureImageViewTouchListener.setFitScaleHorizontal(fitScaleHorizontal); + gestureImageViewTouchListener.setFitScaleVertical(fitScaleVertical); + gestureImageViewTouchListener.setCanvasWidth(measuredWidth); + gestureImageViewTouchListener.setCanvasHeight(measuredHeight); + gestureImageViewTouchListener.setOnClickListener(onClickListener); + + drawable.setBounds(-hWidth, -hHeight, hWidth, hHeight); + + super.setOnTouchListener(new OnTouchListener() { + @Override + public boolean onTouch(View v, MotionEvent event) { + if (customOnTouchListener != null) { + customOnTouchListener.onTouch(v, event); + } + return gestureImageViewTouchListener.onTouch(v, event); + } + }); + + layout = true; + } + } + + protected void computeCropScale(int imageWidth, int imageHeight, int measuredWidth, int measuredHeight) { + fitScaleHorizontal = (float) measuredWidth / (float) imageWidth; + fitScaleVertical = (float) measuredHeight / (float) imageHeight; + } + + protected void computeStartingScale(int imageWidth, int imageHeight, int measuredWidth, int measuredHeight) { + switch (getScaleType()) { + case CENTER: + // Center the image in the view, but perform no scaling. + startingScale = 1.0f; + break; + + case CENTER_CROP: + // Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions + // (width and height) of the image will be equal to or larger than the corresponding dimension of the view (minus padding). + startingScale = Math.max((float) measuredHeight / (float) imageHeight, (float) measuredWidth / (float) imageWidth); + break; + + case CENTER_INSIDE: + + // Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions + // (width and height) of the image will be equal to or less than the corresponding dimension of the view (minus padding). + float wRatio = (float) imageWidth / (float) measuredWidth; + float hRatio = (float) imageHeight / (float) measuredHeight; + + if (wRatio > hRatio) { + startingScale = fitScaleHorizontal; + } else { + startingScale = fitScaleVertical; + } + + break; + } + } + + protected boolean isRecycled() { + if (drawable != null && drawable instanceof BitmapDrawable) { + Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap(); + if (bitmap != null) { + return bitmap.isRecycled(); + } + } + return false; + } + + protected void recycle() { + if (recycle && drawable != null && drawable instanceof BitmapDrawable) { + Bitmap bitmap = ((BitmapDrawable) drawable).getBitmap(); + if (bitmap != null) { + bitmap.recycle(); + } + } + } + + @Override + protected void onDraw(Canvas canvas) { + if (layout) { + if (drawable != null && !isRecycled()) { + canvas.save(); + + float adjustedScale = scale * scaleAdjust; + + canvas.translate(x, y); + + if (rotation != 0.0f) { + canvas.rotate(rotation); + } + + if (adjustedScale != 1.0f) { + canvas.scale(adjustedScale, adjustedScale); + } + + drawable.draw(canvas); + + canvas.restore(); + } + + if (drawLock.availablePermits() <= 0) { + drawLock.release(); + } + } + } + + /** + * Waits for a draw + * + * @param max time to wait for draw (ms) + * @throws InterruptedException + */ + public boolean waitForDraw(long timeout) throws InterruptedException { + return drawLock.tryAcquire(timeout, TimeUnit.MILLISECONDS); + } + + @Override + protected void onAttachedToWindow() { + animator = new Animator(this, "GestureImageViewAnimator"); + animator.start(); + + if (resId >= 0 && drawable == null) { + setImageResource(resId); + } + + super.onAttachedToWindow(); + } + + public void animationStart(Animation animation) { + if (animator != null) { + animator.play(animation); + } + } + + public void animationStop() { + if (animator != null) { + animator.cancel(); + } + } + + @Override + protected void onDetachedFromWindow() { + if (animator != null) { + animator.finish(); + } + if (recycle && drawable != null && !isRecycled()) { + recycle(); + drawable = null; + } + super.onDetachedFromWindow(); + } + + protected void initImage() { + if (this.drawable != null) { + this.drawable.setAlpha(alpha); + this.drawable.setFilterBitmap(true); + if (colorFilter != null) { + this.drawable.setColorFilter(colorFilter); + } + } + + if (!layout) { + requestLayout(); + redraw(); + } + } + + public void setImageBitmap(Bitmap image) { + this.drawable = new BitmapDrawable(getResources(), image); + initImage(); + } + + @Override + public void setImageDrawable(Drawable drawable) { + this.drawable = drawable; + initImage(); + } + + public void setImageResource(int id) { + if (this.drawable != null) { + this.recycle(); + } + if (id >= 0) { + this.resId = id; + setImageDrawable(getContext().getResources().getDrawable(id)); + } + } + + public int getScaledWidth() { + return Math.round(getImageWidth() * getScale()); + } + + public int getScaledHeight() { + return Math.round(getImageHeight() * getScale()); + } + + public int getImageWidth() { + if (drawable != null) { + return drawable.getIntrinsicWidth(); + } + return 0; + } + + public int getImageHeight() { + if (drawable != null) { + return drawable.getIntrinsicHeight(); + } + return 0; + } + + public void moveBy(float x, float y) { + this.x += x; + this.y += y; + } + + public void setPosition(float x, float y) { + this.x = x; + this.y = y; + } + + public void redraw() { + postInvalidate(); + } + + public void setMinScale(float min) { + this.minScale = min; + if (gestureImageViewTouchListener != null) { + gestureImageViewTouchListener.setMinScale(min * fitScaleHorizontal); + } + } + + public void setMaxScale(float max) { + this.maxScale = max; + if (gestureImageViewTouchListener != null) { + gestureImageViewTouchListener.setMaxScale(max * startingScale); + } + } + + public void setScale(float scale) { + scaleAdjust = scale; + } + + public float getScale() { + return scaleAdjust; + } + + public float getImageX() { + return x; + } + + public float getImageY() { + return y; + } + + public boolean isStrict() { + return strict; + } + + public void setStrict(boolean strict) { + this.strict = strict; + } + + public boolean isRecycle() { + return recycle; + } + + public void setRecycle(boolean recycle) { + this.recycle = recycle; + } + + public void reset() { + x = centerX; + y = centerY; + scaleAdjust = startingScale; + if (gestureImageViewTouchListener != null) { + gestureImageViewTouchListener.reset(); + } + redraw(); + } + + public void setRotation(float rotation) { + this.rotation = rotation; + } + + public void setGestureImageViewListener(GestureImageViewListener pinchImageViewListener) { + this.gestureImageViewListener = pinchImageViewListener; + } + + public GestureImageViewListener getGestureImageViewListener() { + return gestureImageViewListener; + } + + @Override + public Drawable getDrawable() { + return drawable; + } + + @Override + public void setAlpha(int alpha) { + this.alpha = alpha; + if (drawable != null) { + drawable.setAlpha(alpha); + } + } + + @Override + public void setColorFilter(ColorFilter cf) { + this.colorFilter = cf; + if (drawable != null) { + drawable.setColorFilter(cf); + } + } + + @Override + public void setImageURI(Uri mUri) { + if ("content".equals(mUri.getScheme())) { + try { + String[] orientationColumn = {MediaStore.Images.Media.ORIENTATION}; + + Cursor cur = getContext().getContentResolver().query(mUri, orientationColumn, null, null, null); + + if (cur != null && cur.moveToFirst()) { + imageOrientation = cur.getInt(cur.getColumnIndex(orientationColumn[0])); + } + + InputStream in = null; + + try { + in = getContext().getContentResolver().openInputStream(mUri); + Bitmap bmp = BitmapFactory.decodeStream(in); + + if (imageOrientation != 0) { + Matrix m = new Matrix(); + m.postRotate(imageOrientation); + Bitmap rotated = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), m, true); + bmp.recycle(); + setImageDrawable(new BitmapDrawable(getResources(), rotated)); + } else { + setImageDrawable(new BitmapDrawable(getResources(), bmp)); + } + } finally { + if (in != null) { + in.close(); + } + + if (cur != null) { + cur.close(); + } + } + } catch (Exception e) { + Log.w("GestureImageView", "Unable to open content: " + mUri, e); + } + } else { + setImageDrawable(Drawable.createFromPath(mUri.toString())); + } + + if (drawable == null) { + Log.e("GestureImageView", "resolveUri failed on bad bitmap uri: " + mUri); + // Don't try again. + mUri = null; + } + } + + @Override + public Matrix getImageMatrix() { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + return super.getImageMatrix(); + } + + @Override + public void setScaleType(ScaleType scaleType) { + if (scaleType == ScaleType.CENTER || + scaleType == ScaleType.CENTER_CROP || + scaleType == ScaleType.CENTER_INSIDE) { + + super.setScaleType(scaleType); + } else if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + } + + @Override + public void invalidateDrawable(Drawable dr) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + super.invalidateDrawable(dr); + } + + @Override + public int[] onCreateDrawableState(int extraSpace) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + return super.onCreateDrawableState(extraSpace); + } + + @Override + public void setAdjustViewBounds(boolean adjustViewBounds) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + super.setAdjustViewBounds(adjustViewBounds); + } + + @Override + public void setImageLevel(int level) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + super.setImageLevel(level); + } + + @Override + public void setImageMatrix(Matrix matrix) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + } + + @Override + public void setImageState(int[] state, boolean merge) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + } + + @Override + public void setSelected(boolean selected) { + if (strict) { + throw new UnsupportedOperationException("Not supported"); + } + super.setSelected(selected); + } + + @Override + public void setOnTouchListener(OnTouchListener l) { + this.customOnTouchListener = l; + } + + public float getCenterX() { + return centerX; + } + + public float getCenterY() { + return centerY; + } + + public boolean isLandscape() { + return getImageWidth() >= getImageHeight(); + } + + public boolean isPortrait() { + return getImageWidth() <= getImageHeight(); + } + + public void setStartingScale(float startingScale) { + this.startingScale = startingScale; + } + + public void setStartingPosition(float x, float y) { + this.startX = x; + this.startY = y; + } + + @Override + public void setOnClickListener(OnClickListener l) { + this.onClickListener = l; + + if (gestureImageViewTouchListener != null) { + gestureImageViewTouchListener.setOnClickListener(l); + } + } + + /** + * Returns true if the image dimensions are aligned with the orientation of the device. + * + * @return + */ + public boolean isOrientationAligned() { + if (deviceOrientation == Configuration.ORIENTATION_LANDSCAPE) { + return isLandscape(); + } else if (deviceOrientation == Configuration.ORIENTATION_PORTRAIT) { + return isPortrait(); + } + return true; + } + + public int getDeviceOrientation() { + return deviceOrientation; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/GestureImageViewListener.java b/gestureimageview/src/main/java/com/polites/android/GestureImageViewListener.java new file mode 100644 index 0000000..ad5df10 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/GestureImageViewListener.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +/** + * @author jasonpolites + * + */ +public interface GestureImageViewListener { + + public void onTouch(float x, float y); + + public void onScale(float scale); + + public void onPosition(float x, float y); + +} diff --git a/gestureimageview/src/main/java/com/polites/android/GestureImageViewTouchListener.java b/gestureimageview/src/main/java/com/polites/android/GestureImageViewTouchListener.java new file mode 100644 index 0000000..05945f5 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/GestureImageViewTouchListener.java @@ -0,0 +1,540 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.content.res.Configuration; +import android.graphics.PointF; +import android.view.GestureDetector; +import android.view.GestureDetector.SimpleOnGestureListener; +import android.view.MotionEvent; +import android.view.View; +import android.view.View.OnClickListener; +import android.view.View.OnTouchListener; + +public class GestureImageViewTouchListener implements OnTouchListener { + + private GestureImageView image; + private OnClickListener onClickListener; + + private final PointF current = new PointF(); + private final PointF last = new PointF(); + private final PointF next = new PointF(); + private final PointF midpoint = new PointF(); + + private final VectorF scaleVector = new VectorF(); + private final VectorF pinchVector = new VectorF(); + + private boolean touched = false; + private boolean inZoom = false; + + private float initialDistance; + private float lastScale = 1.0f; + private float currentScale = 1.0f; + + private float boundaryLeft = 0; + private float boundaryTop = 0; + private float boundaryRight = 0; + private float boundaryBottom = 0; + + private float maxScale = 5.0f; + private float minScale = 0.25f; + private float fitScaleHorizontal = 1.0f; + private float fitScaleVertical = 1.0f; + + private int canvasWidth = 0; + private int canvasHeight = 0; + + private float centerX = 0; + private float centerY = 0; + + private float startingScale = 0; + + private boolean canDragX = false; + private boolean canDragY = false; + + private boolean multiTouch = false; + + private int displayWidth; + private int displayHeight; + + private int imageWidth; + private int imageHeight; + + private FlingListener flingListener; + private FlingAnimation flingAnimation; + private ZoomAnimation zoomAnimation; + private MoveAnimation moveAnimation; + private GestureDetector tapDetector; + private GestureDetector flingDetector; + private GestureImageViewListener imageListener; + + public GestureImageViewTouchListener(final GestureImageView image, int displayWidth, int displayHeight) { + super(); + + this.image = image; + + this.displayWidth = displayWidth; + this.displayHeight = displayHeight; + + this.centerX = (float) displayWidth / 2.0f; + this.centerY = (float) displayHeight / 2.0f; + + this.imageWidth = image.getImageWidth(); + this.imageHeight = image.getImageHeight(); + + startingScale = image.getScale(); + + currentScale = startingScale; + lastScale = startingScale; + + boundaryRight = displayWidth; + boundaryBottom = displayHeight; + boundaryLeft = 0; + boundaryTop = 0; + + next.x = image.getImageX(); + next.y = image.getImageY(); + + flingListener = new FlingListener(); + flingAnimation = new FlingAnimation(); + zoomAnimation = new ZoomAnimation(); + moveAnimation = new MoveAnimation(); + + flingAnimation.setListener(new FlingAnimationListener() { + @Override + public void onMove(float x, float y) { + handleDrag(current.x + x, current.y + y); + } + + @Override + public void onComplete() {} + }); + + zoomAnimation.setZoom(2.0f); + zoomAnimation.setZoomAnimationListener(new ZoomAnimationListener() { + @Override + public void onZoom(float scale, float x, float y) { + if(scale <= maxScale && scale >= minScale) { + handleScale(scale, x, y); + } + } + + @Override + public void onComplete() { + inZoom = false; + handleUp(); + } + }); + + moveAnimation.setMoveAnimationListener(new MoveAnimationListener() { + + @Override + public void onMove(float x, float y) { + image.setPosition(x, y); + image.redraw(); + } + }); + + tapDetector = new GestureDetector(image.getContext(), new SimpleOnGestureListener() { + @Override + public boolean onDoubleTap(MotionEvent e) { + startZoom(e); + return true; + } + + @Override + public boolean onSingleTapConfirmed(MotionEvent e) { + if(!inZoom) { + if(onClickListener != null) { + onClickListener.onClick(image); + return true; + } + } + + return false; + } + }); + + flingDetector = new GestureDetector(image.getContext(), flingListener); + imageListener = image.getGestureImageViewListener(); + + calculateBoundaries(); + } + + private void startFling() { + flingAnimation.setVelocityX(flingListener.getVelocityX()); + flingAnimation.setVelocityY(flingListener.getVelocityY()); + image.animationStart(flingAnimation); + } + + private void startZoom(MotionEvent e) { + inZoom = true; + zoomAnimation.reset(); + + float zoomTo; + + if(image.isLandscape()) { + if(image.getDeviceOrientation() == Configuration.ORIENTATION_PORTRAIT) { + int scaledHeight = image.getScaledHeight(); + + if(scaledHeight < canvasHeight) { + zoomTo = fitScaleVertical / currentScale; + zoomAnimation.setTouchX(e.getX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + else { + zoomTo = fitScaleHorizontal / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + } + else { + int scaledWidth = image.getScaledWidth(); + + if(scaledWidth == canvasWidth) { + zoomTo = currentScale*4.0f; + zoomAnimation.setTouchX(e.getX()); + zoomAnimation.setTouchY(e.getY()); + } + else if(scaledWidth < canvasWidth) { + zoomTo = fitScaleHorizontal / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(e.getY()); + } + else { + zoomTo = fitScaleHorizontal / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + } + } + else { + if(image.getDeviceOrientation() == Configuration.ORIENTATION_PORTRAIT) { + + int scaledHeight = image.getScaledHeight(); + + if(scaledHeight == canvasHeight) { + zoomTo = currentScale*4.0f; + zoomAnimation.setTouchX(e.getX()); + zoomAnimation.setTouchY(e.getY()); + } + else if(scaledHeight < canvasHeight) { + zoomTo = fitScaleVertical / currentScale; + zoomAnimation.setTouchX(e.getX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + else { + zoomTo = fitScaleVertical / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + } + else { + int scaledWidth = image.getScaledWidth(); + + if(scaledWidth < canvasWidth) { + zoomTo = fitScaleHorizontal / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(e.getY()); + } + else { + zoomTo = fitScaleVertical / currentScale; + zoomAnimation.setTouchX(image.getCenterX()); + zoomAnimation.setTouchY(image.getCenterY()); + } + } + } + + zoomAnimation.setZoom(zoomTo); + image.animationStart(zoomAnimation); + } + + + private void stopAnimations() { + image.animationStop(); + } + + @Override + public boolean onTouch(View v, MotionEvent event) { + + if(!inZoom) { + + if(!tapDetector.onTouchEvent(event)) { + if(event.getPointerCount() == 1 && flingDetector.onTouchEvent(event)) { + startFling(); + } + + if(event.getAction() == MotionEvent.ACTION_UP) { + handleUp(); + } + else if(event.getAction() == MotionEvent.ACTION_DOWN) { + stopAnimations(); + + last.x = event.getX(); + last.y = event.getY(); + + if(imageListener != null) { + imageListener.onTouch(last.x, last.y); + } + + touched = true; + } + else if(event.getAction() == MotionEvent.ACTION_MOVE) { + if(event.getPointerCount() > 1) { + multiTouch = true; + if(initialDistance > 0) { + + pinchVector.set(event); + pinchVector.calculateLength(); + + float distance = pinchVector.length; + + if(initialDistance != distance) { + + float newScale = (distance / initialDistance) * lastScale; + + if(newScale <= maxScale) { + scaleVector.length *= newScale; + + scaleVector.calculateEndPoint(); + + scaleVector.length /= newScale; + + float newX = scaleVector.end.x; + float newY = scaleVector.end.y; + + handleScale(newScale, newX, newY); + } + } + } + else { + initialDistance = MathUtils.distance(event); + + MathUtils.midpoint(event, midpoint); + + scaleVector.setStart(midpoint); + scaleVector.setEnd(next); + + scaleVector.calculateLength(); + scaleVector.calculateAngle(); + + scaleVector.length /= lastScale; + } + } + else { + if(!touched) { + touched = true; + last.x = event.getX(); + last.y = event.getY(); + next.x = image.getImageX(); + next.y = image.getImageY(); + } + else if(!multiTouch) { + if(handleDrag(event.getX(), event.getY())) { + image.redraw(); + } + } + } + } + } + } + + return true; + } + + protected void handleUp() { + + multiTouch = false; + + initialDistance = 0; + lastScale = currentScale; + + if(!canDragX) { + next.x = centerX; + } + + if(!canDragY) { + next.y = centerY; + } + + boundCoordinates(); + + if(!canDragX && !canDragY) { + + if(image.isLandscape()) { + currentScale = fitScaleHorizontal; + lastScale = fitScaleHorizontal; + } + else { + currentScale = fitScaleVertical; + lastScale = fitScaleVertical; + } + } + + image.setScale(currentScale); + image.setPosition(next.x, next.y); + + if(imageListener != null) { + imageListener.onScale(currentScale); + imageListener.onPosition(next.x, next.y); + } + + image.redraw(); + } + + protected void handleScale(float scale, float x, float y) { + + currentScale = scale; + + if(currentScale > maxScale) { + currentScale = maxScale; + } + else if (currentScale < minScale) { + currentScale = minScale; + } + else { + next.x = x; + next.y = y; + } + + calculateBoundaries(); + + image.setScale(currentScale); + image.setPosition(next.x, next.y); + + if(imageListener != null) { + imageListener.onScale(currentScale); + imageListener.onPosition(next.x, next.y); + } + + image.redraw(); + } + + protected boolean handleDrag(float x, float y) { + current.x = x; + current.y = y; + + float diffX = (current.x - last.x); + float diffY = (current.y - last.y); + + if(diffX != 0 || diffY != 0) { + + if(canDragX) next.x += diffX; + if(canDragY) next.y += diffY; + + boundCoordinates(); + + last.x = current.x; + last.y = current.y; + + if(canDragX || canDragY) { + image.setPosition(next.x, next.y); + + if(imageListener != null) { + imageListener.onPosition(next.x, next.y); + } + + return true; + } + } + + return false; + } + + public void reset() { + currentScale = startingScale; + next.x = centerX; + next.y = centerY; + calculateBoundaries(); + image.setScale(currentScale); + image.setPosition(next.x, next.y); + image.redraw(); + } + + + public float getMaxScale() { + return maxScale; + } + + public void setMaxScale(float maxScale) { + this.maxScale = maxScale; + } + + public float getMinScale() { + return minScale; + } + + public void setMinScale(float minScale) { + this.minScale = minScale; + } + + public void setOnClickListener(OnClickListener onClickListener) { + this.onClickListener = onClickListener; + } + + protected void setCanvasWidth(int canvasWidth) { + this.canvasWidth = canvasWidth; + } + + protected void setCanvasHeight(int canvasHeight) { + this.canvasHeight = canvasHeight; + } + + protected void setFitScaleHorizontal(float fitScale) { + this.fitScaleHorizontal = fitScale; + } + + protected void setFitScaleVertical(float fitScaleVertical) { + this.fitScaleVertical = fitScaleVertical; + } + + protected void boundCoordinates() { + if(next.x < boundaryLeft) { + next.x = boundaryLeft; + } + else if(next.x > boundaryRight) { + next.x = boundaryRight; + } + + if(next.y < boundaryTop) { + next.y = boundaryTop; + } + else if(next.y > boundaryBottom) { + next.y = boundaryBottom; + } + } + + protected void calculateBoundaries() { + + int effectiveWidth = Math.round( (float) imageWidth * currentScale ); + int effectiveHeight = Math.round( (float) imageHeight * currentScale ); + + canDragX = effectiveWidth > displayWidth; + canDragY = effectiveHeight > displayHeight; + + if(canDragX) { + float diff = (float)(effectiveWidth - displayWidth) / 2.0f; + boundaryLeft = centerX - diff; + boundaryRight = centerX + diff; + } + + if(canDragY) { + float diff = (float)(effectiveHeight - displayHeight) / 2.0f; + boundaryTop = centerY - diff; + boundaryBottom = centerY + diff; + } + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/MathUtils.java b/gestureimageview/src/main/java/com/polites/android/MathUtils.java new file mode 100644 index 0000000..187f78e --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/MathUtils.java @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.graphics.PointF; +import android.util.FloatMath; +import android.view.MotionEvent; + +public class MathUtils { + + public static float distance(MotionEvent event) { + float x = event.getX(0) - event.getX(1); + float y = event.getY(0) - event.getY(1); + return FloatMath.sqrt(x * x + y * y); + } + + public static float distance(PointF p1, PointF p2) { + float x = p1.x - p2.x; + float y = p1.y - p2.y; + return FloatMath.sqrt(x * x + y * y); + } + + public static float distance(float x1, float y1, float x2, float y2) { + float x = x1 - x2; + float y = y1 - y2; + return FloatMath.sqrt(x * x + y * y); + } + + public static void midpoint(MotionEvent event, PointF point) { + float x1 = event.getX(0); + float y1 = event.getY(0); + float x2 = event.getX(1); + float y2 = event.getY(1); + midpoint(x1, y1, x2, y2, point); + } + + public static void midpoint(float x1, float y1, float x2, float y2, PointF point) { + point.x = (x1 + x2) / 2.0f; + point.y = (y1 + y2) / 2.0f; + } + + /** + * Rotates p1 around p2 by angle degrees. + * + * @param p1 + * @param p2 + * @param angle + */ + public void rotate(PointF p1, PointF p2, float angle) { + float px = p1.x; + float py = p1.y; + float ox = p2.x; + float oy = p2.y; + p1.x = (FloatMath.cos(angle) * (px - ox) - FloatMath.sin(angle) * (py - oy) + ox); + p1.y = (FloatMath.sin(angle) * (px - ox) + FloatMath.cos(angle) * (py - oy) + oy); + } + + public static float angle(PointF p1, PointF p2) { + return angle(p1.x, p1.y, p2.x, p2.y); + } + + public static float angle(float x1, float y1, float x2, float y2) { + return (float) Math.atan2(y2 - y1, x2 - x1); + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/MoveAnimation.java b/gestureimageview/src/main/java/com/polites/android/MoveAnimation.java new file mode 100644 index 0000000..ccb8812 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/MoveAnimation.java @@ -0,0 +1,107 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + + +/** + * @author Jason Polites + * + */ +public class MoveAnimation implements Animation { + + private boolean firstFrame = true; + + private float startX; + private float startY; + + private float targetX; + private float targetY; + private long animationTimeMS = 100; + private long totalTime = 0; + + private MoveAnimationListener moveAnimationListener; + + /* (non-Javadoc) + * @see com.polites.android.Animation#update(com.polites.android.GestureImageView, long) + */ + @Override + public boolean update(GestureImageView view, long time) { + totalTime += time; + + if(firstFrame) { + firstFrame = false; + startX = view.getImageX(); + startY = view.getImageY(); + } + + if(totalTime < animationTimeMS) { + + float ratio = (float) totalTime / animationTimeMS; + + float newX = ((targetX - startX) * ratio) + startX; + float newY = ((targetY - startY) * ratio) + startY; + + if(moveAnimationListener != null) { + moveAnimationListener.onMove(newX, newY); + } + + return true; + } + else { + if(moveAnimationListener != null) { + moveAnimationListener.onMove(targetX, targetY); + } + } + + return false; + } + + public void reset() { + firstFrame = true; + totalTime = 0; + } + + + public float getTargetX() { + return targetX; + } + + + public void setTargetX(float targetX) { + this.targetX = targetX; + } + + + public float getTargetY() { + return targetY; + } + + public void setTargetY(float targetY) { + this.targetY = targetY; + } + + public long getAnimationTimeMS() { + return animationTimeMS; + } + + public void setAnimationTimeMS(long animationTimeMS) { + this.animationTimeMS = animationTimeMS; + } + + public void setMoveAnimationListener(MoveAnimationListener moveAnimationListener) { + this.moveAnimationListener = moveAnimationListener; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/MoveAnimationListener.java b/gestureimageview/src/main/java/com/polites/android/MoveAnimationListener.java new file mode 100644 index 0000000..cb570b2 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/MoveAnimationListener.java @@ -0,0 +1,27 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + + +/** + * @author Jason Polites + * + */ +public interface MoveAnimationListener { + + public void onMove(float x, float y); + +} diff --git a/gestureimageview/src/main/java/com/polites/android/VectorF.java b/gestureimageview/src/main/java/com/polites/android/VectorF.java new file mode 100644 index 0000000..ce23663 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/VectorF.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.graphics.PointF; +import android.util.FloatMath; +import android.view.MotionEvent; + +public class VectorF { + + public float angle; + public float length; + + public final PointF start = new PointF(); + public final PointF end = new PointF(); + + public void calculateEndPoint() { + end.x = FloatMath.cos(angle) * length + start.x; + end.y = FloatMath.sin(angle) * length + start.y; + } + + public void setStart(PointF p) { + this.start.x = p.x; + this.start.y = p.y; + } + + public void setEnd(PointF p) { + this.end.x = p.x; + this.end.y = p.y; + } + + public void set(MotionEvent event) { + this.start.x = event.getX(0); + this.start.y = event.getY(0); + this.end.x = event.getX(1); + this.end.y = event.getY(1); + } + + public float calculateLength() { + length = MathUtils.distance(start, end); + return length; + } + + public float calculateAngle() { + angle = MathUtils.angle(start, end); + return angle; + } + + +} diff --git a/gestureimageview/src/main/java/com/polites/android/ZoomAnimation.java b/gestureimageview/src/main/java/com/polites/android/ZoomAnimation.java new file mode 100644 index 0000000..5cceeb0 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/ZoomAnimation.java @@ -0,0 +1,167 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + +import android.graphics.PointF; + + +/** + * @author Jason Polites + * + */ +public class ZoomAnimation implements Animation { + + private boolean firstFrame = true; + + private float touchX; + private float touchY; + + private float zoom; + + private float startX; + private float startY; + private float startScale; + + private float xDiff; + private float yDiff; + private float scaleDiff; + + private long animationLengthMS = 200; + private long totalTime = 0; + + private ZoomAnimationListener zoomAnimationListener; + + /* (non-Javadoc) + * @see com.polites.android.Animation#update(com.polites.android.GestureImageView, long) + */ + @Override + public boolean update(GestureImageView view, long time) { + if(firstFrame) { + firstFrame = false; + + startX = view.getImageX(); + startY = view.getImageY(); + startScale = view.getScale(); + scaleDiff = (zoom * startScale) - startScale; + + if(scaleDiff > 0) { + // Calculate destination for midpoint + VectorF vector = new VectorF(); + + // Set the touch point as start because we want to move the end + vector.setStart(new PointF(touchX, touchY)); + vector.setEnd(new PointF(startX, startY)); + + vector.calculateAngle(); + + // Get the current length + float length = vector.calculateLength(); + + // Multiply length by zoom to get the new length + vector.length = length*zoom; + + // Now deduce the new endpoint + vector.calculateEndPoint(); + + xDiff = vector.end.x - startX; + yDiff = vector.end.y - startY; + } + else { + // Zoom out to center + xDiff = view.getCenterX() - startX; + yDiff = view.getCenterY() - startY; + } + } + + totalTime += time; + + float ratio = (float) totalTime / (float) animationLengthMS; + + if(ratio < 1) { + + if(ratio > 0) { + // we still have time left + float newScale = (ratio * scaleDiff) + startScale; + float newX = (ratio * xDiff) + startX; + float newY = (ratio * yDiff) + startY; + + if(zoomAnimationListener != null) { + zoomAnimationListener.onZoom(newScale, newX, newY); + } + } + + return true; + } + else { + + float newScale = scaleDiff + startScale; + float newX = xDiff + startX; + float newY = yDiff + startY; + + if(zoomAnimationListener != null) { + zoomAnimationListener.onZoom(newScale, newX, newY); + zoomAnimationListener.onComplete(); + } + + return false; + } + } + + public void reset() { + firstFrame = true; + totalTime = 0; + } + + public float getZoom() { + return zoom; + } + + public void setZoom(float zoom) { + this.zoom = zoom; + } + + public float getTouchX() { + return touchX; + } + + public void setTouchX(float touchX) { + this.touchX = touchX; + } + + public float getTouchY() { + return touchY; + } + + public void setTouchY(float touchY) { + this.touchY = touchY; + } + + public long getAnimationLengthMS() { + return animationLengthMS; + } + + public void setAnimationLengthMS(long animationLengthMS) { + this.animationLengthMS = animationLengthMS; + } + + public ZoomAnimationListener getZoomAnimationListener() { + return zoomAnimationListener; + } + + public void setZoomAnimationListener(ZoomAnimationListener zoomAnimationListener) { + this.zoomAnimationListener = zoomAnimationListener; + } +} diff --git a/gestureimageview/src/main/java/com/polites/android/ZoomAnimationListener.java b/gestureimageview/src/main/java/com/polites/android/ZoomAnimationListener.java new file mode 100644 index 0000000..4d50898 --- /dev/null +++ b/gestureimageview/src/main/java/com/polites/android/ZoomAnimationListener.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.polites.android; + + +/** + * @author Jason Polites + * + */ +public interface ZoomAnimationListener { + public void onZoom(float scale, float x, float y); + public void onComplete(); +} diff --git a/import-summary.txt b/import-summary.txt index 36146c6..a66c6fd 100644 --- a/import-summary.txt +++ b/import-summary.txt @@ -7,22 +7,10 @@ The following files were *not* copied into the new Gradle project; you should evaluate whether these are still needed in your project and if so manually move them: -* .idea/ -* .idea/.name -* .idea/compiler.xml -* .idea/copyright/ -* .idea/copyright/profiles_settings.xml -* .idea/libraries/ -* .idea/libraries/PdfViewer.xml -* .idea/misc.xml -* .idea/modules.xml -* .idea/vcs.xml -* .idea/workspace.xml -* Android-Pdf-Viewer-Library.iml -* PdfViewer.jar -* README.txt +* .DS_Store +* .gitignore * build.xml -* default.properties +* gesture-imageview.iml * proguard.cfg Moved Files: @@ -30,28 +18,11 @@ Moved Files: Android Gradle projects use a different directory structure than ADT Eclipse projects. Here's how the projects were restructured: -* AndroidManifest.xml => app/src/main/AndroidManifest.xml -* crypto-src/ => app/src/main/java/ -* res/ => app/src/main/res/ -* src/ => app/src/main/java/ -* src/com/sun/pdfview/.cvsignore => app/src/main/resources/com/sun/pdfview/.cvsignore -* src/com/sun/pdfview/decode/CCITTCodes => app/src/main/resources/com/sun/pdfview/decode/CCITTCodes -* src/com/sun/pdfview/font/res/BaseFonts.properties => app/src/main/resources/com/sun/pdfview/font/res/BaseFonts.properties -* src/com/sun/pdfview/font/res/d050000l.pfb => app/src/main/resources/com/sun/pdfview/font/res/d050000l.pfb -* src/com/sun/pdfview/font/res/n019003l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n019003l.pfb -* src/com/sun/pdfview/font/res/n019004l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n019004l.pfb -* src/com/sun/pdfview/font/res/n019023l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n019023l.pfb -* src/com/sun/pdfview/font/res/n019024l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n019024l.pfb -* src/com/sun/pdfview/font/res/n021003l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n021003l.pfb -* src/com/sun/pdfview/font/res/n021004l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n021004l.pfb -* src/com/sun/pdfview/font/res/n021023l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n021023l.pfb -* src/com/sun/pdfview/font/res/n021024l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n021024l.pfb -* src/com/sun/pdfview/font/res/n022003l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n022003l.pfb -* src/com/sun/pdfview/font/res/n022004l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n022004l.pfb -* src/com/sun/pdfview/font/res/n022023l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n022023l.pfb -* src/com/sun/pdfview/font/res/n022024l.pfb => app/src/main/resources/com/sun/pdfview/font/res/n022024l.pfb -* src/com/sun/pdfview/font/res/s050000l.pfb => app/src/main/resources/com/sun/pdfview/font/res/s050000l.pfb -* src/com/sun/pdfview/font/ttf/resource/glyphlist.txt => app/src/main/resources/com/sun/pdfview/font/ttf/resource/glyphlist.txt +* AndroidManifest.xml => gestureimageview/src/main/AndroidManifest.xml +* src/ => gestureimageview/src/main/java/ +* src/.DS_Store => gestureimageview/src/main/resources/.DS_Store +* src/com/.DS_Store => gestureimageview/src/main/resources/com/.DS_Store +* src/com/polites/.DS_Store => gestureimageview/src/main/resources/com/polites/.DS_Store Next Steps: ----------- diff --git a/pdfviewsample/src/main/res/layout/activity_main2.xml b/pdfviewsample/src/main/res/layout/activity_main2.xml index 6a3c4d7..fc0e60a 100644 --- a/pdfviewsample/src/main/res/layout/activity_main2.xml +++ b/pdfviewsample/src/main/res/layout/activity_main2.xml @@ -7,8 +7,8 @@ diff --git a/settings.gradle b/settings.gradle index 0dbb0ca..8f90eb5 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1 +1,2 @@ include ':PdfView', ':pdfviewsample' +include ':gestureimageview'

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 V0SWAHGPnrKmmC67B#0o8{{sgPl1=~s diff --git a/PdfView/src/main/java/net/sf/andpdf/pdfviewer/gui/PdfView.java b/PdfView/src/main/java/net/sf/andpdf/pdfviewer/gui/PdfView.java index 6deff8a..faae42d 100644 --- a/PdfView/src/main/java/net/sf/andpdf/pdfviewer/gui/PdfView.java +++ b/PdfView/src/main/java/net/sf/andpdf/pdfviewer/gui/PdfView.java @@ -6,11 +6,14 @@ import android.graphics.Color; import android.graphics.RectF; import android.os.Handler; import android.util.AttributeSet; +import android.util.DisplayMetrics; import android.util.Log; +import android.view.ViewGroup; +import android.view.WindowManager; import android.widget.ImageButton; -import android.widget.ImageView; import android.widget.Toast; +import com.polites.android.GestureImageView; import com.sun.pdfview.PDFFile; import com.sun.pdfview.PDFImage; import com.sun.pdfview.PDFPage; @@ -35,7 +38,7 @@ public class PdfView extends FullScrollView { private static final float ZOOM_INCREMENT = 1.5f; private Bitmap mBi; - private ImageView mImageView; + private GestureImageView mImageView; private Handler uiHandler; ImageButton bZoomOut; ImageButton bZoomIn; @@ -59,11 +62,12 @@ public class PdfView extends FullScrollView { PDFPaint.s_doAntiAlias = true; uiHandler = new Handler(); LayoutParams matchLp = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); - mImageView = new ImageView(context); + mImageView = new GestureImageView(context); + setPageBitmap(null); updateImage(); addView(mImageView, matchLp); - setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); + setLayoutParams(new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); setBackgroundColor(Color.LTGRAY); setHorizontalScrollBarEnabled(true); setHorizontalFadingEdgeEnabled(true); @@ -79,6 +83,21 @@ public class PdfView extends FullScrollView { this.mPdfFile = mPdfFile; } + private int getDeviceWidth() { + DisplayMetrics metric = new DisplayMetrics(); + WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE); + wm.getDefaultDisplay().getMetrics(metric); + return metric.widthPixels; // 屏幕宽度(像素) + + } + + private int getDeviceHeight() { + DisplayMetrics metric = new DisplayMetrics(); + WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE); + wm.getDefaultDisplay().getMetrics(metric); + return metric.heightPixels; // 屏幕高度(像素) + } + public void showPage(int page, float zoom) throws Exception { try { // free memory from previous page @@ -90,6 +109,13 @@ public class PdfView extends FullScrollView { } float width = mPdfPage.getWidth(); float height = mPdfPage.getHeight(); + if (getLayoutParams().height == ViewGroup.LayoutParams.MATCH_PARENT) { + height *= getDeviceWidth() / width; + } + if (getLayoutParams().width == LayoutParams.MATCH_PARENT) { + width = getDeviceWidth(); + } + RectF clip = null; Bitmap bi = mPdfPage.getImage((int) (width * zoom), (int) (height * zoom), clip, true, true); setPageBitmap(bi); diff --git a/PdfView/src/main/java/net/sf/andpdf/utils/MathUtils.java b/PdfView/src/main/java/net/sf/andpdf/utils/MathUtils.java new file mode 100755 index 0000000..9eb9e3c --- /dev/null +++ b/PdfView/src/main/java/net/sf/andpdf/utils/MathUtils.java @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package net.sf.andpdf.utils; + +import android.graphics.PointF; +import android.util.FloatMath; +import android.view.MotionEvent; + +public class MathUtils { + + public static float distance(MotionEvent event) { + float x = event.getX(0) - event.getX(1); + float y = event.getY(0) - event.getY(1); + return FloatMath.sqrt(x * x + y * y); + } + + public static float distance(PointF p1, PointF p2) { + float x = p1.x - p2.x; + float y = p1.y - p2.y; + return FloatMath.sqrt(x * x + y * y); + } + + public static float distance(float x1, float y1, float x2, float y2) { + float x = x1 - x2; + float y = y1 - y2; + return FloatMath.sqrt(x * x + y * y); + } + + public static void midpoint(MotionEvent event, PointF point) { + float x1 = event.getX(0); + float y1 = event.getY(0); + float x2 = event.getX(1); + float y2 = event.getY(1); + midpoint(x1, y1, x2, y2, point); + } + + public static void midpoint(float x1, float y1, float x2, float y2, PointF point) { + point.x = (x1 + x2) / 2.0f; + point.y = (y1 + y2) / 2.0f; + } + + /** + * Rotates p1 around p2 by angle degrees. + * + * @param p1 + * @param p2 + * @param angle + */ + public void rotate(PointF p1, PointF p2, float angle) { + float px = p1.x; + float py = p1.y; + float ox = p2.x; + float oy = p2.y; + p1.x = (FloatMath.cos(angle) * (px - ox) - FloatMath.sin(angle) * (py - oy) + ox); + p1.y = (FloatMath.sin(angle) * (px - ox) + FloatMath.cos(angle) * (py - oy) + oy); + } + + public static float angle(PointF p1, PointF p2) { + return angle(p1.x, p1.y, p2.x, p2.y); + } + + public static float angle(float x1, float y1, float x2, float y2) { + return (float) Math.atan2(y2 - y1, x2 - x1); + } +} diff --git a/PdfView/src/main/java/net/sf/andpdf/utils/VectorF.java b/PdfView/src/main/java/net/sf/andpdf/utils/VectorF.java new file mode 100644 index 0000000..b0669af --- /dev/null +++ b/PdfView/src/main/java/net/sf/andpdf/utils/VectorF.java @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2012 Jason Polites + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package net.sf.andpdf.utils; + +import android.graphics.PointF; +import android.util.FloatMath; +import android.view.MotionEvent; + +public class VectorF { + + public float angle; + public float length; + + public final PointF start = new PointF(); + public final PointF end = new PointF(); + + public void calculateEndPoint() { + end.x = FloatMath.cos(angle) * length + start.x; + end.y = FloatMath.sin(angle) * length + start.y; + } + + public void setStart(PointF p) { + this.start.x = p.x; + this.start.y = p.y; + } + + public void setEnd(PointF p) { + this.end.x = p.x; + this.end.y = p.y; + } + + public void set(MotionEvent event) { + this.start.x = event.getX(0); + this.start.y = event.getY(0); + this.end.x = event.getX(1); + this.end.y = event.getY(1); + } + + public float calculateLength() { + length = MathUtils.distance(start, end); + return length; + } + + public float calculateAngle() { + angle = MathUtils.angle(start, end); + return angle; + } + + +} diff --git a/build/intermediates/dex-cache/cache.xml b/build/intermediates/dex-cache/cache.xml index b75495b..fc4d970 100644 --- a/build/intermediates/dex-cache/cache.xml +++ b/build/intermediates/dex-cache/cache.xml @@ -5,7 +5,7 @@ jar="/Users/winney/git/Android-Pdf-Viewer-Library/pdfviewsample/build/intermediates/exploded-aar/Android-Pdf-Viewer-Library/PdfView/unspecified/jars/classes.jar" jumboMode="false" revision="23.0.2" - sha1="933be2f099767838f02cd4a28fc5ac4c219b327f"> + sha1="e7d6dd07e1cac71ea7611e16c5dcd8b3cba978dc"> diff --git a/gestureimageview/build.gradle b/gestureimageview/build.gradle new file mode 100644 index 0000000..34ad362 --- /dev/null +++ b/gestureimageview/build.gradle @@ -0,0 +1,18 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 19 + buildToolsVersion "19.1.0" + + defaultConfig { + minSdkVersion 7 + targetSdkVersion 7 + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + } +} diff --git a/gestureimageview/build/generated/source/buildConfig/release/com/polites/android/BuildConfig.java b/gestureimageview/build/generated/source/buildConfig/release/com/polites/android/BuildConfig.java new file mode 100644 index 0000000..96b555d --- /dev/null +++ b/gestureimageview/build/generated/source/buildConfig/release/com/polites/android/BuildConfig.java @@ -0,0 +1,13 @@ +/** + * Automatically generated file. DO NOT MODIFY + */ +package com.polites.android; + +public final class BuildConfig { + public static final boolean DEBUG = false; + public static final String APPLICATION_ID = "com.polites.android"; + public static final String BUILD_TYPE = "release"; + public static final String FLAVOR = ""; + public static final int VERSION_CODE = 1; + public static final String VERSION_NAME = ""; +} diff --git a/gestureimageview/build/intermediates/bundles/release/AndroidManifest.xml b/gestureimageview/build/intermediates/bundles/release/AndroidManifest.xml new file mode 100644 index 0000000..a4e05e6 --- /dev/null +++ b/gestureimageview/build/intermediates/bundles/release/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/gestureimageview/build/intermediates/bundles/release/aapt/AndroidManifest.xml b/gestureimageview/build/intermediates/bundles/release/aapt/AndroidManifest.xml new file mode 100644 index 0000000..a4e05e6 --- /dev/null +++ b/gestureimageview/build/intermediates/bundles/release/aapt/AndroidManifest.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/gestureimageview/build/intermediates/bundles/release/classes.jar b/gestureimageview/build/intermediates/bundles/release/classes.jar new file mode 100644 index 0000000000000000000000000000000000000000..86623737c7b1fcd7709ff071585ec66f371a35dc GIT binary patch literal 28564 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 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/Animator.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/Animator.class new file mode 100644 index 0000000000000000000000000000000000000000..4149aa3c8dbf387ae43844ffa28f29ef6c08aa2a GIT binary patch literal 2002 zcmZ`(+fEx-6kW$Q9bn+t>h;ZlgXG+e?ZO*Pm9Ok&Si<1v(~ z5|#SY`~hF!zD6qa^3Y0+)Q5gWU;7JDRd=0Z15R;`*yl3)tiASL`5t()wqU<2tL82G*c0}KawV) zVOqnCKxo^xb_A{_l5QrRbIE3@?1L=pRjU%-m@k%=BBkozkY!_)3GzAZ@Z2_ zN7X~aM-KGXyu9Ps&ZdA^6$qP2-`=(aYSU)UU$8TriYe|7*pBTF3iNkZMLb0#@!Z@t z<7v~`jL-WX@%v*-Oy!}QB4T~QcC49vX5I1@%=I*P8WV2POfQ+9E!XAEkiTW;1TIyL zSjxfmm_o$g@+>noV@kG-ry~mlnIvtu}|5u;p6npq8Vgxg?ca$EGxrp;Y}uIdFkDY@hj^*z(cZMa^>@>pwC zbkirNaME;=R+>4@yLm5ZjoY$1XO5EXl~vWzflqZ@K%0(sX)fZDjuyP5<6X3Bc&uX{ z3mO)6Ea8cUWgRPs=~%@Yi+Q3;wVXA~>Ub)>Ka=LRG#?`-&|ag*a{K!h7nA!on52&lOP>C!uCnagE#rx)CeI z79KPr0WS@P3K-ubu#c}f1o!cTL+$UF`w?|RhMe!1l+KOqu=WXPREM2!wfQyr4u zwI=9?IJ=K<0riFAUo$G3Lh;W+@jGKB@f%$jC2AbvTmhl!p4SCL?uB|@w}yT#6!%^s z#D{YcYs}2UHg-9_z*pEK%RPLf#vpSAuY;`mHS&)^M-MA=oz=a8kI;((JUMEa0e zeOSg_BHrd@xC4{(6#B7=`$QgOlp)3$!Iyl!zs0z!qCpliRxgTYRbjlfO{GS;aimKke> sO06>1T165K$4T&kDuecw>k?MIb5f3oV)l&OKd(RtA0yl$kpS-g3wY(EN&o-= literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/BuildConfig.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/BuildConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..bde5b1157d5fcdcdac718ecc4007be387f6c91c7 GIT binary patch literal 570 zcmaixOHaZ;6ot>_Q4kRje7|v}E@*U%G2x|YQh^9I(Ty2k#37|MrTD*GnYi!=_@j)s zNDx2%8TrETEn$ykn5#iZ zm6}b{sFd19qyAu230ZR>UW9H7r?0nsPdWW!9Q%Ys`PMM25AC~VEsg_%c4?NZ#!Vb~ zLei?;v;u=lqgvxIBQU2qyiQ3FgH)PBJgeaf&&O%&dNyIs50F=Nxpx>nbPc{0;J>CvTwFN#q)@+C1kL)%G{TN^VF1 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/FlingAnimation.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/FlingAnimation.class new file mode 100644 index 0000000000000000000000000000000000000000..40b80fb1f77e9180fe903796787bd0aab199089a GIT binary patch literal 1597 zcma)5NmCPH5Pjcdk_ll%i3;u_xP%djiVF&|2*#yA4=ROTtReY?!O09JLtLu-0sa6l z9=v+-VwIH3!J`L%lSTP@5{*)!^wQgOzwUlt&-e8&UjdxP)eJgt+8nPA4YgqlhRn$x zK&&(7^z*uPR@`$LoX4M+q>%Q#YNP|r@W4zlEaz83--~oL?*^qx=#}yX-wPHe1F!5xUKq?YvPTFv z>IGgjrjW?>&ncKwVM!}&o$&&FbG5vnD|g%lpONfLSakh4x8jN42%6E7S5-LtA1$TT z>PpFth~?y37F^ZUXtkoRm)%7@=jkUSH~Q~$q8d$wqyJaJ{KzY_hq|F)Rdq28N}SLr zJr(hcLy$eMCJDseayxR1k7nJK#y)mcM{`Z;&0Ik^`7_D~Xk${L@doX*f03z>Z@t$h z+zWK(cDPz8>VhW}Z~r@SaM`W7HoCFP#&&et*dbz@h%7oSOxT#jWg9!uWns$3G_Kev zV3$Jgzb`;xo51INH(1QyT3FV_NMV1gy5C2m(9tZJb)zNTjJrT`g(e=U)2jOKm6}wg z!eBO(XGrD>G0B-Qm3oE8vc?(`PS#vQ@_k&ghq40+$}X7LiwyQt0(QL!`{;xA0UWFYs)NiHhKZth9qp*-8KmFYKIK2T3@yk3;;sH*08HL z!!Rb)5A^YOg2Nf=?2i%4U{1>EBNt7|GjVj3sF&i2y6RcKCrZU{Em#AsvCDVZa-Rkd@*>a39-HQqsKA#vaav2k=m0>e|)72gA(! z^Lzo=W0_%*At$8l&OB;DQb@VE5ps4%Zab@ez*+I5D?j>DOJf7Ar8TZTIMXU`*qzMa zwbT8sQKKSkOKwHS)_6S#<*J@dCH^-EtEnTba<#bJ8(sR8K#0OYAd15}VjyIKGzcM^ G9P=+|Ffq>n literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/FlingListener.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/FlingListener.class new file mode 100644 index 0000000000000000000000000000000000000000..580f70481e268d81a915cab55756ee5f934b8233 GIT binary patch literal 879 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 VF2;+IucNgD*XDQR`SLaj{15I3M7{t3 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewListener.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewListener.class new file mode 100644 index 0000000000000000000000000000000000000000..10009d825ccc9e8055f7798d1ccfe39e568b0d1b GIT binary patch literal 221 zcmZ{eK?=e^6hrfCYqh%Y0`3*W0S{3T1cgfX>ADXZ*a#MFHtmjH;cPho6)V~d3(ymmY-C6C9S2n&+AOy`}pcfK) T2!X~U^gEB++%yJ_1{nST@;Emj literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$1.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$1.class new file mode 100644 index 0000000000000000000000000000000000000000..fbe7aa843e7b697d045a37aba8860d863f531253 GIT binary patch literal 1120 zcmbVMZEw>s5PsZt%^CtL12!0M?N*>Ku&f~XGBgPlf+}SLiK$3@b5pDJl-gC2ZbSSk zr12s?@B{c!h;!O)LK@RXB46%&=jR^#&iVEG$4>x{(Ja71$;K?oHtt}#fE84XxM$4! z79LorTBtGPlYxvYYYb2PKo8xK4rL-@m#bc+WzT&r;$$3&_K^2QM~b~|Jq`xGj1!?m zv`)*POC^&HhG*6PSYPWfwt$H9!Xf9^`tu-9r+?^3Rrs^=LpY@dcl<0FHuRZ9;?p-3noTQzR`ogPPl@TB3l zeCpY(?(khs+j^yfP{&gBH$^hgJqvXQ4jK+@Trk>_gNJxzVb#F`79CtS!i6cwx$9AB zG89c-H{`1CzUl6WAYrJV1muOp>4lO*o=B|@E6UJ3DfrZ#GBnOs`}KA^JwzS^BBq{O zqfKs|ZRy`_SMv|svmf!%KnAhYx*rL5Cy&(92Au)|LO^QB%HR;>1ozTJUPSf3bNlZ*M zKB&+7V*C*%io^$hfIrH3X18ce2my98CuindzHiPs^XvDIp8zUYiDL{_0&!##n8Sh= zSGBmNMOKSk4EY!eF%KDQsQ z^WKm{Lb+Ad?K#3HM{ewe3@MFVbhx`+e6Y16Y@Z=_P$FHDJFe_< zUn+OM*9_%@d=I@UL*Zysv0ASORphoUJTFr&(LA1Ppr~z$VU~){GTxy{cEm>5)qT@a ziOO;7Xx#pv_*SmPFcv0#*uxciYjF@JSSqDEM^Dh8mBa*{PLj5U2>n1JU-$-=|BlEP z+C`8eIZ8gjOH7fR3B53l)3hW1AR7%J&X6t4^#W1)0n5sN1>1x1@iS(Jdi295B=xbC zS=hyh1~CGViGa{6oWpC(<4pjT57Ybwvv8K|nv8{6(llWU=SeegA;`q$$$Sy%A(JY( zX!j|NXzXG1kydsQ`**nz_brv@9r1V{;F@935ZAyZN)f?jDkF%|9Pv9v8Woeu8hn2M DB5x}G literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$3.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$3.class new file mode 100644 index 0000000000000000000000000000000000000000..c42b6cd025a93263d93fab62113c8ae2b853a112 GIT binary patch literal 1052 zcmbVLTWb?R6#gbjvu3+(HdX6gW4qR5QyVq-6cHpC38X4m;)^en&5%sl%*gI0)j#2b z`bPv?!3TeUKT15a^+Ke`;=r8C%sJn=&3ya*A%YM8@82hE^tz zJv|F1eHkZ0iO9I$mr5oN7+%)?!#|TtyFOqjbo7YID)*%lPiE7hi1zp}q?5J24tO}= zku>_x!-6S_!RaZ=vJ>(+7Np+G6mFqHuVre~YFE!G)>5t8HOa8ow7az5Fxb!aEDA(d znq)TqZtw!w&OV=Ws^O6eLLEyr-WAD2k1W(2tf1~-8IFSzY@_-X8VbGudu*y3OUy`?E{EYFX`vxXs=+EZp$QfNY4{5`;9{| zfBO(Q|1JS8#zOljTK%&EXO*6EENjuHrOFHdz&k)A|7z C`weyg literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$4.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener$4.class new file mode 100644 index 0000000000000000000000000000000000000000..68ec06f9fd82e71efbd9e089e07a68bc2a792eb2 GIT binary patch literal 1654 zcmbVNTTc@~6#k|yUAin3kc%S7#kG_cDM-Of(FY5fCPhq2h%vq_+YwgUou<33Kg9%J zygc~Ai-|<^!ABqbQN}aNf@~v6rAg1soH^$^-#K$;_Sf(4KLFgq{TMniDaDkE7_O@r zhc3kpDH2_nMpD6yf;2;{X;gHpYV2@^M9~!0OiffQmpd85F4u)s&OGLh+ol{PW-L)Kjo?)>qk4@1qcZ-(ea+}ws`-){-?gNGw$qV?m<&vA(Vu<8LnbL|EEt@}S zRJVD3)7Y+%roSjmqq1exExGoU5t$T&RzG65Ir{z*x;Q|@zS<10X*sG%9q1PD3 zlEss9HmQV}b>UjVUTbpO&CNV#U_@%N0P1Oh5gd1S9zJCyW|??-nvoq zb5Kj7Q8)P`OJ+IMdU64lbFYl1LB(0K&5Cdcd!4(xqO9Pih91mm(9o?xMVDM=G|Xc` zquyH7kj1isI~wld9(6!FEfWZ=XBAL^vVns5R9CsnO;^Jz|-~s0tLvOf6!;~7bX7kMet=uov>VzDDe$D zU$M-+zh!)OA>1Hw`55Re$TD-{w!V5M>0x=z#H_F z93maa^%4eYlrsrQmzH*heZYrgBdyfb7qIjZB9Q}H9b>89&OT9ldj?NE#Zz$^S3JCt zQ@n^BNF&@CUWvL sa?+1{)$?Wvf*AE^kKr1P5&Bw85C||rJDoJjUkoYClAOkEEJb5~0P-cju>b%7 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/GestureImageViewTouchListener.class new file mode 100644 index 0000000000000000000000000000000000000000..4e69f0bf6c7db0545b6cadfbd4fb261e61cf08bd GIT binary patch literal 11753 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 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/MoveAnimation.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/MoveAnimation.class new file mode 100644 index 0000000000000000000000000000000000000000..ddabdfaf3bdfc802f4b0085094ca1e923996ebc0 GIT binary patch literal 2089 zcma)6-%}e^6#jOzn?SOZh(IV>+e*c-SW;`XR3L3_o7yxKEs+stbY@8|xR~rRn}v?! zn{R#AJ~-o_P@Qq6siO}*`ru#WQ>WkA{Gh~TDopM<_x!rw{m!}j&$B=O0&o%4G_qJ3 z#wdy=4f0o)-BnqxrEwh}iFQM@o1)#4r6kL3Sw7C-4$3LqO`(#)s)qEo8??ew;53y6 z?F$XbR_Fxb=iHQfn@tTV8h4bKyBckyj^{R=(Dl8l+f=LTOet#^4*k$+h(*Ih(?3wx zdr=j)6)H~!8s;lCzggJx8*Zpt1;?ugzFRM>#sx1C#IozTVNpXOKewU5xZ&4Xd$i(u z>fU~HO9fSDt3k_H#jiPy4JUAA-!&TH*KSM0%*#)dllJ%OPRLSrJ~sZgYK8lOy3=%a z)P}1bES2ZTm>CEO1m>v+BuE6=F%B4@VfOzOVtg1;HnJW%wQp9Py)J$;P%Ra*Ph`K^ z>j8;ibJBG5O-8;XNVxyNL zaO?hlP*Wv0>ei9CgsvG4{?TNuNu7EWT?!fTjL;hu#xT(B^X2@9WyHYr+8mMK|Y z$Eg%PwQwIC!Lu)&EDc#Xtk7`0oxm+|J zF8v4rhmRxad*b0-w^8SW}bPy;6I-=Wz?8@fG?L>s0(+(z;@dUT!+o@sE+aXpD)W@c%9lNPI!jTxNd zPQzQ6?Nrv5VIoD_BYX1+l4l&2v!6i!2~#%f>-PLpq}mt~$)nQriQoM3XH-OgD4U1g zqCuJAZ)iJb?26o4G$}0p(p^(}Yf(~1{zg_r&deqMz=;Hm#~tgq2>zsu6?qbm2`mv^ ztVn7Bo3y+`de3vP7D!Kl*SN_4OSp;;I8~RSa0Lx~h;Oli?{E#@^XvKpZbc*%k!0L5 z-X`$|qvw#PW-@1z`UJhCp-YiyHs&MR9`Vd+5`3Qi5g4=2a9`K;f1%~*Ug-B|rQ4%S zr$0vm^gN&7UP%ped&Alt_Pk+&&8u5hFV*`04= VWU!XYTD!;8l6Nh&mLl}a&jIB)f0Fk$C^MW(iebA!UAP(s8SZFe;hF^Gynhq literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/VectorF.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/VectorF.class new file mode 100644 index 0000000000000000000000000000000000000000..d5ce5bacce1992417987d90905ea28a419b1d7a8 GIT binary patch literal 1568 zcmah}YflqV5IvW+^uY=gkT-&g+7@9c3MfSskP6zW2}Gx|mrp$p|kz5bt4_ z(RtY}h_@KQBRm$f6hR8hVx9!C62w!5fMM?!Oa+xzXfK%dzI(vKl4}%Qg`tdL=ZlV& z*Y}IY@qv{q>2Dp&cGD>ZpK0frvTWIwyTWZOzN6q@ck%@5%2>Afx_q=}7T+0r0^gHy zaz*u~V>Iv!vGCzkn9&pNK<*c&IN?WQCpV2Z0S>;eCEjXio*WooKX z0*ct_ov&7vjchyRV$MukqJvgzYv#~6F*FQfNMWGfa+Am!uA^VWfS4Zi2JuY8D%Ldg zp;yDYnCG(HkXTy73v6oG!e$UJHM~MbvN8%ISE#GdErsX>z5@Nt-XS$t=&#pPcCCV* zE;xppHRM_Nat_DkkENwg^-1KkY3)#3ElHEzE=SO+C}DX|PLhQ3 z7T=(qqh#}qX*CIy^5)YVh^KLrKZGcMG=A{)p_iT#;kZUc*UCz1xds{GAZUlV%fd$w z7)hK%C4Qi7_Z+@6_#1BEE5mIVq3z^l5X8@27e@I3v}!uWaDzLAaSz(6K`$mw5#YD| z0zodJLmK}n!h2^3H$st1p$>*RnrX*LI)Mdt+Mr$ZXeW4H?P#0Dwy~4}p_w92l}6l- z7O<1(z#aBORX+O%eDlp$Ez9rRSps9HOjV!lF6X=FeD_X%`RBXu z0j$6$aV*0NG28=!W-#b_Ke@In->_@0Qd zIBM~tgfk+tB770!F^UPXCdE1sx^2y>tc!yg_!U8)=0M_`DaU(4W)Tb*0)_dqtMcs z_C`}<-iYJd*_7q>XFR7rwKr(;YGPaCxQ@S0p`xj|htS)+e(pV^({b(X(JU37 zu+zTBV=V|=)T2k+W&06bDTPYco-CBupvn4+lD156SA}JP8~rCc=li!^Cp5n0QmHlvpRldO)oEMLdKSg?T}g zFK|O4QM?3$8Eb6FNoP|#J;(LiO(bQ9`$Rm3w@kc^cTAiTaaxkRD`KOJz9;a`;H-)F z#eGo32O?I8I4ASYi+B{RQG96PBU~`?F;*!o4nlTE1r%mV4N@bPJDA$hH%vy8?Lo^* ztx#ARG+xf(JoWU2;w=ywYMT_Rq+NW5n%Xr>E7@-{Jj3Mkn>wed*lOu!gflm}{R%aF z5z^x$ywn@qL22!bQXv0qDb$uCT%oJZYhugdhG}!~sXM^$AbCTWZMN&%8RDOEc!1`h z^WRa{&Jyz@o+~2+&ZFwH#yz*q8yy?5eH)AU+Ao8`y{JY=D9GQVkPt&_azkrUO>1&d zYcf%5@=$9sLTmCtYqC;nvRP{qT5A%7x|;dOc*@oEI#EFjn3KE#l{9h)CF@au9Tjbo&XS9-u78C<_%MJ`I{F*Vs zT2z`qXK`^b*?SF{WV?BGfgO)1Y`id8GNCj3oVYc2!= z*+c#pTT`KV5J@iNgINybGXl9d4G?*m1;}3Bqau(gjx4!c2IPxCAp3X$i$IDTX~|(p VIgl?2 literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/classes/release/com/polites/android/ZoomAnimationListener.class b/gestureimageview/build/intermediates/classes/release/com/polites/android/ZoomAnimationListener.class new file mode 100644 index 0000000000000000000000000000000000000000..1857530cb3ec9ec674ea1adc7377991facd39299 GIT binary patch literal 196 zcmZvWu?oU47=-Vywbi;f`vmP`z&8*fli(mYxWzVg;sK#~pX? z&+`RfhgFVcj)IV}zcRaMN-1S^Ar$Nn?0Tz%Cd|qoI`e&~wKO)O&6MAJ<5V#0k7f+o z>tWlehayxpJJGW>L61WDW?<8ZzXig2stBumD^9mg*C8VilK2lu(zuNjh&o3W2_c_2 F7GE{BF^m8J literal 0 HcmV?d00001 diff --git a/gestureimageview/build/intermediates/incremental/aidl/release/dependency.store b/gestureimageview/build/intermediates/incremental/aidl/release/dependency.store new file mode 100644 index 0000000000000000000000000000000000000000..8b8400dcf9e65fb815794fe016943dc09d0e8a05 GIT binary patch literal 5 Mcmb + \ No newline at end of file diff --git a/gestureimageview/build/intermediates/incremental/packageResourcesrelease/merger.xml b/gestureimageview/build/intermediates/incremental/packageResourcesrelease/merger.xml new file mode 100644 index 0000000..2a7baaa --- /dev/null +++ b/gestureimageview/build/intermediates/incremental/packageResourcesrelease/merger.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/gestureimageview/build/outputs/aar/gestureimageview-release.aar b/gestureimageview/build/outputs/aar/gestureimageview-release.aar new file mode 100644 index 0000000000000000000000000000000000000000..280affc9584f36b2eaad1edfd562772662a943c1 GIT binary patch literal 26729 zcmV(%K;pkpO9KQ7000OG0H%d;NAdYsoUH%=051Um022TJ06}hKa&Kv5O<`_nW@U49 zE_iKhZI3Yz!XOZZ_x=jPUa*syrJ zENFrkv|hN-9q^ZvX%b0001E zY+-YAWpgfSVRD?hb8u$wm+l>_W7}58wr$(C^Tf7o+eyc^o;V$+W2e)xar%8{rp|nS zr{>h0xofZg*2cB>=f2k3RZB@090Cpm1O^7=J=|Fm+aG1 z5!ipaSWVbJ?+WoZOdak2al?Pjf&cd$Cr3MLH*?qjfF@2S!snV^>$+2gg+bC@3g0C|*b_eIo;B1^*T~IsiwWg}wGKs#>p8y5;`9(nV+x5YqpvDo2-p6BVbXtB9wG{2AZt zHTWx3HZWZXOnM38J18d&f;2HKGGkb#>@Y=QX%(hVko=|o4+GIETIDLm--5eX9Su@p z2823QNw4#U3#*@Dm9!tTP0V6tFk}|9S$TIeKu*_LqObS&Z-F^pDB|E(8byS?D);J_ z8U8MwiqUT>e38XO;LPy*#^|Eh^+GqRl%8Zf5+%>rrYfipId>;VFYWmelouGqGu)1+VTrQ`=_Nx>9 zRcB3z5!Il`G`L)M-9i@AqhM{S=`!q!-Z|&I-9915x3fj5z8@=fVq-3vsH{PX@4ue; zWW7(zqO|hd^n6$f^qW7lZD~Yh^%rHev%IH05BtoPgVm|1oNhvK`3fk+LezKK7E?4d zNIs~Vg)+re+NSYIXQMA(?(KN@xsRdR{+z6W@$$cWPZ`i9l|V)Zv9boG0oaY}sz%lr ze`eDVEQRV)vUaM!)|=PL2ThNoxk+^bNid(&b95iyYk#NMig#f!sgRp@((n#vTlDl4 zG)v-3k7R|IbeoMq>D)vG-C1$Wla4~_vCT(%!uP~b5+oo1jWot{gS`0`nv9H4oWT`u zV$JgPSZi3W^#B31;tA;O$XHg~RnTDU5sfX?IF4E6=>{8BLc3eK2EQblW)OalBTb_O zX3gjsSwh;VdhfLBvuC0yP?C*@=pO|da3#5+<`~M-h0mxWUVG)P?oCWy_Hz0R6+V zLH*tNgcK-PINI|G9*XlzTq?Rz8_6CErNtEMHJ-;W>y}UPuFCj_g;I?@61ZjPioFt#eQqU(Z*&o$8FnYT1>x z@(R)T5WfSWwTx=TCo*cnd%5U~+w{Z~aej1<$cibuM53!_^%`9j5C})6qBzja@qU5* z(~E?uSt^`BK|px^S~JCe;YA|u)^=v1jt&;qmj7l)VM)^pV8Y1ajyISnHy@bJWsI4p z8m2=_ax7pdnPQyfL71DdtQOes-!&;2-$4YYwD?g+({f}K+_$T{ei9Wp{sB>FERaCo zl)fZyl8w}~J-UJna)5Egm?MB3La^J5HBYS(o=DeWn66Fbv1oC&)qssz3Gu=VC)+Ao zK=eIAR8*ZnTRf__R(IrGtU7x8zhYO9>@3y&sO0#Gk8{feURPOX-WX~w@>w8I`_3=c@p%pI0Rq`*3-;2iGl5Zwa2oA|f}yW21D z>}&BDat>pam=JnD#kfaJuMM|V!d~UF==;_)vz`wA_Woa>g-Gp7Rw4x) z$4^h3yCAQvQ3^uZ;2X<;nXc*)BivP{(%Or-jv!+S3Ae3f=4w;9!XjFN1}kXWJ22Az z;Q;zXUkeQIh9RRywWQDFlT-+m_}|crY4A_z(FWY@``jMHAGt^AwE6l|M+BStxlX^E zG1l^RBby^&IZe7fm}rsbJmz4nQVgWw@afm;d-`<@64N49f`_HbcQF_&XRFty5`uLa z&ECK)pB7YFb@XYpL8pOs+rgWQNE&pv4(mFpu5G^Dz721%K5Eu*xjTkY*^`Vd5gk;8 zZ_THj6bjgMy(%VgqKW+7)u@qvMjVaNbC$JfRz$-YgIgRAIvfpL>o`ZCxTnV@cx;P| zcFF}c{i}pqbf@>V?K(75J#}5}?|Ez8cIph^_Ewzp!4}{VX+R~O*do1i&la_i{Ss(IRh?hk z-cWOSH_JGv>%LMh8?IEnx6x$aQA_X4*#nx95GFRJpL)!#Zk4*Eeq4)N1w50!D&pR$ zzsL`QyVl>qj4e#?B6D!;!J`z7Cz+=xM`(15_P7?gq+zjJNplO4HY(%fv`L~hCXpWt*3`18Dl-P`Xg z(_`Xc^)HO>z*1UPHVMkqW_Crbi!-*-C`K%x6#s&!vZ*t-mrsRvtZM|Eo0fT)#-Z7o zAl1r+x>pHk_;RkGH`MPmSc&ubuB4BB4Ml2J)`7e=&XJmW z-@7e(u@3Lc1bn;m1zj`EGEO4FlFFLp!wo7`vT;S5$co?cn0*dx*_YJx zzb{i>fz+Y1tP)7HZ*7;O;`I_O-(d$VgKZ}3t~a&(f>%-f*;04-6*geAAyrY8p5bFE zQve4emWevLN5G8CBaACXoP&S&{hvzNK}<%5{+0vBzy3n?e^dHTfnh58j!QzwxvhB} zunON8kYSF<5Y#t`jg=oDF>X|tL|Cqs&_NyRUEwsjJ=6SP_XSDF$!W<6pF!WLM_#kR zXkaH6FMs{I`~`gJ`+9yw7~tS>SDUXM9BxI`@Y8#8PEo>(k*iqj2@o$lO?a>sc?eQl z%tI%xBNh z;%tT*5zGB)x8=Z+$65#Y87ADSi7me7B>Oxu;ZT9vR66WNC5(KsuL z8B26}k;h8K%{u;>-czPDsFeQrkusm#jmD>r|I}Pc4Pp3n-hW&&6VNv_H@KHjwrMvg zfuzP`!Z%)%NakGY)*mRKtuvt2I*N%KI|vIJqqQ%^mGCX)7_?@-$pOwN9xDc? zB}cbq&L5zahtuf3`Xi{1EymUW!?ORsbOl)I5HEs%JA$#le<}3;1qPDlu5Ruw=F;}Y zmgXAP=APut|HeX^n(Y6_!Y7CH!I<+VTba;w2@L|t_w&*Ln#zpI!pKlU9Y|OOJj=8W zE{{XWXH~sKFCs3N-2mdCXQW7Nsz50rmbRXJoB-Cl-@sZyzkn~$0nn?`LgES&oNn6s zeH~nyOKF;heV#{jbo4DHB@?Mv(WU8CY&iR2oHNsL7Qel-t*h?%_0>P$=8*IjaBqT6 zv-h<__^z_s&WKo2qZjmK^uxuL&c21WwpqtS3|3NYss3u2NVeyNYVX=&FB4#;B&UI@ zGv6Gt*V(#*s9IP&x)@P*zEq`R3Wsksd82X>F?>i|C@7CV$cgu3LuuQg=C?3H3yV^&@SS#UE0noFF7IR;GT0SImG}l>xkiTvc%gv_~#RREQhW!wk+24*GxaXblTg_ zUV?2DM=(cQu?A z#T~kej1BYE6s=-KKV#@VV;)b-lYLBS5<_8$2tewQtHEy;32qi2sYt!B)X(z@_ZJhG zNlzuq58lfZMY^y&fd3Oj)Fw|)oWCGug8x5&$nqck&Zfg(5czXTJ(9cFAmFTNkabeN zm9eXV5emW3lv0yosY&h?Az7I=Bs0VltSfx`3K?M~CJ9v%3>4glWcCn^M#f0H%yPBx zn2q=F=>K{LKp5e9wrGvXKw0ZeBJ0GRs$;B@y704zV{od~vf7;=7s1yV$0WF4ZS+yu ze<*E$qnyW~5Jl#rM|4>`OSeJg3G>7wt?3la_{Fj2Rms-`1c z$8sY3*GT(Fd@NgfeiU);v&qV#2Dv1|vi|f9*cqY@DL$YLPG4MF6jB{Q8)(}RhJeuC zG}-6^fW~brHizQCmPzMi8OtXVMZsQTW%>MNuwyZgTTl0%Jsctg0pE%Cq7Y!HMH1qV zNrT~uz2a|~5Mli8ik&6c=rWKe{lmUfW!v_%KYLcI>gVS6D`TsB+e7uq=Hih8pL-Y7 z-S|U;O?Ms^TN91#kD0M09??Cv8NH+{^YAO0X^i3|u}D%}%!vZBM?`6nfspS;k~_@> ziO<-6lXFsKJb#h^gsNeuTd?X;w9FquM>u*T=D?yr_tc4uGvzI^f)P?!x~6xe!wF0p z4dMVo@8%<%E@-$d-+0BZ%n`l|hW`0C_L>6ttXqbCnVPA3K(f`EwxLlqMtMuv%j zjR6%8pCrf01de1$gVgE%taPvIK4;35Tr6b-dy`b zA+dNx4mx7<+4{#zV zdEC_Mn^{B&Mhfzr;@(g}&6!7k8!gBxJNdm2+3mH!__>c9fbpH#E6cNQXji@a8PCx- zPV;k{(ct6}q1!8Ev;Fd3K(TLz=&Nx_*kQ-`nvv*^U*cNvlkXJyPfURMqTG$6yzeeD zQFMaWm1+JPc}n$Y0NV{tfbZb0Y{avS@65N)Y1f_Wwf5L+-YdU3vB9J5_1m8H^cVLCI)IqrEhM<%bB@n-B(_+}jVU3u=UY4-`ftcJ-TM3+gh zM&fU*XV%=2&gk4DVJ=KsX`|Wr`-L3Z`-!4QOi;t#pa3#6nvf*;cq680lyqlDHh7_U zVDV zd+Rvx)tT*CTf8eImNfbk2hXk?AvOkl5yA)ovqz?Lru3~I+&dFgcmdX*SiYE^#3a$y6*{QRdC*gOl(p+@-ShC-N8U zXKm9K@&NoFviVjS3|nn1R;Ih|69_J3u6yQ)eje+yWd8C{m(9b%K1VdZpTu_B;n<<; za``7s3Q+p+9L#G#qi+S*YV!HzlLfGg7w`UxjbkTpVSFUQS$7v1vsLwi-qIz7@2?2; zjGAS0M~-!N@X)=VE40Gv?4SYEm$wm`UA}pQ!jG?I?8g8f*ZI~ef!$x!mCI`zIFGNi z+o1j3tl0O@!)bB(9-5N6#HXO7-P3>UJ;T6-g@-S;gC3{i1LyD_LuvItkBtU4^|bA0 zHM27HFZ>EMHHh*Y5x_E5394fiG-la(*GM=H8ZZNNAce`CUnrQ6+=iKwCdh%??_g$(juf@0?-#-7dtOO-!$zI{RHN z{!`eW?55Czm%Y7arLWnb|~}RG8#%|AYnVe`-B=-F2FhI-vn-J zqh>;idMp$(R)1^b-UkQVsddiF+5RaStjkyGU_Grm$VxMqD+f4IU*51rMM?kU6&wX5 z;-^R2dKWHjV~TQ>8N&G3gRO{gsu5Zlp8sJlnq-AIB8P{=HIFL$R!NIvs69kl2!wsM z^)+}J!)|89Xf_C`N_@~6$u2m1@ELA_kpJGkGVD2Y$;H0qfT*dBHq}x+JpcYW+gP!H zR$qJvPT&^{Sq*yT&7FZ?|qC#20O2TMS(+;G3v1dU@2 zSuHnNw2ie9@&`qPak~D-(jxY+Av?J@!Mu!woT@GNmvls=r{O_~rKVbecWOL>r?Js` zM0cxY&}=^06ic$yZ@Agn%_2nC-yb_f62TPI4JycU3C%(xupj~4Bb1NKuFj?r;|TrM zst#+mK*HAr?;WJyf%8D zj94Q%$_@^m)Rt^{e6oIGWI`U@!oBOc1jrxpj1ytUyu|a_Muo%hE;`<+4PdU#O`fs9 zwPmA7;*yz5uAU+>c3Q>!Sk=)}>!eCVo9-S~uqL+0`nt!jxpYCj;BEcuiWR3N=5H zeya#?F5w>y+slx`!n)!eHccKOtU?7tLF&GUSSWn++2ogy(1N)-vG?%d(MlkZ|HQ9H zy&j&|yW&v1yB(ly=;sd11CO-}6PLjaj;9usTO48;4y@G=mUtfl2pGje;R%64957>7 zAwX@E)S9_uDmlQm8KGA5j-z|B;AG!wtX!}^9!WgSw4z?Dk@LP;Xh@jYJ6wl?#1|mR8ehJ+XP5nl`rKQt+6(OvD3095vte7Z zqjcnaYrFj^GnWoNkjrH6=hXHXiok(eTU-cXShZMCI628cXWnN91?BGban(jXA)|vN zX`}Me@x{(*32F?q8UqpTKW9$&ZdDFwoLL#kASO$B@zX;nrk~z6ky5_-Q49*Dj=XvN z6iTNF(Q8v?rHG4y*^Gs#t9QrW?&&N#U zV`sg9=(=)u<&&GYQb5I9>`HXJG7Uvce0ic8r48q*HjMlu%hc*Jjie$H4tR2wyyFuD zcV@FT2f&xGy_r@E@FOQ7N+9hh^VUB#eJarz3_4T~tyg$NAe(C;0vidASc8P+x>*Rh z_%1x|IXAHddJJI{ta8v$q$xYN|JToITBM$$4m_dOxy|zvQ7osxQy+7ujx7g8YBdh) zMRMVoSFHW&v4ZktDM-vfPa;#tc@emyKn_3&!(wxxLqF~mo~WOkUH1Zqx30~fi)T9 z?j5C7IxRao+SMVX7dk}^nk2m;WJWB6uCclWn^X4-Q{JF_diviI2?cP}HHwh9^AcW_?|Js6#yy1eSkC)-;neTNKQw^yt~x&Q{p#iN<~ zdP>JZhK7W?StKYP-l^E=fGoOG8_C+m13~vD>}E9C5mNbI)zh1Y3VEM1k&c#55!jV6 zgT-1{WMWkce;Orr4x)IqcRiWcMt2>?m~~~1f3FH9`OjJZb1h|y8mzG4{(&1{5d({3+ZT;-Y_PobHm z(^N&?FX(duGqOmhw>U4l`kxA)gxq^hj*7uhRD@(aqY>U36@rTeZZFWgSa&3N%po)% z%E0BLf{rJAMW97v(&&?ACW)UE(OKm0-(9}>RJf_?GL;wNFIZdh?t5tgKS%kLYhoyy zbTYm(?|f(V3R`VBdH5<)ELn99z!nc;G&EOy&+$dr6Krx@IJ|If{tW}w)iaZCbY!B~ zvKp2nF|S&Vh()VPHsLWwg_?^ye}s1{FW*---F_sf6nlD0&=%`?eT-TWp@OEi_>_QG6niU#$SR8TyyaAavh%A%eO25Wha*AR`Gz+JI) zVS5bE;T2X8SIUM@jo{|>URIuIk$QgX`T`m9-Tfu4M=Qnf;8d1 z*q(|lWX)?LV;7{_Be+QUd(y!%MeXJE$Wd2EF!;|jJ84drKOD+IccrvluNPjDHrD7^ z+bYM4=(ebEp~WNA+NQm5WxjP$ltL7ZJdDP{c?8Ikxw+9QsXvudPW2V3TAEG?xMoAs z+abX%KC)7jbjXxH+?ZpM@mW`-ft-KNj{F*+{UpaIx<%LKtxvjT7uVqn#&@PP_b#)& zWz*+uxjG%BO}DqajRf|Ju*Ib!=&)}yiNd6@_cv=-M&ZBP8wa-@B=>M2MGNNPvL$H! zY9L!-NgBN2I)(rfNSOW-G}fMRWC73_=EOaPBJaSOwi^0!w54CO-WX#MTRHXO7xeBO z(9A#TU?%V!L-!KiHUs>u-=lZ=fBHf*@9+RBKAMiCZPxo9Km`jNSPVp=C=BCu<>dk+ ztKS=m4t)}Du9e5Z5 zZeV+*m7FY~znxI!ZEWb2u8HCBe1G`B<`n5AcDnWkB$)f)K`sQ`31dL>g7J_abCpH0 zaT^b@O8VIqCS^GJmr?p~y~gv)O4axJnuZ43T+J4@$t?;0E51uWpF~)QZuNGB8zAex z@-|GcDJVotUGO2D95*||)4!|rCc$LvttqDfmPMz>-*Msx{lN?k?c-(PNveWTLf?kw z!^dEury9@YMa?jblteSVG-|YoU~#NC@!8HaE)}(zS}x0>dk$kVks#(nGAKb1vP8*u z)^I=eTZ*_iuoJfz5!foTvsVN{&KLt(G-rqOu243qRqSzVrgNH4Q2L+RrZG;*D1uE8 zxS=e;O8S~R75(JjJ^UnJTdBuvcA)#{{gVs`D<7al$h)F6#3bZuhouBGgq2W}_$Nb@0UAElJT9RYY2$V=S@W>*{g%M|_tSz4>_S_@kUU z=crem5Yu8)P$F3K=nW8V{hs~%Z(XeRn|$|Qw=-nk)SP*Aw0O&2|J=4SB=B8INZMzCZ~{SDHu zZsTjw)9OTsa%YKTfav><#9^PtcF?3MN$T+ZWv6Rf=<>FHnUE+l|Lj7S3N1E zvl21obc5%d>6~*fcDX@g5RZv=?OZXC-*$3Wve;R70s10|NJWPRXi9*T&fT zRKPM>vn5LAV2+qcw`#6z1=TjD>3OSV%z0LOQ2t@e;QQ2x(6=(subH8sd<3<66z$Wp zZv;6qlaFMXjn<^PXy9x~B~g0Cv7&5{1n-)~wbXNLOLL6{){uD^KGqvwo@6Zc6xE=^ zWVn?e*YIn1VpAbdGKE1Z6TWP0N}vdG!BFKQ;I$z(6P1{_S`Y~IAy68H?YR6{Z1W