Use the KVersionControlPlugin for the next highest folder not the first one that finds a folder anywhere up in the filesystem
Review Request #107066 - Created Oct. 26, 2012 and discarded
Sorry, for the confusing summary, couldn't describe it better in one sentence, suggestions for a commit message are very much appreciated. The current behaviour of dolphin is: if for the first plugin in the list of loaded plugins the fileName is not found in the current directory, it looks in the directory above, if it's not found there it looks in the directory above and so on - all with the same plugin. This leads to a problematic situation with for example Dropbox. Dropbox-Sync folders are identified by the .dropbox folder in their top-level. but also there is a ~/.dropbox. So when you enable the dolphin-box-plugin, basically no other KVersionControlPlugin will be able to work. It will go up to your home and think everything inside it is tracked by Dropbox. This patch makes dolphin check all plugins for the current directory, then go one directory up, check all plugins again, go one up etc.. P.S.: Is there any better/more flexible API to use for sync-plugins?
I can use other plugins simultaneously with the Dropbox one now...
Thanks for the patch! Good catch, I wasn't aware of this problem. Looks good, I'm just wondering if we could maybe do it in a slightly simpler way, without the new function: Maybe one could move the code starting with "// Version control systems..." out of the foreach-loop, then replace "while (upUrl != dirUrl)" by "if (upUrl != dirUrl)" and have the function call itself recursively if that is the case?