]> git.ktnx.net Git - mobile-ledger.git/log
mobile-ledger.git
3 years agowhen saving a pattern, use the navigateUp() method
Damyan Ivanov [Sat, 30 Jan 2021 11:57:11 +0000 (11:57 +0000)]
when saving a pattern, use the navigateUp() method

this leaves the navigation stack in a better state

3 years agorework pattern management machinery
Damyan Ivanov [Sat, 30 Jan 2021 11:56:08 +0000 (11:56 +0000)]
rework pattern management machinery

adding and editing of patterns mostly works (amounts not yet)

room database instantiation moved from App to DB (properly synchronised)

view holders don't hold references to corresponding items or positions
instead, they retrieve the item via getAdapterPosition() as recommended

account names/comments are stored in the DB

fix crash when a pattern with null test text is loaded

3 years agoadd test text to pattern table and drop position
Damyan Ivanov [Sat, 30 Jan 2021 11:43:41 +0000 (11:43 +0000)]
add test text to pattern table and drop position

test text is needed when displaying details so that matching groups
can have values

the position of the patterns is redundant - they are sorted by name

3 years agoglobal function for formatting numbers (locale-aware)
Damyan Ivanov [Fri, 29 Jan 2021 05:26:57 +0000 (05:26 +0000)]
global function for formatting numbers (locale-aware)

3 years agosomewhat working pattern list/editor
Damyan Ivanov [Fri, 29 Jan 2021 05:26:14 +0000 (05:26 +0000)]
somewhat working pattern list/editor

3 years agoupdated gradlew.bat
Damyan Ivanov [Fri, 29 Jan 2021 05:24:06 +0000 (05:24 +0000)]
updated gradlew.bat

3 years agobutton id rename (fab -> fabAdd)
Damyan Ivanov [Fri, 29 Jan 2021 05:23:25 +0000 (05:23 +0000)]
button id rename (fab -> fabAdd)

3 years agomake Currency loadable by id
Damyan Ivanov [Fri, 29 Jan 2021 05:23:05 +0000 (05:23 +0000)]
make Currency loadable by id

3 years agoApp: make the Room database handle available
Damyan Ivanov [Fri, 29 Jan 2021 05:22:32 +0000 (05:22 +0000)]
App: make the Room database handle available

3 years agoextract QR-scanning machinery from new transaction fragment
Damyan Ivanov [Fri, 29 Jan 2021 05:19:50 +0000 (05:19 +0000)]
extract QR-scanning machinery from new transaction fragment

3 years agoRoom database class plus a couple of DAO classes
Damyan Ivanov [Fri, 29 Jan 2021 05:18:45 +0000 (05:18 +0000)]
Room database class plus a couple of DAO classes

3 years agoexpand pattern tables with all needed fields; prepare for Room adoption
Damyan Ivanov [Fri, 29 Jan 2021 05:17:35 +0000 (05:17 +0000)]
expand pattern tables with all needed fields; prepare for Room adoption

3 years agobump versions of a couple of libraries
Damyan Ivanov [Fri, 29 Jan 2021 05:15:32 +0000 (05:15 +0000)]
bump versions of a couple of libraries

3 years agoadd Room to dependencies
Damyan Ivanov [Fri, 29 Jan 2021 05:15:07 +0000 (05:15 +0000)]
add Room to dependencies

3 years agopave the way to fragment navigation for pattern list activity
Damyan Ivanov [Tue, 12 Jan 2021 20:38:44 +0000 (22:38 +0200)]
pave the way to fragment navigation for pattern list activity

3 years agoshuffle some classes under proper packages
Damyan Ivanov [Tue, 12 Jan 2021 17:14:02 +0000 (19:14 +0200)]
shuffle some classes under proper packages

3 years agoupgrade a couple of library versions
Damyan Ivanov [Mon, 11 Jan 2021 21:37:05 +0000 (23:37 +0200)]
upgrade a couple of library versions

