aarddict / android Goto Github PK
View Code? Open in Web Editor NEWAard Dictionary for Android
License: GNU General Public License v3.0
Aard Dictionary for Android
License: GNU General Public License v3.0
Include user contributed French translation in next release.
Application crashers with the following stack trace if device is rotated while application is starting and displays dictionary loading progress:
java.lang.IllegalStateException: Timer was cancelled
at java.util.Timer.scheduleImpl(Timer.java:566)
at java.util.Timer.schedule(Timer.java:463)
at aarddict.android.LookupActivity$4.afterTextChanged(LookupActivity.java:350)
at aarddict.android.LookupActivity.onDictionaryServiceReady(LookupActivity.java:305)
at aarddict.android.BaseDictionaryActivity$3$2.run(BaseDictionaryActivity.java:151)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
(Originally reported by shakedunay on Oct 19, 2010 at BitBucket)
On my honeycomb 3.2 tablet the app is only zoomed to tablet resolution which results in a blurry picture with huge letters. Would be nice to have a right scaling for the 1280x800 resolution.
After searching for dictionaries, it starts to load them but always crashes after 33% or 50%.
crash reports are sent. Samsung Galaxy S3 with Android 4.1.1
ver 1.3.1 getting weird behavior when srolling trough a long search list.
Flashing a lot but advances little, might be another e-ink issue.
Recommend to change scroll to page turns, like done previously for the articleview).
(Originally reported by godines on Oct 05, 2010 at BitBucket)
It seem to be a good idea to use m.wikipedia.org HTML code. Navigation is faster because you expand only the sections you want to see.
When I use the keyboard in other applications, hitting "finish" closes it.
In aarddict the keyboard stays open and covers half of the search results until I tap one article.
Actually the Back button closes it, but maybe the keyboard finish event could be catched.
It would be very neat to have regular automatic updates for dictionaries, e.g. monthly.
A first step would be to have a convenient way to manually update a dictionary.
Of course this depends on issue #17
On e-ink devices scrolling creates a lot of screen refreshing action and annoying flicker.
It would be nice to adapt the scrolling (via swipe gestures) and page turns (via volume up and down) for e-ink devices.
Don't know the details but it would reduce the page refreshes/ animations to an absolute minimum.
Then reading on your app becomes really fun.
Thanks!
hi.new persian database (fawiki-20110517) for android app not working but (fawiki-20100124-1) work very well.thank u
.aar binary format allows to specify struct format for index item, such as ">LL" or ">LQ" as understood by [Python's struct] module(http://docs.python.org/library/struct.html#format-characters). There doesn't seem to be an equivalent struct library for Java, so Aard Dictionary for Android doesn't read format spec, simply assumes ">LL". Some Wikipedia's, such as itwiki of May 2011 are compiled with ">LQ" index item format and thus don't work on Android.
(Originally reported by xiajiezai on Sep 30, 2010 at BitBucket)
Display links to items that don't exist in underlined red text, just like the wikipedia does, so that we know which are the links that does not lead to a new article.
I use this with cool reader on my nook touch and, apart from some eink related issues, it's great. However, I find that unless I exit the app with the back button after I use coolreader to lookup a word, any new lookups will just re-display the aarddict app with the results of the earlier lookup.
Steps to reproduce:
In coolreader, look up a word
Switch back to coolreader without closing aarddict (I press the 'now reading' soft-button on my nook)
Look up a new word
Expected results:
search for new query
Actual results:
old search results
(Originally reported by itkach on Sep 20, 2010 at BitBucket)
Either the google search box pops up or the typing doesn't work. I have to go back to the home screen and start Aard again. I'm using Samsung GT-I5700 firmware version,2.1-update 1 baseband:i570EZWJD3 kernel version:2.6.29,leshak@i5700-dev 7 #65 build number:LeshaK's Kernel v.LK2.01.1
This was originally reported against Aard Dictionary (aarddict/desktop#9) and details added in #1
In many readers it is possible to assign volume up/down keys as page up/down.
The biggest component of apk is ICU jar. Only data that defines default unicode collation is used. The rest can be safely removed from the jar.
(Originally reported by xiajiezai on Oct 14, 2010 at BitBucket)
Add history feature so that recently viewed articles are more easily accessed.
AardDict version used is 1.4.1 (the latest version on the market! ).
Application crashes with the following stack trace when the next sequence of events is fired:
starting by main activity
press the menu button, click on info, longclick on the dictionary name and rotate the device while the dictionary's info is loading.
E/AndroidRuntime( 448): FATAL EXCEPTION: main
E/AndroidRuntime( 448): java.lang.IllegalArgumentException: View not attached to window manager
E/AndroidRuntime( 448): at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:355)
E/AndroidRuntime( 448): at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:200)
E/AndroidRuntime( 448): at android.view.Window$LocalWindowManager.removeView(Window.java:432)
E/AndroidRuntime( 448): at android.app.Dialog.dismissDialog(Dialog.java:278)
E/AndroidRuntime( 448): at android.app.Dialog.access$000(Dialog.java:71)
E/AndroidRuntime( 448): at android.app.Dialog$1.run(Dialog.java:111)
E/AndroidRuntime( 448): at android.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime( 448): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime( 448): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 448): at android.app.ActivityThread.main(ActivityThread.java:3683)
E/AndroidRuntime( 448): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 448): at java.lang.reflect.Method.invoke(Method.java:507)
E/AndroidRuntime( 448): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
E/AndroidRuntime( 448): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
E/AndroidRuntime( 448): at dalvik.system.NativeStart.main(Native Method)
After I changed my zoom setting to be zoomed in twice, opening articles on the English wikipedia (the 'Food' article, for example) will display the article not at 0,0 but at 0,XX so when it appears it seems that it has been scrolled down a line or two. Pressing pageUp repositions the article correctly.
I couldn't find a quick solution for this, but I could reproduce it without the eink patches so I assume this is a general webview/aarddict problem.
When looking up e.g. "house" in simplewiki-20110327.html.aar
and paging using volume_up,
there comes a point (3/4 of the article) where one cannot move further,
whereas finger scrolling still works.
Happens also in other articles.
I think it is a good idea to be able to load dictionaries from outside sdcard directory, specially because it is useful to have an USB with all wikipedia to connect and use.
Hi,
Isn't it possible to remove this permission? I can't see what it's good for, and the app would be so much friendlier without it...
If application was left with article view active returning to it often results in crash with the following exception:
java.lang.RuntimeException: Unable to start activity ComponentInfo{aarddict.android/aarddict.android.ArticleViewActivity}: java.lang.ClassCastException: java.util.ArrayList
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
at android.app.ActivityThread.access$1500(ActivityThread.java:117)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3683)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassCastException: java.util.ArrayList
at aarddict.android.ArticleViewActivity.onRestoreInstanceState(ArticleViewActivity.java:790)
at android.app.Activity.performRestoreInstanceState(Activity.java:816)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1625)
... 11 more
is possible?
some readers like the PRS-T1 do not have sensors built in..
Thx for your work!
Page turns result in much lower flicker on e-ink devices than scrolling, yet scrolling is necessary to align pages.
The handling of hardware buttons for page turns is quite devices dependent, so why not do the entire navigation using gestures:
A vertical swipe would scroll, as already implemented.
A horizontal swipe would turn the page back or forth.
Just takes a little checking and thresholds for x and y.
What is the coordinate system used in e.g. the Scrollto function? How can a delta x or delta y be detected?
(Originally reported by godines on Oct 05, 2010 at BitBucket)
Some characters in articles are not properly rendered, especially the ones of phonetics.
When returning to a previous article in wikipedia Aarddict loses position. This is very annoying when reading long articles and wanting to read a link somewhere. Upon turning back one has to search one's last position one's again.
Changing device orientation while browsing/scrolling articles sometimes crashes the app with the following stack trace:
java.lang.IllegalStateException: Timer was cancelled
at java.util.Timer.scheduleImpl(Timer.java:566)
at java.util.Timer.schedule(Timer.java:463)
at aarddict.android.ArticleViewActivity.updateNextButtonVisibility(ArticleViewActivity.java:530)
at aarddict.android.ArticleViewActivity.access$9(ArticleViewActivity.java:499)
at aarddict.android.ArticleViewActivity$5.onTouch(ArticleViewActivity.java:234)
at android.view.View.dispatchTouchEvent(View.java:3759)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:913)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:965)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:965)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:965)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:965)
at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:1190)
at android.view.ViewRoot.dispatchDetachedFromWindow(ViewRoot.java:1640)
at android.view.ViewRoot.doDie(ViewRoot.java:2681)
at android.view.ViewRoot.die(ViewRoot.java:2651)
at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:218)
at android.view.Window$LocalWindowManager.removeViewImmediate(Window.java:436)
at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3684)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3789)
at android.app.ActivityThread.access$2400(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2037)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
In Android 4.0, swiping aarddict out in list of recent applications (the one the appears on long Home button tap) results in a crash with the following stack trace:
java.lang.RuntimeException: Unable to start service aarddict.android.DictionaryService@41317cb0 with null: java.lang.NullPointerException
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2376)
at android.app.ActivityThread.access$1900(ActivityThread.java:123)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at aarddict.android.DictionaryService.onStart(DictionaryService.java:116)
at android.app.Service.onStartCommand(Service.java:438)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2359)
Aard works great, but looks ancient on android >=4.0 devices. I've made a simple patch (4 or 5 lines of java code plus a new layout-v11/lookup.xml) that makes it "holo" on ICS or newer devices while keeping compatibility with devices newer than 2.1. I could make it compatible with devices newer than 1.6 with a few more lines of code, but first I'd like to know if you're actually interested on the patch (the simplicity of the patch makes me believe that you're not, or you'd probably had done it yourself already), and in case you are, if you really need to support that 0.2% of devices with android <2.1 (http://developer.android.com/about/dashboards/index.html).
Regards,
Fran
In Android 2.3 keyboard languages are switched by swiping the Space key. Sometimes is actually enters space which currently results in lookup not finding anything.
(Originally reported by itkach on Sep 21, 2010 at BitBucket)
When multiple articles are found or a title, only first article is displayed: navigating to the next article updates the title, but article view is not updated, continues to show the first article. This is on Android 2.2.
I own a Sony Prs-t1 ebook reader that runs Android 2.2. This device has a small internal memory storage area, a 1,3 Gb internal sd card (mounted in /sdcard), and a slot for external sd cards that are mounted in /extsd. Obviously, the internal one is too small to host a Wikipedia, so I'm trying to use the external one, but aarddict fails to find my databases there, and does not provide any option to manually set up a file path.
onSearchRequested just calls finish() assuming that there's another screen behind it to return to. The attached code checks how the intent was opened and will create LookupActivity if one doesn't aready exist.
(Originally reported by xiajiezai on Oct 14, 2010 at BitBucket)
When I tilt my device and change the screen orientation from portrait to landscape, it goes back to the first article I opened while I have gone through many articles by tapping on the links.
Similar to FBReader on Android.
It could have the same stuff that's hosted on aarddict and ideally even more, such as the Hitchwiki .aars :)
http://aarddict.org/dictionaries/index.html
The Wuala and Dropbox links could still be shown inside the app.
As you may know stardict already have plenty of dictionnary outside, and it could be a really good idea to support them, or least to provide a tool to convert from stardict to aardict format
Page Turn Buttons on Rooted PRS-T1
..
The page turn arrows are, to the Android system, buttons 105 and 106 and are mapped as DPAD_LEFT and DPAD_RIGHT. The Sony apps are written in such a way that these "keyboard" commands have meaning. Most other apps don't give them a roll or at least a useful one, though someone has been kind enough to tweak FBReader to use them (see the Rooting and Modding Wiki).
..
Source: http://www.mobileread.com/forums/showthread.php?t=163458
(Originally reported by godines on Oct 05, 2010 at BitBucket)
I think it can be useful to have a fullscreen option to use all the screen.
Key definitions are
key 412 LEFT_NEXTPAGE
key 139 LEFT_PREVPAGE
key 407 RIGHT_NEXTPAGE
key 158 RIGHT_PREVPAGE
It would be great to map those to page up/down as the scrolling doesn't really work very well on eink as reported in issue #28
(Originally reported by xiajiezai on Oct 20, 2010 at BitBucket)
Keep the scroll position after goes back from another article instead of going to the beginning
It would be really helpful to have the possibility to set the path to the dictionaries, like in Wikidroyd.
Storage of /mnt/sdcard is often actually on the device's flash, not the external 32GB card.
Big thanks for your work!
that Aarddict ist e-ink friendly now.
This is to promote the general interest in e-ink specific app development.
Thanks!
Can you update the spanish dictionary (20110511).?
Thanks in advance.
(Originally reported by itkach on Sep 19, 2010 at BitBucket)
When application starts it brings up it's dictionary service which runs dictionary discovery. Dictionary discovery may take a while depending on the contents of SD card and speed of device. Normally the dictionary service keeps running in the background even if user navigates away from the application, but the system may shut it down at any time if device is low on resources, so lengthy dictionary discovery potentially may run every time user starts UI.
One alternative to dictionary auto discovery would be letting users manually specify where dictionaries are similar to how it works in Aard Dictionary for desktop. However Android UI design guidelines discourage exposing low level system elements like file system to the user and Android does not provide standard widgets to do this.
Perhaps dictionary service on startup should simply try reopen the dictionaries from the last time and only run dictionary discovery automatically if no dictionaries could be found.
This was originally reported against Aard Dictionary (aarddict/desktop#9)
(Originally reported by xiajiezai on Oct 20, 2010 at BitBucket)
Add multi windows features
I see that the enhancement request "add multi windows" was closed recently. Is it possible to reconsider it?
A lot of recent android phones have large screens which would make a multi-tab bar very convenient.
IMO the "back" and "previous" buttons are a very limited option compared to multi tabs, especially when reading wikipedia articles that contain a lot of interesting links. It would be nice to be able to open a link in a new background tab as you read through the article.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.