]> git.ktnx.net Git - mobile-ledger.git/log
mobile-ledger.git
3 years agoprovide cloud backup functionality
Damyan Ivanov [Sun, 12 Sep 2021 11:30:56 +0000 (14:30 +0300)]
provide cloud backup functionality

3 years agomethods for deleting all DB tables
Damyan Ivanov [Sun, 12 Sep 2021 11:30:09 +0000 (14:30 +0300)]
methods for deleting all DB tables

3 years agofix search previous transactions by description
Damyan Ivanov [Fri, 10 Sep 2021 19:28:25 +0000 (22:28 +0300)]
fix search previous transactions by description

caused by bad data in transactions.description_uc

3 years agorelease v0.20.1 (45) v0.20.1
Damyan Ivanov [Thu, 9 Sep 2021 20:07:48 +0000 (20:07 +0000)]
release v0.20.1 (45)

3 years ago(unsuccessful) attempt to avoid black flicker when switching profiles
Damyan Ivanov [Thu, 9 Sep 2021 19:56:46 +0000 (22:56 +0300)]
(unsuccessful) attempt to avoid black flicker when switching profiles

3 years agodb 62: remove duplicate currency entries before creating unique index
Damyan Ivanov [Thu, 9 Sep 2021 19:55:02 +0000 (22:55 +0300)]
db 62: remove duplicate currency entries before creating unique index

3 years agosettings backup: mention that passwords are stored in the clear
Damyan Ivanov [Wed, 8 Sep 2021 19:48:32 +0000 (22:48 +0300)]
settings backup: mention that passwords are stored in the clear

3 years agodebug setupProfileColors() calls
Damyan Ivanov [Mon, 6 Sep 2021 06:26:13 +0000 (06:26 +0000)]
debug setupProfileColors() calls

3 years agodo not report data retrieval cancellation to the user
Damyan Ivanov [Thu, 2 Sep 2021 06:05:22 +0000 (09:05 +0300)]
do not report data retrieval cancellation to the user

this happens as a direct consequence of user action and just adds stress

3 years agofix a crash when returning to new transaction with no focused input
Damyan Ivanov [Mon, 30 Aug 2021 19:46:08 +0000 (22:46 +0300)]
fix a crash when returning to new transaction with no focused input

for example, after an unsuccessful save

3 years agofocus amount when account is selected
Damyan Ivanov [Mon, 30 Aug 2021 16:43:30 +0000 (19:43 +0300)]
focus amount when account is selected

3 years agotypo in exception name
Damyan Ivanov [Mon, 30 Aug 2021 16:17:11 +0000 (19:17 +0300)]
typo in exception name

3 years agoconfig restore: skip null entries
Damyan Ivanov [Mon, 30 Aug 2021 16:07:37 +0000 (19:07 +0300)]
config restore: skip null entries

instead of crashing because they aren't 'String' etc.

3 years agoinclude description_uc in Transaction's SQL
Damyan Ivanov [Fri, 27 Aug 2021 20:13:04 +0000 (20:13 +0000)]
include description_uc in Transaction's SQL

3 years agoreplace AsyncTask.execute with GeneralBackgroundTasks.run
Damyan Ivanov [Fri, 27 Aug 2021 20:12:37 +0000 (20:12 +0000)]
replace AsyncTask.execute with GeneralBackgroundTasks.run

3 years agotypo in method name
Damyan Ivanov [Fri, 27 Aug 2021 20:12:02 +0000 (20:12 +0000)]
typo in method name

3 years agoconvert AsyncTask descender classes to pure Thread's
Damyan Ivanov [Fri, 27 Aug 2021 20:11:51 +0000 (20:11 +0000)]
convert AsyncTask descender classes to pure Thread's

perhaps these should use a cachedThreadExecutor for handling long jobs
such as network transfer? doesn't seem any better

3 years agomake Room ignore the no-argument Currency constructor
Damyan Ivanov [Fri, 27 Aug 2021 20:08:36 +0000 (20:08 +0000)]
make Room ignore the no-argument Currency constructor

the one with all fields should be good

3 years agomove async DB stuff away of AsyncTask
Damyan Ivanov [Fri, 27 Aug 2021 20:07:31 +0000 (20:07 +0000)]
move async DB stuff away of AsyncTask

it is deprecated

the replacement is a single-thread executor instance

in theory a multi-thread executor may work too, but there should not be
so much concurrency on the DB level. getting the DB stuff away from the
main thread should be enough

3 years agouse a fixed thread pool for general short tasks
Damyan Ivanov [Fri, 27 Aug 2021 20:02:49 +0000 (20:02 +0000)]
use a fixed thread pool for general short tasks

