Optimize protocol handler registrations
commitfebae42331d9f071bc5324cf55e2e00df2de843b
authorGuillaume Lachance <glachance@cmaisonneuve.qc.ca>
Tue, 19 Jun 2018 23:56:03 +0000 (20 01:56 +0200)
committerSven Strickroth <email@cs-ware.de>
Thu, 21 Jun 2018 14:03:46 +0000 (21 16:03 +0200)
tree4bc4a28b0ba798c01c040560c5d244f225c2e289
parent8a9c5bfab44a47f8a5f9b1961586affcdfdf24d5
Optimize protocol handler registrations

Moved TortoiseGit's protocol handler registration keys to a non conflicting area.  The protocol handlers and the protocol themselves should not be in the same keys, especially for protocols that are disputed amongst several client utilities.

With this fix, now that the installer is not rewriting other product registry keys and that we aren't forcibly taking over protocols, I would personally remove the "do you want TortoiseGit to register x protocol" but I left it in.

How the installer behaves now:
-registers 5 protocols
-for a protocol that does not have a handler registered currently, becomes the default application for said protocol.
-for a protocol that already has a handler, doesn't become default but can become default if the user chooses TortoiseGit in the "default applications" section of the control panel.
-when uninstalling, the uninstaller does not destroy the protocols (anymore) but does remove the protocol-handlers that were installed.  for the protocols that still have a valid handler (another app) it should default to them automagically.

Signed-off-by: Guillaume Lachance <glachance@cmaisonneuve.qc.ca>
Signed-off-by: Sven Strickroth <email@cs-ware.de>
src/TortoiseGitSetup/FeaturesFragment.wxi
src/TortoiseGitSetup/Includes.wxi
src/TortoiseGitSetup/StructureFragment.wxi