From bc13f0890b99b2b60b05d5f4272a06446195e2a4 Mon Sep 17 00:00:00 2001 From: William Dibbern Date: Mon, 30 Nov 2015 21:03:22 -0600 Subject: [PATCH] Fix match highlight, add version, display enabled - Session highlight was inconsistent, updated to use documented APIs for session styles - Version number now displayed in main file menu - Menu item now displays (Enabled) when Imposter is active and one or more profiles are being matched against --- .../Properties/AssemblyInfo.cs | 4 ++-- Imposter.Fiddler/Imposter.cs | 24 +++++++++++++++++-- Imposter.Fiddler/Properties/AssemblyInfo.cs | 4 ++-- 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/Imposter.Fiddler.Installer/Properties/AssemblyInfo.cs b/Imposter.Fiddler.Installer/Properties/AssemblyInfo.cs index 7915941..20eb8ad 100644 --- a/Imposter.Fiddler.Installer/Properties/AssemblyInfo.cs +++ b/Imposter.Fiddler.Installer/Properties/AssemblyInfo.cs @@ -51,5 +51,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: AssemblyVersion("1.0.0.5")] +[assembly: AssemblyFileVersion("1.0.0.5")] diff --git a/Imposter.Fiddler/Imposter.cs b/Imposter.Fiddler/Imposter.cs index 3cd1efe..d6ea766 100644 --- a/Imposter.Fiddler/Imposter.cs +++ b/Imposter.Fiddler/Imposter.cs @@ -5,6 +5,7 @@ using System.Drawing; using System.IO; using System.Linq; +using System.Reflection; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; @@ -59,6 +60,8 @@ private void Start() profile.Start(EnableAutoReload); } } + + _imposterMenu.Text = "Imposter (Enabled)"; } } @@ -68,6 +71,8 @@ private void Stop() { profile.Stop(); } + + _imposterMenu.Text = "Imposter"; } #region Menu and Menu Events @@ -86,12 +91,17 @@ private void InitializeMenu() _autoReload.Enabled = false; _autoReload.Checked = EnableAutoReload; + var version = new ToolStripMenuItem(string.Format("v{0}", Assembly.GetExecutingAssembly().GetName().Version)); + version.Enabled = false; + var icon = Resources.Resources.Imposter; var image = icon.ToBitmap(); - _imposterMenu = new ToolStripMenuItem("Imposter", image); + _imposterMenu = new ToolStripMenuItem("&Imposter", image); _imposterMenu.DropDownItems.Add(_profiles); _imposterMenu.DropDownItems.Add(new ToolStripSeparator()); _imposterMenu.DropDownItems.AddRange(new ToolStripMenuItem[] { _isEnabled, _autoReload }); + _imposterMenu.DropDownItems.Add(new ToolStripSeparator()); + _imposterMenu.DropDownItems.Add(version); LoadProfileItems(); } @@ -284,6 +294,8 @@ public void AutoTamperRequestBefore(Session oSession) return; } + bool isTampered = false; + string fullString = oSession.fullUrl.ToLower(); if (fullString.EndsWith("imposter.js") && EnableAutoReload) @@ -292,6 +304,8 @@ public void AutoTamperRequestBefore(Session oSession) var js = Path.GetFullPath("Scripts\\imposter.js"); oSession.LoadResponseFromFile(js); oSession.ResponseHeaders.Add("x-imposter", js); + + isTampered = true; } if (fullString.ToLower().Contains("/imposter-poll-for-changes?profileid=") && EnableAutoReload) @@ -314,6 +328,8 @@ public void AutoTamperRequestBefore(Session oSession) { oSession.utilSetResponseBody("false"); } + + isTampered = true; } foreach (var profile in _enabledProfiles) @@ -330,8 +346,12 @@ public void AutoTamperRequestBefore(Session oSession) oSession.ResponseHeaders.Add("x-imposter", path); if (oSession.ViewItem != null) { - oSession.ViewItem.BackColor = Color.SkyBlue; + oSession["ui-backcolor"] = "#4683ea"; + oSession["ui-color"] = "#ffffff"; } + + isTampered = true; + // Only swap for the first match break; } diff --git a/Imposter.Fiddler/Properties/AssemblyInfo.cs b/Imposter.Fiddler/Properties/AssemblyInfo.cs index c3cd306..440d148 100644 --- a/Imposter.Fiddler/Properties/AssemblyInfo.cs +++ b/Imposter.Fiddler/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.4")] -[assembly: AssemblyFileVersion("1.0.0.4")] +[assembly: AssemblyVersion("1.0.0.5")] +[assembly: AssemblyFileVersion("1.0.0.5")] [assembly: Fiddler.RequiredVersion("2.2.8.6")]