3 years agorun the success callback on the main thread
Damyan Ivanov [Fri, 27 Aug 2021 20:02:10 +0000 (20:02 +0000)]
run the success callback on the main thread

3 years agoreplace deprecated implicit looper with Looper.getMainLooper()
Damyan Ivanov [Wed, 25 Aug 2021 20:30:33 +0000 (23:30 +0300)]
replace deprecated implicit looper with Looper.getMainLooper()

3 years agoreplace AsyncCrasher with a Runnable run by GeneralBackgroundTasks
Damyan Ivanov [Wed, 25 Aug 2021 20:27:23 +0000 (23:27 +0300)]
replace AsyncCrasher with a Runnable run by GeneralBackgroundTasks

a step in removing usages of deprecated AsyncTask

3 years agoadd an async runner class for general tasks
Damyan Ivanov [Wed, 25 Aug 2021 20:25:31 +0000 (23:25 +0300)]
add an async runner class for general tasks

supposed to replace AsyncTask usage

3 years agorelease v0.20.0 (44) v0.20.0
Damyan Ivanov [Sun, 22 Aug 2021 19:01:09 +0000 (19:01 +0000)]
release v0.20.0 (44)

3 years agofall back to any profile when restoring config
Damyan Ivanov [Sun, 22 Aug 2021 17:14:22 +0000 (20:14 +0300)]
fall back to any profile when restoring config

it would be strange to happen, because the config should always have
a current profile, but who knows… defensive programming

3 years agouse post..() instead of set..() from a background thread
Damyan Ivanov [Sun, 22 Aug 2021 17:05:10 +0000 (20:05 +0300)]
use post..() instead of set..() from a background thread

3 years agofix crash when new trans. is started by a shortcut for removed profile
Damyan Ivanov [Sun, 22 Aug 2021 16:53:41 +0000 (19:53 +0300)]
fix crash when new trans. is started by a shortcut for removed profile

3 years agoMainActivity: always refresh shortcuts, even if the list is empty
Damyan Ivanov [Sun, 22 Aug 2021 16:52:09 +0000 (19:52 +0300)]
MainActivity: always refresh shortcuts, even if the list is empty

3 years agoDate.setCurrentProfile may accept null as argument
Damyan Ivanov [Sun, 22 Aug 2021 16:18:58 +0000 (19:18 +0300)]
Date.setCurrentProfile may accept null as argument

for example when the last profile has been removed

3 years agodo not reset the new transaction model in the constructor
Damyan Ivanov [Sun, 22 Aug 2021 16:18:24 +0000 (19:18 +0300)]
do not reset the new transaction model in the constructor

1) reset() requires that there is a current profile in Data and that may
   not be true because the new transaction activity may be started by a
   shortcut referencing a profile that was removed and that may have
   been the last profile, i.e. there may be no profiles at that moment
2) reset is later called by the new transaction fragment anyway, when it
   has ensured that there is an active profile

3 years agofix crash in new transaction shortcut when the main app is not running
Damyan Ivanov [Sun, 22 Aug 2021 16:15:09 +0000 (19:15 +0300)]
fix crash in new transaction shortcut when the main app is not running

3 years agofix JSON export of templates
Damyan Ivanov [Sat, 21 Aug 2021 20:15:52 +0000 (23:15 +0300)]
fix JSON export of templates

3 years agoadd some explanation before the restore button on the welcome screen
Damyan Ivanov [Sat, 21 Aug 2021 20:05:39 +0000 (23:05 +0300)]
add some explanation before the restore button on the welcome screen

also make it scrollable and more even-aligned

3 years agooffer to restore from backup when starting the app with no profiles
Damyan Ivanov [Sat, 21 Aug 2021 16:16:07 +0000 (19:16 +0300)]
offer to restore from backup when starting the app with no profiles

3 years agogray out the backup controls if there is nothing to backup
Damyan Ivanov [Sat, 21 Aug 2021 16:15:50 +0000 (19:15 +0300)]
gray out the backup controls if there is nothing to backup

3 years agoworking backup and restore of configuration settings
Damyan Ivanov [Sat, 21 Aug 2021 15:59:29 +0000 (18:59 +0300)]
working backup and restore of configuration settings

all profile and template parameters are supported

3 years agodrop deprecation from profiles.uuid, make not null
Damyan Ivanov [Sat, 21 Aug 2021 13:43:04 +0000 (16:43 +0300)]
drop deprecation from profiles.uuid, make not null

will be used when importing profiles from exported JSON configuration

