]>
git.ktnx.net Git - mobile-ledger.git/log
Damyan Ivanov [Mon, 28 Dec 2020 15:22:02 +0000 (17:22 +0200)]
fix server version detection when the first profile is being created
the Authenticator always used the current profile, which is null when
there are no profiles yet
Damyan Ivanov [Mon, 28 Dec 2020 14:47:48 +0000 (16:47 +0200)]
convert MainActivity to view binding
Damyan Ivanov [Mon, 28 Dec 2020 13:46:52 +0000 (15:46 +0200)]
convert two switch() statements to if/else
preparing for gradle 5, where resource IDs will no longer be declared
as final
Damyan Ivanov [Mon, 28 Dec 2020 13:41:18 +0000 (15:41 +0200)]
migrate profile detail fragment to view binding
Damyan Ivanov [Mon, 28 Dec 2020 12:16:21 +0000 (14:16 +0200)]
better handling of theme change
was broken if the theme is changed via the profile editor invoked by
the "configure profile" button in the new transaction activity
Damyan Ivanov [Mon, 28 Dec 2020 11:39:54 +0000 (13:39 +0200)]
ProfileThemedActivity: track current profile changes
needed by the new transaction activity which uses the mProfile value
(and its getApiVersion()) when saving the transaction. The API version
could have been changed by the "possible API version mismatch" dialog,
which may be used to open the profile editor
Damyan Ivanov [Mon, 28 Dec 2020 11:24:58 +0000 (13:24 +0200)]
detect and report API errors when saving new transactions
Damyan Ivanov [Mon, 28 Dec 2020 09:39:23 +0000 (11:39 +0200)]
API version-dependent transaction sending
Damyan Ivanov [Mon, 28 Dec 2020 09:00:08 +0000 (11:00 +0200)]
move API version enum in a standalone class
will be used for sending too
Damyan Ivanov [Sun, 27 Dec 2020 21:43:23 +0000 (23:43 +0200)]
hint for showing soft keyboard in new trans/profile details
Damyan Ivanov [Sun, 27 Dec 2020 21:42:47 +0000 (23:42 +0200)]
drop description drop-down dismissal upon new trans. activity reset
seems to crash with adapter inconsistency sometimes
Damyan Ivanov [Sun, 27 Dec 2020 21:32:06 +0000 (23:32 +0200)]
whitespace
Damyan Ivanov [Sun, 27 Dec 2020 21:21:37 +0000 (23:21 +0200)]
finish support for multiple server APIs when retrieving data
this also adds support for the last JSON API change introduced in
1.19.1 (see gh#1360)
exceptions from the low-level json parser are interpreted as version
incompatibility and a pointer is made to profile details
Damyan Ivanov [Sun, 27 Dec 2020 10:41:52 +0000 (12:41 +0200)]
drop unused menu file
Damyan Ivanov [Sun, 27 Dec 2020 10:41:30 +0000 (12:41 +0200)]
Migrate from Switch to SwitchMaterial
Damyan Ivanov [Sun, 20 Dec 2020 14:32:31 +0000 (14:32 +0000)]
a step towards API-independent JSON parsing of accounts
Damyan Ivanov [Wed, 23 Dec 2020 20:53:32 +0000 (20:53 +0000)]
Switch → SwitchMaterial in the currency selector
Damyan Ivanov [Wed, 23 Dec 2020 20:53:01 +0000 (20:53 +0000)]
hew transaction entry: honour default currency setting
Damyan Ivanov [Wed, 23 Dec 2020 20:51:02 +0000 (20:51 +0000)]
fix currency selector layout with long list of currencies
Damyan Ivanov [Sat, 5 Dec 2020 15:18:16 +0000 (17:18 +0200)]
HledgerVersion: declare members final
Damyan Ivanov [Sat, 28 Nov 2020 17:41:37 +0000 (19:41 +0200)]
fixes after migration to ViewPager2
the activity is not the container of the view hierarchy, the view
argument to onViewCreated() is
Damyan Ivanov [Sat, 28 Nov 2020 07:19:55 +0000 (09:19 +0200)]
replace onActivityCreated (deprecated) with onViewCreated
Damyan Ivanov [Sat, 28 Nov 2020 07:19:21 +0000 (09:19 +0200)]
migrate from ViewPager to ViewPager2
Damyan Ivanov [Sat, 28 Nov 2020 07:17:34 +0000 (09:17 +0200)]
assign click handler at runtime
doing it in the XML is deprecated
Damyan Ivanov [Sat, 28 Nov 2020 07:15:38 +0000 (09:15 +0200)]
drop growMode progressBar attribute, no longer valid
Damyan Ivanov [Sat, 28 Nov 2020 07:15:05 +0000 (09:15 +0200)]
add fab icon description
Damyan Ivanov [Sat, 28 Nov 2020 07:12:35 +0000 (09:12 +0200)]
bump versions of gradle and libraries
Damyan Ivanov [Tue, 13 Oct 2020 19:39:41 +0000 (22:39 +0300)]
fixed a hard to reproduce crash upon returning to the app
to reproduce, set the background process limit in the developer options
to "1"
Damyan Ivanov [Sun, 11 Oct 2020 19:37:15 +0000 (22:37 +0300)]
a bit shorter splash duration
Damyan Ivanov [Sun, 11 Oct 2020 19:37:03 +0000 (22:37 +0300)]
better version detection progress
Damyan Ivanov [Sun, 4 Oct 2020 18:37:48 +0000 (21:37 +0300)]
whitespace
Damyan Ivanov [Sun, 4 Oct 2020 18:37:23 +0000 (21:37 +0300)]
UI and machinery for detecting hledger-web version
todo: retry discovering version upon URL change, make JSON input/output
honour the version
Damyan Ivanov [Sun, 4 Oct 2020 05:50:50 +0000 (05:50 +0000)]
Revert "remove references to style members from the parser classes"
Breaks new transaction submission
This reverts commit
47f69abd0ff71ef40d37fc8b9f8693d370f473ea .
Damyan Ivanov [Fri, 2 Oct 2020 06:00:25 +0000 (09:00 +0300)]
whitespace
Damyan Ivanov [Fri, 2 Oct 2020 05:59:39 +0000 (08:59 +0300)]
include errors sending transaction in debug output
Damyan Ivanov [Fri, 2 Oct 2020 05:49:22 +0000 (08:49 +0300)]
fix legacy new transaction submission with no date (use today's)
broken in 0.15.0
Damyan Ivanov [Tue, 29 Sep 2020 19:23:40 +0000 (22:23 +0300)]
remove references to style members from the parser classes
There is a change in 1.19.1 that breaks the parser (precision member
changed from plain number to an object). While modifying the parser to
be able to try different versions of the API is possible, it is quite a
task, and by simple omission of 'astyle' members the parser library
ignores the incoming data.
This (not providing 'astyle') also seems to work when adding new
transactions, at least with hledger-web 1.16.2
Damyan Ivanov [Tue, 29 Sep 2020 15:27:24 +0000 (15:27 +0000)]
Revert "add support for floatingPoint member of the quantity objects"
This reverts commit
d6d15ebf2287b3e9d7c213241367ef053e971e60 .
The problem with that is that it breaks sending new transactions for older
versions of hledger-web.
It is also not really necessary, because the precision got limited so that
there is no longer possible to get 255 decimal digits for periodic results
Damyan Ivanov [Sun, 27 Sep 2020 17:09:14 +0000 (20:09 +0300)]
add support for floatingPoint member of the quantity objects
introduced in hledger-web to avoid problems with large mantissas and
such when some prices are drived from transactions that result in
periodic decimals
Damyan Ivanov [Sat, 26 Sep 2020 16:47:44 +0000 (19:47 +0300)]
themes: secondary==primary, a bit closer primaryDark, no calculations
all intermediate colours are calculated as a weighted average of the
nearest theme color. this keeps the color calculations in one place --
tools/gen-styles.pl
Damyan Ivanov [Sat, 26 Sep 2020 14:28:32 +0000 (17:28 +0300)]
make splash activity descent from CrashReportingActivity
some DB work is done in the background, initiated from SplashActivity.
it is possible that it crashes for some reason and that better be
reported
Damyan Ivanov [Sat, 26 Sep 2020 14:25:38 +0000 (17:25 +0300)]
DB: move pragma execution in onConfigure() where it belongs
Damyan Ivanov [Sat, 26 Sep 2020 14:24:09 +0000 (17:24 +0300)]
splash: setup DB in the background
this puts all initial DB work in the background - creation and upgrade
avoids empty screen when there is a ig DB rework on upgrade
Damyan Ivanov [Sat, 26 Sep 2020 14:14:12 +0000 (17:14 +0300)]
whitespace
Damyan Ivanov [Sat, 26 Sep 2020 14:13:45 +0000 (17:13 +0300)]
declare theme for the new transaction activity
avoids flashing when started up directly by a launcher shortcut
Damyan Ivanov [Thu, 24 Sep 2020 16:17:12 +0000 (16:17 +0000)]
use theme-driven new transaction FAB icon color
Damyan Ivanov [Thu, 24 Sep 2020 16:16:07 +0000 (16:16 +0000)]
fix profile list not updating tag colour after saving profile changes
Damyan Ivanov [Thu, 24 Sep 2020 16:14:15 +0000 (16:14 +0000)]
move delete profile menu handling in a method
Damyan Ivanov [Thu, 24 Sep 2020 16:12:50 +0000 (16:12 +0000)]
allow removal of the last profile
nothing bad about that, the welcome screen will be activated
Damyan Ivanov [Thu, 24 Sep 2020 16:11:27 +0000 (16:11 +0000)]
emplye requireNonNull instead of a manual check
Damyan Ivanov [Thu, 24 Sep 2020 16:07:11 +0000 (19:07 +0300)]
fix setup of theme when the last profile was removed
the old preference was still available and caused usage of the theme
of the last profile instead of the default
Damyan Ivanov [Thu, 24 Sep 2020 15:39:14 +0000 (18:39 +0300)]
ordered deletion when wiping profile data
needed so that foreigh keys can be enforced
Damyan Ivanov [Sun, 20 Sep 2020 19:42:57 +0000 (22:42 +0300)]
add 0.15.0 release date
Damyan Ivanov [Sun, 20 Sep 2020 19:41:46 +0000 (22:41 +0300)]
remove legacy foreigh key vialotions in transaction_accounts
Damyan Ivanov [Sun, 20 Sep 2020 12:31:39 +0000 (15:31 +0300)]
when switching profiles, clear account list too
Damyan Ivanov [Sun, 20 Sep 2020 12:30:49 +0000 (15:30 +0300)]
enable the foreign_keys PRAGMA only in debug builds
hopefully will help iron out all the caveats
Damyan Ivanov [Sat, 19 Sep 2020 15:59:18 +0000 (15:59 +0000)]
prepare release of 0.15.0 (36)
Damyan Ivanov [Sat, 19 Sep 2020 15:58:38 +0000 (15:58 +0000)]
typo in CHANGES
Damyan Ivanov [Sat, 19 Sep 2020 15:54:45 +0000 (15:54 +0000)]
fix typo in full description translation
Damyan Ivanov [Sat, 19 Sep 2020 15:24:04 +0000 (18:24 +0300)]
update CHANGES
Damyan Ivanov [Sat, 19 Sep 2020 14:55:28 +0000 (17:55 +0300)]
final fix for the first date delimiter item
Damyan Ivanov [Sat, 19 Sep 2020 14:47:26 +0000 (17:47 +0300)]
show the number of accounts in the account list head item
Damyan Ivanov [Sat, 19 Sep 2020 09:13:20 +0000 (12:13 +0300)]
fix duplicate first date delimiter when the latest date is in the past
Damyan Ivanov [Sat, 19 Sep 2020 07:02:36 +0000 (10:02 +0300)]
last update text also includes transaction count
and is maintained by the main activity, which has access to all the
relevant bits - string resources, live data observation, up to date
transaction count
Damyan Ivanov [Fri, 18 Sep 2020 16:08:26 +0000 (19:08 +0300)]
fix mismatch in the gap above the last update text
it appears that layout_marginTop works in a Frame, but not in a
ConstraintLayout :(
Damyan Ivanov [Fri, 18 Sep 2020 15:54:30 +0000 (18:54 +0300)]
convert the last update global header to a list header
to avoid taking up precious space, and to help animation of transactions
coming in the front of the list -- before they were silently inserted
above the first, in above the visible scroller window. now there is
an item fixed at the first position
Damyan Ivanov [Thu, 17 Sep 2020 08:21:03 +0000 (08:21 +0000)]
drop unused empty style
Damyan Ivanov [Thu, 17 Sep 2020 08:17:17 +0000 (08:17 +0000)]
better shadow under main header in dark mode
with greater height and darker at the top edge. still black
tried with white and it looks very unnatural and like a mistake
Damyan Ivanov [Thu, 17 Sep 2020 07:54:08 +0000 (07:54 +0000)]
transaction list always starts with the date of the first transaction
this is a good idea because of the side effect it has when a new
transaction from today comes after a refresh -- you see it pop in under
the date row
without the date row (which is at the top of the scroll view when
pulling to refresh) the new appears outside of the visible scroll window
and one has to to see it -- it appears as if the refresh didn't do
anything later problem still stays when the first transaction is for a
past(1) and the newly coming ones are from a later (than (1)) date
a possible solution is to convert the "Last updated" header to a special
kind of transaction list item (there are three now - date line,
transaction box and bottom filler) that always sits on the top of the
list and all incoming transactions are inserted below it -- always pop
in nicely
Damyan Ivanov [Thu, 17 Sep 2020 07:37:28 +0000 (07:37 +0000)]
store new currencies upon account amounts storage
fixes a crash when a previous transaction is selected in the new
transaction screen that uses currencies not added via the currency
dialog
Damyan Ivanov [Thu, 17 Sep 2020 07:25:04 +0000 (07:25 +0000)]
fix storing/retrieval of currency position
no need of trickery. standard enum has it all
Damyan Ivanov [Thu, 17 Sep 2020 07:13:37 +0000 (07:13 +0000)]
replace local utility functions with ones from TextUtils
Damyan Ivanov [Thu, 17 Sep 2020 07:06:14 +0000 (07:06 +0000)]
drop done TODO: transaction level comment
implemented in v0.14.0
Damyan Ivanov [Thu, 17 Sep 2020 07:05:00 +0000 (07:05 +0000)]
update CHANGES.md
Damyan Ivanov [Thu, 17 Sep 2020 07:02:00 +0000 (07:02 +0000)]
fix transaction_accounts in create_db.sql
columns can't come after constraints, it seems
Damyan Ivanov [Wed, 16 Sep 2020 15:13:47 +0000 (18:13 +0300)]
fix spurious fetch of remote data
the lastUpdate observer was triggered once before the value is set
so move the decision whether to fetch out of the observer
Damyan Ivanov [Wed, 16 Sep 2020 15:03:10 +0000 (18:03 +0300)]
fix many lint errors/warnings
Damyan Ivanov [Wed, 16 Sep 2020 13:31:12 +0000 (16:31 +0300)]
disable some annoying debug
Damyan Ivanov [Wed, 16 Sep 2020 13:30:50 +0000 (16:30 +0300)]
major rework of parsed transaction/descriptions/accounts storage
new approach avoids mass deletion followed by mass inserts and allows
activation of foreign key constraints in SQLite
the list of accounts and transactions are managed by an
asynchronous differ
members of Data that are relevant only to the MainActivity and its
fragments are moved to a new MainModel ViewModel class
Damyan Ivanov [Sun, 6 Sep 2020 08:51:10 +0000 (08:51 +0000)]
bump gradle version to 4.0.1
Damyan Ivanov [Sun, 6 Sep 2020 08:50:54 +0000 (08:50 +0000)]
static Logger reference
Damyan Ivanov [Sun, 6 Sep 2020 08:50:29 +0000 (08:50 +0000)]
address nullability warning
Damyan Ivanov [Sun, 6 Sep 2020 08:47:41 +0000 (11:47 +0300)]
speed up parsed transaction/accounts storage
new approach avoids mass deletion followed by mass inserts
Damyan Ivanov [Fri, 28 Aug 2020 16:50:47 +0000 (19:50 +0300)]
fixup: progress
Damyan Ivanov [Wed, 26 Aug 2020 20:07:01 +0000 (23:07 +0300)]
whitespace
Damyan Ivanov [Wed, 26 Aug 2020 20:05:35 +0000 (23:05 +0300)]
proper transaction parsing progress
accounts data has the number of postings which can be used to determine
the remaining work
Damyan Ivanov [Wed, 26 Aug 2020 20:03:05 +0000 (20:03 +0000)]
rework transaction retrieval without MainActivity reference
use a public LiveData to which interested parties can subscribe
Damyan Ivanov [Mon, 17 Aug 2020 16:42:22 +0000 (19:42 +0300)]
collapse empty xml tag
Damyan Ivanov [Mon, 17 Aug 2020 16:42:08 +0000 (19:42 +0300)]
declare theme for the splash and main activities
seems to help reduce flicker upon startup
Damyan Ivanov [Mon, 17 Aug 2020 16:39:37 +0000 (19:39 +0300)]
put default colour in the base theme
this duplicates the .default theme, but is useful in the graphical editors
perhaps can me useful to spot unexpected changed in the default theme too
Damyan Ivanov [Mon, 17 Aug 2020 16:37:05 +0000 (19:37 +0300)]
use DayNight theme overlay for the profile details toolbar
Damyan Ivanov [Mon, 17 Aug 2020 16:35:17 +0000 (19:35 +0300)]
theme color tint for the delete icon
Damyan Ivanov [Mon, 17 Aug 2020 16:30:34 +0000 (19:30 +0300)]
whitespace
Damyan Ivanov [Sun, 16 Aug 2020 13:59:08 +0000 (16:59 +0300)]
rename mergeAccountLists method to better reflect its purpose
it is important to note that the data comes from hledger-web and not
as a result to some UI-induced change
Damyan Ivanov [Sun, 16 Aug 2020 13:56:30 +0000 (16:56 +0300)]
fix merging of account lists so that changes are detected
the old code modified objects in-place, changing the existing object,
which avoids (wrongly) propagation of the change to the UI
the new code ensures a new object is used in that case (the one from
newList) which guarantees that the change will be caught by the list
differ
this fixes a problem with amounts not being updated after a refresh from
the hledger-web backend
Damyan Ivanov [Sun, 16 Aug 2020 13:53:21 +0000 (16:53 +0300)]
drop unneeded profile parameter
Damyan Ivanov [Sun, 16 Aug 2020 13:08:15 +0000 (16:08 +0300)]
avoid warning about dangerous unboxing by handling (im)possible null value
Damyan Ivanov [Sun, 16 Aug 2020 12:59:57 +0000 (15:59 +0300)]
move locale live-data initialization to a static initialization block
avoids a warning about assigning locale to a final variable. the warning is misleading, because the locale is assigned to a final mutable live data object, not to a final variable
Damyan Ivanov [Sun, 16 Aug 2020 12:54:07 +0000 (15:54 +0300)]
whitespace
Damyan Ivanov [Sun, 16 Aug 2020 12:50:14 +0000 (15:50 +0300)]
new transaction: fix saving progress in/out navigation
somewhat broken after following the recommendations about thefragment container.
the navigation was saved so after saving 'Back' returned to the 'saving progress' fragment instead of closing the activity