Putting it above the keyboard would make it overlap the answer input field for some devices, depending on screen size and settings. The ‘close enough’ toast doesn’t jive very well with lightning mode, that’s just the way it is.
There are a few things you can do. One is to disable lightning mode, the ‘close enough’ message is then shown inline just above the subject info dump. Another is to set the ‘close enough’ prompt to temporarily disable lightning mode for that one question. Or just disable the ‘close enough’ toast again. After all, it’s disabled by default, you can always go back to the default setting to not show it at all.
The square cards for the radicals/kanji don’t mix with the vocab cards, they are always kept completely separate, and nearly always with headers or other views in between. And the vocab cards have to be wider because vocab can be very long, while radicals and kanji are always exactly one character. It only makes sense to lay them out in different ways.
The old table-based layout is not coming back. It was causing too many layout and performance problems, especially with long vocab, it was too inflexible, and it was awful on wide screens like tablets.
I’m busy experimenting with some layout changes to make things look better, but most of my experiments have been less than successful, especially considering that the three different themes each impose very different constraints. I’m prepping a release with two experimental layout options as a trial, to see where to go from there, I’ll push it to the store tomorrow.
Add a hint when answering a reading question incorrectly because of the common niyuu/nyuu にゆう/にゅう mistake.
Switch the logic for allowing sync/downloads on WiFi only to check for an unmetered connection instead. This makes no difference in most situations, but this takes into account the possibility of unmetered connections that are not WiFi, and of metered connections that are WiFi (such as hotspots created by another Android device). Basically, if you’re using a metered WiFi connection, FD will act as if you’re on cellular data.
Add a small drop shadow to text in a few places to increase contrast and readability, especially in the Light theme.
Hide reading in subject cards if shown during a quiz and reading-related information is suppressed.
Refactor out some legacy functionality in preparation for Android 11 support.
Add a temporary, experimental option to change the layout of the subject cards in search results and subject tables. This option will only be there temporarily to try out some different layout options, in a future update it will disappear or be replaced with something more permanent.
Add a ‘burned less/more than X days ago’ filter to the advanced search form.
On the session summary screen, add a button to bulk-resurrect items in that session that had incorrect answers.
great job @ejplugge. I plan on implementing a small change to the randomization during review: making skipped items end up last in the queue and only be shown once all non skipped items have been shown.
Sure. One condition, though: the ordering settings chosen by the user have to be respected at all times. Weakening the ordering rules would make for a confusing mess, and the ordering is muddy enough as it is.
So if the user selected order by level, but did not select shuffle-after-selection, and the user’s session has level 20 and level 21 items, then all level 20 items (including skipped level 20 items) must be finished before the first level 21 item is selected.
And be aware that there isn’t really a queue, only a list of candidate questions ordered by sort bucket. When a question is chosen, a random one is selected from among the current bucket. To force skipped items to the end of the bucket it’s no use changing the order of the candidate questions in the questions list. You have to extend the selection logic in the Session.chooseQuestion() method.
right. that’s not what I want . I order my reviews by SRS stage and if I skip an item then I really don’t want to see it until I’ve done all non skipped items.
so when I press skip I want it placed in a separate skip bucket which is not used for selection until other buckets have been exhausted.
I may open a PR anyway and let you consider it then, depending on how it turns out .
Yeah, I was afraid of that… Not meaning to be rude, I just don’t want to raise false expectations. Nothing is set in stone of course (well, some things are, but not anything like this), but I’d have to be convinced it can be done without bumping up the level of confusing complexity, before I’ll accept such a PR. I have to be a gatekeeper of sorts and sometimes say no to protect users who have small screens, old Android versions, or who can’t handle a lot of complexity. There are over 12,000 of you lot, which is a kinda scary number, and quite a few of those need that protection to keep FD a widely useful app.
FD is already bogged down by far more complexity than is healthy for it, considering the widely spread usage patterns out there. I have to limit what gets into the code base to avoid letting the complexity get out of control. That means, among other things, that I don’t want to add new settings to modify existing functionality if I can avoid it, and that different settings are not allowed to interfere with eachother in non-obvious ways, so that if you enable setting X, you can rely on X actually happening. So if you order by level, you will actually get ordering by level, not ‘kinda sorta ordered by level except if you do Y or Z or during a full moon’.
As a compromise, I did add a setting to shuffle-after-selection as a simple binary all-or-nothing option. That way, after initially applying the ordering settings to build the session, the ordering is just discarded completely by putting everything in a single bucket.
I quite understand. I’ve made the mistake of saying yes to users more than I should’ve myself. It’s really hard to say no. Plus youve already explained your wishes with regards to PRs and such so I just thought it best to ask.
I like the Durtles app but… I have actually used the Chrome/MS Edge (Chromium version) pinned as an app both on Android and in Windows.
For me, if Tofugu would release a PWA that just uses the WaniKani website as the base, with a way to cache data locally if we so desire, it would be perfect.
Until and unless Tofugu comes out with something, I will use WaniKani pinned as an app for lessons and review and have Durtles hit me with notifications when new lessons/reviews are ready since the pinned app doesn’t seem to offer notification capability. I’ll also use the more interesting data in Durtles
Got it. It’s not intentional, but it’s a side effect of another intentional change. I had some layout inconsistencies and margin errors on top-level layout components. They’re fixed now, but I overlooked that the quiz question view needs some specialized treatment.
It’s already there. The hourly notification alarm handles both notifications and the widget. Usually, if notifications and widgets are out of date, then that means the device is not letting the app get woken up for the alarm, likely because of battery management.
If the notifications are up-to-date, but the widgets are not, then there’s something else going on. But I haven’t seen that happen yet.
The notifications don’t matter for the widget. The widget gets updated independently, both whenever you finish a review item and when the notification alarm goes off. They just share a trigger event.
What do you mean by the widget being out of date then? Can you upload your debug log so I can see if the app on your device is even receiving the alarms?
No, there isn’t, it’s not needed. I made sure to only apply the shadow in places where it would have a positive effect, but if the shadow is causing problems anywhere, please post a screenshot.
They indicate a time slot where you will get reviews that are directly on your level-up progression path.
That is, time slots with that arrow have kanji for your current level, and/or radicals that are keeping those kanji locked. So doing those reviews will directly push you along to the next level-up.