3 years agoadd uuid to templates
Damyan Ivanov [Sat, 21 Aug 2021 13:25:34 +0000 (16:25 +0300)]
add uuid to templates

will be used to distinguish new templates when restoring configuration
from JSON

3 years agoadd unique index on currencies(name)
Damyan Ivanov [Sat, 21 Aug 2021 12:49:20 +0000 (15:49 +0300)]
add unique index on currencies(name)

this would function as the UUID on profiles and templates

3 years agopoint to local license copies (in addition to web links)
Damyan Ivanov [Sat, 26 Jun 2021 07:50:55 +0000 (07:50 +0000)]
point to local license copies (in addition to web links)

3 years agoprepare v0.19.2 (43) for release v0.19.2
Damyan Ivanov [Wed, 9 Jun 2021 04:48:03 +0000 (04:48 +0000)]
prepare v0.19.2 (43) for release

3 years agofix looking up old transactions with non-ASCII names (broken in 0.18.0)
Damyan Ivanov [Tue, 8 Jun 2021 20:26:14 +0000 (23:26 +0300)]
fix looking up old transactions with non-ASCII names (broken in 0.18.0)

according to the documentation, SQLite's NOCASE collation affects only
ASCII characters. Unicode is explicitly mentioned as not supported.
Strangely Unicode still works on some Android versions/variants, but not
on others.

This change stops relying on NOCASE collation and puts back upper case
variant of transaction description in a new column, which is then used
when looking up previous transactions for auto-completion

3 years agoprepare v0.19.1 (42) for release v0.19.1
Damyan Ivanov [Sun, 23 May 2021 15:59:12 +0000 (15:59 +0000)]
prepare v0.19.1 (42) for release

3 years agodrop a fixme that needs no fixing
Damyan Ivanov [Sun, 23 May 2021 15:39:58 +0000 (18:39 +0300)]
drop a fixme that needs no fixing

3 years agofix crash in version checking code with two-component versions (3.14)
Damyan Ivanov [Sun, 23 May 2021 14:36:36 +0000 (17:36 +0300)]
fix crash in version checking code with two-component versions (3.14)

3 years agomaintain amount text independent from the amount
Damyan Ivanov [Sun, 23 May 2021 14:29:54 +0000 (17:29 +0300)]
maintain amount text independent from the amount

for example, the text may not be a valid amount, i.e. a sole "-"

3 years agomake decimal separator available globally
Damyan Ivanov [Sun, 23 May 2021 14:27:21 +0000 (17:27 +0300)]
make decimal separator available globally

updated with locale changes

3 years agotrack more instances where currency may be null (and replace it with "")
Damyan Ivanov [Sun, 16 May 2021 11:38:19 +0000 (14:38 +0300)]
track more instances where currency may be null (and replace it with "")

3 years agobimp gradle, sdk, build tools, jackson; jcentral→mavenCentral
Damyan Ivanov [Sun, 16 May 2021 05:45:20 +0000 (05:45 +0000)]
bimp gradle, sdk, build tools, jackson; jcentral→mavenCentral

3 years agofix loading previous transaction with no preferred account (again)
Damyan Ivanov [Sun, 16 May 2021 05:42:43 +0000 (05:42 +0000)]
fix loading previous transaction with no preferred account (again)

broken in 0.19.0

3 years agouse explicit main thread looper
Damyan Ivanov [Sat, 15 May 2021 10:20:03 +0000 (13:20 +0300)]
use explicit main thread looper

3 years agobump version of two test libraries
Damyan Ivanov [Thu, 13 May 2021 05:03:14 +0000 (08:03 +0300)]
bump version of two test libraries

3 years agoannotate a data retrieval method with @Transaction as suggested
Damyan Ivanov [Thu, 13 May 2021 04:57:12 +0000 (07:57 +0300)]
annotate a data retrieval method with @Transaction as suggested

3 years agofix a weird bug when an invalid amount is entered
Damyan Ivanov [Wed, 12 May 2021 19:52:11 +0000 (22:52 +0300)]
fix a weird bug when an invalid amount is entered

3 years agotypo in debug message
Damyan Ivanov [Wed, 12 May 2021 19:51:55 +0000 (22:51 +0300)]
typo in debug message

3 years agonew transaction: currency can't be null
Damyan Ivanov [Wed, 12 May 2021 19:51:33 +0000 (22:51 +0300)]
new transaction: currency can't be null

3 years agoprepare release of v0.19.0 (41) v0.19.0
Damyan Ivanov [Mon, 10 May 2021 19:41:01 +0000 (19:41 +0000)]
prepare release of v0.19.0 (41)