3 years agouse indefinite snackbar showing interval
Damyan Ivanov [Mon, 11 Jan 2021 21:36:48 +0000 (23:36 +0200)]
use indefinite snackbar showing interval

these are messages that need to be read

3 years agofirst step towards pattern-assisted auto-filling of transactions
Damyan Ivanov [Mon, 11 Jan 2021 21:27:07 +0000 (23:27 +0200)]
first step towards pattern-assisted auto-filling of transactions

in the end will support deducing transactions via QR-code scan,
clipboard paste and text messages

3 years agodb tables for patterns and pattern accounts
Damyan Ivanov [Wed, 6 Jan 2021 20:58:14 +0000 (22:58 +0200)]
db tables for patterns and pattern accounts

3 years agonew transaction model: add setDate method
Damyan Ivanov [Wed, 6 Jan 2021 17:01:51 +0000 (19:01 +0200)]
new transaction model: add setDate method

3 years agodrop TODO: transaction-level comment (done)
Damyan Ivanov [Sun, 3 Jan 2021 07:25:57 +0000 (09:25 +0200)]
drop TODO: transaction-level comment (done)

3 years agoconvert new transaction row to view binding
Damyan Ivanov [Sat, 2 Jan 2021 19:04:42 +0000 (21:04 +0200)]
convert new transaction row to view binding

3 years agoconvert switch on resource IDs with a series of if/else
Damyan Ivanov [Sat, 2 Jan 2021 16:16:43 +0000 (18:16 +0200)]
convert switch on resource IDs with a series of if/else

resource IDs are going to be non-final in the future

3 years agonew transaction: bigger currency button area
Damyan Ivanov [Sat, 2 Jan 2021 15:38:09 +0000 (17:38 +0200)]
new transaction: bigger currency button area

3 years agometadata: mention comments in full description
Damyan Ivanov [Tue, 29 Dec 2020 08:04:30 +0000 (08:04 +0000)]
metadata: mention comments in full description

3 years agoprepare release 0.16.0 (37) v0.16.0
Damyan Ivanov [Mon, 28 Dec 2020 17:09:30 +0000 (17:09 +0000)]
prepare release 0.16.0 (37)

3 years agoremove an extra LinearLayout
Damyan Ivanov [Mon, 28 Dec 2020 16:59:10 +0000 (18:59 +0200)]
remove an extra LinearLayout

3 years agodrop unnecessary namespace declarations after layout merger
Damyan Ivanov [Mon, 28 Dec 2020 16:51:20 +0000 (18:51 +0200)]
drop unnecessary namespace declarations after layout merger

3 years agoreplace xml onClick declaration with run-time hooking
Damyan Ivanov [Mon, 28 Dec 2020 16:47:55 +0000 (18:47 +0200)]
replace xml onClick declaration with run-time hooking

declarative handlers are deprecated

3 years agofix server version detection when the first profile is being created
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

3 years agoconvert MainActivity to view binding
Damyan Ivanov [Mon, 28 Dec 2020 14:47:48 +0000 (16:47 +0200)]
convert MainActivity to view binding

3 years agoconvert two switch() statements to if/else
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

3 years agomigrate profile detail fragment to view binding
Damyan Ivanov [Mon, 28 Dec 2020 13:41:18 +0000 (15:41 +0200)]
migrate profile detail fragment to view binding

3 years agobetter handling of theme change
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

3 years agoProfileThemedActivity: track current profile changes
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

3 years agodetect and report API errors when saving new transactions
Damyan Ivanov [Mon, 28 Dec 2020 11:24:58 +0000 (13:24 +0200)]
detect and report API errors when saving new transactions

3 years agoAPI version-dependent transaction sending
Damyan Ivanov [Mon, 28 Dec 2020 09:39:23 +0000 (11:39 +0200)]
API version-dependent transaction sending

3 years agomove API version enum in a standalone class
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

3 years agohint for showing soft keyboard in new trans/profile details
Damyan Ivanov [Sun, 27 Dec 2020 21:43:23 +0000 (23:43 +0200)]
hint for showing soft keyboard in new trans/profile details

