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

Re: Bugg with solution...

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Tue, 23 Sep 2008 09:43:43 +0200

Max Kielland wrote:
> Hello,
>
> PROBLEM:
> After doing any action that changes a files status, such as "SVN
> Commit..." or update, the icons in the file browser is not updated
> automatically. This has to be done manually by hitting F5.
>
> TRY IT OUT:
> Change one of your files checked out from SVN so it turns red (changed).
> Commit the file and it should be green (up to date). This is not the
> case, you have to manually refresh (F5) the file browser to see the change.
>
> SOLUTION:
> You need to send a Shell Notification message to tell windows that it
> has to refresh it's icons (imediately).
>
> This is when you know what directory to update.
> #include <shlobj.h>
> SHChangeNotify(SHCNE_UPDATEDIR,SHCNF_PATH,"D:\\Update\\my\\path",NULL);
>
> If you just want to update all icons (regardless of directory), you can
> "fool" windows by sending this message.
> #include <shlobj.h>
> SHChangeNotify(SHCNE_ASSOCCHANGED,SHCNF_IDLIST,NULL,NULL);
>
> You can read more about SHChangeNotify at
> http://msdn.microsoft.com/en-us/library/bb762118(VS.85).aspx
>
> I hope someone will add this simple line so we don't have to manually
> refresh the browser window ;)

If I would add "this simple line", it would basically block the explorer.
Seriously: do you really, honestly think that we don't know how to use
SHChangeNotify() ?????

Job for you:
* search this mailing list
* search the dev mailint list
* search the FAQ
* have a *quick* look at the source of TSVN and the comments around
  SHChangeNotify() calls.

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net

Received on 2008-09-23 09:43:57 CEST

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