{"id":510,"date":"2014-10-02T12:56:04","date_gmt":"2014-10-02T10:56:04","guid":{"rendered":"http:\/\/blogs.igalia.com\/jaragunde\/?p=510"},"modified":"2015-03-05T11:09:19","modified_gmt":"2015-03-05T10:09:19","slug":"libreoffice-on-android-4-document-browser-revisited","status":"publish","type":"post","link":"https:\/\/blogs.igalia.com\/jaragunde\/2014\/10\/libreoffice-on-android-4-document-browser-revisited\/","title":{"rendered":"LibreOffice on Android #4 \u2013 Document browser revisited"},"content":{"rendered":"<p>I&#8217;m borrowing the post title that <a href=\"http:\/\/tomazvajngerl.blogspot.com.es\/\" title=\"Toma\u017e Vajngerl blog\" target=\"_blank\">Toma\u017e<\/a> and <a href=\"http:\/\/www.ahunt.org\/\" title=\"Andrzej Hunt\" target=\"_blank\">Andrzej<\/a> used before to talk about the work that I have lately been doing at Igalia regarding LibreOffice on Android.<\/p>\n<p>You might know there are several projects living under <em>android\/experimental<\/em> in our code tree; it is exciting to see that a new experiment for a document viewer that uses a fresh approach <a href=\"http:\/\/tomazvajngerl.blogspot.com.es\/2014\/07\/libreoffice-on-android.html\" title=\"Toma\u017e Vajngerl - LibreOffice on Android\" target=\"_blank\">recently arrived to the party<\/a>, which can be the basis for an Android editor. I was happy to add support to receive view or edit intents to the shiny new viewer, so we could open any document from other Android applications like file browsers.<\/p>\n<p>Besides, <em>android\/experimental<\/em> hid some very interesting work on an Android-centric document browser that could be a good starting point to implement a native Android wrapping UI to LibreOffice, although it had some problems that made it unusable. In particular, thumbnail generation was making the application crash &#8211; for that reason I&#8217;ve disabled it until we get a proper fix &#8211; and the code to open a document was broken. Fixing and working around these issues were the first steps to bring the document browser back to life.<\/p>\n<p>I noticed that the browser was inconveniently dependent of the <a href=\"http:\/\/actionbarsherlock.com\/\" title=\"ActionBarSherlock library\" target=\"_blank\">ActionBarSherlock library<\/a>, which is not really necessary now we are targetting modern Android versions with out-of-the-box action bar support. I replaced Sherlock ActionBars with Android native ones, and that allowed to <a href=\"http:\/\/cgit.freedesktop.org\/libreoffice\/core\/commit\/?id=ce2d41b58ab8128b90e453ed95482c82a9d0ab76\" title=\"Patch\" target=\"_blank\">remove all the files from ABS library<\/a> from our source tree.<\/p>\n<p>I also took the freedom to reorganize the application resources (design definitions, bitmaps and so), removing duplicated ones. It was the preparation for the next task&#8230;<\/p>\n<p>Finally, I merged the document browser project into the new viewer with <a href=\"http:\/\/cgit.freedesktop.org\/libreoffice\/core\/commit\/?id=71832a527a936bbb8e76154cbd3ffc491ea31b58\" title=\"Patch\" target=\"_blank\">this huge patch<\/a>, so they can be built and installed together. I also did the modifications for the browser to open the documents using the new viewer, so they become one coherent, whole application.<\/p>\n<p>Now both the viewer and the document browser can evolve together to become a true LibreOffice for Android, which I hope to see not too far away in the future.<\/p>\n<p><a href=\"http:\/\/blogs.igalia.com\/jaragunde\/files\/2014\/10\/Screenshot_2014-10-01-20-09-14.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/blogs.igalia.com\/jaragunde\/files\/2014\/10\/Screenshot_2014-10-01-20-09-14-225x300.png\" alt=\"LibreOffice document browser screenshot\" width=\"225\" height=\"300\" class=\"aligncenter size-medium wp-image-514\" srcset=\"https:\/\/blogs.igalia.com\/jaragunde\/files\/2014\/10\/Screenshot_2014-10-01-20-09-14-225x300.png 225w, https:\/\/blogs.igalia.com\/jaragunde\/files\/2014\/10\/Screenshot_2014-10-01-20-09-14.png 768w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;m borrowing the post title that Toma\u017e and Andrzej used before to talk about the work that I have lately been doing at Igalia regarding LibreOffice on Android. You might know there are several projects living under android\/experimental in our &hellip; <a href=\"https:\/\/blogs.igalia.com\/jaragunde\/2014\/10\/libreoffice-on-android-4-document-browser-revisited\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":17,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21,3,17],"tags":[],"class_list":["post-510","post","type-post","status-publish","format-standard","hentry","category-android","category-igalia","category-libreoffice"],"_links":{"self":[{"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/posts\/510","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/comments?post=510"}],"version-history":[{"count":7,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/posts\/510\/revisions"}],"predecessor-version":[{"id":536,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/posts\/510\/revisions\/536"}],"wp:attachment":[{"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/media?parent=510"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/categories?post=510"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.igalia.com\/jaragunde\/wp-json\/wp\/v2\/tags?post=510"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}