From 52d96580385fc5e5e49e131a8d1da96febe0df58 Mon Sep 17 00:00:00 2001 From: Dan Roundhill Date: Tue, 19 Nov 2013 09:35:02 -0800 Subject: [PATCH 01/43] Use software layerType for post content area. Fixes text overlap issue #46. --- res/layout/{edit.xml => activity_edit_post.xml} | 3 ++- src/org/wordpress/android/ui/posts/EditPostActivity.java | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) rename res/layout/{edit.xml => activity_edit_post.xml} (99%) diff --git a/res/layout/edit.xml b/res/layout/activity_edit_post.xml similarity index 99% rename from res/layout/edit.xml rename to res/layout/activity_edit_post.xml index 1d46c0e8b178..ced372d52bec 100644 --- a/res/layout/edit.xml +++ b/res/layout/activity_edit_post.xml @@ -41,7 +41,8 @@ android:inputType="textMultiLine|textCapSentences|textAutoCorrect" android:minLines="@integer/content_editor_min_lines" android:paddingBottom="@dimen/content_edit_padding" - android:textColorLink="#21759b" /> + android:textColorLink="#21759b" + android:layerType="software" /> Date: Tue, 19 Nov 2013 10:07:00 -0800 Subject: [PATCH 02/43] Added increased line spacing in post content area. Fixes #304. Also increased size of title EditText font to differentiate it more. --- res/layout/activity_edit_post.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/res/layout/activity_edit_post.xml b/res/layout/activity_edit_post.xml index ced372d52bec..673865efe164 100644 --- a/res/layout/activity_edit_post.xml +++ b/res/layout/activity_edit_post.xml @@ -29,6 +29,7 @@ android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="4dp" + android:textSize="22sp" android:hint="@string/title" android:inputType="textCapSentences|textAutoCorrect" /> @@ -38,6 +39,8 @@ android:layout_height="wrap_content" android:gravity="top" android:hint="@string/post_content" + android:lineSpacingExtra="4dp" + android:textSize="18sp" android:inputType="textMultiLine|textCapSentences|textAutoCorrect" android:minLines="@integer/content_editor_min_lines" android:paddingBottom="@dimen/content_edit_padding" From d072b06d88b8f575f22ec89290b7a9452abfb0db Mon Sep 17 00:00:00 2001 From: Dan Roundhill Date: Tue, 19 Nov 2013 17:03:45 -0800 Subject: [PATCH 03/43] Also set text selection end, if it is valid. Fixes #324. --- src/org/wordpress/android/ui/posts/EditPostActivity.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/org/wordpress/android/ui/posts/EditPostActivity.java b/src/org/wordpress/android/ui/posts/EditPostActivity.java index a450a10240df..eddb994df135 100644 --- a/src/org/wordpress/android/ui/posts/EditPostActivity.java +++ b/src/org/wordpress/android/ui/posts/EditPostActivity.java @@ -935,7 +935,9 @@ public void onClick(DialogInterface dialog, int whichButton) { } else { mContentEditText.setMovementMethod(ArrowKeyMovementMethod.getInstance()); - mContentEditText.setSelection(mContentEditText.getSelectionStart()); + int selectionStart = mContentEditText.getSelectionStart(); + if (selectionStart >= 0 && mContentEditText.getSelectionEnd() >= selectionStart); + mContentEditText.setSelection(selectionStart, mContentEditText.getSelectionEnd()); } // get media gallery spans From 58c948d79fb77596927d83a7e22bb32cc2d8fb88 Mon Sep 17 00:00:00 2001 From: Dan Roundhill Date: Fri, 22 Nov 2013 08:58:40 -0800 Subject: [PATCH 04/43] Post editor switched to tabbed interface. New fragments for editing post content, settings and preview. --- AndroidManifest.xml | 2 +- res/drawable-hdpi/ab_icon_accept.png | Bin 0 -> 708 bytes res/drawable-hdpi/tab_icon_preview.png | Bin 0 -> 1442 bytes res/drawable-hdpi/tab_icon_settings.png | Bin 0 -> 1434 bytes res/drawable-hdpi/tab_icon_write.png | Bin 0 -> 1216 bytes res/drawable-hdpi/write.png | Bin 0 -> 1216 bytes res/drawable-mdpi/ab_icon_accept.png | Bin 0 -> 619 bytes res/drawable-mdpi/tab_icon_preview.png | Bin 0 -> 1289 bytes res/drawable-mdpi/tab_icon_settings.png | Bin 0 -> 1304 bytes res/drawable-mdpi/tab_icon_write.png | Bin 0 -> 1148 bytes res/drawable-xhdpi/ab_icon_accept.png | Bin 0 -> 908 bytes res/drawable-xhdpi/tab_icon_preview.png | Bin 0 -> 1617 bytes res/drawable-xhdpi/tab_icon_settings.png | Bin 0 -> 1622 bytes res/drawable-xhdpi/tab_icon_write.png | Bin 0 -> 1304 bytes res/drawable-xxhdpi/ab_icon_accept.png | Bin 0 -> 416 bytes res/drawable-xxhdpi/tab_icon_preview.png | Bin 0 -> 1971 bytes res/drawable-xxhdpi/tab_icon_settings.png | Bin 0 -> 1880 bytes res/drawable-xxhdpi/tab_icon_write.png | Bin 0 -> 1372 bytes res/layout/activity_new_edit_post.xml | 6 + res/layout/edit_post_content_action_bar.xml | 20 + res/layout/fragment_edit_post_content.xml | 143 ++ res/layout/fragment_edit_post_settings.xml | 183 ++ res/layout/fragment_new_edit_post.xml | 16 + res/layout/row_post_page.xml | 1 - res/menu/{edit.xml => edit_post.xml} | 0 res/menu/new_edit_post.xml | 9 + res/values/strings.xml | 4 +- src/org/wordpress/android/WordPressDB.java | 2 +- src/org/wordpress/android/models/Post.java | 33 +- .../android/ui/media/MediaUtils.java | 146 +- .../android/ui/posts/EditPostActivity.java | 6 +- .../ui/posts/EditPostContentFragment.java | 1479 +++++++++++++++++ .../ui/posts/EditPostSettingsFragment.java | 658 ++++++++ .../android/ui/posts/NewEditPostActivity.java | 333 ++++ .../android/ui/posts/PostsActivity.java | 12 +- .../android/ui/posts/PostsListFragment.java | 10 +- 36 files changed, 3040 insertions(+), 23 deletions(-) create mode 100644 res/drawable-hdpi/ab_icon_accept.png create mode 100644 res/drawable-hdpi/tab_icon_preview.png create mode 100644 res/drawable-hdpi/tab_icon_settings.png create mode 100644 res/drawable-hdpi/tab_icon_write.png create mode 100644 res/drawable-hdpi/write.png create mode 100644 res/drawable-mdpi/ab_icon_accept.png create mode 100644 res/drawable-mdpi/tab_icon_preview.png create mode 100644 res/drawable-mdpi/tab_icon_settings.png create mode 100644 res/drawable-mdpi/tab_icon_write.png create mode 100644 res/drawable-xhdpi/ab_icon_accept.png create mode 100644 res/drawable-xhdpi/tab_icon_preview.png create mode 100644 res/drawable-xhdpi/tab_icon_settings.png create mode 100644 res/drawable-xhdpi/tab_icon_write.png create mode 100644 res/drawable-xxhdpi/ab_icon_accept.png create mode 100644 res/drawable-xxhdpi/tab_icon_preview.png create mode 100644 res/drawable-xxhdpi/tab_icon_settings.png create mode 100644 res/drawable-xxhdpi/tab_icon_write.png create mode 100644 res/layout/activity_new_edit_post.xml create mode 100644 res/layout/edit_post_content_action_bar.xml create mode 100644 res/layout/fragment_edit_post_content.xml create mode 100644 res/layout/fragment_edit_post_settings.xml create mode 100644 res/layout/fragment_new_edit_post.xml rename res/menu/{edit.xml => edit_post.xml} (100%) create mode 100644 res/menu/new_edit_post.xml create mode 100644 src/org/wordpress/android/ui/posts/EditPostContentFragment.java create mode 100644 src/org/wordpress/android/ui/posts/EditPostSettingsFragment.java create mode 100644 src/org/wordpress/android/ui/posts/NewEditPostActivity.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml index f46d6c7c1aec..5bc7399c426b 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -101,7 +101,7 @@ android:label="@string/create_a_link" android:theme="@style/WordPress.Dialog" /> diff --git a/res/drawable-hdpi/ab_icon_accept.png b/res/drawable-hdpi/ab_icon_accept.png new file mode 100644 index 0000000000000000000000000000000000000000..0332a2f2deec56c9d7d0c8cf2b500b08921c4b1d GIT binary patch literal 708 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UIIA^$sR$z3=CCj3=9n|3=F@3LJcn%7)pVryh>nTu$sZZAYL$MSD+10f-TA0 z-G$*l2rk&Wd@@jkv%n*=7)X17vD?XPJD~AXJY5_^GVZ;dVefa?K%{;C-E{?wVtfrp z8jc7~uwd%woH)_hppZjCi;YbzOwF&sA&EWjK!8TQ9a~)J=^aOXm;4a@Gg(JFaLV`E zzQ-+*HCKv?zvY)!+o}STQ4wgn5G?=v$eD9UFO1x-~26wj!r+d;s@Uc z#yw9xA{wW26qtu6vDK8v-><3wI`do!j#><{m2EKnzkb+Z2ssA{XUS%`NJ(bR&d7jliTiB za0^WQlD3AkQB&xWX^nPc%aJF`!oC}1X92;#n0*W;OJ|laSy}A|MwDuaYeY#(Vo9o1 za#1RfVlXl=G}bjV)HN^(F|@EUGO{u>(>1WLGB9A;zF;|uhTQy=%(P0}8j4>@NCP!U uf@}!RPb(=;EJ|f?Ovz75Rq)JBOiv9;O-!jQJedkgO$?r{elF{r5}E*ES_(P< literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/tab_icon_preview.png b/res/drawable-hdpi/tab_icon_preview.png new file mode 100644 index 0000000000000000000000000000000000000000..af0c31de8ac30295b5277df9c0af7447edccb3e8 GIT binary patch literal 1442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~NvfS(sWlI=L8`IGGw68oC-gT3A@P7&=>8x|tYR zxLTON^t$9Hm*%GCmB93-AoLpJ)C)=sxdlL*T~doO%TiO^it=+6z@E0s#O)RXoaRCG zrr>sqAx^#eK*#8Vq82HtVM4(417gAxE|3FH`l)%q^j-u^*y4$a5ey7WBAzaeAr-gY z%!v0plT>M#$R5@h^*Z=YW(vwCJ%PmwXIzuoHRIvE!@MVyzA1dxEtoZv^XI&`C7ikz zi)T)-XwA33PI@5| zw9G0^xc8$&^5UA~TdqxuIlLt73|HV+&zTG5G?$Cqj64u<*{}Zk@_Q8>?NzRJi7nd= oT~6QEVp3p$qyH=qyc-x9nkM{Z=2X6P22^T#y85}Sb4q9e0Db}l_W%F@ literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/tab_icon_settings.png b/res/drawable-hdpi/tab_icon_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..c87ae4391177bfa18de9ad0d60c80de1c8d5b61a GIT binary patch literal 1434 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~Nv<8#|ksIvW|AIGF;&-PPF9!otGE(Am<`&BVyU z)xrd(*Cju>G&eP`1g19yq1ObbUQlAlEdbi=l3J8mmYU*Ll%J~r_Ow+dZnqfXG!Lpb z1-Dy_aO%|uIz}H9wMbD769T3m5EGtofgE_!Pt60S_ab1zUJ=2vnt_3d$J50zq~g|_ zNbkI60|DPf>xvom0=|jvW%#}2&0?7aC-*&KSn=EB?sq1Sn~UFc@AB7wzmTWIABRsKi*<4iS3f&jaV&CM?(P|zb(tF-6a+X}+QbU|MU&?jD@-W(AJAhPus>(( zjGa4$PIMHmG2NuBK7reh_1}@dXH%0m7*61i3o6oQd7J)Wci5WrJK7P)Sw3tuSl&=r z#I!T1UF(F6VbN!=2<7N>-$T;WoIhUIDEqxRk*|4{yUOkB?$*9tZ*!T?e{g!hlTfm9Qx>JO0=8_PhUv96&KflafqH!xQv}-*_bHC!`gG)}ml(L-f+uLyd ziWOI*d%I9o5X-xX3xc$mcIiy`{-lW-_MG2K|M)t7dxWzYiQ;dD-<$JPa?3kM6(o_19NWY3b?e=d#Wzp$PyA_XHdO literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/tab_icon_write.png b/res/drawable-hdpi/tab_icon_write.png new file mode 100644 index 0000000000000000000000000000000000000000..e48b544ba0f2da361338cb5cbf28756a3605b02f GIT binary patch literal 1216 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~NxVnm8J`x|o`qIGMN^8oC-gT3A@P7&=>8x|tYR zxLTON^t$9Hm*%GCmB93-AoN<`)C)=sxdlL*T~doO%TiO^it=+6z@E0s#O)SSoaRCG zrr>sq8BV?WK*#8Vq82HtVM4(417gAxE|3FH`l)%q^j-u^*sWqh&lngOjXYf(Ln>~) znR$@+kO7ZtaJO-FiA+&Cli3S~yA7rHQl4`D%z4$u{L&Tb&H0KBT=Rt$H!jW32ytKqqJPm3ln*eZ X@+^8&zghA*s7^>bP0l+XkKuO*(^ literal 0 HcmV?d00001 diff --git a/res/drawable-hdpi/write.png b/res/drawable-hdpi/write.png new file mode 100644 index 0000000000000000000000000000000000000000..3693d1409d843b674f27d10f7d9c5358363b5f0e GIT binary patch literal 1216 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~NxVnm8J`x|kZ9IGMN^8oC-gT3A@P7&=>8x|tYR zxLTON^t$9Hm*%GCmB93-AoQBx)C)=sxdlL*T~doO%TiO^it=+6z@E0s#O)SCoaRCG zrr>sq5l+4OK*#8Vq82HtVM4(417gAxE|3FH`l)%q^j-u^*jY+n9y2g78hN@nhE&{o zGxH$tAp;)Q;BMpU5}BfOCbJg|cNI6Oagv1$Y7J@F_eiHEB_7=-^EHjR38 zgvFlyy4j>1xql~p;9YV+|Aqyl@}BtSTfzr;_OGwZuhqRPtiW(Dy-sf;gW`ub{F|gc z1b^sG31VHC{zHms&4&oavWlJtjvqmch96X!7Ck6t?Q=^K`!Of;%k8=R%TKmS*|{sE zs%&FV@O@CMRKg;E-XP_Jse5O@BPZ7QDy7YgB|3>p50-tHp`6<1VqB5avZnjQ`Yg8i zWd0*U!mc@4|Fs=w{oK)Zq&(&Pne(cR`K2q=oAVVNxaJEhZd{t55#qoKME{~6C?8-* XgTe~DWM4foBf}f literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/ab_icon_accept.png b/res/drawable-mdpi/ab_icon_accept.png new file mode 100644 index 0000000000000000000000000000000000000000..d1a9832153b2c6bc3eecb68302a9c8ccb327ba25 GIT binary patch literal 619 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}U;vjb? zhIQv;UV>C6dj$D1FjT2AFf_CjA5L~c#`DCC7XMsm#F_88EW4Dvpc0l8;JzX3_A`ZWuw%6;3gFr)i(Z-E78@F8z z+hBk2l;0P|8ZK*Zc_;1YkBlzszSnd=&e2`_=XCnRHXLl>O@AmGeEjLLBWn6}wtA+rV7pz#tX>aJ9sI5nzijJ&{&!qUkKRi8&HSTl{rxL} zOsjAEeEhKHw{XH?dCC8UA~ucZ)?AP^IH$U(ZnypJ+XwD&o!d9@!o3GGJto~)HIbwF zw{3v>#81Xl{>kB^^Ia(i-RuN-c*KpmSqW6f} zhXkSag&(9kWgjf?uXw!mh^YT|={I|WLK&^@=0(-c^jy)gN1xjzc5R!)qwSBFTaIlu zoBLqnJYaaLmbgZgq$HN4S|t~y0x1R~14Cn7LqlBylMq7-Dl3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~Nw~I2yT{8krcHIGGw68oC-gT3A@P7&=>8x|tYR zxLTON^t$9Hm*%GCmB93-AoLpH)C)=sxdlL*T~doO%TiO^it=+6z@E0s#Nrks3sVb6 zCl?c(=0WwQ;C71vPQCg-$LNEi7AdM>LcsI`V!{(HkONQpsd>QkUIa|ozY^2^85kI= zJzX3_DsH_AGxR&`AW-sRC%=sR2lg}Ue;6+*e|LGQ{9WNYN7WNMG20@3ulF?y@&^0{ zyD!Z#v9h$A%yRLL=VF!J<<*a8-Yyn9Y@qVrQf#7wiU6kzle)kOmhC@E9!Fo`v}290 zcU>T$!y0yhoA1V(s0mD*Nzn(7FXfPMY*oM3d!J#tx4?FViuN6oD!7aSn1nr8*Cwd1 zU}5{Xbb(vU$F7}uy{E5kNfQa?TCqf5*?)1^8uw?bxwPl7HgDCeTR&lbZsV!Q#S^M_ zE{yTM^xOGwy+U=?l^~(-$=vJuL{_x*LFqOp6K}2l%F=$hLjlraSF%`-dUw6Q zuu3mq<9<+epOTBi#Om@!?Tm@1_wIaO!hR#*@6PazjY}*euLPctJ~7wnRh!P97pFB? zJA2;Ml^1-kkTl)@a!zsF@ngyY|0lRG0mG=^(htD|hAOuMgp_K+r>mdKI;Vst E0ARAirT_o{ literal 0 HcmV?d00001 diff --git a/res/drawable-mdpi/tab_icon_settings.png b/res/drawable-mdpi/tab_icon_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..1c0ea22aa4bb7b87a8e1685467657a20157357dc GIT binary patch literal 1304 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz$r9IylHmNblJdl&R0hYC{G?O` z&)mfH)S%SFl*+=BsWuD@%qp275hW46K32*3xq68pHF_1f1wh>l3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~Nv<8#|ksIvbgrIGF;&-PPF9!otGE(Am<`&BVyU z)xrd(*Cju>G&eP`1g19yq1OVZUQlAlEdbi=l3J8mmYU*Ll%J~r_Ow+dZnv1?G!Lpb z1-DzwaO%|uIz}H9wMbD769T3m5EGtofgE_!Pt60S_ab1zcF%dVj)8%(%hSa%q~g|_ z@V$PA4FvK8v@09;Is9cxbiXNhceO$DCS^H>)aU8zcZuIv{4V6pOYSeMXP8?ymrV7W zc0S#D(ZmM-Uu{XRoL?rONq`2XzM`@d!|`F!X#Eo0BAU&=1> z;poI7PSFo>v!-ySW;EF+f8e_uqcqjDoc|BQJ|^yj-pAPwoVysLYBVAQkAFH~ca&M} z>GqXRT|aQdESq(qCzUF)JgD?i8Hb;l6*BG zE&9mLt$x~}j=j4d7APMl@_sX=@YxfcID@_S&J{S=SlEa%wP^b;Gf`nOiN~QP6O+?zyrKN zKa*N!7`V%?QPyADHRa)g=#AT&+86yknZ2{@O4;;H0pI@T{&>z>!)?IeKk?+gxm#C$ P0+m&su6{1-oD!Ml3^w)^1&PVosU-?Y zsp*+{wo31J?^jaDOtDo8H}y5}EpSfF$n>ZxN)4{^3rViZPPR-@vbR&PsjvbXkegbP zs8ErclUHn2VXFi-*9yo63F|81#=KlDb#X~hD#E>34K5C;EJ)Q4 zN-fSWElLJPT$(b-ssbzLqSVBa{GyQj{2W*)24v)y-fM)1rW~NvfxEWd)Ia<1!IGF;&-PPF9!otGE(Am<`&BVyU z)xrd(*Cju>G&eP`1g19yq1O$kUQlAlEdbi=l3J8mmYU*Ll%J~r_Ow+dZnrq&G!Lpb z1-DyVaO%|uIz}H9wMbD769T3m5EGtofgE_!Pt60S_ab1zp0sgiJ}^_f^K@|xskoK& z=l_5E!wyVpZH#P-`6SBtRx~9oV&tBx%kT7P`$c1x3%dMDW-2pQtKAkvyfp^ zr%bb0t&P;SYUDX{aoQ=IQ@s5=ph2JOoWjP7yzHzyxvvPOMEiMpcC6J{dZQ>P`>=ve zPM40lD%S?aF5Trz%$9ULZE;H25^49UVd6uE1_ow^>U9fk-F9A^3n~vhUHx3vIVCg! E0C!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YPV z+ueoXKL{?^yL>WGgtNdSvKUBvfU(=jY&!-9rWj8b$B>F!Z)cs&5^)r1U0uba!sRG# zcw~Y81YePlhDtv;D(49Zok-ph_=Wd~ug9iKb2}6soeJ$pnRIgc(GbJyo2s(vs#bUv z@|zeRHnIIa=e>`=>fK{2LbRrOEe%>3q7}-@Bz0id^OJvb-!)nr=){{Hn=$*p&#kiA zzIn{Dr)J+bIi@pH@s65MkSx=aYsLNN8}knYeyDp_C@yutHt`?3vMhu4r#S(wQ785@ z)LA~ReQ?S4{@346=T!?beo=a|{w~`Gu?XfIQC^M{=I;ulCrp2KpZWV;yKP;?4o|H2 z^VM|D_|Id*)pW|XPW{-@g}x8YNbVDQ=HH-xbp}7vgeU#VPy8Fx5B^mA{$sAh{3(Cj zOrJF~OxZIj{FCI#-^{yNj~<#f#dVUn^G%Mqes()DJ{=6;Zw!ysH|kQ+XZ!qQdSm~A z_yl!{ie-*ns`_kO@-`elVC}Yx;a-d489|50Cr2Cp9WJ}8P-}R_@#B; zv%KLnYOb6WVDnQfh|NNzrG`V;{NcF?{X9DLOyARUn=IPQL)3m6D*i}Zmgl5$X2KqO zzq(JI0zgj7pH&L=Pt6+EAD!UeV&E`rRt?ITA0aReY*5H03yvFYaq6=(LK{nrHpFAGf|opE$pD%{kdaJJkL#+J!m- zrPgqo_n53`s!?j$rWOgkImk9(Of027>QiEBhjN@7W>RdP`( zkYX@0Ff`URG}JXP2{E*=GBUC%X8O-xS>N=;0uEIgSC$`uTru6{1-oD!Mc-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxSU1_g&``n5OwZ87 z)XdCKN5ROz&`93^h|F{iO{`4Ktc=VRpg;*|TTx1yRgjAt)Gi>;Rw<*Tq`*pFzr4I$ zuiRKKzbIYb(9+TpWQLKEE>MMTab;dfVufyAu`f(~1RD^r68eAMwS&*t9 zlvO-#2=9ZF3nBND}m`vLFjeEsTY(OatnYqyQCInmZhe+73JqDfIV%MiQ6sCIL(9V zO~LIJ7o2+afsWA!MJ-ZP!-Rn82gHOYTp$OY^i%VI>AeV;u>Tu>?qFbGI_&A<7*cWT z&8*Y8ha3djcu$#{JYaKT4tcYC?D7m40U*$W8_ceCxvD4}<6b3SIIWTH4ur6Q_X3(lq&yvWU%5hKSwYIHoi7FnL$$b_JT~X~el6YrU{B)&2YLP=+&Y={--AqI@UM zV%(r~e#73xhf0yV7&fRdY`ZG%b0@CIIi=FeO>R=d`!ffO=V`8~V>!?;rGJJ+J)7aa z)HRX@ahsXrwxz7gUlDajq#^L%)XwtF6UE(rc1&5X#rBA$<;XP7t;YmrF;%2b@jvl4 zm-FT4($k8cS`-g%e{Y^C#P_$&&^|?H8{_JWk7H}Z-9C<=<9Z75FNBL?-;xG^d^2(MP_sSG*TBN!lH4;9+|#D8 zOufFVcSbRT_$}!IJBemy?;ztVLC^l>pZOcSQ1Ek|OrL|!qJ^y{x|5dKW!xyr$f}(F znPH1%W{ard@gx&Nrwem@+G2cLmMnDjIk{$C_pBwqj;Ms2vwxnfU(kor|A;#6RTjC=9S;bH2)Omh(RggLPnE z(`*0ag$XZBcKoY*5L@*t|6^Y_aza8*RlC&hGx0FQ?7y=5Bm?(fP$BQ>>gTe~DWM4f Dt3X*v literal 0 HcmV?d00001 diff --git a/res/drawable-xhdpi/tab_icon_settings.png b/res/drawable-xhdpi/tab_icon_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..614bf19a5aae0d955086ee5c30abb43a44f3979f GIT binary patch literal 1622 zcmaJ>drT8|9KTWqOh9o%1ra^ZsXXNRF6~LRwZ|*7fTe~`+1$|{^epWi*MpV{2_Pfr zT*R5V;DhNDA0+A~NCY*j0Uv0lj2J~0um*et9U32Cr;=R}*#3}R?(X;fee?Z%zK`E0 zzbzSQ$-&d+P6GfSI5h>;va8bj1^BW52BM&kUBa0}J(Ef1GIor{0hN)=!NF7umWOL` z%vfB|fhPa}_cKDLXY`uYh=H`gm^TJ?SSS_^00}D{6lO5v448xG5mp8C^z3gCNEj7R zmPEtXP-@&nq&R6j)0w6-IL!vR5n8zdOmHA9fdywU&|%59+7O2V8skM++w0~*;8+M_ zRzUBI(rYq6HA&;31Qx{^_yPeamBIqCL@E_51BHBnkjH0VX`DceNTi4`9vpulHXCis zMYL$rcrJFQfJ_WSAv~VlZinq6n56S~0=Zo7%Hb#s8Tki*n zZMtF#=V@^pSx6h$gUemyO+_JU8pjxt){$iX#1u13BtzOvBn7H7rC^i>GZ0p z(IBZ-8-rO5cq*!ZSPqyVj0itTAQP%oQt>JYJNHD9N+y$`0<~P8Bo@jNW#S1eN*W3+ zxRsf}8dm?+Y&hfX|gwRHbwDJlV6{x>*@gHD};f zc3HNo6or*Pb(aos+lLk{0P5{e`sf9*iaFIk)Xf94fdwwC{#P{Qm+g1_t0Rf~6%R{9 z%ilbOhfmy&4R7=q2Oa=2V0szX4Q#u!WOiK(Z~e`JlJ(7-uL1rpPFQH!{``p75-ia1 z6>lq8=*(&kZ~F1nEWdr}{P-6&jTahT#9x~WcD~3tIx6U|d)eBQpZ6M19OZI3-2ELM z#CKyXweIky0k`|(p+9yFcZC=^jC@0>=h)A!%BQo0*LPHa+_KBX>z4$nazmrQi*HOT z4_96AHH~x}>g$Mq=UO2@xhmil$7e877jQ&|${ z&?lnOOED@WbpA(?cPp-%8y7bz!NB>J!txeZOZ3q;QUAHk?hz`0`+I(qtng9(fY8*MP!cZ(6#GV9%t_3<@o?b zeKj*8fm`Kw4{%-U_zW=f`QOwdV15u0Y(d;z+KwZYWKk5Q_g?U6%hL1Q&s-OV_|;WoEva+VcDrK*HxzUU={8e-JU(a^F!X2FW+9} z{(RW8cE(bTsCMN0-iVv;W>!9FZ997mb~T!6%Mvc0@Xt8@Y;|kAQg~!A-CJ zYB-r0rZU=3iQKI?H~q zdIiQDk8m(?yQ7vV)7!JL)nI?;jm#Fv=+tFAPZ+6x)Xj0s9+f74d%LOMktQaqy8Ya( iUU`kH>}A`iZx|pRa+Sx@X|KFDeQIJFdScbr75@M&J7RDE literal 0 HcmV?d00001 diff --git a/res/drawable-xhdpi/tab_icon_write.png b/res/drawable-xhdpi/tab_icon_write.png new file mode 100644 index 0000000000000000000000000000000000000000..e1f2b9958bc8b98e3cbe77a3a0eaf1aad3db7564 GIT binary patch literal 1304 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7TyC=k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m{l@EB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxSU1_g&``n5OwZ87 z)XdCKN5ROz&`93^h|F{iO{`4Ktc=VRpg;*|TTx1yRgjAt)Gi>;Rw<*Tq`*pFzr4I$ zuiRKKzbIYb(9+TpWQLKEE>MMTab;dfVufyAu`f(~1RD^r68eAMwS&*t9 zlvO-#bun=>aWZi;G;}p~w6L&nF?6=HbTcus zaJ4Xj>2=9ZF3nBND}m`vf$KFjz^NCM7;+1MHoK%2WtOF;xE1B+Du6w0m5IeImM+GI zj;_XLK=WL&y9J^*1*cm~TyeTZALtl;P}CwtHB1PYen3ok!Ub~RNk26YnBI$k30p3K zKbL`lvCGrNF{I+wo0*NgO$Gw4R}CgNm+-hJFdR!1c5TfGl%Kg14W@3 zEKd&1_D&F-(DZ(JvV&*FiHFGte%c;PDp@g?@oiiEcGr|cXF2~wwPYN6qQ<=K&|$ZB zDW<+dv&D`bQ{0o8s56uC+6T4LC(k7Ao%Io5%{S^=z#4FPG3$lH%B(vY+&K%F`vo3w z-HU3luJC5md$^WmN9%Th30Y4*f3DncSbi?o`n`+piPtS|wx7hfGrQvM7g^Omag3I| zJ?|_1BpuoJhab@1JTbbgeAR*Iy?o21Zo0-kn#~#VLG>DQ5~pSBMvXmF8{$`Q+Snqo z!)i||?}^MGQHg7q@^uqdx4in$A+@1=@**yqRUFGy0>1nVT6`deN%fD!iQb75ES5LA zi#YzWi?330;f;4@5Ut5%EcxJmjrpINiUSie@{`JEWMg=pZuRP~%*s|!S>@^K=d#Wz Gp$PyOQ^89B literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/ab_icon_accept.png b/res/drawable-xxhdpi/ab_icon_accept.png new file mode 100644 index 0000000000000000000000000000000000000000..dbf82aa8abdc2a65102ee8e904b73e029d0ee27f GIT binary patch literal 416 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGok|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+7@a&_978H@y}9Gad&oh8^d`w6&e@>92hth7{I~} zwH5&%q%WKBelAW`Qm=n_%)@UV2kVpW0Ed5vX0Dv`r&06M$>U|8{NqpTH`qG=Poe9+ zVE&&^nrl8e+Wl0RUo*kq?u5Ghlga9O-WY`y0_x)nxZ;tpo`<9>o zt^8ZsUBON@`)<;@{NC*AUqT)iHCl6|Jv58aY22A)uYxQ#S$3K Xc7+^#?yRtr0SG)@{an^LB{Ts5Lff0K literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/tab_icon_preview.png b/res/drawable-xxhdpi/tab_icon_preview.png new file mode 100644 index 0000000000000000000000000000000000000000..a737e1e9eb956c3648b0bdd3fc4336993b2943b9 GIT binary patch literal 1971 zcmah|eLPcZ96uWqN>SX3Tb<_RlVr1*wXIfTqb*HHmr7-}V^(cvZD*N6Qi$s!(T%#j z_{6Q7B-OoMdNZX+_(b&LCcRA3$8?)6rMhQA_Yb#wKIeCy=l7i7_xt<)p6Buh zFt;@a0KkIB4I3TV}KzaZiE%|f~ezjO(>Sj|8Qq!1zi)zU38B}2``5A!n6xnY@z2ZuwD z%}o3kQ6YSPkPRy!(1YOaDs&@}Kq{3$qIgiLqy-?^jYKB8p)b{yL}7SP8RUiF$b(0- zDMS&BK#tEyF4SYK zLSOZcORNlvmP5oqNC~SHLiFGw>q9cM-xX+Mhg7{;0|3U3 zJdS6O`r+$e__9ZCmWkcR9=*p_uvC~X?3MV-Q(9u5#Xcz#B0A(KxT6dG5rfeJ_i!yn zWq1Y$XY?*D|2UVf!*KTFGYkIS=UzR>aesAZ*fDiQ0uH@!mZ%w{h5-Q9|G4si_vF$K zcMiR~C}}Q)&V2sde4#_%KN~=vuQ;-=`_sl#zZI_80+D*lwTM3;}TPS~JJ+xdgvfw=27llEq@ zT7EXU#?%uFvyr5w#_6>)Rq=Fp+uo!)3pQ}8c1X$8<*s#od85s`CLOA!@J@9DMY%g3 zHeK|wxVC!XAL7|TQ+E_}KBHxCnQ1Ab42gVRr1!$vz=4+AezkY2*F@-x7BwVPYSz2Y zb)L7!A8^oq4)aQPKzI&jj+-M0Qzvq2C3X1&4~u@7WgE0%eDydrNAv4wdAY?JN!t|CsGFM4~;pyMAoVZ*&cNvqM)7-9aFYhsmU-$H)rtE0xCeMM;8f;&kKE3^AZ%<98 z-HVA@@$ct=vd3@0gZD-DCi2F#zoZ=jj~ANha%a00Bxk;IEjhlvbzoxQrunBdKW<1; zK-!|}*Cf5uUhBU4!yV<%>RPJAnziSb+0D@OTs!~13RT(J8hzsY&0kqs7*{B1cr^hB z?gAf7e<$GXaA`8%e)ajMmX&^?IJLipX-4YhdR^K*bM0xJRWj{JF{UcR=`>}&G*z37 zZNg~+!yXskWVX+UYaDbuFz9!DrT0K8UYKPcyz)b-f7W%EirM14nv|cOW4Or!Mg-n6O`*-~p7SPmYT7p9*_r`x+K^2_nTFVdUd4FSK-5f8 g!+z5ZY~6@40jxCq2H$f|x6p8a=k3QS_6ke*2lSBs`~Uy| literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/tab_icon_settings.png b/res/drawable-xxhdpi/tab_icon_settings.png new file mode 100644 index 0000000000000000000000000000000000000000..f567be265cee4361139765e09c4629c3bcdda891 GIT binary patch literal 1880 zcmaJ?c~BEq7~h1HQxT7fqT&+4gF-GyNKzssgi8&^5GyJuVY9%B$!?QH0*Iy(BiJfn zMNtQb!4|wK%xFDOAtKbOQBbTXwt^Q5Sf~b}qS$T_)IUmhcK5ya&G-9#_q<$bRQOm& zH%9;f#zsbnWyBh9{p@Xt|HGm*F0o9-Lu2r0G!aizXkb97L=#{zQl&_OWw1h-{`F-z z5CCjE5qS(ABU!|UP!&yK)uHKB7=Z?Wz#tu_fKp%_On{RRwSd}lwuTBKN&$5lTf&fF zA#gGhk)eU3Gos{BMhe7JQiJA$fjT}xpn`D)s8g*~Yxz0>b%>Ww?5$!t6&zB*Qv}ra zPQ^&1U z#9_m>h?9VtjN=%ePESiqqow)LP)!n@$>Z^?94wYEq2a4dSK|tuuUb26gh32zAq|4z z2&x9HjEV#_6&FwmPv3{2!amTdwZmy55=Pf4FglaQu!c0ED3ScXs!H`iTZ_x!kN*BA zu~wdr!E_m{MN>5pQMkleR#O;1L<1{uR3k^xwIf-SCZjm2O-3;=B$@-xl_(%YZ57NL zLP#Y1NVOJMs3AB~ET9q`Gz3xd8DUH=ODJUdi`YcoL;ZwYE?3M9;qk)!S=>;r{|Hu$ zLa8cPjgMfJAF+O;Vy(@f!U)S^Sc9yCm0=oG1r7zxM@ILBF)H6MRyn#a%u%s)!Wp`? zw4aoEL`3wDb^D=liNlB1ht)*CYlz0~eX^BD%*&NXu~4pSd0xC&-4Z;d-tHFLwZzW! zW~+@n7QDMmDJjgVC!GcyyGox&R-MWKR-1UirvcXzcf{vR&Xl~TnU+iGi`~4In2P$L z>OHU9#~rY|K6(&yYa)|DU@Ks+rvl^>dp$6B=s15{wI^P2_ORL4eYG5}cMBd5kffAg zKt2g@Ke8jV`*POO+ab@5$FA)=d*n*P;hhdeHB%RiJ$S8oul&ip+PxT3y?Za?WuFY-%}PQ0?U?ta9z; zVwU>M@SA}86~|b5Du%SPOgMvO*ya#&!@15lMtE!e;|N`jOWn2ba;lL+N|^6vl7c34 zKdHo+KWEK`T>n;AeR?gFy-3kSUDa;mPN`U0?&E0b2;{sAU>kqSJ(t@y=sH*1cvq_W z<#_&!H;2!~oS3sP+B5j5)TPnmSyZJ*>q<`hz>A=rX7e;3Ln+C}VD3qIxa9JpjSH?X z)Y-IUG|A%bd=DCa08aP0b2dG)%PL;Iy*azrIKZim+qK&~eU0gM9ftT`JKw+gj+ax_ zOHzD!<=~?p(+$gNd0@c6pr#l&vzeOX!9`eL;ESOor0CwoGvF)TYi8^)f}k ztB!&{QA<&3N{#si{J!PxD@%8bWWi$KPyR9M>Ibxp}~nj&(iAZiNh$(ju5C zB-O2b>qS8`?YR@2eTby6dA RW?JvM$j~V9F;V=ce*si<+G79! literal 0 HcmV?d00001 diff --git a/res/drawable-xxhdpi/tab_icon_write.png b/res/drawable-xxhdpi/tab_icon_write.png new file mode 100644 index 0000000000000000000000000000000000000000..898a434c65bd0c24e9d0444bb0fd2f0108863138 GIT binary patch literal 1372 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7OGok|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m{l@EB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxSU1_g&``n5OwZ87 z)XdCKN5ROz&`93^h|F{iO{`4Ktc=VRpg;*|TTx1yRgjAt)Gi>;Rw<*Tq`*pFzr4I$ zuiRKKzbIYb(9+TpWQLKEE>MMTab;dfVufyAu`f(~1RD^r68eAMwS&*t9 zlvO-#2=9ZF3nBND}m`vLFhHXsTY(OatnYqyQCInmZhe+73JqDfIV%MiQ6rPIL(9V zO~LIJBb<8mfsWA!MJ-ZP!-Rn82gHOYTp$OY^i%VI>AeV;u-^vDu4G_fJm=}+7*cWT z&0TN5!wv$jfiX#*H~({G`MXUsI?U6t`}Ni5(?m3zC0eUf?)3UtocsJIsU%qin3;h2 zQUaVu8yI1n42yqt3<_QK-(?ye{8%ZFlkvxd!_1$Fw2#V+ar|+Y&GtQVzo0&GPxc=VhWiZxc6DDQ zHwZ0s{iAdGLhSx?9`f;}ydN4mR3B;UAF>uabtHU!Q`w)3(JOyQPFtvLe|~w)AD!O} z^QG)ByPZ)#c7B`ix6F_0fBJo^Q<}D74x@0m^<0KqN7i#((5f?SDEp|*xTPnabwTc* zY`%Z9wbB_Fco-NA7#I!!qktKO diff --git a/res/layout/edit_post_content_action_bar.xml b/res/layout/edit_post_content_action_bar.xml new file mode 100644 index 000000000000..51576cc96159 --- /dev/null +++ b/res/layout/edit_post_content_action_bar.xml @@ -0,0 +1,20 @@ + + + + +