3 years agodrop description drop-down dismissal upon new trans. activity reset
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

3 years agowhitespace
Damyan Ivanov [Sun, 27 Dec 2020 21:32:06 +0000 (23:32 +0200)]
whitespace

3 years agofinish support for multiple server APIs when retrieving data
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

3 years agodrop unused menu file
Damyan Ivanov [Sun, 27 Dec 2020 10:41:52 +0000 (12:41 +0200)]
drop unused menu file

3 years agoMigrate from Switch to SwitchMaterial
Damyan Ivanov [Sun, 27 Dec 2020 10:41:30 +0000 (12:41 +0200)]
Migrate from Switch to SwitchMaterial

3 years agoa step towards API-independent JSON parsing of accounts
Damyan Ivanov [Sun, 20 Dec 2020 14:32:31 +0000 (14:32 +0000)]
a step towards API-independent JSON parsing of accounts

3 years agoSwitch → SwitchMaterial in the currency selector
Damyan Ivanov [Wed, 23 Dec 2020 20:53:32 +0000 (20:53 +0000)]
Switch → SwitchMaterial in the currency selector

3 years agohew transaction entry: honour default currency setting
Damyan Ivanov [Wed, 23 Dec 2020 20:53:01 +0000 (20:53 +0000)]
hew transaction entry: honour default currency setting

3 years agofix currency selector layout with long list of currencies
Damyan Ivanov [Wed, 23 Dec 2020 20:51:02 +0000 (20:51 +0000)]
fix currency selector layout with long list of currencies

3 years agoHledgerVersion: declare members final
Damyan Ivanov [Sat, 5 Dec 2020 15:18:16 +0000 (17:18 +0200)]
HledgerVersion: declare members final

3 years agofixes after migration to ViewPager2
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

3 years agoreplace onActivityCreated (deprecated) with onViewCreated
Damyan Ivanov [Sat, 28 Nov 2020 07:19:55 +0000 (09:19 +0200)]
replace onActivityCreated (deprecated) with onViewCreated

3 years agomigrate from ViewPager to ViewPager2
Damyan Ivanov [Sat, 28 Nov 2020 07:19:21 +0000 (09:19 +0200)]
migrate from ViewPager to ViewPager2

3 years agoassign click handler at runtime
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

3 years agodrop growMode progressBar attribute, no longer valid
Damyan Ivanov [Sat, 28 Nov 2020 07:15:38 +0000 (09:15 +0200)]
drop growMode progressBar attribute, no longer valid

3 years agoadd fab icon description
Damyan Ivanov [Sat, 28 Nov 2020 07:15:05 +0000 (09:15 +0200)]
add fab icon description

3 years agobump versions of gradle and libraries
Damyan Ivanov [Sat, 28 Nov 2020 07:12:35 +0000 (09:12 +0200)]
bump versions of gradle and libraries

4 years agofixed a hard to reproduce crash upon returning to the app
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"

4 years agoa bit shorter splash duration
Damyan Ivanov [Sun, 11 Oct 2020 19:37:15 +0000 (22:37 +0300)]
a bit shorter splash duration

4 years agobetter version detection progress
Damyan Ivanov [Sun, 11 Oct 2020 19:37:03 +0000 (22:37 +0300)]
better version detection progress

4 years agowhitespace
Damyan Ivanov [Sun, 4 Oct 2020 18:37:48 +0000 (21:37 +0300)]
whitespace

4 years agoUI and machinery for detecting hledger-web version
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

4 years agoRevert "remove references to style members from the parser classes"
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.

4 years agowhitespace
Damyan Ivanov [Fri, 2 Oct 2020 06:00:25 +0000 (09:00 +0300)]
whitespace

4 years agoinclude errors sending transaction in debug output
Damyan Ivanov [Fri, 2 Oct 2020 05:59:39 +0000 (08:59 +0300)]
include errors sending transaction in debug output

