Comments (6)
Has been closed for ebookdroid as "by design". I think, it's hard to make a decision here. Both behaviours have their disadvantages... Would be nice to hear more opinions on that.
from document-viewer.
The way it is now is a huge pain. If I've already opened a lot of books and I decide, for example, that I usually prefer single page view, I have to make that change manually in every single book I've previously opened. Changing global settings only affects new books. Making global preferences actually work is one way document viewer can be better than ebookdroid. How hard would it be to implement this?
from document-viewer.
Okay, you propose some kind of tag. For a given book, all of the book-specific settings are set to until the user decides to change a setting. Is that right?
Hm, even with this behavior I could think of scenarios where users are confused by this. Any other opinions?
from document-viewer.
By "tag" I assume you mean something that indicates "This setting hasn't been changed, so just use the global default". As long as the tag was per setting rather than per book, that should work.
Another idea is to not have a tag and only save the specific settings that have been changed. I believe that's the way most programs work: any preferences that haven't been changed for a book are redundant data and simply aren't saved.
from document-viewer.
Oh, I'm sorry, I just see that github removed something from my comment because it contained angle brackets. However, you got it right :)
from document-viewer.
I agree with this suggestion
-
IMO the first change to make is, at the database level, all book settings should be optional; i.e. they should be able to be NULL in SQL or simply omitted when serialized as JSON. This could be implemented as a part of #220 to limit the number of database schema changes to just one. This change doesn't limit us to any particular UI design, and it would support the current behaviour of snapshotting the app settings when a book is first opened.
-
We'd need a new API for accessing book settings that resolves unset book settings by reading app settings. This should be easy, just make all BookSettings fields private and add setters/getters.
-
How exactly to expose this functionality in the UI is still an open question.
Maybe some items in the quick settings toolbar menu (fullscreen, force portrait / force landscape, single page, day/night) could apply to all books. Some of them make more sense as book settings (crop / autocrop, split pages).
The actual book settings page would need some changes if all settings have an extra "unset" state; we couldn't use switches / checkboxes any more. Not sure what the best solution is there.
from document-viewer.
Related Issues (20)
- Where is the saved data (filenames, bookmarks) stored?
- Prevent scanning folders with .nomedia file
- gradientRadius not compatible for API Level 21 HOT 1
- awesome thanks for your work dev
- Can not build project on Windows
- Pdf files won't open. HOT 2
- Whitelist
- Page management Feature missing
- Save scroll position and zoom level for each document separately
- Images are decoded without resizing:
- Support for Solarized colourschemes and/or hex RGB colour input.
- Error saving PDF from third apps
- How implementation?
- Cannot get proper covers for some, not all files opening
- Error when compiled project
- OPDS-pse support
- Project dead? HOT 5
- Does not work on Android 4.2.2
- Replacement for this DEAD PROJECT? HOT 10
- Anti-Feature: Known Vulnerability HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from document-viewer.