[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

AW: File list in commit dialog (3rd time)

From: Jens Geyer <jgx_at_vsx.net>
Date: Wed, 26 Jun 2013 15:51:18 +0000

Hi Stefan,

> Thinking about that, maybe we can keep the order if the refresh happens
> automatically and only lose the sort order in case the refresh is done
> manually.

Ok, but why not as I proposed?
  (a) keep the sort order as long as the dialog stays open, regardless what caused the refresh
  (b) once the dialog is closed and opened again, items are shown again in the svn-lib order

First, at least for me, from the user's perspective, it makes not much difference what caused the refresh. I'd like the dialog to keep my sort order as long as the dialog is open.

Next, when asked for what purpose the svn library sort order is useful, I really had difficulties to tell.
This may not necessarily be true for other people, but even you write:

> The order in which items are shown the first time or after refreshes is
> the order that the svn library returns the data. This isn't really
> sorted by path.

which looks to me that the only reason why the library returns this order is because of some internal reason,
e.g. this particular order is internally used because it makes list lookups more efficient, or the like (wild guess).

Finally, as an remark, using SVN.EXE STATUS, I get a different order than in the dialog: On the console,
lowercase letters "a" are sorted after uppercase letters "Z". The dialog however seems to sort insensitive.

Best regards,
JensG

-----Ursprüngliche Nachricht-----
Von: Stefan Küng [mailto:tortoisesvn_at_gmail.com]
Gesendet: Montag, 24. Juni 2013 20:30
An: dev
Cc: Jens Geyer
Betreff: Re: File list in commit dialog (3rd time)

On 24.06.2013 12:34, Jens Geyer wrote:
> Hi *,
>
> The file list in the commit dialog can be sorted by clicking the
> column header, which works fine, except for two things:
>
> * Especially at the first click on a column header, TSVN takes an
> significant amount of time to sort the data that are already shown in
> the list, which is quite annoying on large WCs. I'm not sure but
> could it be that the list is refreshed with real WC data instead of
> just sorting the list contents?

No, it simply does the sort.
But: when you click the first time (on any column) it has to resort
completely unsorted items. If you click the second time, it only has to
resort already sorted items which is much faster.
And another thing that contributes to the slowdown on first-sort: memory
allocation. To do the sort, we allocate memory before the sort. The
first time we do this, that allocation takes much more time than
subsequent sorts.

> * When you do something with the files, e.g. add some unversioned
> files or just press F5 to refresh the list, the sorting is gone and I
> have to re-sort the list again by clicking the header. It would be
> great, if the sort order is maintained as long as the dialog is open.
> It should not be made persistent - if I open the dialog again, having
> the default sort order is fine. But the sort order should be kept as
> long as I leave that dialog open, no matter how much I press F5 or do
> other things with the files that affect the list in any way.

The problem with this approach is that there would be no way of getting
the items shown in the original order anymore after you've sorted by any
column.
The order in which items are shown the first time or after refreshes is
the order that the svn library returns the data. This isn't really
sorted by path.
So the only way to get that original order is to refresh the view.

Thinking about that, maybe we can keep the order if the refresh happens
automatically and only lose the sort order in case the refresh is done
manually.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest interface to (Sub)version control
    /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=3059169
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2013-06-26 17:51:32 CEST

This is an archived mail posted to the TortoiseSVN Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.