kenstir [Mon, 12 Oct 2015 02:39:53 +0000 (22:39 -0400)]
search by format, e.g. "All Formats" or "DVD"
kenstir [Mon, 12 Oct 2015 02:04:13 +0000 (22:04 -0400)]
place hold: default email notification to true
kenstir [Sun, 11 Oct 2015 21:07:25 +0000 (17:07 -0400)]
code cleanup: removed unused code, and similar code formatting for doRequest*
kenstir [Sun, 11 Oct 2015 20:50:44 +0000 (16:50 -0400)]
* removed unnecessary duplicate search code
kenstir [Sun, 11 Oct 2015 18:11:07 +0000 (14:11 -0400)]
code cleanup:
* removed unused ConnectionManager param from calls
* changed doRequest calls to have a consistent formatting
Not sure why the 2nd overload of doRequest calls while(req.recv());
will have to dig into that later.
kenstir [Sun, 11 Oct 2015 01:03:26 +0000 (21:03 -0400)]
Upgraded to IntelliJ IDEA 14.1.5
kenstir [Sat, 10 Oct 2015 21:11:17 +0000 (17:11 -0400)]
Better caching of images, but still not great. Use a sentinel Bitmap
object so there is something non-null in the cache and we don't need to
keep retrying if there is no image. There are still a lot of unnecessary
requests here, such as when changing orientation and when flipping between
list and detail views.
kenstir [Sat, 10 Oct 2015 20:56:50 +0000 (16:56 -0400)]
The IDL is no longer packaged with the app in assets, but I am keeping
this script laying around for reference.
kenstir [Sat, 10 Oct 2015 20:55:51 +0000 (16:55 -0400)]
remove useless comments
kenstir [Tue, 6 Oct 2015 02:00:49 +0000 (22:00 -0400)]
Removing dead code
kenstir [Tue, 6 Oct 2015 01:42:25 +0000 (21:42 -0400)]
* C/W Mars -> C/W MARS per member librarian :)
* use image from /jacket/small/r/$image rather than /jacket/small/$isbn, as the web client does. There are a lot more images available that way.
* removed unused menu on "checked out" view
* fixed indenting on some lousy code
kenstir [Tue, 6 Oct 2015 01:38:58 +0000 (21:38 -0400)]
* C/W Mars -> C/W MARS per member librarian :)
* use image from /jacket/small/r/$image rather than /jacket/small/$isbn, as the web client does. There are a lot more images available that way.
* removed unused menu on "checked out" view
* fixed indenting on some lousy code
kenstir [Thu, 13 Aug 2015 02:31:51 +0000 (22:31 -0400)]
Fixed the issue that the Google Play Store sayd Supported devices 0. This turned out to be jars contained in the osrf jar being treated as requirements that no devices matched. Included the json jar directly in the cwmars app, and removed the memcached jar and the java file requiring it.
kenstir [Sun, 9 Aug 2015 21:32:47 +0000 (17:32 -0400)]
Auto download fm_IDL at run time instead of including it as an asset. Safer and slower, about 225ms as opposed to 22ms, on my Nexus 5.
kenstir [Sun, 9 Aug 2015 20:59:06 +0000 (16:59 -0400)]
removed use of permissions we do not need
kenstir [Sun, 24 Aug 2014 17:23:22 +0000 (13:23 -0400)]
Some changes due to IntelliJ IDEA 13.1.4
kenstir [Sun, 24 Aug 2014 17:22:02 +0000 (13:22 -0400)]
Updated cached fm_IDL.xml. This is the nail in the coffin for
distributing fm_IDL.xml: app crashed using the old, works using the new.
kenstir [Mon, 6 Jan 2014 01:56:13 +0000 (20:56 -0500)]
Fixed "place hold" button.
Changed demo_app manifest to match activity structure of cwmars_app.
kenstir [Mon, 6 Jan 2014 01:31:54 +0000 (20:31 -0500)]
Added class (Keyword/Title/Author/Subject/Series) spinner to search activity.
kenstir [Sun, 5 Jan 2014 20:04:05 +0000 (15:04 -0500)]
Removed some more unused code and resources. Fixed the big UI problem with using the AppCompat theme and Gingerbread, where dialog-mode spinners don't use the theme and have a white background (thus white text). Best fix I found so far is to use a different spinner layout with dark text for GB.
kenstir [Sat, 4 Jan 2014 17:07:39 +0000 (12:07 -0500)]
Garrr, just adding the v7/appcompat library to the repo will be easier.
kenstir [Sat, 4 Jan 2014 16:21:42 +0000 (11:21 -0500)]
Changed reference to appcompat module to be relative, so I can make it work on a mac too.
kenstir [Fri, 3 Jan 2014 03:17:04 +0000 (22:17 -0500)]
advanced search should for now be an item only in the search activity's menu
kenstir [Fri, 3 Jan 2014 03:13:12 +0000 (22:13 -0500)]
Advanced search working again, off of the Search activity
kenstir [Fri, 3 Jan 2014 02:13:55 +0000 (21:13 -0500)]
forgot to add the landscape layout
kenstir [Fri, 3 Jan 2014 01:29:52 +0000 (20:29 -0500)]
Fixed main activity to fit on a 480x800 screen in landscape.
kenstir [Fri, 3 Jan 2014 01:12:34 +0000 (20:12 -0500)]
added big search button because the action bar button was too hard to notice
kenstir [Fri, 3 Jan 2014 01:11:45 +0000 (20:11 -0500)]
Get the default pickup location right for holds...the home library.
kenstir [Fri, 3 Jan 2014 01:10:05 +0000 (20:10 -0500)]
Ooh I hate italic, esp. on Android where the trailing "d" in "Richard" gets lopped off because the bounding box is incorrectly calculated.
kenstir [Fri, 3 Jan 2014 01:09:39 +0000 (20:09 -0500)]
I think the android lint warnings were because I removed most of the stuff from the core manifest.
kenstir [Tue, 31 Dec 2013 04:48:57 +0000 (23:48 -0500)]
Make HoldDetails activity use the action bar
kenstir [Tue, 31 Dec 2013 04:41:20 +0000 (23:41 -0500)]
Fixed action bar in Place Hold activity to return to Search Details (back,
not up). Fixed action bar in Search Details to return to Search (back,
not up).
kenstir [Tue, 31 Dec 2013 04:16:55 +0000 (23:16 -0500)]
Fixed crash on horizontal swipe past end of search results.
Changed inexplicable "1 / 1" text to "1 of 1 copy available" in search results.
kenstir [Tue, 31 Dec 2013 04:16:21 +0000 (23:16 -0500)]
use grey image background for search results
kenstir [Tue, 31 Dec 2013 02:57:48 +0000 (21:57 -0500)]
search details (SampleUnderlinesNoFade?@!) now uses action bar
kenstir [Tue, 31 Dec 2013 02:30:51 +0000 (21:30 -0500)]
Fixed searching in landscape mode.
kenstir [Mon, 30 Dec 2013 04:17:06 +0000 (23:17 -0500)]
Search icon in action bar now starts SearchCatalogListView activity. Searching works, but only in portrait mode; landscape is broken.
kenstir [Sun, 29 Dec 2013 19:39:42 +0000 (14:39 -0500)]
More activities now have the standard action bar: checkouts, holds, fines
kenstir [Sun, 29 Dec 2013 04:20:53 +0000 (23:20 -0500)]
Main and items-checked-out activities now using action bar.
kenstir [Sat, 28 Dec 2013 23:41:12 +0000 (18:41 -0500)]
Changed SearchCatalogListView to use the ActionBar with subtitle of account name.
kenstir [Sat, 28 Dec 2013 22:10:05 +0000 (17:10 -0500)]
imported project appcompat
kenstir [Sat, 28 Dec 2013 22:49:56 +0000 (17:49 -0500)]
Global rename of misnamed org.evergreen.android -> org.evergreen_ils
evergreen.org is a church, evergreen-ils.org is library software
kenstir [Sat, 28 Dec 2013 16:07:00 +0000 (11:07 -0500)]
attempt to fix crash seen once in dialog.dismiss()
kenstir [Sat, 28 Dec 2013 16:05:58 +0000 (11:05 -0500)]
removed unused method
kenstir [Wed, 18 Dec 2013 02:17:41 +0000 (21:17 -0500)]
Removed "Please wait" from progress dialogs everywhere.
kenstir [Wed, 18 Dec 2013 01:53:08 +0000 (20:53 -0500)]
Standardizing ou.xml elements, removing unused ones. Removing unpleasant red bold text for fines and and gradient separators.
kenstir [Tue, 17 Dec 2013 03:21:26 +0000 (22:21 -0500)]
Checked Out view:
* checked out / overdue headers cleaner
* fixed up one-sided rounded corner
* only show "Renew" button if there are renewals left
* show brief toast when renewal successful
Fixed NPE due to lack of IDL for class 'bmp'
kenstir [Tue, 17 Dec 2013 01:43:59 +0000 (20:43 -0500)]
* Fixed a NPE seen once when coercing results of getItemsCheckedOut().
* Make getItemsCheckedOut() sort by due date.
* Fixed a situation where session was non-null but was not valid; force reload
of session in LoadingTask
kenstir [Sat, 14 Dec 2013 23:21:56 +0000 (18:21 -0500)]
Add activity title in "actionbar" area instead of a static logo/string. Removed the "subtitle" which did nothing but take up precious vertical space. Removed "My account" button from "My account" page.
kenstir [Sat, 14 Dec 2013 21:56:54 +0000 (16:56 -0500)]
Standardized on logging using TAG = CurrentClass.class.getName() rather than ad hoc tag strings or System.out.println. The class.getName() approach allows refactoring the class without having to edit strings.
kenstir [Wed, 11 Dec 2013 03:34:15 +0000 (22:34 -0500)]
2nd custom app is working now that it has its own fm_IDL.xml downloaded from its own site. It differs subtly between installations (dang).
kenstir [Tue, 10 Dec 2013 03:40:29 +0000 (22:40 -0500)]
checkpoint: 2nd custom app using evergreen app core. This required customizing the accountType used by the AccountManager.
kenstir [Tue, 10 Dec 2013 02:58:07 +0000 (21:58 -0500)]
framework for demo app at demo.evergreencatalog.com
kenstir [Tue, 10 Dec 2013 02:05:00 +0000 (21:05 -0500)]
removed unused images added by intellij
kenstir [Tue, 10 Dec 2013 02:02:13 +0000 (21:02 -0500)]
removed unused strings file added by intellij
kenstir [Tue, 10 Dec 2013 01:59:35 +0000 (20:59 -0500)]
Removed "library url" settings from settings page which never worked right and led to a whole 2nd path of app initialization. Current plan is to have a customized app for every library system, wherein the library_url and system logo are customized in ou.xml following the lead of cwmars_app.
kenstir [Tue, 10 Dec 2013 01:59:30 +0000 (20:59 -0500)]
ignore out/ directory
kenstir [Tue, 10 Dec 2013 01:58:40 +0000 (20:58 -0500)]
assets do not get copied automatically from library projects, have to
copy them
kenstir [Tue, 10 Dec 2013 01:56:54 +0000 (20:56 -0500)]
more fill_parent -> match_parent
kenstir [Tue, 10 Dec 2013 01:55:57 +0000 (20:55 -0500)]
More fill_parent -> match_parent
kenstir [Mon, 9 Dec 2013 02:59:59 +0000 (21:59 -0500)]
cwmars_app builds using library project 'core' but does not run yet due to missing assets/fm_IDL.xml.
kenstir [Sun, 8 Dec 2013 19:43:20 +0000 (14:43 -0500)]
Step 1: move all common files under core/ directory. This will become an android library projects to be reused by custom apps.
kenstir [Sun, 8 Dec 2013 19:06:18 +0000 (14:06 -0500)]
removed useless comment
kenstir [Sun, 8 Dec 2013 00:38:09 +0000 (19:38 -0500)]
centralized library url setting as preferences, only the default value is specified in a string resource
kenstir [Sun, 8 Dec 2013 00:31:37 +0000 (19:31 -0500)]
removed unused ConfigureApplicationActivity
kenstir [Sun, 8 Dec 2013 00:24:52 +0000 (19:24 -0500)]
reorg imports and removed dead code
kenstir [Sun, 8 Dec 2013 00:24:05 +0000 (19:24 -0500)]
renamed constants class
kenstir [Sun, 8 Dec 2013 00:22:59 +0000 (19:22 -0500)]
removed unused AppPreferences
kenstir [Sun, 8 Dec 2013 00:21:50 +0000 (19:21 -0500)]
removed unused LoginController
kenstir [Sat, 7 Dec 2013 22:48:53 +0000 (17:48 -0500)]
removed unused ConfigureApplicationActivity
kenstir [Thu, 5 Dec 2013 03:32:24 +0000 (22:32 -0500)]
Removed unused calendar permissions and unused activity
kenstir [Thu, 5 Dec 2013 02:26:45 +0000 (21:26 -0500)]
Adding more rel notes.
kenstir [Thu, 5 Dec 2013 02:23:24 +0000 (21:23 -0500)]
removing TODO Auto-generated method stub
kenstir [Thu, 5 Dec 2013 02:10:28 +0000 (21:10 -0500)]
Fixed crash on preferences due to ListPreference entryValues being integer-array when it should have been string-array.
kenstir [Thu, 5 Dec 2013 01:24:12 +0000 (20:24 -0500)]
Finished job of removing obsolete exceptions and handling reauthentication if the token is expired.
kenstir [Wed, 4 Dec 2013 02:12:45 +0000 (21:12 -0500)]
Important milestone: session timeout handled gracefully. Activity runnables now reauthenticate if the stored auth_token has expired. This fixes the single most common crash problem. Code follows this model:
getHoldsRunnable = new Runnable() {
public void run() {
try {
holdRecords = accountAccess.getHolds();
} catch (SessionNotFoundException e) {
try {
if (accountAccess.reauthenticate(HoldsListView.this))
holdRecords = accountAccess.getHolds();
} catch (Exception eauth) {
System.out.println("Exception in reauth");
}
}
}
}
At the same time,
* removed obsolete exceptions
* added support for Intellij IDE
kenstir [Wed, 27 Nov 2013 01:09:44 +0000 (20:09 -0500)]
fixed progressbar rendering on Gingerbread (don't stretch it)
kenstir [Tue, 26 Nov 2013 23:21:25 +0000 (18:21 -0500)]
release notes
kenstir [Tue, 26 Nov 2013 23:10:10 +0000 (18:10 -0500)]
Fixed many crashes. All activity onCreate methods start with a sanity check: if SplashActivity did not initialize then restart-from-spashscreen. This fixes all of the crashes caused by assumptions made in the individual activities that the app was already initialized, when in reality android can choose to start your app at any activity depending on whether it killed it to save memory, it crashed there last, whatever.
kenstir [Tue, 26 Nov 2013 23:09:49 +0000 (18:09 -0500)]
regenerated IDL and a script to fetch it. Makes me think I better fetch it at run-time some-time in the future.
kenstir [Tue, 26 Nov 2013 03:49:51 +0000 (22:49 -0500)]
This is the new pattern: all activity onCreate methods check to see if the app is initialized and if not, restart the SplashActivity.
kenstir [Tue, 26 Nov 2013 03:03:21 +0000 (22:03 -0500)]
fixed spelling error, removed extra debug logging
kenstir [Mon, 25 Nov 2013 04:56:00 +0000 (23:56 -0500)]
Fixed ClassCastException crash on search with no results.
kenstir [Mon, 25 Nov 2013 04:55:49 +0000 (23:55 -0500)]
removed files that were renamed
kenstir [Mon, 25 Nov 2013 00:40:37 +0000 (19:40 -0500)]
App is signing in OK now. Reimplemented LoadingTask in terms of a raw Thread because it was hanging. Starting with HONEYCOMB, tasks are executed on a single thread, and so LoadingTask->Authenticator->AsyncTask would hang.
kenstir [Sun, 24 Nov 2013 18:58:44 +0000 (13:58 -0500)]
forgot this file
kenstir [Sun, 24 Nov 2013 18:56:29 +0000 (13:56 -0500)]
Checkpoint. Not working but getting less cluttered with thread/session/exception handling.
kenstir [Thu, 21 Nov 2013 03:33:02 +0000 (22:33 -0500)]
Factored out authtoken retrieval to LoginController. Still forwarding to JunkActivity but seems to be working OK.
kenstir [Wed, 20 Nov 2013 01:08:46 +0000 (20:08 -0500)]
checkpoint: starting app on new activity and getting an app token and forwarding to JunkActivity, just until the kinks are worked out
kenstir [Wed, 20 Nov 2013 00:47:52 +0000 (19:47 -0500)]
Removed AndroidAuthenticator tree, preferring to have that code in-app
kenstir [Mon, 18 Nov 2013 03:07:01 +0000 (22:07 -0500)]
Tweaking resources.
kenstir [Mon, 18 Nov 2013 02:18:56 +0000 (21:18 -0500)]
Added working EG Authenticator to the build, but haven't tied it to the app yet. Start of library-specific app customization via "ou_" (organizational unit) resources, e.g. ou_app_name and ou_gateway_url.
kenstir [Sun, 17 Nov 2013 23:44:17 +0000 (18:44 -0500)]
removed confusing commented out code
kenstir [Sun, 17 Nov 2013 19:09:17 +0000 (14:09 -0500)]
checkpoint: moving auth package inside Evergreen app tree. Dealing with external Android library projects in eclipse has been a giant hassle and I don't really need it.
kenstir [Sat, 16 Nov 2013 16:37:18 +0000 (11:37 -0500)]
checkpoint. builds but authenticator dies with NoClassDefFoundError: org.opensrf.net.http.HttpConnection
kenstir [Sat, 16 Nov 2013 16:35:45 +0000 (11:35 -0500)]
updated android support library to rev 19
kenstir [Sat, 16 Nov 2013 02:25:02 +0000 (21:25 -0500)]
Added an android authenticator based on Apache 2.0 licensed code from https://github.com/Udinic/AccountAuthenticator
The main problem in the EG app in the android-minor-cleanup branch is that when the auth token expires or you rotate the device at the wrong time you get repeated crashes. My hypothesis is that using native android.accounts facilities for getting access to auth tokens will clean up the auth handling and also make authentication accessible to Services.
kenstir [Sun, 10 Nov 2013 14:03:15 +0000 (09:03 -0500)]
ignore some android cruft
kenstir [Sun, 10 Nov 2013 13:58:59 +0000 (08:58 -0500)]
Eliminated warnings by using textSize 16sp not 16dp. Allow dashboard_account view to go landscape.
kenstir [Mon, 4 Nov 2013 05:09:04 +0000 (00:09 -0500)]
Improvements surrounding organizations.
Make initialization faster by (1) parsing OrgTree.js organization array as
JSON.
Do not include in the library list organizational units that are marked as
not visible in OPAC. This reduces the list from 338 items to 181 items.
Improved readability of the list by removing space-padding that is done
for the web drop-down list, and putting the spinner in dialog mode.
Sort organizations by name, with (1) home library selected, and (2) root
organization first. This narrows the results of default searches.