3 years agowhen accumulating running totals, consider sub-accounts too
Damyan Ivanov [Mon, 10 May 2021 19:28:22 +0000 (22:28 +0300)]
when accumulating running totals, consider sub-accounts too

3 years agofix propagation of speculative account ammounts to parent accounts
Damyan Ivanov [Mon, 10 May 2021 19:17:03 +0000 (22:17 +0300)]
fix propagation of speculative account ammounts to parent accounts

3 years agobetter text color reference working also in dark theme
Damyan Ivanov [Sun, 9 May 2021 18:34:22 +0000 (21:34 +0300)]
better text color reference working also in dark theme

3 years agovisual improvements in template list
Damyan Ivanov [Sun, 9 May 2021 17:19:54 +0000 (20:19 +0300)]
visual improvements in template list

add a divider between items, similarly to the account list

3 years agofix account list end margin after flow adoption
Damyan Ivanov [Sun, 9 May 2021 05:30:15 +0000 (08:30 +0300)]
fix account list end margin after flow adoption

3 years agoadd small margin between account name and its amount in transaction list
Damyan Ivanov [Sat, 8 May 2021 20:20:45 +0000 (23:20 +0300)]
add small margin between account name and its amount in transaction list

3 years agohint account name wrapping after the colon to help long accounts
Damyan Ivanov [Sat, 8 May 2021 20:20:03 +0000 (23:20 +0300)]
hint account name wrapping after the colon to help long accounts

3 years agoimprove account list with Flow helper widget
Damyan Ivanov [Sat, 8 May 2021 19:33:11 +0000 (22:33 +0300)]
improve account list with Flow helper widget

makes a difference with very deep account trees and/or long commodities
or big amounts and small screen or big font

3 years agofix auto-complete account list amounts alignment
Damyan Ivanov [Sat, 8 May 2021 15:19:56 +0000 (18:19 +0300)]
fix auto-complete account list amounts alignment

similar improvement can be made to the main account list

3 years agoshow current account balance when choosing account in new transactions
Damyan Ivanov [Fri, 7 May 2021 20:47:39 +0000 (23:47 +0300)]
show current account balance when choosing account in new transactions

3 years agofixed auto-complete pop-up background color for the material layout too
Damyan Ivanov [Fri, 7 May 2021 19:24:25 +0000 (22:24 +0300)]
fixed auto-complete pop-up background color for the material layout too

3 years agouse same font size in template editor / account name
Damyan Ivanov [Fri, 7 May 2021 18:58:06 +0000 (21:58 +0300)]
use same font size in template editor / account name

3 years agodrop unused style attribute
Damyan Ivanov [Fri, 7 May 2021 16:47:44 +0000 (19:47 +0300)]
drop unused style attribute

3 years agoexplicit pop-up background color for auto-complete text views in dark
Damyan Ivanov [Fri, 7 May 2021 16:47:23 +0000 (19:47 +0300)]
explicit pop-up background color for auto-complete text views in dark

can't find a way to reference the theme-wide color for pop-up menus and
the app drawer

without this, the background is black, which is a problem some times
because the main windows background is also black

3 years agouse the primary theme colour for transaction list accents
Damyan Ivanov [Fri, 7 May 2021 15:32:06 +0000 (18:32 +0300)]
use the primary theme colour for transaction list accents

a bit more readable in dark mode

3 years agobetter layout of the transaction list running total
Damyan Ivanov [Fri, 7 May 2021 15:26:49 +0000 (18:26 +0300)]
better layout of the transaction list running total

3 years agoremove duplicate call
Damyan Ivanov [Fri, 7 May 2021 04:46:23 +0000 (04:46 +0000)]
remove duplicate call

3 years agosimplify logic
Damyan Ivanov [Fri, 7 May 2021 04:45:47 +0000 (04:45 +0000)]
simplify logic

3 years agowhitespace
Damyan Ivanov [Fri, 7 May 2021 04:45:08 +0000 (04:45 +0000)]
whitespace

3 years agorunning totals when filtering transactions by account
Damyan Ivanov [Fri, 7 May 2021 04:43:12 +0000 (04:43 +0000)]
running totals when filtering transactions by account

this requires traversing the transaction list in the opposite order - from
oldest to newest and corresponding corner cases

3 years agofix currency selector without parameters (position/gap)
Damyan Ivanov [Thu, 6 May 2021 19:43:22 +0000 (22:43 +0300)]
fix currency selector without parameters (position/gap)

