Pleco for Android 3.2.13 Beta 3

mikelove

皇帝
Staff member
Third beta is out of this now pretty big release, with a few more major changes and some minor ones.

If you previously signed up for beta testing through Google Play, this new beta should show up as an update within a few hours. Otherwise, you can get it:

a) Through Google Play. Sign up for our Android Beta Testing group at:

https://groups.google.com/forum/#!forum/pleco-android-beta-testing

And then sign up for beta versions of Pleco at:

https://play.google.com/apps/testing/com.pleco.chinesesystem

after which you should be able to get it right from them.

b) Directly from our website; APK at:

http://cdn.pleco.com/androidapps/plecodroid-150725.apk

Changes in Beta 3:
  • Added a notification option for clipboard monitoring, in the new "external access" section of Settings. This gives you a sort of notification-sized version of the Pleco popup reader interface on whatever your current clipboard text is; arrows at the top left corner scroll through previously captured clipboards, selection box at the top right shows you your current text (tap to shrink the highlighted range), arrows to the right of the definition let you both scroll through entries and scroll between words, and buttons on the bottom let you play audio / add to flashcards / search / view in dictionary. There are also options to make this notification persistent.

    We're actually pretty happy with how this turned out too (though the UI still needs a little refining), and are considering putting it into widget form as well (very similar code, as it happens - each a variety of RemoteView), and implementing something somewhat similar in the iOS Today Screen.

  • Improved Screen Reader accuracy with large blocks of text - these should now match up pretty closely with the portion of the text that's displayed on the screen.

  • Related to this, further optimized our handling of WeChat in Screen Reader - in many cases it'll be pretty much pixel-for-pixel with the characters in chat bubbles (making it easy not to lose your place).

  • Made the screen reader button appear immediately after you activate our accessibility service, so you don't have to go back into the menu for that.

  • Added an option to retain the current selection area for Screen OCR, also in Settings / External Access, since we realize that could be pretty useful for stuff like viewing movie subtitles.

  • Added options in Settings / External Access to create toggle icons for Screen OCR, Screen Reader, and Clipboard Monitor.

  • Added options in Settings / External Access to enable or disable the sidebar menu options for Screen OCR, Screen Reader, and Clipboard Monitor.

  • Made Pleco Reader / Pleco OCR appear more reliably in the "share" screen for text / PDF / image files, and made them actually open the files correctly when you select them. (we hope)

  • Added a new control-R keyboard shortcut, which simultaneously jumps you back to the dictionary and pastes in whatever is in the clipboard.

  • Overhauled the still OCR "scrollable focus" mode - now, when you tap on the button to enable that, you'll see a reduced set of OCR control buttons and get a popup reader bubble when you tap on a character (instead of the bottom-of-the-screen definition).

  • Fixed a few nasty new crashing bugs.

