Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

Remember selected transaction with multiple account views opened

#252

From email:

If you open two or more accounts one with small amount of transactions (all fit into one page) and second account with big amount (several pages of transactions), scroll position is not preserved when you
switch between accounts.

This problem is a limitation due to the current design (there's only one actual entry view, which is shared by all opened accounts). It's possible to send the scroll position down to the model and save it for the next refresh, but it seems like a lot of code for such a small feature. I wonder if it's not better to simply restore the selected transaction(s) at the middle of the table instead (it's currently restored at "the nearest point", so if the previous account was scrolled up, the selected transaction will be at the bottom of the scrollable table).

UPDATE: Forget about the paragraph above, I didn't remember that account views don't remember their own selected transactions yet and that this value is still document-wide. So, to fix this, each account view has to remember its own selected transaction.

Reported by Virgil Dupras · May 9th, 2011 @ 09:48 PM

State: fixed
Milestone: v2.5
Assigned to: Virgil Dupras Virgil Dupras

Activity

  1. Roman Kapusta
    Roman Kapusta

    I have a look on your source code, I don't like this heavy use of properties, but I managed to find where are changing account panes (core/gui/main_window.py, _change_current_pane, line 66) there should be something like 'remeber first visible transaction in hiding account' and 'scroll to first visible transaction in showing account'. You vill have something like 'first visible transaction' for every entry pane.

    or more simple approach: just scroll to first selected transaction, if it is not visible.

    May 10th, 2011 @ 02:25 PM

  2. Virgil Dupras
    Virgil Dupras

    moneyGuru already does that. The problem, as I wrote is that it does the minimum scrolling necessary to make the first selected transaction visible, which means that most of the time, the selected transaction ends up either at the very top or the very bottom, which is probably not optimal in most cases. That's why I was suggesting to scroll until the first selected transaction was in the middle of the table.

    May 10th, 2011 @ 02:35 PM

  3. Virgil Dupras
    Virgil Dupras

    Oops, sorry, I checked again and it doesn't. I thought it did. I have to change the ticket.

    May 10th, 2011 @ 02:37 PM

  4. Virgil Dupras
    Virgil Dupras
    • Title changed from Scroll position lost in entry view when changing active tab to Remember selected transaction with multiple account views opened

    May 10th, 2011 @ 02:38 PM

  5. Virgil Dupras
    Virgil Dupras

    (by the way, this is part of an ongoing, long run refactoring process described at http://www.hardcoded.net/docs/moneyguru/refactorings.html#more-resp... )

    May 10th, 2011 @ 02:43 PM

  6. Virgil Dupras
    Virgil Dupras
    • Milestone set to 2.4.0
    • Milestone order changed from 195283 to 0

    October 7th, 2011 @ 09:17 PM

  7. Virgil Dupras
    Virgil Dupras
    • Assigned user set to Virgil Dupras

    October 13th, 2011 @ 03:40 PM

  8. Virgil Dupras
    Virgil Dupras
    • State changed from accepted to hold
    • Milestone cleared.

    The transaction selection update/restore process right now is a mess right now, and before I can un-mess it and implement this selection behavior, I'd ideally have to fully complete the proxy/model instantiation shift I'm currently in the middle of so that I can get rid of the shared account view kludge that's there right now. Once this is done, implementing this ticket will be much easier. Later.

    October 13th, 2011 @ 06:26 PM

  9. Virgil Dupras
    Virgil Dupras
    • State changed from hold to accepted
    • Milestone set to v2.5
    • Milestone order changed from 4 to 0

    The core gui instantiation refactoring process is complete, so I can give this ticket another try.

    January 24th, 2012 @ 10:17 PM

  10. Virgil Dupras
    Virgil Dupras

    (from [3f54ce82b68e]) [#252 Remember selected transaction with multiple account views opened] Replaced most references to MainWindow.shown_account by AccountView's own account reference.

    Also, removed the shown_account_changed notification. All of this is in preparation of show_account's complete removal so we can have each AccountView instance independent of each other.
    https://bitbucket.org/hsoft/moneyguru/changeset/3f54ce82b68e/

    January 27th, 2012 @ 05:24 PM

  11. Virgil Dupras
    Virgil Dupras
    • State changed from accepted to fixed

    (from [c536e5ba7b40]) [#252 Remember selected transaction with multiple account views opened state:fixed] Completely removed MainWindow.shown_account.

    This completes the transition from a shared AccountView to one instance of AccountView per opened Account pane. This shared AccountView thing was the cause of the entry selection glitch in #252 Remember selected transaction with multiple account views opened. With one account instance per account, the entry selection doesn't have to be restored because it isn't touched when we switch accounts.
    https://bitbucket.org/hsoft/moneyguru/changeset/c536e5ba7b40/

    January 27th, 2012 @ 08:10 PM

  12. Roman Kapusta

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.