]>
git.ktnx.net Git - mobile-ledger.git/log
Damyan Ivanov [Tue, 16 Feb 2021 20:16:42 +0000 (22:16 +0200)]
use expression lambda
Damyan Ivanov [Tue, 16 Feb 2021 20:15:40 +0000 (22:15 +0200)]
implement swipe-remove and drag-move in template details
Damyan Ivanov [Tue, 16 Feb 2021 20:14:06 +0000 (22:14 +0200)]
template modes: mark newly added accounts with negative IDs
unique IDs are mandatory, and the ones from the database are positive.
newly created may use negative IDs (given by a model-wide decrementing
atomic integer) and this comes handy when saving them to to db
Damyan Ivanov [Tue, 16 Feb 2021 20:07:39 +0000 (22:07 +0200)]
fix saving template account removals
simple idea. account positions are positive numbers. upon save, all
positions are set to -1, then all accounts are saved with positions from
1 on, and finally all the accounts with positions still at -1 are
deleted
Damyan Ivanov [Mon, 15 Feb 2021 20:41:18 +0000 (22:41 +0200)]
fix duplicate accounts in template account autocompletion
visible when multiple profiles contain accounts with the same name
Damyan Ivanov [Mon, 15 Feb 2021 20:14:40 +0000 (22:14 +0200)]
bump several library versions
Damyan Ivanov [Sun, 14 Feb 2021 08:03:29 +0000 (10:03 +0200)]
use stock drag handle icon for profile list
Damyan Ivanov [Sun, 14 Feb 2021 07:59:33 +0000 (09:59 +0200)]
correct copyright notices on icon resources
Damyan Ivanov [Sun, 14 Feb 2021 07:26:00 +0000 (09:26 +0200)]
fix visibility of amount sign switch texts
Damyan Ivanov [Sun, 14 Feb 2021 07:24:43 +0000 (09:24 +0200)]
template details: replace the framework trash icon with stock one
to keep it consistent with the other icons
Damyan Ivanov [Sat, 13 Feb 2021 21:38:36 +0000 (23:38 +0200)]
fix marking of unmatched part at the end of the test text
Damyan Ivanov [Sat, 13 Feb 2021 21:37:55 +0000 (23:37 +0200)]
drop unused variable
Damyan Ivanov [Sat, 13 Feb 2021 21:08:16 +0000 (23:08 +0200)]
manipulation of templates via pop-up menu, add template duplication
Damyan Ivanov [Sat, 13 Feb 2021 21:02:54 +0000 (23:02 +0200)]
methods for duplication of a template with its data
Damyan Ivanov [Sat, 13 Feb 2021 19:55:12 +0000 (21:55 +0200)]
make pattern editor survive reconfiguration
Damyan Ivanov [Sat, 13 Feb 2021 18:54:31 +0000 (20:54 +0200)]
template details: explicitly enabled layout changes animation
Damyan Ivanov [Sat, 13 Feb 2021 18:54:04 +0000 (20:54 +0200)]
fix mis-translation
Damyan Ivanov [Sat, 13 Feb 2021 18:53:37 +0000 (20:53 +0200)]
self-explanatory amount reversal switch
Damyan Ivanov [Sat, 13 Feb 2021 16:24:37 +0000 (18:24 +0200)]
whitespace
Damyan Ivanov [Sat, 13 Feb 2021 16:24:23 +0000 (18:24 +0200)]
type (packend → backend)
Damyan Ivanov [Sat, 13 Feb 2021 16:24:04 +0000 (18:24 +0200)]
translatable text for template element value from the pattern
Damyan Ivanov [Sat, 13 Feb 2021 16:13:46 +0000 (18:13 +0200)]
use explicit indices for format strings in string resources
Damyan Ivanov [Sat, 13 Feb 2021 16:01:12 +0000 (18:01 +0200)]
fu: visual improvements in template editor
Damyan Ivanov [Sat, 13 Feb 2021 15:45:59 +0000 (17:45 +0200)]
better sub-section headings
Damyan Ivanov [Sat, 13 Feb 2021 15:45:35 +0000 (17:45 +0200)]
visual improvements in template editor
more air between independent elements, consistent look for sub-section
headings, clear icon
Damyan Ivanov [Sat, 13 Feb 2021 15:41:29 +0000 (17:41 +0200)]
templates: use "number" input type for date component fields
Damyan Ivanov [Sat, 13 Feb 2021 15:40:22 +0000 (17:40 +0200)]
profile editor: a bit better check for insecure scheme
Damyan Ivanov [Sat, 13 Feb 2021 15:36:50 +0000 (17:36 +0200)]
show pattern match results in template editor
Damyan Ivanov [Sat, 13 Feb 2021 14:45:00 +0000 (16:45 +0200)]
theme: swap colorError and colorOnError
colorError is used for TextInputLayout to draw error text. It needs to
stand out.
Damyan Ivanov [Sat, 13 Feb 2021 08:27:41 +0000 (10:27 +0200)]
empty amounts for newly created templates
were using '0.00'
Damyan Ivanov [Sat, 13 Feb 2021 08:10:08 +0000 (10:10 +0200)]
implement account name lookup in Templates' account fields
Damyan Ivanov [Sat, 13 Feb 2021 08:08:38 +0000 (10:08 +0200)]
add AccountDAO to DB
Damyan Ivanov [Sat, 13 Feb 2021 08:06:07 +0000 (10:06 +0200)]
make methods in AccountDAO public
Damyan Ivanov [Sat, 13 Feb 2021 08:05:12 +0000 (10:05 +0200)]
Account.toString() returns the account name
Damyan Ivanov [Fri, 12 Feb 2021 06:09:53 +0000 (08:09 +0200)]
add accounts to Room
Damyan Ivanov [Fri, 12 Feb 2021 06:08:02 +0000 (08:08 +0200)]
fix detection of continuations in SQL revision scripts
Damyan Ivanov [Thu, 11 Feb 2021 22:12:51 +0000 (22:12 +0000)]
let SQL revision files control the transaction
because the foreign_keys pragma can't be used inside a transaction
Damyan Ivanov [Thu, 11 Feb 2021 21:54:21 +0000 (21:54 +0000)]
add missing/fix copyright statements to all SQL revision files
Damyan Ivanov [Wed, 10 Feb 2021 21:34:10 +0000 (23:34 +0200)]
add continuation support to applyRevisionFile()
even if the plan is to migrate fully to Room, writing DB structure
revisions in a series of SQL files is much more convenient compared to a
sequence od db.execSQL() calls with very long arguments
except that writing SQL text that is very long is a problem for the SQL
files too. Continuations solve this in a way, much better than splitting
long SQL arguments to execSQL() in a series of concatenated strings
Damyan Ivanov [Wed, 10 Feb 2021 21:19:52 +0000 (23:19 +0200)]
fix initial database creation
old-style revision support is still needed because Room is a
second-class citizen, yet
Damyan Ivanov [Fri, 5 Feb 2021 06:41:37 +0000 (06:41 +0000)]
fixup deletion of templates
Damyan Ivanov [Fri, 5 Feb 2021 06:36:37 +0000 (08:36 +0200)]
bump years of copyright
Damyan Ivanov [Fri, 5 Feb 2021 06:36:11 +0000 (08:36 +0200)]
template deletion, with undo
Damyan Ivanov [Fri, 5 Feb 2021 06:16:56 +0000 (08:16 +0200)]
async template DB manipulation routines
Damyan Ivanov [Fri, 5 Feb 2021 06:15:37 +0000 (08:15 +0200)]
rename getPatternAccountDAO() to getTemplateAccountDAO()
Damyan Ivanov [Fri, 5 Feb 2021 06:08:18 +0000 (08:08 +0200)]
rename getPatternDAO to getTemplateDAO
Damyan Ivanov [Fri, 5 Feb 2021 05:54:40 +0000 (07:54 +0200)]
generic async result callback interface
Damyan Ivanov [Fri, 5 Feb 2021 05:45:21 +0000 (07:45 +0200)]
copy-constructors for TemplateHeader/TemplateAccount/TemplateWithAccounts
Damyan Ivanov [Fri, 5 Feb 2021 04:48:13 +0000 (04:48 +0000)]
cascade delete of template_accounts from templates
Damyan Ivanov [Thu, 4 Feb 2021 20:40:29 +0000 (22:40 +0200)]
drop unused code
Damyan Ivanov [Thu, 4 Feb 2021 20:28:01 +0000 (22:28 +0200)]
quicker reaction to the scroll when considering fab sliding
Damyan Ivanov [Thu, 4 Feb 2021 20:26:19 +0000 (22:26 +0200)]
rework main activity fab show/hide to slide up/down
this is inspired by the HideBottomViewOnScrollBehaviour, which cannot
be used directly, since it doesn't work for showing the fab when the
recycler view is not tall enough to cause scrolling
to reproduce the problem, make the fab hide in the transaction list,
then switch to the account tree, which needs to be collapsed, and try
to show the fab
Damyan Ivanov [Wed, 3 Feb 2021 20:41:12 +0000 (20:41 +0000)]
whitespace
Damyan Ivanov [Wed, 3 Feb 2021 20:40:50 +0000 (20:40 +0000)]
fix parameter annotation
Damyan Ivanov [Wed, 3 Feb 2021 17:15:07 +0000 (19:15 +0200)]
add icon to the dialog for choosing a template
Damyan Ivanov [Tue, 2 Feb 2021 21:01:58 +0000 (23:01 +0200)]
Templates: make FAB hide on scroll up
Damyan Ivanov [Tue, 2 Feb 2021 20:22:21 +0000 (22:22 +0200)]
turn foreign_keys PRAGMA in Room too
Damyan Ivanov [Tue, 2 Feb 2021 17:23:35 +0000 (19:23 +0200)]
rename Patterns to Templates
better reflects the purpose and function
also drop unnecessary unique index on a primary key and explicit
foreign key constraint names
Damyan Ivanov [Tue, 2 Feb 2021 06:35:48 +0000 (08:35 +0200)]
rename patterns to templates
"pattern" is the regular expression that is used to match templates
Damyan Ivanov [Tue, 2 Feb 2021 06:00:49 +0000 (08:00 +0200)]
guard against ncurrent navigation controller destination being null
Damyan Ivanov [Mon, 1 Feb 2021 06:38:40 +0000 (08:38 +0200)]
drop large sample text
Damyan Ivanov [Mon, 1 Feb 2021 06:38:32 +0000 (08:38 +0200)]
translations
Damyan Ivanov [Mon, 1 Feb 2021 06:38:09 +0000 (08:38 +0200)]
handle back arrow tap in patterns activity
Damyan Ivanov [Mon, 1 Feb 2021 06:18:27 +0000 (08:18 +0200)]
use string resource instead of hardcoded text
Damyan Ivanov [Mon, 1 Feb 2021 06:17:46 +0000 (08:17 +0200)]
fix alignment of date component inputs
Damyan Ivanov [Mon, 1 Feb 2021 06:17:13 +0000 (08:17 +0200)]
fix setting null literal value for date components
Damyan Ivanov [Sun, 31 Jan 2021 21:28:34 +0000 (23:28 +0200)]
fix selecting from multiple matching patterns
Damyan Ivanov [Sun, 31 Jan 2021 20:00:41 +0000 (22:00 +0200)]
ui/machinery support for negated pattern amounts
Damyan Ivanov [Sun, 31 Jan 2021 17:26:16 +0000 (17:26 +0000)]
add a pattern flag for negation of amount
Damyan Ivanov [Sun, 31 Jan 2021 17:25:54 +0000 (17:25 +0000)]
correction in index name
Damyan Ivanov [Sun, 31 Jan 2021 17:24:08 +0000 (17:24 +0000)]
drop redundant parameter with default value
Damyan Ivanov [Sun, 31 Jan 2021 16:32:59 +0000 (16:32 +0000)]
no background for pattern edit buttons
Damyan Ivanov [Sun, 31 Jan 2021 16:32:38 +0000 (16:32 +0000)]
remove background colour of pattern list
was used for debugging
Damyan Ivanov [Sun, 31 Jan 2021 16:31:43 +0000 (16:31 +0000)]
typo in view id
Damyan Ivanov [Sun, 31 Jan 2021 13:26:01 +0000 (13:26 +0000)]
change toolbar title when editing/adding a pattern
Damyan Ivanov [Sun, 31 Jan 2021 13:25:08 +0000 (15:25 +0200)]
cleanup
Damyan Ivanov [Sun, 31 Jan 2021 13:24:48 +0000 (15:24 +0200)]
complete fromRoomObject() to include date matching fields
Damyan Ivanov [Sun, 31 Jan 2021 13:22:49 +0000 (15:22 +0200)]
fix IDs when creating new patterns
Damyan Ivanov [Sun, 31 Jan 2021 11:38:41 +0000 (11:38 +0000)]
Rename QEScanAbleFragment to QRScanCapableFragment
Damyan Ivanov [Sun, 31 Jan 2021 11:23:41 +0000 (13:23 +0200)]
add two indices, corresponding to foreign keys to help Room
Damyan Ivanov [Sat, 30 Jan 2021 21:08:36 +0000 (21:08 +0000)]
add support for filling new transaction data from matched pattern(s)
still not ideal, but works in the simplest case
Damyan Ivanov [Sat, 30 Jan 2021 21:07:23 +0000 (21:07 +0000)]
more toString() support
Damyan Ivanov [Sat, 30 Jan 2021 21:06:29 +0000 (21:06 +0000)]
add SimpleDate.toString()
Damyan Ivanov [Sat, 30 Jan 2021 21:06:16 +0000 (21:06 +0000)]
fix support for matching of transaction description/comment
Damyan Ivanov [Sat, 30 Jan 2021 21:04:04 +0000 (21:04 +0000)]
fu: Data.parseNumber
Damyan Ivanov [Sat, 30 Jan 2021 14:36:23 +0000 (16:36 +0200)]
format account amounts upon focus leave; store in DB
Damyan Ivanov [Sat, 30 Jan 2021 14:35:46 +0000 (16:35 +0200)]
rename formatNumber to formatCurrency and provide formatNumber w/o curr.
also provide number parsing, using the same NumberFormat object
Damyan Ivanov [Sat, 30 Jan 2021 13:11:11 +0000 (15:11 +0200)]
move model instantiation from onAttach to onCreateView
parent activity may not be fully up in onAttach() and return a null
navigation controller, resulting in a crash upon reconfiguration
Damyan Ivanov [Sat, 30 Jan 2021 13:08:42 +0000 (15:08 +0200)]
Room doesn't understand "NULLS FIRST" in the ORDER BY clause :(
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
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
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
Damyan Ivanov [Fri, 29 Jan 2021 05:26:57 +0000 (05:26 +0000)]
global function for formatting numbers (locale-aware)
Damyan Ivanov [Fri, 29 Jan 2021 05:26:14 +0000 (05:26 +0000)]
somewhat working pattern list/editor
Damyan Ivanov [Fri, 29 Jan 2021 05:24:06 +0000 (05:24 +0000)]
updated gradlew.bat
Damyan Ivanov [Fri, 29 Jan 2021 05:23:25 +0000 (05:23 +0000)]
button id rename (fab -> fabAdd)
Damyan Ivanov [Fri, 29 Jan 2021 05:23:05 +0000 (05:23 +0000)]
make Currency loadable by id
Damyan Ivanov [Fri, 29 Jan 2021 05:22:32 +0000 (05:22 +0000)]
App: make the Room database handle available
Damyan Ivanov [Fri, 29 Jan 2021 05:19:50 +0000 (05:19 +0000)]
extract QR-scanning machinery from new transaction fragment
Damyan Ivanov [Fri, 29 Jan 2021 05:18:45 +0000 (05:18 +0000)]
Room database class plus a couple of DAO classes