Changes in Beta 2:
  • Added a new "Screen Reader" function (available through the sidebar menu). This uses the Android accessibility infrastructure to pull the text of whatever app you're looking at right now and overlay the screen with a tap-lookup-friendly Pleco version; we add a little floating 'reader' button overlay to the screen while it's running. (you can move that button wherever you like by dragging it, and dismiss it with a long press)

    It works on Android 4.1 or later, though support in specific apps varies - doesn't work in the pre-Chrome Android Browser but does seem to work reasonably well in Chrome, works great in WeChat, doesn't work in Kindle (big disappointment, that one) but does work in Google Play Books. Here are some screenshots from WeChat:

    View attachment 1836 View attachment 1837 View attachment 1838

    If you find that a specific app gives you little or no information (particularly problematic in apps like Chrome with very complicated text layouts), tap back or tap outside of the readable areas to dismiss this, wait a second or two, then tap on the reader button again.

    This actually turned out way better than we expected it to, and we're excited enough about its potential that we expect it to play a major role in our future Android development plans. While we aren't taking advantage of this yet, the accessibility system also gives us a great deal of information about which specific app we're running in and gives us notifications when bits of the UI change, so one thing we plan to explore in the future is developing app-specific overlays - trying to match the original app's typography etc more exactly and updating the screen when it changes. We can even exercise a degree of 'remote control' over apps, so it's possible we might be able to use this to build an entire Pleco skin around WeChat; WeChat would still be running, but it would be completely overlaid with a Pleco UI that would let you not only look up words but even compose replies.

    We're excited enough about what we can do with this and eager enough to hear what you all think of it that we're making this feature completely free, at least in its current form - we may make a paid 'enhanced version' of it at some point, either as part of the reader add-on or as a separate add-on, or possibly even charge for app-specific UI skins if those prove a popular concept (would help to justify developing them for more obscure apps), but our intent is to give everybody something reasonably usable in our free app.

    Please do let us know if it behaves oddly or doesn't work at all in a particular app - we can't necessarily do anything if an app doesn't support accessibility, but if it supports it but produces confusing results we can hopefully do something about that. Please also let us know if you notice any performance problems when this is running - we think we've got it optimized pretty well but there's probably something we've missed.

    We're stil tweaking the UI a bit - definitely need a better icon and we also need an easier way to make the floating button appear / disappear (debating between a dedicated launcher shortcut and a persistent notification).

  • Also added a "Screen OCR" function - this one is for Android 5 only (earlier versions didn't support the necessary API). It basically just takes a screenshot and instantly OCRs it, popping up a simplified version of our OCR interface with a popup bubble for looking up words. Less reliable than Screen Reader and without quite as much future potential, but useful for apps where Screen Reader doesn't work well. This one is not free, but it's included with our OCR add-on, so no extra purchase needed if you already have that. Like Screen Reader it's accessed via a floating button, and you can turn either reader option on or off with a long press of that floating button. Screenshots:

    View attachment 1839 View attachment 1840 View attachment 1841

  • Added PDF support to both the document reader and OCR - open a PDF in the document reader to view embedded text, open one in Still OCR to recognize it as a series of images.
  • Moved clipboard monitoring to a system service and made it restart automatically when you reboot your phone if it was running before you rebooted. We also do that with Screen OCR / Screen Reader.
  • Improved live OCR accuracy on devices with higher-resolution screens (we think), using a simple trick from our iOS app that was yet another Thing We Forgot To Port To Android For Way Too Many Years.
  • Inspired by Screen Reader, went through Pleco's own UI and added accessibility text to all of the parts of our UI that didn't already have it - we're ashamed that it took us this long to do that, but in any event our visually impaired users should now have a slightly easier time finding their way around our UI. If you're an Android developer yourself Screen Reader is actually a very handy tool for giving yourself a quick accessibility tuneup - just go through each screen, run Screen Reader, and add content description texts to any UI controls that Screen Reader doesn't see.
  • Added an input method switching option to the tap-hold popup menu in edit fields.
  • Fixed (we hope) slowdowns in the clipboard reader in ARC Welder.
  • Fixed an error when trying to make or restore Google Play in-app purchases.
  • Fixed a bug that kept Zhuyin neutral tone dots from appearing correctly in ruby Zhuyin in the entry list and popup reader for syllables with 3 Zhuyin characters.
  • Fixed a bug that made the audio play button in headwords disappear when using ruby Zhuyin and no Pinyin.
  • Fixed a couple more crashing bugs.
Changes in Beta 1:
  • Added support for Ruby Zhuyin display (small Zhuyin text next to individual characters), in honor of / preparation for the release of the Taiwan MoE dictionary alongside our finished 3.2.13 update. (we've been told this is the biggest missing feature in Pleco compared to the standalone MoEDict app)

    We've done this pretty comprehensively - can be enabled not only in dictionary entry headers but also in search results, example sentences, flashcards, and the popup reader - and are planning to do a lot more with it in the future (automatically adding it to reader documents, e.g.) and to extend it to not only Zhuyin but to Pinyin and to Jyutping/Yale for Cantonese (though these would appear above/below rather than next to characters). Enable it in its dedicated options screen in Settings / Languages. Note that this will prevent regular Zhuyin from displaying if you've set that as one of your pronunciation systems, but if you use Pinyin as your pronunciation system and also enable side Zhuyin the two will happily coexist.

    Please let us know if you notice any weird behavior with this or if you have any aesthetic objections to the way we display Zhuyin (have checked against several apps that we've been told are good examples of it and we think we've got it working pretty well now, but can easily tweak it if not since it's totally custom drawing code, and even if it's working perfectly on our devices it may be that a particular manufacturer has screwed up font rendering in such a way that it displays much less nicely on their devices).

    Also, please let us know which specific places you end up enabling Ruby Zhuyin - we'd really like to have less than 5 checkboxes for this but we're not sure yet where it will work well / badly.
  • Added native x86 code libraries for the sake of people with x86-based tablets or using desktop emulation solutions like ARC Welder - Pleco should be screaming fast on those now. Note that the text-to-speech add-ons are still ARM-only, so if your device can't run ARM code in emulation, most of Pleco should work (including handwriting and OCR) but text-to-speech will probably still refuse to load.
  • Also for the sake of our ARC Welding friends, added three new control key shortcuts; control-F jumps you back to the search screen with an open empty search bar regardless of where you are in our app, control-D adds the current word to flashcards and control-O plays audio.
  • Added an option in settings to use old-fashioned file open / save dialogs even on devices that are running Android 4.4 or later and ought to have access to the newer SAF ones, since those don't work correctly in some forked versions of Android. Automatically enabled them on ARC Welder since they're currently broken on that.
  • Added a male Cantonese audio add-on, and a new Cantonese audio gender preference in Settings / Audio.
  • Did some preliminary optimization for Android M, including a few bug fixes, support for more gracefully handling denied permissions (though we can't ship all of that until they release a final Android M developer kit), and a migration away from the now no longer supported Apache HTTP framework for network connections.
  • Added an item to the Categories section of Card Info to let you add a card to the current default category with a single tap, and made Card Info an option for duplicate handling in settings / flashcards, this as part of a longer-term plan to replace the duplicate prompt with Card Info altogether by making all of the prompt's features available in Card Info.
  • Made the color of full-text highlights lighter for better visibility against tinted example sentences.
  • Moved the loading of user dictionaries to a background thread, which should mean faster startup and a fix for the annoying bug that sometimes caused user dictionaries to be buried at the bottom of Manage Dicts even if you'd previously put them elsewhere.
  • Migrated to a new settings storage system which we hope will make settings / history a bit more immune to accidental deletion on buggy or misbehaving or extremely-short-on-memory devices.
  • Added long-click category selection support to the optional + buttons next to example sentences in definitions and the optional ones in individual dictionaries' definition headers. (you can enable both of those in Settings / Definition Screen if you didn't know they existed before)
  • Completely overhauled the way we handle text selection in our search field - now, long-pressing it will always (and we hope reliably) bring up a Pleco edit menu with copy / paste / select all as appropriate, mimicking the behavior on Android M and doing it in a more consistent way than we've managed to achieve relying on Android itself to produce that behavior.
  • Added the ability to deliver updated versions of CC-CEDICT through Google Play without updating the rest of our app, which should let us update it for GPlay users much more frequently than we could otherwise. (we're going to make these available to other users too, but probably with some sort of opt-in registration process since otherwise every time we updated it we'd rack up a few TB worth of CDN bandwidth bills)
  • Added tone coloring in a few places it didn't appear before, most importantly in English-Chinese dictionary definitions - this requires a database update, we've got one available for NWP right now and will have one for ABC E-C shortly too.
  • Added internal support for masking Registration IDs for use in school / institutional copies of Pleco where you don't want your users to be able to see them (contact us if you'd like to set that up for your institution).
  • Made the number strings after flashcard backup files appear as sensible year-month-day-hour-minute numbers instead of Unix epoch times, and added them to flashcard exports by default (now that we have an option to remove them in settings / miscellaneous).
  • Got rid of the annoying "tap with two fingers" text in the non-handwriting-input flashcard sketch box.
  • Made Pinyin/Zhuyin no longer display in "VARIANT OF" items with pronunciation system set to "none," and updated "YY" in Cantonese variants to "YL"/"JP" to match how they appear in dictionary headers.
  • Added a new URL scheme for direct access to the dictionary definition screen:

    plecoapi://x-callback-url/df?hw=(characters)&py=(pinyin, optional, used to differentiate)&sec=(tab to jump to,dict|stroke|chars|words|sents, optional)

    If you want to fall back on the old search result scheme q?s for people with older versions of Pleco, use:

    plecoapi://x-callback-url/q?s=(characters)&mode=df&hw=(characters)&py=(pinyin, optional, used to differentiate)&sec=(tab to jump to,dict|stroke|chars|words|sents, optional)

    Both identical to our iOS app for easy use by website creators.
  • Also added a new URL scheme for direct download and import of flashcard lists:

    plecoapi://x-callback-url/fl?u=(URL-encoded URL of the list to download)

    Currently only UTF-8 encoded text lists are supported. And again, identical to our iOS app.
  • Moved to a new system for saving / opening still OCR photos taken with "take picture" which we hope will work more reliably on some forked Android versions (and on Android M).
  • Added 'conceal handwriting until done' and 'Enter concealed immediately' options in Test Settings for fill-in-the-blanks handwriting tests, letting you prevent the handwriting recognizer from giving you hints to the correct character; with the former option enabled, you'll only see results in the recognizer when you tap with two fingers to clear, and with the latter, the resulting character will also be entered immediately so you don't have a chance to correct it if you screwed up.
  • Made the definition screen refresh itself correctly after adding or deleting a user dictionary entry.
  • Made incorrect answer characters in flashcard fill-in-the-blanks tests tappable so you can get to their definition screens and find out more about them.
  • Made font sizes in the sidebar menu scale up if your overall Android font size setting is set to something higher than the default.
  • Added an option in Settings / Miscellaneous to put a clipboard monitor toggle at the top of the drawer menu for more convenient access.
  • Hid stroke order for the opposite character set if Pleco is only configured to display one set in the headword.
  • Fixed a bug that kept the initial file download dialog from being correctly themed for Android 5.
  • Fixed a bug that made the text editing cursor in the search field invisible on some devices.
  • Fixed a bug that could cause flashcard export files that were overwriting previous files with the same name to leave behind some data from the older file.
  • Fixed a bug that made the onscreen back button in OCR fail to trigger correctly after rotating the screen.
  • Fixed a bug that made the onscreen back button appear white even against light-colored themes on Android M (and sometimes on 5.1).
  • Fixed a bug that could cause the edit entry screen to prompt you to save changes even if you hadn't made any.
  • Fixed a bug that could cause the contents of flashcard edit fields to be reset on returning from another screen.
  • Fixed a bug that prevented XML flashcard files from importing correctly on newer devices.
  • Fixed a bug that could cause custom entries / flashcards with numbers in them to lose their correct tone coloring after an edit.
  • Fixed a bug that could prevent headwords in Hangul or Kana in C-E flashcards from being magnified correctly.
  • Fixed a bug that prevented super-rare / image characters like old character forms in Grand Ricci Histoire from rendering correctly in Night Mode.
  • Fixed a bug that made Zhuyin characters enlarge along with Chinese characters with the "larger Chinese" option enabled.
  • Fixed a bug that prevented copyright strings in user dictionaries from saving correctly.
  • Fixed a bug that could cause a user dictionary to fail to be created if its name was identical to that of a previous user dictionary.
  • Made the "full-text only" flag for dictionary groups work regardless of the "Integrate C-E Fulltext" / "Integrate E-C Fulltext" settings, part of our long-term transition to a simpler and more group-driven dictionary management system.
  • Fixed a bug that prevented punctuation and extended Unicode characters from carrying through to the other fields in an auto-filled custom card / dictionary entry composition screen.
  • Fixed (we think) a bug that could sometimes cause the input method selection bar to fail to reappear on returning from a definition screen.
  • Fixed a bug that kept flashcard test definitions from updating immediately after changing the dictionary a flashcard is linked to via the separate dictionary screen.
  • Fixed a bug that could prevent categories in text exports from exporting in the correct order.
  • Fixed a bug that made the flashcard session switch dictionary option remain grayed out and unaccessible for custom cards for which exactly 1 dictionary match was available.
  • Fixed a bug that could cause a UNI entry with the wrong pronunciation to display when searching for a particular Mandarin or Cantonese syllable. (character would be correct but it would be a different pronunciation for a 多音字)
  • Fixed a bug that could cause statistics to be included in XML flashcard exports even with the option for that disabled.
  • Fixed a bug that could cause incorrect counts of correct/incorrect cards to appear after undoing a card score when repeating incorrect cards.
  • Fixed a bug that could sometimes cause full-text highlights in the result list to not match up with the words being highlighted. (most often with full-text English searches in E-C dictionaries)
  • Fixed a couple of minor bugs relating to headword / pronunciation text formatting.
  • Fixed a bug that prevented the creation of flashcards from example sentences in English-Chinese dictionaries.
 
Last edited:

kun4

举人
One minor nit:
- When doing dictionary search w/ handwriting input on older tablets, the handwriting input is unresponsive.
Reason: the dictionary search is updated all the time, and this interferes with handwriting. Perhaps it would be better not to update the dictionary search all the time, but wait until the handwriting input has been stable for a fraction of a second.

OK, Setting "Handwriting input -> Use full screen: off" also works
 

Shun

状元
Hi,

I'd like to report some flickering issues. I installed Pleco 3.2.13 Beta 3 on ARC Welder 46.5021.438.0. After start-up of Pleco, the ARC Welder screen blinked maybe 5 times per second, going all white. After scrolling around, parts of the app also went blank. (see screenshots) Might Pleco have triggered an incompatiblity between ARC Welder and the current Mac OS graphics card drivers?

This happened on a new MacBook (Intel HD Graphics 5300), Mac OS X version 10.10.4. The beta works great on a Windows PC.

Regards, Shun


Screen Shot 2015-07-26 at 13.27.08.png

Screen Shot 2015-07-26 at 13.27.24.png
 
Last edited:

Taichi

榜眼
Does the notification feature shows heads up notifications on lollipop? I haven't upgraded to lollipop, but am very curious as it would be sort of popup on any up.

Updated:
Never mind, I found the ticker option! It works on 4.4 using heads-up Notification app! Cool! I have some questions.
- Which dictionary can be used in notification? Only free dictionary?
- Are those notification buttons (audio, flashcard, e.t.c) available in ticker?
 
Last edited:

mikelove

皇帝
Staff member
@kun4 - thanks, we'll see if we can improve on this on older devices.

@Shun - we saw those too but they actually seem to relate to an ARC Welder update; tried installing an older APK and saw the same problem. And occurs even during the initial file download screen during which frankly our app isn't doing much of anything. So I'd hound Google about it and hope for another ARC Welder update soon.

@Taichi - yes, does show heads up on Lollipop if you set the notification mode to one that includes "live." All dictionaries are supported but it'll default to whichever is first in Manage Dicts. Buttons are not available in ticker due to lack of space though I suppose we could make an exception for those two.

Looks like there'll be at least one more beta due to Google finally catching up to Apple and adding Mandarin / Cantonese to Google TTS (albeit in a less satisfying way without read-along support - we'll be able to play audio with them but probably not to show you which word we're reading).
 

Taichi

榜眼
I see! It seems dictionary selection is sticky. Is this intentional?
I think buttons on ticker would be nice for tablets.
Does this notification stuff work on Android wear as well? it suits flashcards and histories rather than clipboard monitoring though.
 
Last edited:

Shun

状元
@mikelove - I reported the issue to Google.

Update: I got this answer about the flickering on Macs: "I believe this should get fixed if arc-runtime-46.5021.444.0 (or later) that is currently in canary gets rolled out."
 
Last edited:

mikelove

皇帝
Staff member
@Taichi - yes, it is sticky; would you prefer that it wasn't?

The current notification is specifically configured not to show up on Android Wear since we don't think it would be particularly useful on that - no reason we couldn't add Wear notifications in a future release, though.

@Shun - thanks.
 

Taichi

榜眼
I think the notification behavior is sometimes not intuitive, and somewhat different from the popup sticky behavior.

suppose my dictionary order being 1. GF, 2. MOE
1. copy 遗体, It shows GF
2. copy 印度, It shows MOE as it doesn't hit GF
3. copy 遗体 again, It shows MOE !!
 

mikelove

皇帝
Staff member
Hmm, yeah, it shouldn't be re-sticking in that case - we'll investigate, but it may be that keeping it non-sticky is a better bet. Thanks.
 
Top