3 years agowhitespace
Damyan Ivanov [Thu, 6 May 2021 19:42:53 +0000 (22:42 +0300)]
whitespace

3 years agodebug loop only in debug builds
Damyan Ivanov [Thu, 6 May 2021 19:42:41 +0000 (22:42 +0300)]
debug loop only in debug builds

3 years agoadd commodity support to template editor
Damyan Ivanov [Thu, 6 May 2021 19:42:14 +0000 (22:42 +0300)]
add commodity support to template editor

3 years agodrop a dummy TODO
Damyan Ivanov [Thu, 6 May 2021 17:39:11 +0000 (20:39 +0300)]
drop a dummy TODO

there are no parameters for creation this fragment, the TODO is a
leftover from the assisted fragment creation

3 years agoreject TODO about multiple amounts with different currency per posting
Damyan Ivanov [Thu, 6 May 2021 17:36:18 +0000 (20:36 +0300)]
reject TODO about multiple amounts with different currency per posting

the same effect may be achieved with several postings now and this is
how hledger represents such transactions so no need to invent some
convoluted UI for this

3 years agoupdate the current profile value when profile list has changed
Damyan Ivanov [Thu, 6 May 2021 17:34:16 +0000 (20:34 +0300)]
update the current profile value when profile list has changed

without this, Data.getProfile() returns a previous value that may not be
current, e.g. the default currency have been changed

3 years agohonour default currency profile setting
Damyan Ivanov [Thu, 6 May 2021 17:19:28 +0000 (20:19 +0300)]
honour default currency profile setting

3 years agobump version preparing for the next release
Damyan Ivanov [Thu, 6 May 2021 17:19:07 +0000 (20:19 +0300)]
bump version preparing for the next release

3 years agomake use of currency parameters in the new currency dialog
Damyan Ivanov [Thu, 6 May 2021 17:18:42 +0000 (20:18 +0300)]
make use of currency parameters in the new currency dialog

3 years agofix migration off options table for current profile v0.18.0
Damyan Ivanov [Thu, 6 May 2021 06:57:07 +0000 (09:57 +0300)]
fix migration off options table for current profile

3 years agoprepare release of v0.18.0 (40)
Damyan Ivanov [Wed, 5 May 2021 20:18:10 +0000 (20:18 +0000)]
prepare release of v0.18.0 (40)

3 years agofix a crash when applying more than one template via QR code
Damyan Ivanov [Wed, 5 May 2021 16:55:16 +0000 (19:55 +0300)]
fix a crash when applying more than one template via QR code

3 years agorename a method to better reflect its function
Damyan Ivanov [Wed, 5 May 2021 15:43:48 +0000 (18:43 +0300)]
rename a method to better reflect its function

3 years agowhen speculatively updating account amounts, update parent accounts too
Damyan Ivanov [Wed, 5 May 2021 15:42:58 +0000 (18:42 +0300)]
when speculatively updating account amounts, update parent accounts too

3 years agoview binding for account and transaction list fragments
Damyan Ivanov [Fri, 30 Apr 2021 06:51:06 +0000 (09:51 +0300)]
view binding for account and transaction list fragments

3 years agowork around trans. list menu items visible with setOffscreenPageLimit(1)
Damyan Ivanov [Fri, 30 Apr 2021 06:34:12 +0000 (09:34 +0300)]
work around trans. list menu items visible with setOffscreenPageLimit(1)

with that call the transaction list fragment is loaded nicely
off-screen, but also it menu items get in the action bar. of the
fragment is navigated to and away they hide as before, but the initial
load is still a problem

3 years agoanother fix to the layout of template date parameters
Damyan Ivanov [Tue, 27 Apr 2021 19:51:39 +0000 (22:51 +0300)]
another fix to the layout of template date parameters

3 years agostop resetting the date when an old transaction is loaded into the form
Damyan Ivanov [Tue, 27 Apr 2021 19:18:19 +0000 (22:18 +0300)]
stop resetting the date when an old transaction is loaded into the form

3 years agodrop description history table and support machinery
Damyan Ivanov [Tue, 27 Apr 2021 19:09:59 +0000 (22:09 +0300)]
drop description history table and support machinery

3 years agocorrect debug message
Damyan Ivanov [Tue, 27 Apr 2021 18:31:57 +0000 (21:31 +0300)]
correct debug message

3 years agolookup transactions by description directly in transactions table
Damyan Ivanov [Tue, 27 Apr 2021 18:31:44 +0000 (21:31 +0300)]
lookup transactions by description directly in transactions table

description_history is abandoned, transactions.description uses NOCASE
collation and the UPPER trickery is not needed anymore