4 years agofix legacy new transaction submission with no date (use today's)
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

4 years agoremove references to style members from the parser classes
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

4 years agoRevert "add support for floatingPoint member of the quantity objects"
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

4 years agoadd support for floatingPoint member of the quantity objects
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

4 years agothemes: secondary==primary, a bit closer primaryDark, no calculations
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

4 years agomake splash activity descent from CrashReportingActivity
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

4 years agoDB: move pragma execution in onConfigure() where it belongs
Damyan Ivanov [Sat, 26 Sep 2020 14:25:38 +0000 (17:25 +0300)]
DB: move pragma execution in onConfigure() where it belongs

4 years agosplash: setup DB in the background
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

4 years agowhitespace
Damyan Ivanov [Sat, 26 Sep 2020 14:14:12 +0000 (17:14 +0300)]
whitespace

4 years agodeclare theme for the new transaction activity
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

4 years agouse theme-driven new transaction FAB icon color
Damyan Ivanov [Thu, 24 Sep 2020 16:17:12 +0000 (16:17 +0000)]
use theme-driven new transaction FAB icon color

4 years agofix profile list not updating tag colour after saving profile changes
Damyan Ivanov [Thu, 24 Sep 2020 16:16:07 +0000 (16:16 +0000)]
fix profile list not updating tag colour after saving profile changes

4 years agomove delete profile menu handling in a method
Damyan Ivanov [Thu, 24 Sep 2020 16:14:15 +0000 (16:14 +0000)]
move delete profile menu handling in a method

4 years agoallow removal of the last profile
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

4 years agoemplye requireNonNull instead of a manual check
Damyan Ivanov [Thu, 24 Sep 2020 16:11:27 +0000 (16:11 +0000)]
emplye requireNonNull instead of a manual check

4 years agofix setup of theme when the last profile was removed
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

4 years agoordered deletion when wiping profile data
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

4 years agoadd 0.15.0 release date v0.15.0
Damyan Ivanov [Sun, 20 Sep 2020 19:42:57 +0000 (22:42 +0300)]
add 0.15.0 release date

4 years agoremove legacy foreigh key vialotions in transaction_accounts
Damyan Ivanov [Sun, 20 Sep 2020 19:41:46 +0000 (22:41 +0300)]
remove legacy foreigh key vialotions in transaction_accounts

4 years agowhen switching profiles, clear account list too
Damyan Ivanov [Sun, 20 Sep 2020 12:31:39 +0000 (15:31 +0300)]
when switching profiles, clear account list too

4 years agoenable the foreign_keys PRAGMA only in debug builds
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

4 years agoprepare release of 0.15.0 (36)
Damyan Ivanov [Sat, 19 Sep 2020 15:59:18 +0000 (15:59 +0000)]
prepare release of 0.15.0 (36)

4 years agotypo in CHANGES
Damyan Ivanov [Sat, 19 Sep 2020 15:58:38 +0000 (15:58 +0000)]
typo in CHANGES

4 years agofix typo in full description translation
Damyan Ivanov [Sat, 19 Sep 2020 15:54:45 +0000 (15:54 +0000)]
fix typo in full description translation

4 years agoupdate CHANGES
Damyan Ivanov [Sat, 19 Sep 2020 15:24:04 +0000 (18:24 +0300)]
update CHANGES

4 years agofinal fix for the first date delimiter item
Damyan Ivanov [Sat, 19 Sep 2020 14:55:28 +0000 (17:55 +0300)]
final fix for the first date delimiter item

4 years agoshow the number of accounts in the account list head 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

4 years agofix duplicate first date delimiter when the latest date is in the past
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

4 years agolast update text also includes transaction count
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

4 years agofix mismatch in the gap above the last update text
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 :(

4 years agoconvert the last update global header to a list header
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

4 years agodrop unused empty style
Damyan Ivanov [Thu, 17 Sep 2020 08:21:03 +0000 (08:21 +0000)]
drop unused empty style

4 years agobetter shadow under main header in dark mode
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

4 years agotransaction list always starts with the date of the first transaction
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

4 years agostore new currencies upon account amounts storage
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