Document Viewer is a highly customizable document viewer for Android.

Overview

Document Viewer

Get it on F-Droid

Document Viewer is a highly customizable document viewer for Android.

Supports the following formats:

  • PDF
  • DjVu
  • EPUB
  • XPS (OpenXPS)
  • CBZ (Comic Books, no support for rar compressed CBR)
  • FictionBook (fb2)

Collaboration with electronic publication sites and access to online ebook catalogs is allowed by the supported OPDS protocol.

FAQ, information about supported MIME types, and available Intents can be found in the Wiki.

Changelog

Development

Document Viewer is a fork of the last GPL version of EBookDroid (http://code.google.com/p/ebookdroid/).

We need your support to fix outstanding bugs, join development by forking the project!

Building

NOTE: NDK r14b fails to compile DV - use r15 or r13b. (See #245)

Build with Gradle

  1. Have Android SDK "tools", "platform-tools", and "build-tools" directories in your PATH (http://developer.android.com/sdk/index.html)
  2. Open the Android SDK Manager (shell command: android).
    Expand the Tools directory and select "Android SDK Build-tools" newest version.
    Expand the Extras directory and install "Android Support Repository"
    Select everything for the newest SDK
  3. Export ANDROID_HOME pointing to your Android SDK
  4. Pull in submodules with ./init.sh
  5. Build native libraries with cd document-viewer; ndk-build
  6. Execute ./gradlew build

NDK Debugging

  1. cd document-viewer; ndk-build -j8 NDK_DEBUG=1
  2. From Android Studio: Run -> Debug... to build and install the APK and launch it on the device.
  3. cp src/main/AndroidManifest.xml . # Hack required for ndk-gdb to find everything
  4. ndk-gdb

Development with Android Studio

I am using the newest Android Studio for development. Development with Eclipse is currently not possible because I am using the new project structure.

  1. Clone the project from github
  2. From Android Studio: File -> Import Project -> Select the cloned top folder
  3. Import project from external model -> choose Gradle

Font Pack

The Document Viewer Fontpack is no longer supported. Our MuPDF patches to support this no longer apply cleanly, so support for the font pack was dropped.

Licenses

Document Viewer is licensed under the GPLv3+.
The file LICENSE includes the full license text.

Details

Document Viewer is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Document Viewer is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Document Viewer. If not, see http://www.gnu.org/licenses/.

Java Libraries

C Libraries

Images

Comments
  • Adding Korean translation

    Adding Korean translation

    strings_actions

    <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    
    <string name="actions_verticalConfigScrollUp">뒤로 스크롤</string>
    <string name="actions_verticalConfigScrollDown">앞으로 스크롤</string>
    <string name="actions_quickZoom">빠른 확대</string>
    <string name="actions_zoomToColumn">세로단에 맞춰 확대</string>
    <string name="actions_leftTopCorner">왼쪽 상단 페이지 모서리로 스크롤</string>
    <string name="actions_rightTopCorner">오른쪽 상단 페이지 모서리로 스크롤</string>
    <string name="actions_leftBottomCorner">왼쪽 하단 페이지 모서리로 스크롤</string>
    <string name="actions_rightBottomCorner">오른쪽 하단 페이지 모서리로 스크롤</string>
    
    </resources>
    
    opened by ghost 17
  • Mixed line endings make for a not-so-useful

    Mixed line endings make for a not-so-useful "git status"

    I decided to start messing with some Android stuff; doing all this on a spare machine running Ubuntu 14.04 LTS.

    When I clone the repo and immediately cd into the directory and run "git status", it comes pre-loaded with unstaged changes:

    colby@sepiatu:~/src/third-party/document-viewer$ git status On branch master Your branch is up-to-date with 'origin/master'.

    Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git checkout -- ..." to discard changes in working directory)

    modified: art/drawables/sources/External Sources/Antarctica_on_the_globe_(red).svg modified: art/drawables/sources/External Sources/Blank_globe.svg modified: art/drawables/sources/External Sources/File Antarctica_on_the_globe_(red).svg.htm modified: art/drawables/sources/External Sources/File Blank_globe.svg.htm modified: art/drawables/sources/External Sources/File Question_book.svg.htm modified: art/drawables/sources/External Sources/File Stop_hand_nuvola_black.svg.htm modified: art/drawables/sources/External Sources/File Stop_hand_nuvola_black.svg_files/analytics_prod.js modified: art/drawables/sources/External Sources/Question_book.svg modified: art/drawables/sources/External Sources/Stop_hand_nuvola_black.svg modified: art/drawables/sources/Original/Guidelines.txt modified: art/drawables/sources/readme.txt modified: document-viewer/src/main/java/org/afzkl/colorpicker/ColorPickerDialog.java modified: document-viewer/src/main/java/org/afzkl/colorpicker/views/ColorPanelView.java modified: document-viewer/src/main/java/org/afzkl/colorpicker/views/ColorPickerView.java modified: document-viewer/src/main/res/layout/opdsitem.xml

    This seems to be due mixed usage of CRLF and LF line endings; there are some Windows-style CRLF line endings in the handful of files listed above. We should drop the carriage returns in these files and standardize on Unix-style line endings for the project, otherwise "git status" is quite noisy and not terribly useful.

    opened by ghost 15
  • CJK support

    CJK support

    Looks like this is due to the size of the APK (#88), but now with #99 merged, the size seems reasonable, and we can reintroduce CJK support.

    One thing I noticed is there is middle ground between using -DNOCJK and not using it: we could use -DNOCJKFONT. This way, support for CJK is included but not the fallback font (DroidSansFallback, which should be available on all android devices anyway).

    I did some measurements and removing -DNOCJK adds 3.5M to the APK, and replacing -DNOCJK by -DNOCJKFONT adds only 1.1M, and pdf with embedded fonts work.

    It would be nice to patch mupdf to use the DroidSansFallback from the device, but for now compiling with -DNOCJKFONT would be an easy solution for most cases.

    What do you think ?

    enhancement 
    opened by abderrahim 13
  • Sometimes 'Go to...' or 'Outline' doesn't work

    Sometimes 'Go to...' or 'Outline' doesn't work

    It's a weird issue. Usually when I press 'Go to...' and type a number and press 'Go', it simply refreshes at the original page, not the page I inputted. I need to do twice or so to switch to a new page. The problem of 'Outline' is similar. When I choose a page in 'Outline', it stops at the original page. I need to do this many times to switch a page.

    Android 4.1.2 (my Samsung phone) & Android 4.1.1 (my Samsung tab) Document Viewer 2.5, installed from F-Droid.

    bug 
    opened by Iey4iej3 13
  • ClassCastException in AsyncTask

    ClassCastException in AsyncTask

    I/wpa_supplicant(15187): wlan0: WPA: Group rekeying completed with 00:0f:cc:cd:11:70 [GTK=TKIP] D/dalvikvm(16713): GC_CONCURRENT freed 1985K, 63% free 3179K/8451K, paused 8ms+4ms, total 34ms D/dalvikvm(16713): WAIT_FOR_CONCURRENT_GC blocked 21ms I/ActivityManager( 280): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=org.sufficientlysecure.viewer/org.ebookdroid.ui.library.RecentActivity u=0} from pid 464 V/tiny_hw ( 105): out_write(0x41efaa88) opening PCM(0), card,dev: 0,0 D/dalvikvm(16967): Late-enabling CheckJNI I/ActivityManager( 280): Start proc org.sufficientlysecure.viewer for activity org.sufficientlysecure.viewer/org.ebookdroid.ui.library.RecentActivity: pid=16967 uid=10145 gids={1015, 3003, 1028} E/Trace (16967): error opening trace file: No such file or directory (2) I/Document Viewer(16967): Document Viewer (org.sufficientlysecure.viewer) 2.0(2000) I/Document Viewer(16967): Root dir: /system I/Document Viewer(16967): Data dir: /data I/Document Viewer(16967): External storage dir: /storage/sdcard0 I/Document Viewer(16967): App storage dir: /storage/sdcard0/.org.sufficientlysecure.viewer I/Document Viewer(16967): Files dir: /data/data/org.sufficientlysecure.viewer/files I/Document Viewer(16967): Cache dir: /data/data/org.sufficientlysecure.viewer/cache I/Document Viewer(16967): System locale : en_GB I/Document Viewer(16967): VERSION : 16 I/Document Viewer(16967): BOARD : picasso I/Document Viewer(16967): BRAND : Acer I/Document Viewer(16967): CPU_ABI : armeabi-v7a I/Document Viewer(16967): CPU_ABI2 : armeabi I/Document Viewer(16967): DEVICE : a500 I/Document Viewer(16967): DISPLAY : cm_a500-userdebug 4.1.2 JZO54K eng.pj.20121122.181927 test-keys I/Document Viewer(16967): FINGERPRINT : acer/a500_ww_gen1/picasso:4.0.3/IML74K/1329824557:user/release-keys I/Document Viewer(16967): ID : JZO54K I/Document Viewer(16967): MANUFACTURER: Acer I/Document Viewer(16967): MODEL : A500 I/Document Viewer(16967): PRODUCT : picasso I/Document Viewer(16967): Debug logging enabled by default D/Document Viewer.DBAdapter(16967): New DB connection created: null I/Document Viewer.SettingsManager(16967): BookSettingsUpdate thread started I/Document Viewer.CacheManager(16967): Default app cache dir: /data/data/org.sufficientlysecure.viewer/files I/Document Viewer(16967): No heap preallocation I/Document Viewer(16967): UI Locale: en_GB D/Document Viewer.RecentActivity.0(16967): onCreate(): null D/Document Viewer.RecentActivityController.0(16967): beforeCreate(): org.ebookdroid.ui.library.RecentActivity@421257a0 D/Document Viewer.RecentActivityController.0(16967): afterCreate(): false D/Document Viewer.RecentActivityController.0(16967): Last book: , found: false, should load: false D/Document Viewer.RecentActivity.0(16967): onStart() D/Document Viewer.RecentActivity.0(16967): onCreate(): null D/Document Viewer.RecentActivity.0(16967): onResume() D/Document Viewer.RecentActivityController.0(16967): onResume(): false D/Document Viewer.RecentActivity.0(16967): onPostResume() D/libEGL (16967): loaded /system/lib/egl/libEGL_tegra.so D/libEGL (16967): loaded /system/lib/egl/libGLESv1_CM_tegra.so D/libEGL (16967): loaded /system/lib/egl/libGLESv2_tegra.so D/OpenGLRenderer(16967): Enabling debug mode 0 D/dalvikvm(16967): GC_FOR_ALLOC freed 687K, 25% free 6400K/8451K, paused 20ms, total 22ms W/dalvikvm(16967): threadid=14: thread exiting with uncaught exception (group=0x41d59300) I/System.out(16967): Stacktrace is written: /storage/sdcard0/.org.sufficientlysecure.viewer/logs/org.sufficientlysecure.viewer.2.0.20130704.111635.stacktrace E/AndroidRuntime(16967): FATAL EXCEPTION: ThumbnailLoader-1 E/AndroidRuntime(16967): java.lang.RuntimeException: An error occured while executing doInBackground() E/AndroidRuntime(16967): at org.emdev.ui.tasks.AsyncTask$2.done(AsyncTask.java:230) E/AndroidRuntime(16967): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) E/AndroidRuntime(16967): at java.util.concurrent.FutureTask.setException(FutureTask.java:124) E/AndroidRuntime(16967): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) E/AndroidRuntime(16967): at java.util.concurrent.FutureTask.run(FutureTask.java:137) E/AndroidRuntime(16967): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) E/AndroidRuntime(16967): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) E/AndroidRuntime(16967): at java.lang.Thread.run(Thread.java:856) E/AndroidRuntime(16967): Caused by: java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.Void[] E/AndroidRuntime(16967): at org.ebookdroid.common.cache.ThumbnailFile$LoadingTask.doInBackground(ThumbnailFile.java:163) E/AndroidRuntime(16967): at org.emdev.ui.tasks.AsyncTask$1.call(AsyncTask.java:215) E/AndroidRuntime(16967): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) E/AndroidRuntime(16967): ... 4 more W/ActivityManager( 280): Force finishing activity org.sufficientlysecure.viewer/org.ebookdroid.ui.library.RecentActivity W/dalvikvm(16967): threadid=15: thread exiting with uncaught exception (group=0x41d59300) I/System.out(16967): Stacktrace is written: /storage/sdcard0/.org.sufficientlysecure.viewer/logs/org.sufficientlysecure.viewer.2.0.20130704.111635.stacktrace I/Process (16967): Sending signal. PID: 16967 SIG: 9 I/ActivityManager( 280): Process org.sufficientlysecure.viewer (pid 16967) has died. I/WindowState( 280): WIN DEATH: Window{420cc3f0 org.sufficientlysecure.viewer/org.ebookdroid.ui.library.RecentActivity paused=true} Second after loading a document: `

    opened by dalb8 12
  • Crashes; Oreo 8.1, MuPDF related (crashes aswell)

    Crashes; Oreo 8.1, MuPDF related (crashes aswell)

    Tested versions 2.7.9 (armeabi-v7a and arm64-v8a) to 2.8.1 (arm64-v8a). Application works normally when opening PDF documents via system file explorer. However, if I press the upper left back button to go to file explorer the app can crash, no matter if in bookcase or list view. If I open the app via app drawer I can access configuration menu and etc. Once I open a document there in its file explorer and switch to another task via recents the app can crash. If I open a PDF file via system file exporer app behaves normally until I start switching tasks via recents, then it can crash. When I mean crash, I mean I get a system popup window which tells me “Document Viewer has stopped”. I have “Show all ANRs” (show App Not Responding dialog for background apps) enabled in developer options. Briefly tried MuPDF, crashing behaviour too. MuPDF and this app seem to share code.

    Cheers :-)

    opened by Barkuti 10
  • Assign a different vercode for each ABI build

    Assign a different vercode for each ABI build

    Since one cannot upload split-ABI APKs with the same vercode, hence assign each APK a different vercode. Since the least significant digit in the vercode doesn't change between releases (always 0), hence just change the least significant digit for each ABI build.

    opened by aelmahmoudy 10
  • Restore a

    Restore a "force auto rotation" option

    I'm using slimrom 5.1.1. I locked the rotation on vertical using the quick toggle, but when I turn the screen the device screen rotates also. I opened an issue here because this bug only happens

    enhancement 
    opened by frazzmark 9
  • Project seems abandoned... Move along, folks.

    Project seems abandoned... Move along, folks.

    See my comment at issue #318 .

    This project seems to be abandoned. No updates and serious issues have remained open with not a peep from the repo owner @dschuermann.

    Since this app is based upon mupdf, I will be installing the vanilla, upstream version which is in active development, instead.

    Thus the sorry state of open source. Again, I say this without apology. Some open source projects are great--I use quite a few of them, and regularly, every day.

    I wish I knew modern programming languages so I could fork this and keep it updated, but I only know BASIC (the Tandy Color Computer Extended dialect... Don't laugh) and enough HTML, CSS and PHP because I run a WordPress site which takes most of my time.

    Thanks @dschuermann for a good app but if you moved on, I'd recommend that this repo be read only and someone can hopefully take it over.

    73 de W9JYD

    opened by W9JYD 8
  • Cannot install App on arm64 / Android7.1.2 / LineageOS 14.1

    Cannot install App on arm64 / Android7.1.2 / LineageOS 14.1

    • Tablet: Samsung Galaxy Tab S2 - SM-813
    • OS: LinageOS 14.1 (Android 7.1.2)
    App not installed.
    This app isn't compatible with your tablet.
    

    is this because of arm64? shouldn't arm64 be fully backwards compatible? is this an error in the app or in the os? even my aLogcat has an error (/data/app/org.jtb.alogcat-1/lib/arm64).

    bug 
    opened by c33s 8
  • Use material theme on Android 5.0+

    Use material theme on Android 5.0+

    Small change to use the Material theme on Android 5.0+.

    I didn't bother copying using ebookdroid.ActionBarStyle in the new theme, because all that seemed to be doing was setting the foreground and background colors to @color/actionbar_white and @color/actionbar_black

    We could customize the status bar / action bar colours, see: http://developer.android.com/training/material/theme.html , but I'm not sure what they should be so I just left it alone. This gives a black status bar and dark grey action bar.

    With the material theme, the progress spinner when a page is loading is gone now, and the Action Bar icon is gone as well.

    Here are some screenshots: screen1 screen2 screen3

    opened by ericwa 8
  • Replacement for this DEAD PROJECT?

    Replacement for this DEAD PROJECT?

    Since this is abandoned, I’m asking eveyone who comes here, what they use instead…

    It has to open PDF, DjVu, EPUP, XPS, and must not be ”minimalistic“ or in other ways over-”simplified“. And preferably open source, but in any case not nagware/adware/spyware or other commercial malware.

    Here’s the obligatory AlternativeTo.net link. Seems like Librera Reader has the same security holes. And Shelf isn’t in F-Droid.

    opened by navid-zamani 5
  • Project dead?

    Project dead?

    Dear Dev-team,

    there has no update since years, now F-Droid marks the current version as vulnerable.

    My question is: Will there be an update or at least a security fix to solve the issue mentioned above?

    Kind regards,

    K.

    opened by Krawei 3
  • OPDS-pse support

    OPDS-pse support

    Progressive loading of comic books.

    Its goal is to enrich the OPDS feed with information allowing the client to request a specific page of a document without having to download it completely. This extension was designed primarily for comic books, to allow reading them on connected devices without having to wait for the book to be completely downloaded. OPDS-PSE adds new attributes and conventions but does not break compatibility. OPDS-PSE feeds are still valid OPDS feeds.

    What is OPDS-pse Github repo tracking current development of OPDS-pse, maintained by developers of multiple Comic Book and Manga selfhosting projects. Originally created by the Ubooquity project

    Thanks for considering either way!

    opened by sunjam 0
  • Cannot get proper covers for some, not all files opening

    Cannot get proper covers for some, not all files opening

    Hello, I have found that some books are not displaying covers at all while some have them inappropriately sized or otherwise problematic. Is there a way to fix this, possibly by downloading covers? Also, some files which I have been able to open with another e-reader do not open with this. Mostly they are not particularly exotic file types, just epub and pdf. In addition, I would like to be able to have books scroll horizontally rather than vertically. I thank you for your time making this reader available and am looking forward to your reply.

    opened by Robert987 0
Releases(v2.7.4)
  • v2.7.4(Mar 5, 2016)

    DV v2.7.4

    New features

    • Tap to toggle fullscreen
    • "Share" and "Open with..." menu items added
    • Material theme on Android 5.0+

    Changes

    • "Full screen" and "Show Title" options merged
    • No longer auto-rotate by default, removed redundant rotation modes from app settings
    • No longer show the save confirmation dialog for documents opened from other apps

    Bug fixes

    • Allow running on devices without stencil support
    • Fix back button in the file browser exiting the app
    • German translation updates
    • Tapping to stop a fling won't trigger other actions
    • Volume keys used for scrolling no longer cause the system volume UI to appear
    Source code(tar.gz)
    Source code(zip)
  • v2.7.3(Aug 2, 2015)

    Introduce new ABI split implementation where each ABI is assigned its own version code, e.g.:

    2731 armeabi 2732 armeabi-v7a 2733 x86 2734 mips 2735 arm64-v8a 2736 x86_64 2737 mips64

    Source code(tar.gz)
    Source code(zip)
  • v2.7.2(Jun 23, 2015)

    Version 2.7.2 splits the APK according to the different ABIs. Furthermore it upgrades MuPdf to the latest version (1.7a) and fixes a small bug concerning the outlines in certain pdfs.

    Source code(tar.gz)
    Source code(zip)
  • v2.7.1(Apr 30, 2015)

  • v2.7(Apr 17, 2015)

  • v2.6.1(Mar 9, 2015)

  • v2.6(Feb 22, 2015)

  • v2.4(Dec 15, 2013)

  • v2.3(Dec 15, 2013)

  • v2.2(Aug 14, 2013)

  • v2.1(Jul 4, 2013)

  • v2.0(Jul 3, 2013)

    Document Viewer is a fork of the last GPL version of EBookDroid (http://code.google.com/p/ebookdroid/).

    New features

    • Renamed to Document Viewer
    • No support for CBR format (RAR)
    Source code(tar.gz)
    Source code(zip)
Owner
Sufficiently Secure
Strengthening your freedom on Android
Sufficiently Secure
Librera Reader is an e-book reader for Android devices;

Librera Reader is an e-book reader for Android devices; it supports the following formats: PDF, EPUB, EPUB3, MOBI, DjVu, FB2, TXT, RTF, AZW, AZW3, HTML, CBZ, CBR, DOC, DOCX, and OPDS Catalogs

Ivan Ivanenko 1.3k Jan 2, 2023
An ebook reader application supporting PDF, DjVu, EPUB, FB2 and many more formats, running on Cervantes, Kindle, Kobo, PocketBook and Android devices

KOReader is a document viewer primarily aimed at e-ink readers. Download • Wiki • Developer docs Main features portable: runs on embedded devices (Cer

KOReader Community 12k Jan 4, 2023
OpenNoteScanner - Android application for scanning and manipulating handwritten notes and documents.

OpenNoteScanner This little application provides a way on scanning handwritten notes and printed documents. It automatically detect the edge of the pa

Claudemir Todo Bom 1.2k Jan 1, 2023
Green Pass: PDF Reader (unofficial) Android App

Green Pass: PDF Reader (unofficial) Android App Offers a convenient access to a single one-sided PDF document and its QR code (if present in the docum

Michael Troger 32 Dec 31, 2022
HTML to PDF convertor for Android

HTML to PDF Convertor A simple HTML to PDF convertor for Android Download Add mavenCentral() repository in project's build.gradle allprojects { re

MD Danish Ansari 48 Jan 2, 2023
A simple Pdf document viewer 💼

Pdf Viewer Plus Screenshots Main Page Main Page Cyanea Permissions and privacy This app does not collect any data. The following permissions are requi

gokul 332 Dec 7, 2022
A Lightweight PDF Viewer Android library which only occupies around 125kb while most of the Pdf viewer occupies up to 16MB space.

Pdf Viewer For Android A Simple PDF Viewer library which only occupies around 125kb while most of the Pdf viewer occupies upto 16MB space. How to inte

Rajat 362 Dec 29, 2022
A nicer-looking, more intuitive and highly customizable alternative for radio buttons and dropdowns for Android.

SwipeSelector Undergoing for some API changes for a 2.0 major version, see example usage in the sample module! What and why? Bored of dull looking rad

Iiro Krankka 1.1k Dec 9, 2022
A highly customizable calendar library for Android, powered by RecyclerView.

CalendarView A highly customizable calendar library for Android, powered by RecyclerView. With this library, your calendar will look however you want

Kizito Nwose 3.4k Jan 3, 2023
⚡️A highly customizable, powerful and easy-to-use alerting library for Android.

Flashbar A highly customizable, powerful and easy-to-use alerting library for Android. Specs This library allows you to show messages or alerts in you

Aritra Roy 1.7k Dec 7, 2022
A nicer-looking, more intuitive and highly customizable alternative for radio buttons and dropdowns for Android.

SwipeSelector Undergoing for some API changes for a 2.0 major version, see example usage in the sample module! What and why? Bored of dull looking rad

Iiro Krankka 1.1k Dec 30, 2022
Android library for showing progress in a highly customizable pie.

ProgressPieView Android library for showing progress in a highly customizable pie. Choose from the broad spectre of styleable elements: ppvStrokeWidth

Filip Puđak 399 Dec 29, 2022
A pull to refresh layout for android, the RecyclerRefreshLayout is based on the SwipeRefreshLayout. support all the views, highly customizable, code simplicity, etc. really a practical RefreshLayout!

RecyclerRefreshLayout English | 中文版 RecyclerRefreshLayout based on the {@link android.support.v4.widget.SwipeRefreshLayout} The RecyclerRefreshLayout

dinus_developer 1.7k Nov 10, 2022
⏲ A highly customizable interval timer app for Android

TimeR Machine A highly customizable interval timer app for Android Structure The app uses the Navigation component. Modules whose names start with app

null 51 Dec 7, 2022
Android TreeView for RecyclerView with highly customizable

Gapo Tree View Support TreeView for RecyclerView with highly customizable Demo Features Expand/Collapse nodes Select/Unselect/Get Selected nodes Highl

GapoWork 11 Dec 7, 2022
A simple, highly customizable compose navigation component for Android & Desktop platform.

介绍 一个简单并提供高度扩展功能的 Compose 导航组件,同时支持 Android 和 Desktop 平台。 常用功能 使用 下载 // Android implementation("io.github.succlz123:compose-screen-android:0.0.1") //

Ning 15 Nov 24, 2022
Highly customizable SlidingLayer as you have seen in Wunderlist

6Wunderkinder SlidingLayer for Android This repository hosts a library that provides an easy way to include an autonomous layer/view that slides from

Microsoft Archive 942 Nov 28, 2022
Highly customizable SlidingLayer as you have seen in Wunderlist

6Wunderkinder SlidingLayer for Android This repository hosts a library that provides an easy way to include an autonomous layer/view that slides from

Microsoft Archive 942 Nov 28, 2022
Beautiful progress bar with segments. Highly customizable. Fully written with Jetpack Compose

?? SegmentedProgressBar ?? Beautiful progress bar split into several segments. Highly customizable. Fully written with Jetpack Compose. Why this libra

Stephen Vinouze 90 Dec 15, 2022
Highly customizable, 1.8.9 Forge Hypixel Duels bot!

What is Duck Dueller? Duck Dueller is a free and open-source Hypixel Duels bot, designed to work for Forge 1.8.9! It is planned to support many modes

null 9 Jan 1, 2023